|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef TRIGCOSTANALYSIS_COSTDATA_H
6 #define TRIGCOSTANALYSIS_COSTDATA_H 1
8 #include "GaudiKernel/StatusCode.h"
76 const std::map<std::string, std::set<size_t>>&
chainToAlgMap()
const;
81 void setChainToAlgMap(
const std::map<std::string, std::set<size_t>>& algToChains );
96 const std::map<std::string, std::map<int16_t, std::set<size_t>>>&
sequencersMap()
const;
106 const std::vector<TrigCompositeUtils::AlgToChainTool::ChainInfo>&
seededChains()
const;
177 void setTypeMap(
const std::unordered_map<uint32_t, std::string>& typeMap );
199 const std::map<std::string, std::map<int16_t, std::set<size_t>>>*
m_sequencers =
nullptr;
200 const std::vector<TrigCompositeUtils::AlgToChainTool::ChainInfo>*
m_seededChains =
nullptr;
204 #endif // TRIGCOSTANALYSIS_COSTDATA_H
void setSequencersMap(const std::map< std::string, std::map< int16_t, std::set< size_t >>> &seqToAlg)
Set the sequence to alg idx map.
const xAOD::TrigCompositeContainer * m_rosCollection
Cached non-owning pointer to ros cost collection.
const std::map< std::string, std::map< int16_t, std::set< size_t > > > & sequencersMap() const
Getter of the sequence to alg idx map.
const std::vector< TrigCompositeUtils::AlgToChainTool::ChainInfo > * m_seededChains
Set of seeded chains to monitor.
bool isMasterSlot() const
float liveTime() const
Getter of effective P1 walltime represented by either the current event, or the current lumi block.
void setTypeMap(const std::unordered_map< uint32_t, std::string > &typeMap)
Set internal type map pointer.
~CostData()=default
Default destructor.
const std::map< std::string, std::set< size_t > > & chainToUniqAlgMap() const
Getter of the chain to its unique alg names map.
CostData(const CostData &)=delete
Forbid copy.
uint32_t m_slot
Current online slot number.
const std::string & algNameToClassType(size_t algNameHash) const
Get the class typename given an algorithm instance name.
setScaleOne setStatusOne setSaturated int16_t
StatusCode set(const xAOD::TrigCompositeContainer *costCollection, const xAOD::TrigCompositeContainer *rosCollection, uint32_t onlineSlot)
Cache the cost and ros collections, after formally requesting it from storegate.
const CostROSData * m_costROSData
Helper class to store ROS to ROB mapping.
void setLb(uint32_t lb)
Setter of effective P1 walltime represented by the current event.
const std::vector< TrigCompositeUtils::AlgToChainTool::ChainInfo > & seededChains() const
Getter of the seeded chains set.
const std::map< std::string, std::map< int16_t, std::set< size_t > > > * m_sequencers
Mapping of sequence to algorithms.
const std::map< std::string, std::set< size_t > > & chainToAlgMap() const
Getter of the alg name to chains map.
const std::map< std::string, std::set< size_t > > * m_chainToAlgIdx
Mapping of chain to algorithms idx.
::StatusCode StatusCode
StatusCode definition for legacy code.
void setOnlineSlot(uint32_t slot)
Setter of the online Slot number of the current event.
CostData & operator=(const CostData &)=delete
Forbid assignment.
void setSeededChains(const std::vector< TrigCompositeUtils::AlgToChainTool::ChainInfo > &seededChains)
Set the seeded chains set.
const xAOD::TrigCompositeContainer * m_costCollection
Cached non-owning pointer to main algorithm cost collection.
StatusCode cache()
Compute and cache derived quantities, called automatically after set().
const std::map< size_t, std::vector< size_t > > & algToRequestMap() const
Getter of map between algorithm (index in costCollection) and ROS requests (indicies in rosCollection...
uint64_t m_algTotalTime
Integrated CPU time of all algorithms in the event.
uint32_t lb() const
Current luminosity block number.
Caches and propagates event data to be used by monitoring algorithms.
const xAOD::TrigCompositeContainer & rosCollection() const
Getter of the cached ros cost collection pointer.
float m_liveTime
Effective walltime of either the event or the LB, in seconds (.
bool liveTimeIsPerEvent() const
If a call to liveTime() is providing data on a single event or a whole LB.
std::map< size_t, std::vector< size_t > > m_algToRos
Mapping of indexes from m_costCollection to corresponding ROS requests made by algorithm.
def time(flags, cells_name, *args, **kw)
void setCostROSData(const CostROSData &costROSData)
Set ROS to ROB map.
const xAOD::TrigCompositeContainer & costCollection() const
Getter of the cached algorithm cost collection pointer.
bool m_liveTimeIsPerEvent
If the livetime represents a single event or all of the current LB.
void setChainToAlgMap(const std::map< std::string, std::set< size_t >> &algToChains)
Set the alg name to chains map.
void setLivetime(float time, bool liveTimeIsPerEvent)
Setter of effective P1 walltime represented by the current event, or the current lumi block.
const std::map< std::string, std::set< size_t > > * m_chainToUniqAlgIdx
Mapping of chain name to its unique algorithms.
void setChainToUniqAlgMap(const std::map< std::string, std::set< size_t >> &algToChains)
Set the chain to its unique alg names map.
CostData()
Construct an empty CostData.
float algTotalTimeMilliSec() const
Getter of the total algorithm CPU time in the event.
uint32_t m_lb
Current luminosity block number.
const std::unordered_map< uint32_t, std::string > * m_typeMapPtr
Cached non-owning pointer mapping algorithm instance names to types.
Caches and propagates event data to be used by monitoring algorithms.
const CostROSData & costROSData() const
Getter of the ROS to ROB map.
uint32_t onlineSlot() const