ATLAS Offline Software
Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
HLT::HLTResult Class Reference

HLT::HLTResult is sumarising result of trigger decision evaluation (online/offline) It contains basically 3 parts: More...

#include <HLTResult.h>

Inheritance diagram for HLT::HLTResult:
Collaboration diagram for HLT::HLTResult:

Public Member Functions

 HLTResult ()
 constructor More...
 
 HLTResult (const HLTResult &)
 copy constructor More...
 
 HLTResult (HLTResult &&rhs)
 move ctor More...
 
HLTResultoperator= (HLTResult rhs)
 unified assignement operator More...
 
 ~HLTResult ()
 destructor More...
 
virtual bool accepted () const
 reject or accept More...
 
virtual bool error () const
 problems during processing More...
 
virtual uint32_t error_bits () const
 bit flags to explain problems during processing More...
 
bool serialize (std::vector< uint32_t > &output, const unsigned int mod_id)
 
bool serialize (std::vector< uint32_t > &output)
 get the result of the processing as the raw vector of 32 bit unsigned integers More...
 
bool serialize (uint32_t *&output, int &data_size, const int max_size=-1, const unsigned int mod_id=0)
 
bool deserialize (const std::vector< uint32_t > &source)
 GenericResult::deserialize( const std::vector<uint32_t>& source ) More...
 
bool deserialize (uint32_t *source, const int data_size)
 GenericResult::deserialize( uint32_t* source, const int data_size ) More...
 
uint32_t getHLTResultClassVersion () const
 HLTResult version (set accessor is private) More...
 
uint32_t getLvl1Id () const
 gets event number (Lvl1-id) More...
 
void setLvl1Id (uint32_t id)
 sets event number (Lvl1-id) More...
 
bool isAccepted () const
 gets HLT decision More...
 
void setAccepted (bool acc)
 sets HLT decision More...
 
bool isPassThrough () const
 forced-accepted (FA) event configuration the FA request(s) are set per chain and hlt level by the tigger configuration; isForcedAccepted() is set to true if a chain has been accepted owing to the FA mechanism; this is independent of whether the event would been accepted anyway by this chain where the FA has been applied More...
 
void setPassThrough (bool fa)
 set passTrough flag More...
 
ErrorCode getHLTStatus () const
 overall hlt status: if StatusCode::isFailure(), event should be discarded from physics stream (and, eg, send to debug stream) (StatusCode enums are: Failure=0, Success=1, Recoverable=2, see GaudiKernel/ StatusCode.h for more information) More...
 
void setHLTStatus (ErrorCode hltStatus)
 
ErrorCode getLvlConverterStatus () const
 overall hlt status: if StatusCode::isFailure(), event should be discarded from physics stream (and, eg, send to debug stream) (StatusCode enums are: Failure=0, Success=1, Recoverable=2, see GaudiKernel/ StatusCode.h for more information) More...
 
void setLvlConverterStatus (ErrorCode status)
 
HLTLevel getHLTLevel () const
 hlt level (L2 or EF) More...
 
void setHLTLevel (HLTLevel hltLevel)
 
bool isValid () const
 is the result valid More...
 
uint32_t getNumOfSatisfiedSigs () const
 get number of satisfied signatures More...
 
void setNumOfSatisfiedSigs (uint32_t sigs)
 sget number of satisfied signatures More...
 
void setErrorCoordinates (unsigned int chainCounter=0, unsigned int step=0)
 sets the information about the error, namely chain in which the error happened and the step More...
 
void getErrorCoordinates (unsigned int &chainCounter, unsigned int &step) const
 get error coordinates More...
 
bool isCreatedOutsideHLT () const
 is HLTResult created externally, in PSC in example More...
 
void setCreatedOutsideHLT (bool created)
 
void setConfigSuperMasterKey (uint32_t key)
 sets the key of the menu which was used to trigger this event More...
 
uint32_t getConfigSuperMasterKey () const
 gets the key of the menu which was used to trigger this event More...
 
void setConfigPrescalesKey (uint32_t key)
 sets the key of the prescales config which was used to trigger this event More...
 
uint32_t getConfigPrescalesKey () const
 gets the key of the prescales config which was used to trigger this event More...
 
bool isHLTResultTruncated () const
 is serialized HLTResult truncated More...
 
void setHLTResultTruncated (bool truncated)
 
const std::vector< uint32_t > & getNavigationResult () const
 retrieve the sub-payloads (can be used to retrieve/write data) More...
 
const std::vector< uint32_t > & getNavigationResult_DSonly () const
 
const std::vector< uint32_t > & getChainResult () const
 
const std::vector< uint32_t > & getExtras () const
 
std::vector< unsigned int > & getNavigationResultCuts ()
 gets ref to the internal array holding places for safe navigation truncations More...
 
const std::vector< unsigned int > & getNavigationResultCuts () const
 
std::vector< unsigned int > & getNavigationResultCuts_DSonly ()
 gets ref to the internal array holding places for safe navigation truncations More...
 
const std::vector< unsigned int > & getNavigationResultCuts_DSonly () const
 
std::vector< std::pair< CLID, std::string > > & getNavigationResultIDName ()
 gets ref to the internal vector of pairs of CLID and collection name More...
 
const std::vector< std::pair< CLID, std::string > > & getNavigationResultIDName () const
 
std::vector< std::pair< CLID, std::string > > & getNavigationResultIDName_DSonly ()
 gets ref to the internal vector of pairs of CLID and collection name More...
 
const std::vector< std::pair< CLID, std::string > > & getNavigationResultIDName_DSonly () const
 
std::vector< uint32_t > & getNavigationResult ()
 gets ref to the internal array holding serialized navigation More...
 
std::vector< uint32_t > & getNavigationResult_DSonly ()
 gets ref to the internal array holding serialized navigation More...
 
std::vector< uint32_t > & getChainResult ()
 gets ref to the internal array holding serialized chains More...
 
std::vector< uint32_t > & getExtras ()
 
std::map< unsigned int, std::set< std::pair< CLID, std::string > > > & getScoutingMap ()
 methods to get and set the Scouting Map saved into HLTResult More...
 
const std::map< unsigned int, std::set< std::pair< CLID, std::string > > > & getScoutingMap () const
 
void setScoutingMap (const std::map< unsigned int, std::set< std::pair< CLID, std::string > > > &map_modid_clid_name)
 
HLTExtraDatagetExtraData ()
 
unsigned int size () const
 
std::vector< unsigned int > partSizes () const
 
bool isEmpty () const
 true if result is empty More...
 
void listOfModIDs (std::vector< unsigned int > &mod_ids) const
 map of satisfied signatures (needed by TriggerDecisionMaker) returns a vector of satisfied signatures for this event; it is a vector of pairs where first is signature ID, second is signature label(name). More...
 
std::vector< unsigned int > listOfModIDs () const
 return the rob module ID vector More...
 

Private Types

enum  InitBits {
  IndHLTResultClassVersion = 0, IndEventNumber, IndHLTDecision, IndPassThrough,
  IndHLTStatus, IndLvlConverterStatus, IndHLTLevelInfo, IndNumOfSatisfiedSigs,
  IndErrorInChain, IndErrorInStep, IndCreatedOutsideHLT, IndHLTResultTruncated,
  IndConfigSuperMasterKey, IndConfigPrescalesKey, IndNumOfFixedBit
}
 fixed bits; general trigger and status information More...
 
using CutPairs = std::vector< std::pair< unsigned int, unsigned int > >
 
using CutPairVecs = std::pair< CutPairs, CutPairs >
 

Private Member Functions

bool serialize_regular (uint32_t *&output, int &data_size, int max_size)
 
