Open Babel: OBSmartsMatcher Class Reference

Public Member Functions | Protected Member Functions | Protected Attributes | Friends

# OBSmartsMatcher Class Reference

Internal class: performs matching; a wrapper around previous C matching code to make it thread safe. More...

`#include <openbabel/parsmart.h>`

List of all members.

## Public Member Functions
| OBSmartsMatcher ()
virtual | ~OBSmartsMatcher ()
bool | match (OBMol &mol, const Pattern *pat, std::vector< std::vector< int > > &mlist, bool single=false)
## Protected Member Functions
bool | EvalAtomExpr (AtomExpr *expr, OBAtom *atom)
bool | EvalBondExpr (BondExpr *expr, OBBond *bond)
void | SetupAtomMatchTable (std::vector< std::vector< bool > > &ttab, const Pattern *pat, OBMol &mol)
void | FastSingleMatch (OBMol &mol, const Pattern *pat, std::vector< std::vector< int > > &mlist)
## Protected Attributes
std::vector< std::pair< const Pattern *, std::vector< bool > > > | RSCACHE
std::vector< const Pattern * > | Fragments
## Friends
class | OBSSMatch

## Detailed Description

Internal class: performs matching; a wrapper around previous C matching code to make it thread safe.

## Constructor & Destructor Documentation

OBSmartsMatcher | ( | ) | `[inline]`

virtual ~OBSmartsMatcher | ( | ) | `[inline, virtual]`

## Member Function Documentation

bool EvalAtomExpr | ( | AtomExpr * | expr,
|  | OBAtom * | atom
| ) |  | `[protected]`

Referenced by OBSSMatch::Match().

bool EvalBondExpr | ( | BondExpr * | expr,
|  | OBBond * | bond
| ) |  | `[protected]`

Referenced by OBSSMatch::Match().

void SetupAtomMatchTable | ( | std::vector< std::vector< bool > > & | ttab,
|  | const Pattern * | pat,
|  | OBMol & | mol
| ) |  | `[protected]`

void FastSingleMatch | ( | OBMol & | mol,
|  | const Pattern * | pat,
|  | std::vector< std::vector< int > > & | mlist
| ) |  | `[protected]`

bool match | ( | OBMol & | mol,
|  | const Pattern * | pat,
|  | std::vector< std::vector< int > > & | mlist,
|  | bool | single = `false`
| ) |  |

Referenced by OBSmartsPattern::Match(), and OBSmartsPattern::RestrictedMatch().

## Friends And Related Function Documentation

friend class OBSSMatch`[friend]`

## Member Data Documentation

std::vector<std::pair<const Pattern*,std::vector<bool> > > RSCACHE`[protected]`

std::vector<const Pattern*> Fragments`[protected]`

The documentation for this class was generated from the following files:

- parsmart.h
- parsmart.cpp

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines