TriggerElement is the basic ingreedient of the interface between HLT algorithms and the navigation It holds navigation links by itself but they are not exposed. The way to work with the navigation is only via the Navigation class. More...
#include <TriggerElement.h>
Classes | |
class | FeatureAccessHelper |
the FeatureAccessHelper is a class used to keep track of features attached to this TE. The storage is organized somewhere outside the TriggerElement (i.e. Navigation) Once the TE is queried for the features it returns this access helpers and the entity is supposed to make reasonable use of it. There is number of advantages.
| |
class | ObjectIndex |
Helper class for conversion from/to int stored in TE and pair of ints used in Navigation Object pointer in Navigation is pair of ints. One is pointing so collection of givent type. Second int points to object in this sub collection. In TE fro historical reason (and space saving) this 2 ints need to colapse into one 32bit int. More... | |
Public Types | |
enum | Relation { sameRoIRelation, seedsRelation, seededByRelation } |
possible relations enumeration (Note: uses no longer here) More... | |
enum | States { activeState = 0x1, ghostState = 0x2, nofwdState = 0x4, errorState = 0x8 } |
typedef std::vector < FeatureAccessHelper > | FeatureVec |
Public Member Functions | |
TriggerElement (te_id_type id, bool ghost, bool nofwd=false) | |
te_id_type | getId () const |
reset internals. Needed because of TriggerStore (or TriggerFactory ...) can be used. | |
bool | getActiveState () const |
get state of the TriggerElement | |
void | setActiveState (bool state) |
set state of the TriggerElement | |
bool | ghost () const |
bool | getGhostState () const |
void | setGhostState (bool t=true) |
void | setTransient (bool t=true) |
bool | transient () |
void | setErrorState (bool state=true) |
bool | getErrorState () const |
const std::vector < TriggerElement * > & | getRelated (Relation rel) const |
returns reference to the likns to other TriggerElements related by relation r | |
void | relate (TriggerElement *te, Relation r) const |
reates given TE to other TE | |
void | relate (const std::vector< TriggerElement * > tes, Relation r) const |
relates this TE to vecor of other TEs | |
void | serialize (std::vector< uint32_t > &output, const std::map< TriggerElement *, uint16_t > &keys, const TriggerElement *previous) const |
serializes TE | |
void | deserialize (std::vector< uint32_t >::const_iterator &inputIt, const std::map< uint16_t, TriggerElement * > &keys, const TriggerElement *previous) |
deserialization | |
const std::vector < FeatureAccessHelper > & | getFeatureAccessHelpers () const |
returns all features which ara attached to this TE | |
std::vector < FeatureAccessHelper > & | getFeatureAccessHelpers () |
void | addFeature (class_id_type clid, const ObjectIndex &index, bool forget=false) |
add helper for new feature | |
void | addFeature (const FeatureAccessHelper &f) |
const std::vector < FeatureAccessHelper > & | getPreviousFeatures () const |
std::vector < FeatureAccessHelper > & | getPreviousFeatures () |
Static Public Member Functions | |
static unsigned int | enquireId (std::vector< uint32_t >::const_iterator &inputIt) |
Public Attributes | |
std::map< Relation, std::vector< TriggerElement * > > | m_relations |
relations holder (features outside) |
TriggerElement is the basic ingreedient of the interface between HLT algorithms and the navigation It holds navigation links by itself but they are not exposed. The way to work with the navigation is only via the Navigation class.
void TriggerElement::addFeature | ( | class_id_type | clid, | |
const ObjectIndex & | index, | |||
bool | forget = false | |||
) |
add helper for new feature
clid | the CLID of the object attached | |
index | an integer used to retrieve it | |
forget | is the flag notifying that during serialization link to this objects should be lost |
void TriggerElement::deserialize | ( | std::vector< uint32_t >::const_iterator & | inputIt, | |
const std::map< uint16_t, TriggerElement * > & | keys, | |||
const TriggerElement * | previous | |||
) |
deserialization
inputIt | a point where we should start reading | |
keys | keys wich point to the TE related by seeds relation | |
previous | UNUSED parameter |
te_id_type HLT::TriggerElement::getId | ( | ) | const [inline] |
reset internals. Needed because of TriggerStore (or TriggerFactory ...) can be used.
gets the id of this TriggerElement
const std::vector<TriggerElement*>& HLT::TriggerElement::getRelated | ( | Relation | rel | ) | const [inline] |
returns reference to the likns to other TriggerElements related by relation r
rel | relation name (one of HLT::Navigation::Relation) # |
void TriggerElement::relate | ( | const std::vector< TriggerElement * > | tes, | |
Relation | r | |||
) | const |
relates this TE to vecor of other TEs
tes | vector of TriggerElement pointers | |
r | relation .. one of Relation enums |
void TriggerElement::relate | ( | TriggerElement * | te, | |
Relation | r | |||
) | const |
reates given TE to other TE
te | TriggerElement pointer | |
r | relation .. one of Relation enums Nothe that the relation is usially reflexive ... |
void TriggerElement::serialize | ( | std::vector< uint32_t > & | output, | |
const std::map< TriggerElement *, uint16_t > & | keys, | |||
const TriggerElement * | previous | |||
) | const |
serializes TE
output | is vector of raw integers where to put serialized TE | |
keys | is a map from pointers to ksys ... this keas go to serializized TE | |
previous | UNUSED parameter |