The Gaudi Framework  v30r3 (a5ef0a68)
SelectStatement Class Reference

Class of a selection statement. More...

#include <GaudiKernel/SelectStatement.h>

Inheritance diagram for SelectStatement:
Collaboration diagram for SelectStatement:

Public Member Functions

 SelectStatement (const std::string &s, long typ)
 Standard Constructor initializing select string. More...
 
 SelectStatement (const std::string &s)
 Standard Constructor initializing select string. More...
 
 SelectStatement ()
 Standard Constructor initializing function call. More...
 
virtual ~SelectStatement ()
 Standard Destructor. More...
 
long type () const override
 Access the type of the object. More...
 
const std::stringcriteria () const override
 Access the selection string. More...
 
void setCriteria (const std::string &crit) override
 Set the type. More...
 
void setActive (bool flag=true) override
 Change activity flag. More...
 
bool isActive () const override
 Check if selection is active. More...
 
virtual bool operator() (void *) override
 Stupid default implementation. More...
 
- Public Member Functions inherited from implements< ISelectStatement >
void * i_cast (const InterfaceID &tid) const override
 Implementation of IInterface::i_cast. More...
 
StatusCode queryInterface (const InterfaceID &ti, void **pp) override
 Implementation of IInterface::queryInterface. More...
 
std::vector< std::stringgetInterfaceNames () const override
 Implementation of IInterface::getInterfaceNames. More...
 
 implements ()=default
 Default constructor. More...
 
 implements (const implements &)
 Copy constructor (zero the reference count) More...
 
implementsoperator= (const implements &)
 Assignment operator (do not touch the reference count). More...
 
unsigned long addRef () override
 Reference Interface instance. More...
 
unsigned long release () override
 Release Interface instance. More...
 
unsigned long refCount () const override
 Current reference count. More...
 

Protected Attributes

std::string m_select
 Select string. More...
 
bool m_isActive
 Activation flag. More...
 
long m_type
 Type identifier. More...
 
- Protected Attributes inherited from implements< ISelectStatement >
std::atomic_ulong m_refCount
 Reference counter. More...
 

Additional Inherited Members

- Public Types inherited from implements< ISelectStatement >
using base_class = implements< Interfaces... >
 Typedef to this class. More...
 
using extend_interfaces_base = extend_interfaces< Interfaces... >
 Typedef to the base of this class. More...
 
using iids = typename extend_interfaces_base::ext_iids
 
- Public Types inherited from extend_interfaces< Interfaces... >
using ext_iids = typename Gaudi::interface_list_cat< typename Interfaces::ext_iids... >::type
 take union of the ext_iids of all Interfaces... More...
 

Detailed Description

Class of a selection statement.

A select statement can either contain

  • a string e.g. for refining an SQL statement
  • a function object, which will be called back in order to refine a selection. This happens in calling sequences like the following:

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 44 of file SelectStatement.h.

Constructor & Destructor Documentation

SelectStatement::SelectStatement ( const std::string s,
long  typ 
)
inlineexplicit

Standard Constructor initializing select string.

Definition at line 48 of file SelectStatement.h.

48 : m_select( s ), m_isActive( false ), m_type( typ ) {}
bool m_isActive
Activation flag.
long m_type
Type identifier.
std::string m_select
Select string.
SelectStatement::SelectStatement ( const std::string s)
inlineexplicit

Standard Constructor initializing select string.

Definition at line 50 of file SelectStatement.h.

50 : m_select( s ), m_isActive( false ), m_type( STRING ) {}
bool m_isActive
Activation flag.
long m_type
Type identifier.
std::string m_select
Select string.
SelectStatement::SelectStatement ( )
inlineexplicit

Standard Constructor initializing function call.

Definition at line 52 of file SelectStatement.h.

52 : m_isActive( false ), m_type( FUNCTION ) {}
bool m_isActive
Activation flag.
long m_type
Type identifier.
virtual SelectStatement::~SelectStatement ( )
inlinevirtual

Standard Destructor.

Definition at line 54 of file SelectStatement.h.

54 {}

Member Function Documentation

const std::string& SelectStatement::criteria ( ) const
inlineoverride

Access the selection string.

Definition at line 58 of file SelectStatement.h.

58 { return m_select; }
std::string m_select
Select string.
bool SelectStatement::isActive ( ) const
inlineoverride

Check if selection is active.

Definition at line 68 of file SelectStatement.h.

68 { return m_isActive; }
bool m_isActive
Activation flag.
virtual bool SelectStatement::operator() ( void *  )
inlineoverridevirtual

Stupid default implementation.

Reimplemented in NTuple::Selector.

Definition at line 70 of file SelectStatement.h.

70 { return true; }
void SelectStatement::setActive ( bool  flag = true)
inlineoverride

Change activity flag.

Definition at line 66 of file SelectStatement.h.

66 { m_isActive = flag; }
bool m_isActive
Activation flag.
void SelectStatement::setCriteria ( const std::string crit)
inlineoverride

Set the type.

Definition at line 60 of file SelectStatement.h.

61  {
62  m_select = crit;
63  ( m_select.length() > 0 ) ? m_type |= STRING : m_type &= ~STRING;
64  }
T length(T...args)
long m_type
Type identifier.
std::string m_select
Select string.
long SelectStatement::type ( ) const
inlineoverride

Access the type of the object.

Definition at line 56 of file SelectStatement.h.

56 { return m_type; }
long m_type
Type identifier.

Member Data Documentation

bool SelectStatement::m_isActive
protected

Activation flag.

Definition at line 76 of file SelectStatement.h.

std::string SelectStatement::m_select
protected

Select string.

Definition at line 74 of file SelectStatement.h.

long SelectStatement::m_type
protected

Type identifier.

Definition at line 78 of file SelectStatement.h.


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