bool serialize_DS (uint32_t *&output, int &data_size, int max_size, unsigned int mod_id)
 
bool serialize_bootstrap (uint32_t *&output, int &data_size, bool &truncating, int max_size, unsigned int estimated_size)
 
bool serialize_body_regular (uint32_t *output, int &data_size, unsigned int umax_size, bool truncating) const
 
bool serialize_body_DS (uint32_t *output, int &data_size, unsigned int max_size, unsigned int nav_size, const CutPairVecs &dscuts, bool truncating) const
 
bool serialize_navigation_reg (uint32_t *output, int &data_size, unsigned int umax_size, bool truncating) const
 
bool serialize_navigation_DS (uint32_t *output, int &data_size, unsigned int umax_size, unsigned int nav_size, const CutPairVecs &dscuts, bool truncating) const
 
void updateExtras ()
 
unsigned int estimateSize () const
 Estimate the size this HLTResult would ocuppy once serialized. More...
 
CutPairVecs findDSCuts (unsigned int) const
 Find the pairs of cut points that mark the boundaries of DS collections for the given module id. More...
 
bool unpackFromStorable (const std::vector< uint32_t > &raw)
 split the rawResult vector into rawPartialResult's More...
 

Static Private Member Functions

static unsigned int calc_total_size_DS (unsigned int ds_nav_size)
 Calculate the size of a DS result, given the size of its navigation. More...
 

Private Attributes

std::vector< uint32_t > m_headerResult
 the full payload, and sub-payloads More...
 
std::vector< uint32_t > m_chainsResult
 storege of serialized chains More...
 
std::vector< uint32_t > m_navigationResult
 storage of navigation (serialized also) More...
 
std::vector< uint32_t > m_navigationResult_DSonly
 storage of navigation (serialized also) for DataScouting More...
 
std::vector< uint32_t > m_extras
 extra storeage (which can be used to store some operational infos) More...
 
std::vector< std::pair< CLID, std::string > > m_id_name
 
std::vector< std::pair< CLID, std::string > > m_id_name_DSonly
 
std::map< unsigned int, std::set< std::pair< CLID, std::string > > > m_modID_id_name
 
std::vector< unsigned int > m_navigationResultCuts
 
std::vector< unsigned int > m_navigationResultCuts_DSonly
 
HLTExtraDatam_extraData
 object for m_extras deserialization (on demand) More...
 

Static Private Attributes

static const uint32_t m_HLTResultClassVersion = 3
 the version of this HLTResult class More...
 

Friends

class HLTResultCnv_p1
 
void swap (HLTResult &lhs, HLTResult &rhs)
 

Detailed Description

HLT::HLTResult is sumarising result of trigger decision evaluation (online/offline) It contains basically 3 parts:

  1. header word which are holding very basic ingormation line if event was accepted or error occurred
  2. serialized trigger chains info
  3. serialized navigation structure (eventually together with objects)

Definition at line 57 of file HLTResult.h.

Member Typedef Documentation

◆ CutPairs

using HLT::HLTResult::CutPairs = std::vector<std::pair<unsigned int, unsigned int> >
private

Definition at line 378 of file HLTResult.h.

◆ CutPairVecs

using HLT::HLTResult::CutPairVecs = std::pair<CutPairs, CutPairs>
private

Definition at line 379 of file HLTResult.h.

Member Enumeration Documentation

◆ InitBits

fixed bits; general trigger and status information

Enumerator
IndHLTResultClassVersion 
IndEventNumber 

event number (from EventInfo::EventID::event_number())

IndHLTDecision 

HLT decision (== 0 if event has been rejected at HLT)

IndPassThrough 

has the event been forced (passed through)

IndHLTStatus 

HLT status corresponding to ErrorCode enums.

IndLvlConverterStatus 

LvlConverter status corresponding to ErrorCode enums.

IndHLTLevelInfo 

the HLT level

IndNumOfSatisfiedSigs 

number of satisfied signatures

IndErrorInChain 

chain ID in which the error occured, in normal conditions sbould be 0

IndErrorInStep 

step number in which error occured, in normal conditions sbould be 0

IndCreatedOutsideHLT 

also an error identifier

IndHLTResultTruncated 

the serialize function could not fit everything into the given max data_size

IndConfigSuperMasterKey 

configuration key for the menu

IndConfigPrescalesKey 

configuration key for prescales

IndNumOfFixedBit 

total number of fixed bits

Definition at line 361 of file HLTResult.h.

Constructor & Destructor Documentation

◆ HLTResult() [1/3]

HLTResult::HLTResult ( )

constructor

Definition at line 24 of file HLTResult.cxx.

24  :
25  m_extraData{nullptr}
26 {
29  //std::cerr << "HLTResult instantiated with version " << m_HLTResultClassVersion << std::endl;
30  // set all fixed bits, if there will be an error then they will be OK ??? mean showing an error
31  setLvl1Id(0xffffffff);
32  setAccepted(false);
33 
34  setHLTStatus(HLT::FATAL);
35 
36  setLvlConverterStatus(HLT::FATAL);
37 
38  setPassThrough(false);
39 
41 
43 
44  setErrorCoordinates(0, 0xffffffff); // quite unique way of saying that this was not used
45 
47 
48  setHLTResultTruncated(false);
49 }

◆ HLTResult() [2/3]

HLTResult::HLTResult ( const HLTResult rhs)

◆ HLTResult() [3/3]

HLTResult::HLTResult ( HLTResult &&  rhs)

move ctor

Definition at line 68 of file HLTResult.cxx.

69  : HLTResult{}
70 {
71  swap(*this, rhs);
72 }

◆ ~HLTResult()

HLTResult::~HLTResult ( )

destructor

Definition at line 82 of file HLTResult.cxx.

82  {
83  delete m_extraData;
84 }

Member Function Documentation

◆ accepted()

virtual bool HLT::HLTResult::accepted ( ) const
inlinevirtual

reject or accept

Returns
true if event is accepted

Implements GenericResult.

Definition at line 71 of file HLTResult.h.

◆ calc_total_size_DS()

unsigned int HLTResult::calc_total_size_DS ( unsigned int  ds_nav_size)
staticprivate

Calculate the size of a DS result, given the size of its navigation.

Definition at line 271 of file HLTResult.cxx.

272 {
273  static constexpr auto num_size_words = 3u;
274  return num_size_words + IndNumOfFixedBit + ds_nav_size;
275 }

◆ deserialize() [1/2]

bool HLTResult::deserialize ( const std::vector< uint32_t > &  source)
virtual

◆ deserialize() [2/2]

bool HLTResult::deserialize ( uint32_t *  source,
const int  data_size 
)
virtual

GenericResult::deserialize( uint32_t* source, const int data_size )

Implements GenericResult.

Definition at line 487 of file HLTResult.cxx.

487  {
488  if (data_size == 0 ) return false;
489  std::vector<uint32_t> rawResult(&source[0], &source[data_size]);
490  return unpackFromStorable(rawResult);
491 }

◆ error()

bool HLTResult::error ( ) const
virtual

problems during processing

Returns
true if there was an error during event processing

Implements GenericResult.

Definition at line 102 of file HLTResult.cxx.

102  {
103  return (getHLTStatus().action() >= HLT::Action::ABORT_CHAIN) ? true : false;
104 }

◆ error_bits()

uint32_t HLTResult::error_bits ( ) const
virtual

bit flags to explain problems during processing

Returns
some bits are set if there was na error

Implements GenericResult.

Definition at line 106 of file HLTResult.cxx.

