CMS 3D CMS Logo

Classes | Public Types | Public Member Functions | Private Attributes

PhysicsTools::Variable Class Reference

Class describing an input variable. More...

#include <Variable.h>

Inheritance diagram for PhysicsTools::Variable:
PhysicsTools::SourceVariable

List of all members.

Classes

class  Value
 Helper class that can contain an identifier-value pair. More...
class  ValueList
 Helper class that can contain an list of identifier-value pairs. More...

Public Types

enum  Flags { FLAG_NONE = 0, FLAG_OPTIONAL = 1 << 0, FLAG_MULTIPLE = 1 << 1, FLAG_ALL = (1 << 2) - 1 }

Public Member Functions

Flags getFlags () const
const AtomicId getName () const
bool isMultiple () const
bool isOptional () const
 Variable (const Variable &orig)
 Variable (AtomicId name, Flags flags=FLAG_NONE)
 Variable ()

Private Attributes

Flags flags
AtomicId name

Detailed Description

Class describing an input variable.

The class Variable describes an input variable by its name and properties. The name is represented by an atomic identifier (an alphanumerical value). The properties consists of flags. Currently the two flags describe the allowed number of times a variable can appear in the input, whether a variable is allowed to be omitted and whether a variable can have multiple values.

Definition at line 34 of file Variable.h.


Member Enumeration Documentation

Enumerator:
FLAG_NONE 
FLAG_OPTIONAL 
FLAG_MULTIPLE 
FLAG_ALL 

Definition at line 36 of file Variable.h.

                   {
                FLAG_NONE       = 0,
                FLAG_OPTIONAL   = 1 << 0,
                FLAG_MULTIPLE   = 1 << 1,
                FLAG_ALL        = (1 << 2) - 1
        };

Constructor & Destructor Documentation

PhysicsTools::Variable::Variable ( ) [inline]

Definition at line 138 of file Variable.h.

{}
PhysicsTools::Variable::Variable ( const Variable orig) [inline]

Definition at line 139 of file Variable.h.

                                              :
                name(orig.name), flags(orig.flags) {}
PhysicsTools::Variable::Variable ( AtomicId  name,
Flags  flags = FLAG_NONE 
) [inline]

Definition at line 141 of file Variable.h.

                                                                :
                name(name), flags(flags) {}

Member Function Documentation

Flags PhysicsTools::Variable::getFlags ( ) const [inline]

Definition at line 145 of file Variable.h.

References flags.

Referenced by PhysicsTools::MVATrainer::connectProcessors().

{ return flags;}
const AtomicId PhysicsTools::Variable::getName ( void  ) const [inline]
bool PhysicsTools::Variable::isMultiple ( ) const [inline]

Definition at line 148 of file Variable.h.

References FLAG_MULTIPLE, and flags.

{ return flags & FLAG_MULTIPLE; }
bool PhysicsTools::Variable::isOptional ( ) const [inline]

Definition at line 147 of file Variable.h.

References FLAG_OPTIONAL, and flags.

{ return flags & FLAG_OPTIONAL; }

Member Data Documentation

Definition at line 152 of file Variable.h.

Referenced by getFlags(), isMultiple(), and isOptional().

Definition at line 151 of file Variable.h.

Referenced by getName().