BALL  1.4.79
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Protected Attributes | List of all members
BALL::Selector Class Reference

#include <BALL/KERNEL/selector.h>

Inheritance diagram for BALL::Selector:
BALL::UnaryProcessor< Composite > BALL::UnaryFunctor< Composite, Processor::Result >

Public Member Functions

Constructors and Destructors
 Selector ()
 
 Selector (const Selector &selector)
 
 Selector (const String &expression_string)
 
virtual ~Selector ()
 
Assignment
virtual void clear ()
 
Selectoroperator= (const Selector &selector)
 
Predicates
bool operator== (const Selector &selector) const
 
Processor related methods
virtual Processor::Result operator() (Composite &composite)
 
virtual bool start ()
 
Accessors
Size getNumberOfSelectedAtoms () const
 
std::list< Atom * > & getSelectedAtoms ()
 
void setExpression (const Expression &expression)
 
const ExpressiongetExpression () const
 
- Public Member Functions inherited from BALL::UnaryProcessor< Composite >
 UnaryProcessor ()
 
 UnaryProcessor (const UnaryProcessor &)
 
virtual ~UnaryProcessor ()
 
virtual bool finish ()
 

Protected Attributes

std::list< Atom * > selected_atoms_
 
Expression expression_
 

Additional Inherited Members

- Public Types inherited from BALL::UnaryFunctor< Composite, Processor::Result >
typedef Processor::Result result_type
 
typedef Composite argument_type
 
typedef Compositeargument_reference
 
typedef const Compositeconst_argument_reference
 
typedef Compositeargument_pointer
 
typedef const Compositeconst_argument_pointer
 

Detailed Description

Atom Selection from BALL Expression.

This class takes a string that represents an Expression. It can then be applied to a Composite and will select all atoms matching the Expression. Refer to the documentation of Expression for a list of available predicates.
See also
Expression

Definition at line 30 of file selector.h.

Constructor & Destructor Documentation

BALL::Selector::Selector ( )

Default constructor.

BALL::Selector::Selector ( const Selector selector)

Copy constructor.

BALL::Selector::Selector ( const String expression_string)

Construct a Selector with a string. The selector's expression is set to expression_string.

virtual BALL::Selector::~Selector ( )
virtual

Destructor.

Member Function Documentation

virtual void BALL::Selector::clear ( )
virtual

Clear method.

const Expression& BALL::Selector::getExpression ( ) const

Return the expression.

Size BALL::Selector::getNumberOfSelectedAtoms ( ) const

Return the number of atoms selected during the last application.

std::list<Atom*>& BALL::Selector::getSelectedAtoms ( )

Return a list containing pointers to all selected Atoms

virtual Processor::Result BALL::Selector::operator() ( Composite composite)
virtual

Access operator. If the given Composite is an Atom and the current expression_ is fulfilled for that atom, select it by calling Composite::select .

Reimplemented from BALL::UnaryProcessor< Composite >.

Selector& BALL::Selector::operator= ( const Selector selector)

Assignment operator.

bool BALL::Selector::operator== ( const Selector selector) const

Equality.

void BALL::Selector::setExpression ( const Expression expression)

Define the expression.

virtual bool BALL::Selector::start ( )
virtual

Processor start method. This method is needed to reset the internal counter for the number of selected atoms.

Reimplemented from BALL::UnaryProcessor< Composite >.

Member Data Documentation

Expression BALL::Selector::expression_
protected

Definition at line 126 of file selector.h.

std::list<Atom*> BALL::Selector::selected_atoms_
protected

Definition at line 125 of file selector.h.