106  {
107  uint32_t bits = 0;
108  // result of erros in previous levels (not correct previous level result)
109  if (getLvlConverterStatus().action() != HLT::Action::CONTINUE) bits |= 0x1;
110  if (getLvlConverterStatus().steeringInternalReason() == HLT::SteeringInternalReason::NO_LVL1_ITEMS) bits |= 0x2;
111  if (getLvlConverterStatus().steeringInternalReason() == HLT::SteeringInternalReason::NO_LVL2_CHAINS) bits |= 0x4;
112  if (getLvlConverterStatus().steeringInternalReason() == HLT::SteeringInternalReason::WRONG_HLT_RESULT) bits |= 0x8;
113  if (getLvlConverterStatus().steeringInternalReason() == HLT::SteeringInternalReason::NO_HLT_RESULT) bits |= 0x10;
114 
115  // result of erros in this level
116  if (getHLTStatus().action() == HLT::Action::ABORT_JOB) bits |= 0x100;
117  if (getHLTStatus().action() == HLT::Action::ABORT_EVENT) bits |= 0x200;
118  if (getHLTStatus().action() == HLT::Action::ABORT_CHAIN) bits |= 0x400;
119  if (getHLTStatus().reason() == HLT::Reason::TIMEOUT) bits |= 0x800;
120  if (getHLTStatus().reason() == HLT::Reason::NAV_ERROR) bits |= 0x1000;
121  return bits;
122 }

◆ estimateSize()

unsigned int HLTResult::estimateSize ( ) const
private

Estimate the size this HLTResult would ocuppy once serialized.

Definition at line 124 of file HLTResult.cxx.

124  {
125  return IndNumOfFixedBit
126  + m_chainsResult.size() + 1 // size(one word) and payload
127  + m_navigationResult.size() + 1
128  + m_extras.size() + 1;
129 }

◆ findDSCuts()

auto HLTResult::findDSCuts ( unsigned int  mod_id) const
private

Find the pairs of cut points that mark the boundaries of DS collections for the given module id.

Returns
A pair whose first element has the boundaries of collections found in the DS result and whose second element has the boundaries of collections found only in the regular result

Definition at line 243 of file HLTResult.cxx.

244 {
245 
246  auto cuts_dsonly = CutPairs{{0, m_navigationResultCuts_DSonly.at(1)}}; /* the
247  first cut pair contains the preamle for DS
248  navigation: {version, NavSize, TEsSize, NumTEs} */
249  auto cuts_reg = CutPairs{}; // starts empty
250 
251  auto modid_coll_it = m_modID_id_name.find(mod_id);
252  if(modid_coll_it != std::end(m_modID_id_name))
253  {
254  const auto& collections = modid_coll_it->second;
255  find_cuts(collections,
257  {},
259  cuts_dsonly); // cuts for collections only in the DS result
260  find_cuts(collections,
261  m_id_name,
264  cuts_reg); // cuts for collections in the normal result
265  }
266 
267  return std::make_pair(cuts_dsonly, cuts_reg);
268 }

◆ getChainResult() [1/2]

std::vector<uint32_t>& HLT::HLTResult::getChainResult ( )
inline

gets ref to the internal array holding serialized chains

Definition at line 297 of file HLTResult.h.

◆ getChainResult() [2/2]

const std::vector<uint32_t>& HLT::HLTResult::getChainResult ( ) const
inline

Definition at line 258 of file HLTResult.h.

258 { return m_navigationResultCuts; }

◆ getConfigPrescalesKey()

uint32_t HLTResult::getConfigPrescalesKey ( ) const

gets the key of the prescales config which was used to trigger this event

Warning
This info was introduced in version 2 of HLTresult for former data this method returns 0

Definition at line 650 of file HLTResult.cxx.

650  {
653  else
654  return 0;
655 }

◆ getConfigSuperMasterKey()

uint32_t HLTResult::getConfigSuperMasterKey ( ) const

gets the key of the menu which was used to trigger this event

Warning
This info was introduced in version 2 of HLTresult for former data this method returns 0

Definition at line 638 of file HLTResult.cxx.

638  {
641  else
642  return 0;
643 }

◆ getErrorCoordinates()

void HLT::HLTResult::getErrorCoordinates ( unsigned int &  chainCounter,
unsigned int &  step 
) const
inline

get error coordinates

See also
setErrorCoordinates( unsigned int chainCounter, unsigned int step )

Definition at line 210 of file HLTResult.h.

211  { return (m_headerResult[IndCreatedOutsideHLT] == 0 ? false: true); } // previously "hasBeenCreated"

◆ getExtraData()

HLTExtraData & HLTResult::getExtraData ( )

Definition at line 658 of file HLTResult.cxx.

659 {
660  // On-demand deserialization of m_extras
661  if (m_extraData==0) {
663  }
664  return *m_extraData;
665 }

◆ getExtras() [1/2]

std::vector<uint32_t>& HLT::HLTResult::getExtras ( )
inline

Definition at line 304 of file HLTResult.h.

304 {return m_modID_id_name;}

◆ getExtras() [2/2]

const std::vector<uint32_t>& HLT::HLTResult::getExtras ( ) const
inline

Definition at line 259 of file HLTResult.h.

259 { return m_navigationResultCuts; }

◆ getHLTLevel()

HLTLevel HLT::HLTResult::getHLTLevel ( ) const
inline

hlt level (L2 or EF)

Definition at line 179 of file HLTResult.h.

180 { return (getHLTLevel() != HLT::UNKNOWN); }

◆ getHLTResultClassVersion()

uint32_t HLT::HLTResult::getHLTResultClassVersion ( ) const
inline

HLTResult version (set accessor is private)

Definition at line 122 of file HLTResult.h.

◆ getHLTStatus()

ErrorCode HLT::HLTResult::getHLTStatus ( ) const
inline

overall hlt status: if StatusCode::isFailure(), event should be discarded from physics stream (and, eg, send to debug stream) (StatusCode enums are: Failure=0, Success=1, Recoverable=2, see GaudiKernel/ StatusCode.h for more information)

Definition at line 164 of file HLTResult.h.

164 : Failure=0, Success=1, Recoverable=2,

◆ getLvl1Id()

uint32_t HLT::HLTResult::getLvl1Id ( ) const
inline

gets event number (Lvl1-id)

Definition at line 127 of file HLTResult.h.

131 { return (m_headerResult[IndHLTDecision] == 1 ? true : false); }

◆ getLvlConverterStatus()

ErrorCode HLT::HLTResult::getLvlConverterStatus ( ) const
inline

overall hlt status: if StatusCode::isFailure(), event should be discarded from physics stream (and, eg, send to debug stream) (StatusCode enums are: Failure=0, Success=1, Recoverable=2, see GaudiKernel/ StatusCode.h for more information)

Definition at line 173 of file HLTResult.h.

◆ getNavigationResult() [1/2]

std::vector<uint32_t>& HLT::HLTResult::getNavigationResult ( )
inline

gets ref to the internal array holding serialized navigation

Definition at line 287 of file HLTResult.h.

◆ getNavigationResult() [2/2]

const std::vector<uint32_t>& HLT::HLTResult::getNavigationResult ( ) const
inline

retrieve the sub-payloads (can be used to retrieve/write data)

Definition at line 256 of file HLTResult.h.

◆ getNavigationResult_DSonly() [1/2]

std::vector<uint32_t>& HLT::HLTResult::getNavigationResult_DSonly ( )
inline

gets ref to the internal array holding serialized navigation

Definition at line 292 of file HLTResult.h.

◆ getNavigationResult_DSonly() [2/2]

const std::vector<uint32_t>& HLT::HLTResult::getNavigationResult_DSonly ( ) const
inline

Definition at line 257 of file HLTResult.h.

◆ getNavigationResultCuts() [1/2]

std::vector<unsigned int>& HLT::HLTResult::getNavigationResultCuts ( )
inline

