ATLAS Offline Software
PartialEventBuildingInfo.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef XAOD_ANALYSIS
6 #pragma once
7 #ifndef TRIGSTEERINGEVENT_PARTIALEVENTBUILDINGINFO_H
8 #define TRIGSTEERINGEVENT_PARTIALEVENTBUILDINGINFO_H
9 #include <set>
10 #include <vector>
11 #include "AthenaKernel/CLASS_DEF.h"
12 #include "eformat/SourceIdentifier.h"
13 
15 public:
21  void add( uint32_t rob_id );
22 
26  void add( const std::vector<uint32_t>& rob_ids );
27 
32  void get( std::vector<uint32_t>& rob_ids ) const;
33 
34 
35 
39  void addROB( uint32_t rob_id );
40 
44  void addROBs( const std::vector<uint32_t>& rob_ids );
45 
50  void getROBs( std::vector<uint32_t>& rob_ids ) const;
51 
54  const std::set<uint32_t>& getROBs() const;
55 
59  void addSubDetector( eformat::SubDetector id );
60  void addSubDetector( std::vector<eformat::SubDetector> id );
61  void addSubDetector( eformat::SubDetectorGroup id );
62 
67  void getSubDetectors( std::vector<eformat::SubDetector>& ids ) const;
68 
69 
73  const std::set<uint32_t>& getSubDetectors( ) const;
74 
78  void clear();
79 
83  void merge(const PartialEventBuildingInfo& peb);
84 
85 
86 private:
87  std::set<uint32_t> m_robs;
88  std::set<uint32_t> m_subDetectors;
89 };
90 
91 // removed so the object become an internal steering structure rather than something which can go to SG
92 //CLASS_DEF( PartialEventBuildingInfo , 257191353 , 1 )
93 
94 #endif
95 #endif //XAOD_ANALYSIS
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
PartialEventBuildingInfo::clear
void clear()
clears the list of ROBs and Dets
Definition: PartialEventBuildingInfo.cxx:154
PartialEventBuildingInfo
Definition: PartialEventBuildingInfo.h:14
PartialEventBuildingInfo::m_subDetectors
std::set< uint32_t > m_subDetectors
selected SubDetectors
Definition: PartialEventBuildingInfo.h:88
PartialEventBuildingInfo::add
void add(uint32_t rob_id)
adds ROB to be added to partially built event
Definition: PartialEventBuildingInfo.cxx:14
PartialEventBuildingInfo::merge
void merge(const PartialEventBuildingInfo &peb)
merges two PEBI objects I.e.
Definition: PartialEventBuildingInfo.cxx:159
PartialEventBuildingInfo::addSubDetector
void addSubDetector(eformat::SubDetector id)
add detector to be in partially built event
Definition: PartialEventBuildingInfo.cxx:48
PartialEventBuildingInfo::get
void get(std::vector< uint32_t > &rob_ids) const
gets back all ROBs added (fills up rob_ids vector given by reference)
Definition: PartialEventBuildingInfo.cxx:31
PartialEventBuildingInfo::getROBs
const std::set< uint32_t > & getROBs() const
gets back all ROBs added
Definition: PartialEventBuildingInfo.cxx:43
PartialEventBuildingInfo::addROB
void addROB(uint32_t rob_id)
adds ROB to be added to partially built event
Definition: PartialEventBuildingInfo.cxx:18
PartialEventBuildingInfo::~PartialEventBuildingInfo
~PartialEventBuildingInfo()
Definition: PartialEventBuildingInfo.cxx:11
PartialEventBuildingInfo::m_robs
std::set< uint32_t > m_robs
selected ROBs for partial event building
Definition: PartialEventBuildingInfo.h:87
python.subdetectors.mmg.ids
ids
Definition: mmg.py:8
PartialEventBuildingInfo::getSubDetectors
const std::set< uint32_t > & getSubDetectors() const
gets back all SubDetectorss added
Definition: PartialEventBuildingInfo.cxx:150
PartialEventBuildingInfo::PartialEventBuildingInfo
PartialEventBuildingInfo()
Definition: PartialEventBuildingInfo.cxx:9
CLASS_DEF.h
macros to associate a CLID to a type
PartialEventBuildingInfo::addROBs
void addROBs(const std::vector< uint32_t > &rob_ids)
adds collection of robs to partially built event
Definition: PartialEventBuildingInfo.cxx:25