RDKit: Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion > Class Template Reference

| RDKit Open-source cheminformatics and machine learning.

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Public Member Functions | Protected Attributes | List of all members
Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion > Class Template Reference

a Query implementing a range: arguments must fall in a particular range of values. More...

`#include <RangeQuery.h>`

Inheritance diagram for Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >:

## Public Member Functions
| RangeQuery ()
| RangeQuery (MatchFuncArgType lower, MatchFuncArgType upper)
| construct and set the lower and upper bounds More...
void | setUpper (MatchFuncArgType what)
| sets our upper bound More...
const MatchFuncArgType | getUpper () const
| returns our upper bound More...
void | setLower (MatchFuncArgType what)
| sets our lower bound More...
const MatchFuncArgType | getLower () const
| returns our lower bound More...
void | setEndsOpen (bool lower, bool upper)
| sets whether or not the ends of the range are open More...
std::pair< bool, bool > | getEndsOpen () const
| returns the state of our ends (open or not) More...
void | setTol (MatchFuncArgType what)
| sets our tolerance More...
const MatchFuncArgType | getTol () const
| returns our tolerance More...
bool | Match (const DataFuncArgType what) const
| returns whether or not we match the argument More...
Query< MatchFuncArgType, DataFuncArgType, needsConversion > * | copy () const
| returns a copy of this Query More...
std::string | getFullDescription () const
| returns a fuller text description More...
Public Member Functions inherited from Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >
| Query ()
virtual | ~Query ()
void | setNegation (bool what)
| sets whether or not we are negated More...
bool | getNegation () const
| returns whether or not we are negated More...
void | setDescription (const std::string &descr)
| sets our text description More...
void | setDescription (const char *descr)
const std::string & | getDescription () const
| returns our text description More...
void | setMatchFunc (bool(*what)(MatchFuncArgType))
| sets our match function More...
void | setDataFunc (MatchFuncArgType(*what)(DataFuncArgType))
| sets our data function More...
void | addChild (CHILD_TYPE child)
| adds a child to our list of children More...
CHILD_VECT_CI | beginChildren () const
| returns an iterator for the beginning of our child vector More...
CHILD_VECT_CI | endChildren () const
| returns an iterator for the end of our child vector More...

## Protected Attributes
MatchFuncArgType | d_upper
MatchFuncArgType | d_lower
MatchFuncArgType | d_tol
bool | df_upperOpen
bool | df_lowerOpen
Protected Attributes inherited from Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >
std::string | d_description
CHILD_VECT | d_children
bool | df_negate
bool(* | d_matchFunc )(MatchFuncArgType)
MatchFuncArgType(* | d_dataFunc )(DataFuncArgType)