gets ref to the internal array holding places for safe navigation truncations

Definition at line 264 of file HLTResult.h.

◆ getNavigationResultCuts() [2/2]

const std::vector<unsigned int>& HLT::HLTResult::getNavigationResultCuts ( ) const
inline

Definition at line 265 of file HLTResult.h.

◆ getNavigationResultCuts_DSonly() [1/2]

std::vector<unsigned int>& HLT::HLTResult::getNavigationResultCuts_DSonly ( )
inline

gets ref to the internal array holding places for safe navigation truncations

Definition at line 270 of file HLTResult.h.

270 { return m_id_name; }

◆ getNavigationResultCuts_DSonly() [2/2]

const std::vector<unsigned int>& HLT::HLTResult::getNavigationResultCuts_DSonly ( ) const
inline

Definition at line 271 of file HLTResult.h.

271 { return m_id_name; }

◆ getNavigationResultIDName() [1/2]

std::vector< std::pair <CLID, std::string> >& HLT::HLTResult::getNavigationResultIDName ( )
inline

gets ref to the internal vector of pairs of CLID and collection name

Definition at line 276 of file HLTResult.h.

276 { return m_id_name_DSonly; }

◆ getNavigationResultIDName() [2/2]

const std::vector< std::pair <CLID, std::string> >& HLT::HLTResult::getNavigationResultIDName ( ) const
inline

Definition at line 277 of file HLTResult.h.

◆ getNavigationResultIDName_DSonly() [1/2]

std::vector< std::pair <CLID, std::string> >& HLT::HLTResult::getNavigationResultIDName_DSonly ( )
inline

gets ref to the internal vector of pairs of CLID and collection name

Definition at line 281 of file HLTResult.h.

281 { return m_navigationResult; }

◆ getNavigationResultIDName_DSonly() [2/2]

const std::vector< std::pair <CLID, std::string> >& HLT::HLTResult::getNavigationResultIDName_DSonly ( ) const
inline

Definition at line 282 of file HLTResult.h.

◆ getNumOfSatisfiedSigs()

uint32_t HLT::HLTResult::getNumOfSatisfiedSigs ( ) const
inline

get number of satisfied signatures

Definition at line 191 of file HLTResult.h.

