TrigPassFlags Class Reference

#include <TrigPassFlags.h>

List of all members.

Public Member Functions

 TrigPassFlags (const unsigned int size, const unsigned int flagSize, const void *cont=0)
 Constructor to be used by the HLT algorithms Initialized the flags vector.
void setFlagBit (const unsigned int position, const unsigned int bitPosition, const bool bitValue, const void *cont=0)
 Set bit of the flag at index position.
void setFlag (const unsigned int position, const std::vector< bool > &flag, const void *cont=0)
 Set the flag at index position.
bool getFlagBit (const unsigned int position, const unsigned int bitPosition) const
 Returns the bit 'bitPosition' of the flag at index position.
const std::vector< bool > & getFlag (const unsigned int position) const
 Returns the flag (vector<bool>) at index position.
unsigned int size () const
 gets size of the container object vector
unsigned int flagSize () const
 gets size of the flag vector for the object at index

Friends

class TrigPassFlagsCnv_p1

Detailed Description

A Flag is an ordered collection of bits (vector<bool>) that can hold additional (boolean) information about a trigger object. This information can be stored by a Hypo algorithm, together with the trigger object in the same TE. Since trigger objects are often stored within a container in the TE, the TrigPassFlags class acts a container for the corresponding flags.

Note that all flags witin a TrigPassFlags object have to be of the same size (given as parameter flagSize in the constructor)

Warning:
Hypo algorithms should use the helper functions (see below) to modify the TrigPassFlags content

Constructor & Destructor Documentation

TrigPassFlags::TrigPassFlags ( const unsigned int  size,
const unsigned int  flagSize,
const void *  cont = 0 
)

Constructor to be used by the HLT algorithms Initialized the flags vector.

Parameters:
size the size of container for which the flags will be recorded. This determines the length of the outer vector<vector<bool> > of m_flagsPerObject.
flagSize the size of the flags. This determines the length of the inner vector<bool> m_flagsPerObject.
cont pointer to the container, if given then the member functions will be performing additional check if the bits setting is the same (desired initailly container)

Member Function Documentation

const std::vector< bool > & TrigPassFlags::getFlag ( const unsigned int  position  )  const

Returns the flag (vector<bool>) at index position.

Warning:
Hypo algorithms should use the helper function HLT::getFlag (see below) to access the TrigPassFlags
bool TrigPassFlags::getFlagBit ( const unsigned int  position,
const unsigned int  bitPosition 
) const

Returns the bit 'bitPosition' of the flag at index position.

Warning:
Hypo algorithms should use the helper function HLT::getFlagBit (see below) to access the TrigPassFlags
void TrigPassFlags::setFlag ( const unsigned int  position,
const std::vector< bool > &  flag,
const void *  cont = 0 
)

Set the flag at index position.

Parameters:
position postion of the flag in the vector of flags
flagValue value of the flag (can be used if flagSize is smaller than sizeof(int)
Warning:
Hypo algorithms should use the helper function HLT::setFlag (see below) to modify the TrigPassFlags
void TrigPassFlags::setFlagBit ( const unsigned int  position,
const unsigned int  bitPosition,
const bool  bitValue,
const void *  cont = 0 
)

Set bit of the flag at index position.

Parameters:
position postion of the flag in the vector of flags
bitPosition position of the bit within the flag
bitValue enable/disable the bit
Warning:
Hypo algorithms should use the helper function HLT::setFlagBit (see below) to modify the TrigPassFlags

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 1 Dec 2017 for RootCore Packages by  doxygen 1.6.1