## Additional Inherited Members
Public Types inherited from Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >
typedef boost::shared_ptr< Query< MatchFuncArgType, DataFuncArgType, needsConversion > > | CHILD_TYPE
typedef std::vector< CHILD_TYPE > | CHILD_VECT
typedef CHILD_VECT::iterator | CHILD_VECT_I
typedef CHILD_VECT::const_iterator | CHILD_VECT_CI
Public Attributes inherited from Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >
bool(*)(MatchFuncArgType) | getMatchFunc () const
| returns our match function: More...
MatchFuncArgType(*)(DataFuncArgType) | getDataFunc () const
| returns our data function: More...
Protected Member Functions inherited from Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >
MatchFuncArgType | TypeConvert (MatchFuncArgType what, Int2Type< false >) const
| calls our `dataFunc` (if it's set) on `what` and returns the result, otherwise returns `what` More...
MatchFuncArgType | TypeConvert (DataFuncArgType what, Int2Type< true >) const
| calls our `dataFunc` (which must be set) on `what` and returns the More...

## Detailed Description

### template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>
class Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >

a Query implementing a range: arguments must fall in a particular range of values.

The ends of the range default to be open, but they can individually set to be closed.

There is also an optional tolerance to be used in comparisons

Definition at line 26 of file RangeQuery.h.

## Constructor & Destructor Documentation

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::RangeQuery | ( |  | ) |
| inline

Definition at line 29 of file RangeQuery.h.

References Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >::df_negate.

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::RangeQuery | ( | MatchFuncArgType | lower,
|  | MatchFuncArgType | upper
| ) |  |
| inline

construct and set the lower and upper bounds

Definition at line 38 of file RangeQuery.h.

References Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >::df_negate.

## Member Function Documentation

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

Query<MatchFuncArgType, DataFuncArgType, needsConversion>* Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::copy | ( |  | ) | const
| inlinevirtual

returns a copy of this Query

Notes:

- the caller is responsible for `delete`ing the result

Reimplemented from Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >.

Definition at line 93 of file RangeQuery.h.

References Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >::d_dataFunc, Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >::d_description, Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_lower, Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_tol, Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_upper, Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::df_lowerOpen, Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::df_upperOpen, Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >::getNegation(), Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >::setDataFunc(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::setEndsOpen(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::setLower(), Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >::setNegation(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::setTol(), and Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::setUpper().

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

std::pair<bool, bool> Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::getEndsOpen | ( |  | ) | const
| inline

returns the state of our ends (open or not)

Definition at line 62 of file RangeQuery.h.

References Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::df_lowerOpen, and Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::df_upperOpen.

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

std::string Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::getFullDescription | ( |  | ) | const
| inlinevirtual

returns a fuller text description

Reimplemented from Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >.

Definition at line 106 of file RangeQuery.h.

References Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_lower, Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_upper, Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >::getDescription(), and Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >::getNegation().

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

const MatchFuncArgType Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::getLower | ( |  | ) | const
| inline

returns our lower bound

Definition at line 54 of file RangeQuery.h.

References Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_lower.

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

const MatchFuncArgType Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::getTol | ( |  | ) | const
| inline

returns our tolerance

Definition at line 69 of file RangeQuery.h.

References Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_tol.

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

const MatchFuncArgType Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::getUpper | ( |  | ) | const
| inline

returns our upper bound

Definition at line 50 of file RangeQuery.h.

References Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_upper.

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

bool Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::Match | ( | const DataFuncArgType | arg | ) | const
| inlinevirtual

returns whether or not we match the argument

Reimplemented from Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >.

Definition at line 71 of file RangeQuery.h.

References Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_lower, Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_tol, Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_upper, Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::df_lowerOpen, Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::df_upperOpen, Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >::getNegation(), Queries::queryCmp(), and Queries::Query< MatchFuncArgType, DataFuncArgType, needsConversion >::TypeConvert().

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

void Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::setEndsOpen | ( | bool | lower,
|  | bool | upper
| ) |  |
| inline

sets whether or not the ends of the range are open

Definition at line 57 of file RangeQuery.h.

References Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::df_lowerOpen, and Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::df_upperOpen.

Referenced by Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::copy().

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

void Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::setLower | ( | MatchFuncArgType | what | ) |
| inline

sets our lower bound

Definition at line 52 of file RangeQuery.h.

References Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_lower.

Referenced by Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::copy().

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

void Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::setTol | ( | MatchFuncArgType | what | ) |
| inline

sets our tolerance

Definition at line 67 of file RangeQuery.h.

References Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_tol.

Referenced by Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::copy().

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

void Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::setUpper | ( | MatchFuncArgType | what | ) |
| inline

sets our upper bound

Definition at line 48 of file RangeQuery.h.

References Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_upper.

Referenced by Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::copy().

## Member Data Documentation

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

MatchFuncArgType Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_lower
| protected

Definition at line 112 of file RangeQuery.h.

Referenced by Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::copy(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::getFullDescription(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::getLower(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::Match(), and Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::setLower().

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

MatchFuncArgType Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_tol
| protected

Definition at line 116 of file RangeQuery.h.

Referenced by Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::copy(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::getTol(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::Match(), and Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::setTol().

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

MatchFuncArgType Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::d_upper
| protected

Definition at line 112 of file RangeQuery.h.

Referenced by Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::copy(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::getFullDescription(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::getUpper(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::Match(), and Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::setUpper().

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

bool Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::df_lowerOpen
| protected

Definition at line 117 of file RangeQuery.h.

Referenced by Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::copy(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::getEndsOpen(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::Match(), and Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::setEndsOpen().

template<class MatchFuncArgType, class DataFuncArgType = MatchFuncArgType, bool needsConversion = false>

bool Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::df_upperOpen
| protected

Definition at line 117 of file RangeQuery.h.

Referenced by Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::copy(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::getEndsOpen(), Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::Match(), and Queries::RangeQuery< MatchFuncArgType, DataFuncArgType, needsConversion >::setEndsOpen().

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

- RangeQuery.h