198 {

◆ getScoutingMap() [1/2]

std::map<unsigned int, std::set<std::pair<CLID, std::string> > >& HLT::HLTResult::getScoutingMap ( )
inline

methods to get and set the Scouting Map saved into HLTResult

Definition at line 309 of file HLTResult.h.

◆ getScoutingMap() [2/2]

const std::map<unsigned int, std::set<std::pair<CLID, std::string> > >& HLT::HLTResult::getScoutingMap ( ) const
inline

Definition at line 310 of file HLTResult.h.

◆ isAccepted()

bool HLT::HLTResult::isAccepted ( ) const
inline

gets HLT decision

Definition at line 137 of file HLTResult.h.

146 { return m_headerResult[IndPassThrough]; }

◆ isCreatedOutsideHLT()

bool HLT::HLTResult::isCreatedOutsideHLT ( ) const
inline

is HLTResult created externally, in PSC in example

Definition at line 217 of file HLTResult.h.

242 { return (m_headerResult[IndHLTResultTruncated] == 0 ? false : true); }

◆ isEmpty()

bool HLTResult::isEmpty ( ) const

true if result is empty

Definition at line 626 of file HLTResult.cxx.

627 {
628  return (m_chainsResult.empty() && m_navigationResult.empty());
629 }

◆ isHLTResultTruncated()

bool HLT::HLTResult::isHLTResultTruncated ( ) const
inline

is serialized HLTResult truncated

Definition at line 248 of file HLTResult.h.

◆ isPassThrough()

bool HLT::HLTResult::isPassThrough ( ) const
inline

forced-accepted (FA) event configuration the FA request(s) are set per chain and hlt level by the tigger configuration; isForcedAccepted() is set to true if a chain has been accepted owing to the FA mechanism; this is independent of whether the event would been accepted anyway by this chain where the FA has been applied

Definition at line 152 of file HLTResult.h.

◆ isValid()

bool HLT::HLTResult::isValid ( ) const
inline

is the result valid

Returns
true if result was ever stuffed, this is to mark results taht were never filled in steeing

Definition at line 186 of file HLTResult.h.

◆ listOfModIDs() [1/2]

std::vector< unsigned int > HLTResult::listOfModIDs ( ) const

return the rob module ID vector

Definition at line 93 of file HLTResult.cxx.

93  {
94 
95  std::vector<unsigned int> mod_ids;
96  for (std::map<unsigned int, std::set<std::pair<CLID, std::string> > >::const_iterator map_it = m_modID_id_name.begin();
97  map_it != m_modID_id_name.end(); ++map_it)
98  mod_ids.push_back((*map_it).first);
99  return mod_ids;
100 }

◆ listOfModIDs() [2/2]

void HLTResult::listOfModIDs ( std::vector< unsigned int > &  mod_ids) const

map of satisfied signatures (needed by TriggerDecisionMaker) returns a vector of satisfied signatures for this event; it is a vector of pairs where first is signature ID, second is signature label(name).

return the rob module ID vector. (fills up rod_mod_ids vector given by reference)

Warning
note that vector is not cleared

Definition at line 86 of file HLTResult.cxx.

86  {
87 
88  for (std::map<unsigned int, std::set<std::pair<CLID, std::string> > >::const_iterator map_it = m_modID_id_name.begin();
89  map_it != m_modID_id_name.end(); ++map_it)
90  mod_ids.push_back((*map_it).first);
91 }

◆ operator=()

HLTResult & HLTResult::operator= ( HLTResult  rhs)

unified assignement operator

Definition at line 75 of file HLTResult.cxx.

76 {
77  swap(*this, rhs);
78  return *this;
79 }

◆ partSizes()

std::vector< unsigned int > HLTResult::partSizes ( ) const

Definition at line 616 of file HLTResult.cxx.

616  {
617  std::vector<unsigned int> sizes;
618  sizes.reserve(4);
619  sizes.push_back(m_headerResult.size());
620  sizes.push_back(m_chainsResult.size());
621  sizes.push_back(m_navigationResult.size());
622  sizes.push_back(m_extras.size());
623  return sizes;
624 }

◆ serialize() [1/3]

bool HLTResult::serialize ( std::vector< uint32_t > &  output)
inlinevirtual

get the result of the processing as the raw vector of 32 bit unsigned integers

Parameters
outputthe place where to put the data
Returns
status of the operation

Implements GenericResult.

Definition at line 442 of file HLTResult.cxx.

443 {
444  return serialize(output, /*mod_id*/ 0);
445 }

◆ serialize() [2/3]

bool HLTResult::serialize ( std::vector< uint32_t > &  output,
const unsigned int  mod_id 
)

Definition at line 447 of file HLTResult.cxx.

449 {
450  uint32_t * aux = nullptr;
451  int data_size = 0;
452 
453  auto ret = serialize(aux, data_size, /*max_size*/ -1, mod_id);
454  auto uptr = std::unique_ptr<uint32_t[]>{aux}; // takes care of deletion
455 
456  output.reserve(data_size);
457  std::copy(aux, aux + data_size, std::back_inserter(output));
458 
459  return ret;
460 }

◆ serialize() [3/3]

bool HLTResult::serialize ( uint32_t *&  output,
int &  data_size,
const int  max_size = -1,
const unsigned int  mod_id = 0 
)
inlinevirtual


Implements GenericResult.

Definition at line 463 of file HLTResult.cxx.

467 {
468  return mod_id ? serialize_DS(output, data_size, max_size, mod_id)
469  : serialize_regular(output, data_size, max_size);
470 }

◆ serialize_body_DS()

bool HLTResult::serialize_body_DS ( uint32_t *  output,
int &  data_size,
unsigned int  max_size,
unsigned int  nav_size,
const CutPairVecs dscuts,
bool  truncating 
) const
private

Definition at line 389 of file HLTResult.cxx.

395 {
396  if(static_cast<unsigned int>(data_size) < umax_size)
397  { // still at least space for chains size
398  output[data_size++] = 0; // no chains
399  if(serialize_navigation_DS(output, data_size, umax_size, nav_size, dscuts,
400  truncating)
401  && static_cast<unsigned int>(data_size) < umax_size)
402  { // we managed to serialize without truncating and have at least 1word left
403  output[data_size++] = 0; // no extras
404  return true; // no truncation
405  }
406  }
407 
408  return false;
409 }

◆ serialize_body_regular()

bool HLTResult::serialize_body_regular ( uint32_t *  output,
int &  data_size,
unsigned int  umax_size,
bool  truncating 
) const
inlineprivate

Definition at line 377 of file HLTResult.cxx.

381 {
382  return serialize_indivisible(output, data_size, m_chainsResult, umax_size,
383  truncating) &&
384  serialize_navigation_reg(output, data_size, umax_size, truncating) &&
385  serialize_indivisible(output, data_size, m_extras, umax_size,
386  truncating);
387 }

◆ serialize_bootstrap()

bool HLTResult::serialize_bootstrap ( uint32_t *&  output,
int &  data_size,
bool &  truncating,
int  max_size,
unsigned int  estimated_size 
)
private

Definition at line 356 of file HLTResult.cxx.

361 {
362  assert(!data_size);
363  assert(!output);
364 
365  auto umax_size = static_cast<unsigned int>(max_size);
366  output = new uint32_t[std::min(umax_size, estimated_size)];
367 
368  truncating = max_size >= 0 && estimated_size > umax_size;
369  setHLTResultTruncated(truncating);
370 
371  // serialize header
372  return serialize_indivisible(output, data_size, m_headerResult, umax_size,
373  truncating, /*first*/true);
374 }

◆ serialize_DS()

bool HLTResult::serialize_DS ( uint32_t *&  output,
int &  data_size,
int  max_size,
unsigned int  mod_id 
)
private

Definition at line 424 of file HLTResult.cxx.

428 {
429  assert(mod_id);
430 
431  bool truncating{false};
432  auto dscuts = findDSCuts(mod_id);
433  auto navsize = calc_colls_size(dscuts.first) + calc_colls_size(dscuts.second);
434 
435  return serialize_bootstrap(output, data_size, truncating, max_size,
436  calc_total_size_DS(navsize)) &&
437  serialize_body_DS(output, data_size, max_size, navsize, dscuts,
438  truncating);
439 }

◆ serialize_navigation_DS()

bool HLTResult::serialize_navigation_DS ( uint32_t *  output,
int &  data_size,
unsigned int  umax_size,
unsigned int  nav_size,
const CutPairVecs dscuts,
bool  truncating 
) const
private

Definition at line 321 of file HLTResult.cxx.

327 {
328  if(nav_size + data_size < umax_size)
329  { // we have space for the navigation + 1 size word
330  output[data_size++] = nav_size;
331  auto index_for_size_in_nav_preamble = data_size + 1;
332 
333  serialize_collections(output, data_size, m_navigationResult_DSonly,
334  dscuts.first);
335  serialize_collections(output, data_size, m_navigationResult, dscuts.second);
336 
337  output[index_for_size_in_nav_preamble] = nav_size; /* the total size needs
338  to be replaced in the navigation preamble as it was originally
339  calculated with all data scouting collections lumped together in the
340  navigation. This needs to be corrected once headers can be changed and
341  serialization can be requested for each module ID separately.
342  TODO: remove when changing headers */
343  }
344  else
345  {
346  assert(truncating);
347 
348  if(static_cast<unsigned int>(data_size) < umax_size)
349  output[data_size++] = 0; /* we can still write the size; (partial
350  navigation not supported in DS) */
351  }
352 
353  return !truncating;
354 }

◆ serialize_navigation_reg()

bool HLTResult::serialize_navigation_reg ( uint32_t *  output,
int &  data_size,
unsigned int  umax_size,
bool  truncating 
) const
private

Definition at line 277 of file HLTResult.cxx.

281 {
282  auto calc_size_needed = [data_size](unsigned int nav_size)
283  { return nav_size + data_size + 1; }; /* given a
284  navigation size, this gives the
285  total space needed in the output */
286  auto is_within_size = [umax_size, &calc_size_needed](unsigned int cut)
287  { return calc_size_needed(cut) <= umax_size; }; /* tells
288  whether the given cut would make it
289  within the allowed size */
290 
291  if(static_cast<unsigned int>(data_size) < umax_size)
292  { // there is still some space (even if we end up truncating)
293  const auto tot_nav_size = m_navigationResult.size(); // cache the total size
294  auto cut_nav_size = tot_nav_size; // init cut size
295  auto endnav = std::end(m_navigationResult); // and cut point
296 
297  if(truncating && calc_size_needed(tot_nav_size) > umax_size)
298  { // Truncation falls in navigation, so find the last cut that still fits
299  auto cutit = std::find_if(m_navigationResultCuts.rbegin(),
300  m_navigationResultCuts.rend(),
301  is_within_size);
302  cut_nav_size = (cutit == m_navigationResultCuts.rend()) ? 0 : *cutit;
303  endnav -= tot_nav_size - cut_nav_size;
304  }
305 
306  assert(endnav == std::begin(m_navigationResult) + cut_nav_size); /* endnav
307  now marks the cutting point, while cut_nav_size
308  says how many nav words we are copying */
309 
310  output[data_size++] = cut_nav_size;
311  copy(std::begin(m_navigationResult), endnav, output+data_size);
312  data_size += cut_nav_size;
313 
314  return endnav == std::end(m_navigationResult); /* whether we went with the
315  full navigation */
316  }
317 
318  return false; // we did not even have space for the size
319 }

◆ serialize_regular()

bool HLTResult::serialize_regular ( uint32_t *&  output,
int &  data_size,
int  max_size 
)
private

Definition at line 411 of file HLTResult.cxx.

414 {
415  updateExtras();
416  bool truncating{false};
417  auto estim_size = estimateSize();
418  return serialize_bootstrap(output, data_size, truncating,
419  max_size, estim_size) &&
420  serialize_body_regular(output, data_size,
421  max_size, truncating);
422 }

◆ setAccepted()

void HLT::HLTResult::setAccepted ( bool  acc)
inline

sets HLT decision

Definition at line 142 of file HLTResult.h.

146 { return m_headerResult[IndPassThrough]; }

◆ setConfigPrescalesKey()

void HLTResult::setConfigPrescalesKey ( uint32_t  key)

sets the key of the prescales config which was used to trigger this event

Definition at line 645 of file HLTResult.cxx.

645  {
646  if (m_HLTResultClassVersion >=2 )
648 }

◆ setConfigSuperMasterKey()

void HLTResult::setConfigSuperMasterKey ( uint32_t  key)

sets the key of the menu which was used to trigger this event

Definition at line 632 of file HLTResult.cxx.

632  {
633  if (m_HLTResultClassVersion >=2 )
635 }

◆ setCreatedOutsideHLT()

void HLT::HLTResult::setCreatedOutsideHLT ( bool  created)
inline

Definition at line 218 of file HLTResult.h.

242 { return (m_headerResult[IndHLTResultTruncated] == 0 ? false : true); }

◆ setErrorCoordinates()

void HLT::HLTResult::setErrorCoordinates ( unsigned int  chainCounter = 0,
unsigned int  step = 0 
)
inline

sets the information about the error, namely chain in which the error happened and the step

Parameters
chainCountersays in which chain it was (0 denotes that error wasn;t inchains processing)
stepis telling in which step in the chain the error occured

Definition at line 204 of file HLTResult.h.

204  {

◆ setHLTLevel()

void HLT::HLTResult::setHLTLevel ( HLTLevel  hltLevel)
inline

Definition at line 180 of file HLTResult.h.

180 { return (getHLTLevel() != HLT::UNKNOWN); }

◆ setHLTResultTruncated()

void HLT::HLTResult::setHLTResultTruncated ( bool  truncated)
inline

Definition at line 249 of file HLTResult.h.

250  { return m_navigationResult; }
251  const std::vector<uint32_t>& getNavigationResult_DSonly() const { return m_navigationResult_DSonly; }

◆ setHLTStatus()

void HLT::HLTResult::setHLTStatus ( ErrorCode  hltStatus)
inline

Definition at line 165 of file HLTResult.h.

◆ setLvl1Id()

void HLT::HLTResult::setLvl1Id ( uint32_t  id)
inline

sets event number (Lvl1-id)

Definition at line 132 of file HLTResult.h.

◆ setLvlConverterStatus()

void HLT::HLTResult::setLvlConverterStatus ( ErrorCode  status)
inline

Definition at line 174 of file HLTResult.h.

174 { m_headerResult[IndHLTLevelInfo] = hltLevel; }

◆ setNumOfSatisfiedSigs()

void HLT::HLTResult::setNumOfSatisfiedSigs ( uint32_t  sigs)
inline

sget number of satisfied signatures

Definition at line 196 of file HLTResult.h.

198 {

◆ setPassThrough()

void HLT::HLTResult::setPassThrough ( bool  fa)
inline

set passTrough flag

See also
isPassThrough

Definition at line 156 of file HLTResult.h.

◆ setScoutingMap()

void HLT::HLTResult::setScoutingMap ( const std::map< unsigned int, std::set< std::pair< CLID, std::string > > > &  map_modid_clid_name)
inline

Definition at line 312 of file HLTResult.h.

◆ size()

unsigned int HLTResult::size ( ) const

Definition at line 612 of file HLTResult.cxx.

612  {
613  return m_headerResult.size() + m_chainsResult.size() + m_navigationResult.size() + m_extras.size();
614 }

◆ unpackFromStorable()

bool HLTResult::unpackFromStorable ( const std::vector< uint32_t > &  raw)
private

split the rawResult vector into rawPartialResult's

Definition at line 493 of file HLTResult.cxx.

494 {
495  if (raw.empty())
496  return false;
497 
498  // default assumption: fixed bits of raw data are same as present class
499  unsigned int rawIndNumOfFixedBit = HLTResult::IndNumOfFixedBit;
500 
501  unsigned version = raw[0];
502 
503  // different version handling
505  if (version == 1) {
506  // version 1 had only 12 InitBits
507  rawIndNumOfFixedBit = 12;
508  } else if (version == 2 ) {
509  // nothing to be done
510  } else { // case we don't know about
511  std::cerr << "HLTResult::unpackFromStorable has noticed a class version mismatch and does not know how to translate: raw data version " << raw[0] << " current class version " << m_HLTResultClassVersion << std::endl;
512  return false;
513  }
514 
515  }
516  if ( raw.size() < HLTResult::IndNumOfFixedBit )
517  return false;
518  m_headerResult.assign(raw.begin(),
519  raw.begin()+rawIndNumOfFixedBit);
520 
521  // fill up with zeros so use of HLTResult::IndNumOfFixedBit of other indices past the end doesn't break
523 
524  if ( raw.size() == rawIndNumOfFixedBit )
525  return true; // that's OK, we have just empty event, no processing started
526 
527  // chains
528  uint32_t offset = rawIndNumOfFixedBit;
529  uint32_t sizeOfChains = raw[offset];
530  offset++;
531 
532  uint32_t readEnd = offset + sizeOfChains;
533  bool truncation = false;
534 
535  if ( readEnd > raw.size() ){
536  readEnd = raw.size();
537  truncation = true;
538  }
539 
540 
541  m_chainsResult.assign(raw.begin()+offset, raw.begin()+readEnd);
542  offset += sizeOfChains;
543 
544  if (truncation) {
545  if ( isHLTResultTruncated() ) // if truncation was marked by creator it is OK
546  return true;
547  else // we need to report problems as there was extra truncation in the way which might have been done w/o any care about content
548  return false;
549  }
550 
551  // navigation
552  uint32_t sizeOfNavigation = raw[offset];
553  offset++;
554  // check if offset is not beyond size of raw result
555 
556 
557  readEnd = offset + sizeOfNavigation;
558  if (readEnd > raw.size()) {
559  readEnd = raw.size();
560  truncation = true;
561  }
562 
563 
564  if ( offset > readEnd )
565  return true;
566 
567  m_navigationResult.assign(raw.begin()+offset,
568  raw.begin()+readEnd);
569 
570 
571  if (truncation) {
572  if ( isHLTResultTruncated() )
573  return true;
574  else
575  return false;
576  }
577  offset += sizeOfNavigation;
578 
579  if (version >= 3) {
580  // extras
581  uint32_t sizeOfExtras = 0;
582  if (offset < raw.size()) {
583  sizeOfExtras = raw[offset++];
584  }
585  else {
586  truncation = true;
587  }
588 
589  readEnd = offset + sizeOfExtras;
590  if (readEnd > raw.size()) {
591  readEnd = raw.size();
592  truncation = true;
593  }
594 
595  if ( offset > readEnd )
596  return true;
597 
598  m_extras.assign(raw.begin()+offset,
599  raw.begin()+readEnd);
600  if (truncation) {
601  if ( isHLTResultTruncated() )
602  return true;
603  else
604  return false;
605  }
606  }
607 
608  return true;
609 }

◆ updateExtras()

void HLTResult::updateExtras ( )
inlineprivate

Definition at line 473 of file HLTResult.cxx.

474 {
475  if (m_extraData)
476  { // the extraData object has been used, so serialize again into m_extras
477  m_extras.clear();
479  }
480 }

Friends And Related Function Documentation

◆ HLTResultCnv_p1

friend class HLTResultCnv_p1
friend

Definition at line 356 of file HLTResult.h.

◆ swap

void swap ( HLTResult lhs,
HLTResult rhs 
)
friend

Member Data Documentation

◆ m_chainsResult

std::vector<uint32_t> HLT::HLTResult::m_chainsResult
private

storege of serialized chains

Definition at line 483 of file HLTResult.h.

◆ m_extraData

HLTExtraData* HLT::HLTResult::m_extraData
private

object for m_extras deserialization (on demand)

Definition at line 498 of file HLTResult.h.

◆ m_extras

std::vector<uint32_t> HLT::HLTResult::m_extras
private

extra storeage (which can be used to store some operational infos)

Definition at line 486 of file HLTResult.h.

◆ m_headerResult

std::vector<uint32_t> HLT::HLTResult::m_headerResult
private

the full payload, and sub-payloads

storage of header words

Definition at line 482 of file HLTResult.h.

◆ m_HLTResultClassVersion

const uint32_t HLTResult::m_HLTResultClassVersion = 3
staticprivate

the version of this HLTResult class

version of HLTResult class: change this upon schema evolution

Definition at line 476 of file HLTResult.h.

◆ m_id_name

std::vector< std::pair < CLID, std::string > > HLT::HLTResult::m_id_name
private

Definition at line 488 of file HLTResult.h.

◆ m_id_name_DSonly

std::vector< std::pair < CLID, std::string > > HLT::HLTResult::m_id_name_DSonly
private

Definition at line 490 of file HLTResult.h.

◆ m_modID_id_name

std::map<unsigned int, std::set<std::pair<CLID, std::string> > > HLT::HLTResult::m_modID_id_name
private

Definition at line 492 of file HLTResult.h.

◆ m_navigationResult

std::vector<uint32_t> HLT::HLTResult::m_navigationResult
private

storage of navigation (serialized also)

Definition at line 484 of file HLTResult.h.

◆ m_navigationResult_DSonly

std::vector<uint32_t> HLT::HLTResult::m_navigationResult_DSonly
private

storage of navigation (serialized also) for DataScouting

Definition at line 485 of file HLTResult.h.

◆ m_navigationResultCuts

std::vector<unsigned int> HLT::HLTResult::m_navigationResultCuts
private

Definition at line 494 of file HLTResult.h.

◆ m_navigationResultCuts_DSonly

std::vector<unsigned int> HLT::HLTResult::m_navigationResultCuts_DSonly
private

Definition at line 496 of file HLTResult.h.


The documentation for this class was generated from the following files:
HLT::Reason::NAV_ERROR
@ NAV_ERROR
suspected Navigation error
Definition: Trigger/TrigEvent/TrigSteeringEvent/TrigSteeringEvent/Enums.h:33
HLT::SteeringInternalReason::NO_LVL1_ITEMS
@ NO_LVL1_ITEMS
in the LVL1 result delivered to LVL2 none of LVL1 items are present, that means no seeding informatio...
Definition: Trigger/TrigEvent/TrigSteeringEvent/TrigSteeringEvent/Enums.h:54
HLT::HLTResult::IndEventNumber
@ IndEventNumber
event number (from EventInfo::EventID::event_number())
Definition: HLTResult.h:362
HLT::HLTResult::setLvlConverterStatus
void setLvlConverterStatus(ErrorCode status)
Definition: HLTResult.h:174
HLT::HLTResult::m_extras
std::vector< uint32_t > m_extras
extra storeage (which can be used to store some operational infos)
Definition: HLTResult.h:486
HLT::HLTResult::serialize_regular
bool serialize_regular(uint32_t *&output, int &data_size, int max_size)
Definition: HLTResult.cxx:411
HLT::HLTResult::serialize_bootstrap
bool serialize_bootstrap(uint32_t *&output, int &data_size, bool &truncating, int max_size, unsigned int estimated_size)
Definition: HLTResult.cxx:356
HLT::HLTResult::setHLTStatus
void setHLTStatus(ErrorCode hltStatus)
Definition: HLTResult.h:165
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
HLT::HLTResult::m_modID_id_name
std::map< unsigned int, std::set< std::pair< CLID, std::string > > > m_modID_id_name
Definition: HLTResult.h:492
HLT::SteeringInternalReason::WRONG_HLT_RESULT
@ WRONG_HLT_RESULT
error while unpacking HLT reult (happnes at EF when LVL2 result is unpacked)
Definition: Trigger/TrigEvent/TrigSteeringEvent/TrigSteeringEvent/Enums.h:57
HLT::Action::ABORT_EVENT
@ ABORT_EVENT
if things went wrong severely, event corruption suspected
Definition: Trigger/TrigEvent/TrigSteeringEvent/TrigSteeringEvent/Enums.h:18
min
constexpr double min()
Definition: ap_fixedTest.cxx:26
HLT::Action::ABORT_JOB
@ ABORT_JOB
if things go really wrong, i.e.
Definition: Trigger/TrigEvent/TrigSteeringEvent/TrigSteeringEvent/Enums.h:19
HLT::HLTResult::m_extraData
HLTExtraData * m_extraData
object for m_extras deserialization (on demand)
Definition: HLTResult.h:498
HLT::HLTResult::IndNumOfSatisfiedSigs
@ IndNumOfSatisfiedSigs
number of satisfied signatures
Definition: HLTResult.h:368
PlotCalibFromCool.begin
begin
Definition: PlotCalibFromCool.py:94
HLT::SteeringInternalReason::NO_LVL2_CHAINS
@ NO_LVL2_CHAINS
in the LVL2 result unpacked at EF no active LVL2 chains are present, that means no seeding informatio...
Definition: Trigger/TrigEvent/TrigSteeringEvent/TrigSteeringEvent/Enums.h:55
HLT::SteeringInternalReason::NO_HLT_RESULT
@ NO_HLT_RESULT
no HLT result is present (means that LVL2 result was not delivered to EF)
Definition: Trigger/TrigEvent/TrigSteeringEvent/TrigSteeringEvent/Enums.h:58
HLT::HLTResult::swap
friend void swap(HLTResult &lhs, HLTResult &rhs)
HLT::HLTResult::IndHLTDecision
@ IndHLTDecision
HLT decision (== 0 if event has been rejected at HLT)
Definition: HLTResult.h:363
HLT::HLTResult::IndLvlConverterStatus
@ IndLvlConverterStatus
LvlConverter status corresponding to ErrorCode enums.
Definition: HLTResult.h:366
HLT::HLTResult::IndConfigPrescalesKey
@ IndConfigPrescalesKey
configuration key for prescales
Definition: HLTResult.h:374
HLT::HLTExtraData::serialize
void serialize(std::vector< uint32_t > &storage)
Serialize the data and append it to the vector.
Definition: HLTExtraData.cxx:47
Trk::u
@ u
Enums for curvilinear frames.
Definition: ParamDefs.h:77
HLT::HLTResult::setErrorCoordinates
void setErrorCoordinates(unsigned int chainCounter=0, unsigned int step=0)
sets the information about the error, namely chain in which the error happened and the step
Definition: HLTResult.h:204
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
HLT::HLTResult::m_chainsResult
std::vector< uint32_t > m_chainsResult
storege of serialized chains
Definition: HLTResult.h:483
HLT::HLTResult::IndHLTStatus
@ IndHLTStatus
HLT status corresponding to ErrorCode enums.
Definition: HLTResult.h:365
HLT::HLTResult::IndNumOfFixedBit
@ IndNumOfFixedBit
total number of fixed bits
Definition: HLTResult.h:375
HLT::UNKNOWN
@ UNKNOWN
Definition: Trigger/TrigEvent/TrigSteeringEvent/TrigSteeringEvent/Enums.h:173
HLT::HLTResult::m_navigationResult_DSonly
std::vector< uint32_t > m_navigationResult_DSonly
storage of navigation (serialized also) for DataScouting
Definition: HLTResult.h:485
HLT::HLTResult::getLvlConverterStatus
ErrorCode getLvlConverterStatus() const
overall hlt status: if StatusCode::isFailure(), event should be discarded from physics stream (and,...
Definition: HLTResult.h:173
HTXS::ErrorCode
ErrorCode
Error code: whether the classification was successful or failed.
Definition: HiggsTemplateCrossSectionsDefs.h:12
HLT::HLTResult::serialize
bool serialize(std::vector< uint32_t > &output, const unsigned int mod_id)
Definition: HLTResult.cxx:447
HLT::HLTResult::IndErrorInStep
@ IndErrorInStep
step number in which error occured, in normal conditions sbould be 0
Definition: HLTResult.h:370
HLT::HLTResult::CutPairs
std::vector< std::pair< unsigned int, unsigned int > > CutPairs
Definition: HLTResult.h:378
HLT::HLTResult::serialize_DS
bool serialize_DS(uint32_t *&output, int &data_size, int max_size, unsigned int mod_id)
Definition: HLTResult.cxx:424
HLT::HLTResult::setNumOfSatisfiedSigs
void setNumOfSatisfiedSigs(uint32_t sigs)
sget number of satisfied signatures
Definition: HLTResult.h:196
HLT::HLTResult::IndConfigSuperMasterKey
@ IndConfigSuperMasterKey
configuration key for the menu
Definition: HLTResult.h:373
HLT::HLTResult::IndErrorInChain
@ IndErrorInChain
chain ID in which the error occured, in normal conditions sbould be 0
Definition: HLTResult.h:369
HLT::HLTResult::isHLTResultTruncated
bool isHLTResultTruncated() const
is serialized HLTResult truncated
Definition: HLTResult.h:248
BindingsTest.cut
cut
This script demonstrates how to call a C++ class from Python Also how to use PyROOT is shown.
Definition: BindingsTest.py:13
AthenaPoolTestRead.acc
acc
Definition: AthenaPoolTestRead.py:16
HLT::HLTResult::m_id_name
std::vector< std::pair< CLID, std::string > > m_id_name
Definition: HLTResult.h:488
HLT::HLTResult::IndCreatedOutsideHLT
@ IndCreatedOutsideHLT
also an error identifier
Definition: HLTResult.h:371
HLT::HLTResult
HLT::HLTResult is sumarising result of trigger decision evaluation (online/offline) It contains basic...
Definition: HLTResult.h:57
HLT::HLTResult::setCreatedOutsideHLT
void setCreatedOutsideHLT(bool created)
Definition: HLTResult.h:218
HLT::HLTResult::m_id_name_DSonly
std::vector< std::pair< CLID, std::string > > m_id_name_DSonly
Definition: HLTResult.h:490
HLT::HLTResult::estimateSize
unsigned int estimateSize() const
Estimate the size this HLTResult would ocuppy once serialized.
Definition: HLTResult.cxx:124
HLT::HLTResult::serialize_navigation_DS
bool serialize_navigation_DS(uint32_t *output, int &data_size, unsigned int umax_size, unsigned int nav_size, const CutPairVecs &dscuts, bool truncating) const
Definition: HLTResult.cxx:321
HLT::HLTResult::m_navigationResult
std::vector< uint32_t > m_navigationResult
storage of navigation (serialized also)
Definition: HLTResult.h:484
CxxUtils::set
constexpr std::enable_if_t< is_bitmask_v< E >, E & > set(E &lhs, E rhs)
Convenience function to set bits in a class enum bitmask.
Definition: bitmask.h:232
HLT::HLTResult::IndHLTResultTruncated
@ IndHLTResultTruncated
the serialize function could not fit everything into the given max data_size
Definition: HLTResult.h:372
HLT::Reason::TIMEOUT
@ TIMEOUT
the timeout occured
Definition: Trigger/TrigEvent/TrigSteeringEvent/TrigSteeringEvent/Enums.h:36
merge.output
output
Definition: merge.py:17
HLT::HLTResult::serialize_body_DS
bool serialize_body_DS(uint32_t *output, int &data_size, unsigned int max_size, unsigned int nav_size, const CutPairVecs &dscuts, bool truncating) const
Definition: HLTResult.cxx:389
HLT::Action::ABORT_CHAIN
@ ABORT_CHAIN
if things went wrong but it is not severe, other unrelated chains will continue
Definition: Trigger/TrigEvent/TrigSteeringEvent/TrigSteeringEvent/Enums.h:17
id
SG::auxid_t id
Definition: Control/AthContainers/Root/debug.cxx:227
HLT::HLTResult::getHLTStatus
ErrorCode getHLTStatus() const
overall hlt status: if StatusCode::isFailure(), event should be discarded from physics stream (and,...
Definition: HLTResult.h:164
HLT::HLTResult::m_navigationResultCuts
std::vector< unsigned int > m_navigationResultCuts
Definition: HLTResult.h:494
HLT::Action::CONTINUE
@ CONTINUE
if all is OK the processing should be continued
Definition: Trigger/TrigEvent/TrigSteeringEvent/TrigSteeringEvent/Enums.h:16
HLT::HLTResult::calc_total_size_DS
static unsigned int calc_total_size_DS(unsigned int ds_nav_size)
Calculate the size of a DS result, given the size of its navigation.
Definition: HLTResult.cxx:271
get_generator_info.version
version
Definition: get_generator_info.py:33
HLT::HLTResult::setAccepted
void setAccepted(bool acc)
sets HLT decision
Definition: HLTResult.h:142
HLT::HLTResult::m_headerResult
std::vector< uint32_t > m_headerResult
the full payload, and sub-payloads
Definition: HLTResult.h:482
HLT::HLTResult::setPassThrough
void setPassThrough(bool fa)
set passTrough flag
Definition: HLTResult.h:156
HLT::HLTResult::IndHLTLevelInfo
@ IndHLTLevelInfo
the HLT level
Definition: HLTResult.h:367
python.CaloScaleNoiseConfig.action
action
Definition: CaloScaleNoiseConfig.py:77
convertTimingResiduals.offset
offset
Definition: convertTimingResiduals.py:71
LArCellBinning.step
step
Definition: LArCellBinning.py:158
HLT::HLTResult::getHLTLevel
HLTLevel getHLTLevel() const
hlt level (L2 or EF)
Definition: HLTResult.h:179
HLT::HLTResult::unpackFromStorable
bool unpackFromStorable(const std::vector< uint32_t > &raw)
split the rawResult vector into rawPartialResult's
Definition: HLTResult.cxx:493
copySelective.source
string source
Definition: copySelective.py:32
HLT::HLTResult::IndPassThrough
@ IndPassThrough
has the event been forced (passed through)
Definition: HLTResult.h:364
calibdata.copy
bool copy
Definition: calibdata.py:27
HLT::HLTResult::IndHLTResultClassVersion
@ IndHLTResultClassVersion
Definition: HLTResult.h:361
HLT::HLTResult::getNavigationResult_DSonly
const std::vector< uint32_t > & getNavigationResult_DSonly() const
Definition: HLTResult.h:257
HLT::HLTResult::serialize_navigation_reg
bool serialize_navigation_reg(uint32_t *output, int &data_size, unsigned int umax_size, bool truncating) const
Definition: HLTResult.cxx:277
HLT::HLTResult::m_navigationResultCuts_DSonly
std::vector< unsigned int > m_navigationResultCuts_DSonly
Definition: HLTResult.h:496
HLT::HLTExtraData
Class representing the HLT extra payload stored in HLT::HLTResult::getExtras()
Definition: HLTExtraData.h:36
HLT::HLTResult::setLvl1Id
void setLvl1Id(uint32_t id)
sets event number (Lvl1-id)
Definition: HLTResult.h:132
HLT::HLTResult::m_HLTResultClassVersion
static const uint32_t m_HLTResultClassVersion
the version of this HLTResult class
Definition: HLTResult.h:476
HLT::HLTResult::updateExtras
void updateExtras()
Definition: HLTResult.cxx:473
HLT::HLTResult::findDSCuts
CutPairVecs findDSCuts(unsigned int) const
Find the pairs of cut points that mark the boundaries of DS collections for the given module id.
Definition: HLTResult.cxx:243
HLT::HLTResult::setHLTResultTruncated
void setHLTResultTruncated(bool truncated)
Definition: HLTResult.h:249
HLT::HLTLevel
HLTLevel
Definition: Trigger/TrigEvent/TrigSteeringEvent/TrigSteeringEvent/Enums.h:173
HLT::HLTResult::serialize_body_regular
bool serialize_body_regular(uint32_t *output, int &data_size, unsigned int umax_size, bool truncating) const
Definition: HLTResult.cxx:377
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37
HLT::HLTResult::setHLTLevel
void setHLTLevel(HLTLevel hltLevel)
Definition: HLTResult.h:180