#include <SelectStatement.h>
Inheritance diagram for SelectStatement:
Public Types | |
FUNCTION = 1<<1 | |
STRING = 1<<2 | |
FULL = 1<<3 | |
OTHER = 1<<4 | |
enum | SelectType { FUNCTION = 1<<1, STRING = 1<<2, FULL = 1<<3, OTHER = 1<<4 } |
Statement type definition. More... | |
SUCCESS = 1 | |
Normal successful completion. | |
NO_INTERFACE | |
Requested interface is not available. | |
VERSMISMATCH | |
Requested interface version is incompatible. | |
LAST_ERROR | |
Last error. | |
enum | Status { SUCCESS = 1, NO_INTERFACE, VERSMISMATCH, LAST_ERROR } |
Return status. More... | |
Public Member Functions | |
SelectStatement (const std::string &s, long typ) | |
Standard Constructor initializing select string. | |
SelectStatement (const std::string &s) | |
Standard Constructor initializing select string. | |
SelectStatement () | |
Standard Constructor initializing function call. | |
virtual | ~SelectStatement () |
Standard Destructor. | |
virtual unsigned long | addRef () |
Increase reference count. | |
virtual unsigned long | release () |
Decrease reference count (and eventually delete). | |
virtual StatusCode | queryInterface (const InterfaceID &riid, void **ppvInterface) |
Query interface. | |
long | type () const |
Access the type of the object. | |
const std::string & | criteria () const |
Access the selection string. | |
void | setCriteria (const std::string &crit) |
Set the type. | |
void | setActive (bool flag=true) |
Change activity flag. | |
bool | isActive () const |
Check if selection is active. | |
virtual bool | operator() (void *) |
Stupid default implementation. | |
Static Public Member Functions | |
static const InterfaceID & | interfaceID () |
Retrieve interface ID. | |
Protected Attributes | |
std::string | m_select |
Select string. | |
long | m_refCount |
Reference counter. | |
bool | m_isActive |
Activation flag. | |
long | m_type |
Type identifier. |
A select statement can either contain
bool MySelect::operator()(IValueLocator* l) { float px, py, pz; if ( l->get("PX",px) && l->get("PY",py) && l->get("PZ",pz) ) { float mom = sqrt(px*px+py*py+pz*pz); return mom > 100.0 * GeV; } return false; }
if "true" is returned, the object will be loaded completely.
History: +---------+----------------------------------------------+--------+ | Date | Comment | Who | +---------+----------------------------------------------+--------+ | 21/10/99| Initial version. | MF | +---------+----------------------------------------------+--------+ Author: M.Frank Version: 1.0
Definition at line 46 of file SelectStatement.h.
enum ISelectStatement::SelectType [inherited] |
enum IInterface::Status [inherited] |
Return status.
SUCCESS | Normal successful completion. |
NO_INTERFACE | Requested interface is not available. |
VERSMISMATCH | Requested interface version is incompatible. |
LAST_ERROR | Last error. |
Reimplemented in IConversionSvc, IConverter, and IDataProviderSvc.
Definition at line 113 of file IInterface.h.
00113 { 00115 SUCCESS = 1, 00117 NO_INTERFACE, 00119 VERSMISMATCH, 00121 LAST_ERROR 00122 };
SelectStatement::SelectStatement | ( | const std::string & | s, | |
long | typ | |||
) | [inline, explicit] |
Standard Constructor initializing select string.
Definition at line 49 of file SelectStatement.h.
00050 : m_select(s), m_refCount(0), m_isActive(false), m_type(typ) 00051 { 00052 }
SelectStatement::SelectStatement | ( | const std::string & | s | ) | [inline, explicit] |
Standard Constructor initializing select string.
Definition at line 54 of file SelectStatement.h.
00055 : m_select(s), m_refCount(0), m_isActive(false), m_type(STRING) 00056 { 00057 }
SelectStatement::SelectStatement | ( | ) | [inline, explicit] |
Standard Constructor initializing function call.
Definition at line 59 of file SelectStatement.h.
00060 : m_refCount(0), m_isActive(false), m_type(FUNCTION) 00061 { 00062 }
virtual SelectStatement::~SelectStatement | ( | ) | [inline, virtual] |
virtual unsigned long SelectStatement::addRef | ( | ) | [inline, virtual] |
Increase reference count.
Implements IInterface.
Definition at line 67 of file SelectStatement.h.
00067 { 00068 return ++m_refCount; 00069 }
virtual unsigned long SelectStatement::release | ( | ) | [inline, virtual] |
Decrease reference count (and eventually delete).
Implements IInterface.
Definition at line 71 of file SelectStatement.h.
00071 { 00072 long cnt = --m_refCount; 00073 if ( cnt <= 0 ) { 00074 delete this; 00075 } 00076 return cnt; 00077 }
virtual StatusCode SelectStatement::queryInterface | ( | const InterfaceID & | riid, | |
void ** | ppvInterface | |||
) | [inline, virtual] |
Query interface.
Implements IInterface.
Definition at line 79 of file SelectStatement.h.
00079 { 00080 if ( riid == IID_IInterface ) { 00081 *ppvInterface = (IInterface*)this; 00082 } 00083 if ( riid == IID_ISelectStatement ) { 00084 *ppvInterface = (ISelectStatement*)this; 00085 } 00086 else { 00087 *ppvInterface = 0; 00088 return NO_INTERFACE; 00089 } 00090 addRef(); 00091 return StatusCode::SUCCESS; 00092 }
long SelectStatement::type | ( | ) | const [inline, virtual] |
Access the type of the object.
Implements ISelectStatement.
Definition at line 94 of file SelectStatement.h.
00094 { 00095 return m_type; 00096 }
const std::string& SelectStatement::criteria | ( | ) | const [inline, virtual] |
Access the selection string.
Implements ISelectStatement.
Definition at line 98 of file SelectStatement.h.
00098 { 00099 return m_select; 00100 }
void SelectStatement::setCriteria | ( | const std::string & | crit | ) | [inline, virtual] |
Set the type.
Implements ISelectStatement.
Definition at line 102 of file SelectStatement.h.
00102 { 00103 m_select = crit; 00104 (m_select.length() > 0) ? m_type |= STRING : m_type &= ~STRING; 00105 }
void SelectStatement::setActive | ( | bool | flag = true |
) | [inline, virtual] |
Change activity flag.
Implements ISelectStatement.
Definition at line 107 of file SelectStatement.h.
00107 { 00108 m_isActive = flag; 00109 }
bool SelectStatement::isActive | ( | ) | const [inline, virtual] |
Check if selection is active.
Implements ISelectStatement.
Definition at line 111 of file SelectStatement.h.
00111 { 00112 return m_isActive; 00113 }
virtual bool SelectStatement::operator() | ( | void * | ) | [inline, virtual] |
Stupid default implementation.
Implements ISelectStatement.
Reimplemented in NTuple::Selector.
Definition at line 115 of file SelectStatement.h.
static const InterfaceID& ISelectStatement::interfaceID | ( | ) | [inline, static, inherited] |
Retrieve interface ID.
Reimplemented from IInterface.
Definition at line 44 of file ISelectStatement.h.
00044 { return IID_ISelectStatement; }
std::string SelectStatement::m_select [protected] |
long SelectStatement::m_refCount [protected] |
bool SelectStatement::m_isActive [protected] |
long SelectStatement::m_type [protected] |