ATLAS Offline Software
Loading...
Searching...
No Matches
PartialEventBuildingInfo Class Reference

#include <PartialEventBuildingInfo.h>

Collaboration diagram for PartialEventBuildingInfo:

Public Member Functions

 PartialEventBuildingInfo ()
 ~PartialEventBuildingInfo ()
void add (uint32_t rob_id)
 adds ROB to be added to partially built event
void add (const std::vector< uint32_t > &rob_ids)
 adds collection of robs to partially built event
void get (std::vector< uint32_t > &rob_ids) const
 gets back all ROBs added (fills up rob_ids vector given by reference)
void addROB (uint32_t rob_id)
 adds ROB to be added to partially built event
void addROBs (const std::vector< uint32_t > &rob_ids)
 adds collection of robs to partially built event
void getROBs (std::vector< uint32_t > &rob_ids) const
 gets back all ROBs added (fills up rob_ids vector given by reference)
const std::set< uint32_t > & getROBs () const
 gets back all ROBs added
void addSubDetector (eformat::SubDetector id)
 add detector to be in partially built event
void addSubDetector (std::vector< eformat::SubDetector > id)
void addSubDetector (eformat::SubDetectorGroup id)
void getSubDetectors (std::vector< eformat::SubDetector > &ids) const
 gets back all SubDetectorss added (fills up ids vector given by reference,)
const std::set< uint32_t > & getSubDetectors () const
 gets back all SubDetectorss added
void clear ()
 clears the list of ROBs and Dets
void merge (const PartialEventBuildingInfo &peb)
 merges two PEBI objects I.e.

Private Attributes

std::set< uint32_t > m_robs
 selected ROBs for partial event building
std::set< uint32_t > m_subDetectors
 selected SubDetectors

Detailed Description

Definition at line 14 of file PartialEventBuildingInfo.h.

Constructor & Destructor Documentation

◆ PartialEventBuildingInfo()

PartialEventBuildingInfo::PartialEventBuildingInfo ( )

Definition at line 9 of file PartialEventBuildingInfo.cxx.

9 {
10}

◆ ~PartialEventBuildingInfo()

PartialEventBuildingInfo::~PartialEventBuildingInfo ( )

Definition at line 11 of file PartialEventBuildingInfo.cxx.

11 {
12}

Member Function Documentation

◆ add() [1/2]

void PartialEventBuildingInfo::add ( const std::vector< uint32_t > & rob_ids)

adds collection of robs to partially built event

Warning
obsolete

Definition at line 21 of file PartialEventBuildingInfo.cxx.

21 {
22 addROBs(rob_ids);
23}
void addROBs(const std::vector< uint32_t > &rob_ids)
adds collection of robs to partially built event

◆ add() [2/2]

void PartialEventBuildingInfo::add ( uint32_t rob_id)

adds ROB to be added to partially built event

Warning
obsolete

Definition at line 14 of file PartialEventBuildingInfo.cxx.

14 {
15 addROB(rob_id);
16}
void addROB(uint32_t rob_id)
adds ROB to be added to partially built event

◆ addROB()

void PartialEventBuildingInfo::addROB ( uint32_t rob_id)

adds ROB to be added to partially built event

Definition at line 18 of file PartialEventBuildingInfo.cxx.

18 {
19 m_robs.insert(rob_id);
20}
std::set< uint32_t > m_robs
selected ROBs for partial event building

◆ addROBs()

void PartialEventBuildingInfo::addROBs ( const std::vector< uint32_t > & rob_ids)

adds collection of robs to partially built event

Definition at line 25 of file PartialEventBuildingInfo.cxx.

25 {
26
27 for ( std::vector<uint32_t>::const_iterator i = rob_ids.begin(); i != rob_ids.end(); ++i )
28 m_robs.insert(*i);
29}

◆ addSubDetector() [1/3]

void PartialEventBuildingInfo::addSubDetector ( eformat::SubDetector id)

add detector to be in partially built event

Definition at line 48 of file PartialEventBuildingInfo.cxx.

48 {
49 m_subDetectors.insert(id);
50}
std::set< uint32_t > m_subDetectors
selected SubDetectors

◆ addSubDetector() [2/3]

void PartialEventBuildingInfo::addSubDetector ( eformat::SubDetectorGroup id)

Definition at line 58 of file PartialEventBuildingInfo.cxx.

58 {
59 using namespace eformat;
60 switch(id) {
61 case PIXEL:
62 m_subDetectors.insert(PIXEL_BARREL);
63 m_subDetectors.insert(PIXEL_DISK);
64 m_subDetectors.insert(PIXEL_B_LAYER);
65 break;
66
67 case SCT:
68 m_subDetectors.insert(SCT_BARREL_A_SIDE);
69 m_subDetectors.insert(SCT_BARREL_C_SIDE);
70 m_subDetectors.insert(SCT_ENDCAP_A_SIDE);
71 m_subDetectors.insert(SCT_ENDCAP_C_SIDE);
72 break;
73
74 case TRT:
75 m_subDetectors.insert(TRT_ANCILLARY_CRATE);
76 m_subDetectors.insert(TRT_BARREL_A_SIDE);
77 m_subDetectors.insert(TRT_BARREL_C_SIDE);
78 m_subDetectors.insert(TRT_ENDCAP_A_SIDE);
79 m_subDetectors.insert(TRT_ENDCAP_C_SIDE);
80 break;
81
82 case LAR:
83 m_subDetectors.insert(LAR_EM_BARREL_A_SIDE);
84 m_subDetectors.insert(LAR_EM_BARREL_C_SIDE);
85 m_subDetectors.insert(LAR_EM_ENDCAP_A_SIDE);
86 m_subDetectors.insert(LAR_EM_ENDCAP_C_SIDE);
87 m_subDetectors.insert(LAR_HAD_ENDCAP_A_SIDE);
88 m_subDetectors.insert(LAR_HAD_ENDCAP_C_SIDE);
89 m_subDetectors.insert(LAR_FCAL_A_SIDE);
90 m_subDetectors.insert(LAR_FCAL_C_SIDE);
91 break;
92
93 case TILECAL:
94 m_subDetectors.insert(TILECAL_LASER_CRATE);
95 m_subDetectors.insert(TILECAL_BARREL_A_SIDE);
96 m_subDetectors.insert(TILECAL_BARREL_C_SIDE);
97 m_subDetectors.insert(TILECAL_EXT_A_SIDE);
98 m_subDetectors.insert(TILECAL_EXT_C_SIDE);
99 break;
100
101 case MUON:
102 m_subDetectors.insert(MUON_ANCILLARY_CRATE);
103 m_subDetectors.insert(MUON_MDT_BARREL_A_SIDE);
104 m_subDetectors.insert(MUON_MDT_BARREL_C_SIDE);
105 m_subDetectors.insert(MUON_MDT_ENDCAP_A_SIDE);
106 m_subDetectors.insert(MUON_MDT_ENDCAP_C_SIDE);
107 m_subDetectors.insert(MUON_RPC_BARREL_A_SIDE);
108 m_subDetectors.insert(MUON_RPC_BARREL_C_SIDE);
109 m_subDetectors.insert(MUON_TGC_ENDCAP_A_SIDE);
110 m_subDetectors.insert(MUON_TGC_ENDCAP_C_SIDE);
111 m_subDetectors.insert(MUON_CSC_ENDCAP_A_SIDE);
112 m_subDetectors.insert(MUON_CSC_ENDCAP_C_SIDE);
113 break;
114
115 case TDAQ:
116 m_subDetectors.insert(TDAQ_BEAM_CRATE);
117 m_subDetectors.insert(TDAQ_CALO_PREPROC);
118 m_subDetectors.insert(TDAQ_CALO_CLUSTER_PROC_DAQ);
119 m_subDetectors.insert(TDAQ_CALO_CLUSTER_PROC_ROI);
120 m_subDetectors.insert(TDAQ_CALO_JET_PROC_DAQ);
121 m_subDetectors.insert(TDAQ_CALO_JET_PROC_ROI);
122 m_subDetectors.insert(TDAQ_MUON_CTP_INTERFACE);
123 m_subDetectors.insert(TDAQ_CTP);
124 m_subDetectors.insert(TDAQ_L2SV);
125 m_subDetectors.insert(TDAQ_SFI);
126 m_subDetectors.insert(TDAQ_SFO);
127 m_subDetectors.insert(TDAQ_LVL2);
128 m_subDetectors.insert(TDAQ_EVENT_FILTER);
129 break;
130
131 case FORWARD:
132 m_subDetectors.insert(FORWARD_BCM);
133 m_subDetectors.insert(FORWARD_LUCID);
134 m_subDetectors.insert(FORWARD_ZDC);
135 m_subDetectors.insert(FORWARD_ALPHA);
136 break;
137
138 default:
139 // do nothing
140 break;
141 }
142
143}
#define FORWARD
@ LAR
Definition RegSelEnums.h:27
@ TRT
Definition RegSelEnums.h:26
@ SCT
Definition RegSelEnums.h:25
@ PIXEL
Definition RegSelEnums.h:24
xAOD::Muon MUON
D3PD INCLUDES.

◆ addSubDetector() [3/3]

void PartialEventBuildingInfo::addSubDetector ( std::vector< eformat::SubDetector > id)

Definition at line 52 of file PartialEventBuildingInfo.cxx.

52 {
53 for ( std::vector<eformat::SubDetector>::const_iterator i = ids.begin(); i != ids.end(); ++i )
54 m_subDetectors.insert(*i);
55}

◆ clear()

void PartialEventBuildingInfo::clear ( )

clears the list of ROBs and Dets

Definition at line 154 of file PartialEventBuildingInfo.cxx.

154 {
155 m_robs.clear();
156 m_subDetectors.clear();
157}

◆ get()

void PartialEventBuildingInfo::get ( std::vector< uint32_t > & rob_ids) const

gets back all ROBs added (fills up rob_ids vector given by reference)

Warning
note that vector is not cleared
obsolete

Definition at line 31 of file PartialEventBuildingInfo.cxx.

31 {
32 getROBs(rob_ids);
33}
const std::set< uint32_t > & getROBs() const
gets back all ROBs added

◆ getROBs() [1/2]

const std::set< uint32_t > & PartialEventBuildingInfo::getROBs ( ) const

gets back all ROBs added

Definition at line 43 of file PartialEventBuildingInfo.cxx.

43 {
44 return m_robs;
45}

◆ getROBs() [2/2]

void PartialEventBuildingInfo::getROBs ( std::vector< uint32_t > & rob_ids) const

gets back all ROBs added (fills up rob_ids vector given by reference)

Warning
note that vector is not cleared)

Definition at line 35 of file PartialEventBuildingInfo.cxx.

35 {
36
37 rob_ids.reserve(rob_ids.size()+m_robs.size()); // optimization, it is believed that m_robs can be big
38
39 for ( std::set<uint32_t>::const_iterator i = m_robs.begin(); i != m_robs.end(); ++i )
40 rob_ids.push_back(*i);
41}

◆ getSubDetectors() [1/2]

const std::set< uint32_t > & PartialEventBuildingInfo::getSubDetectors ( ) const

gets back all SubDetectorss added

Definition at line 150 of file PartialEventBuildingInfo.cxx.

150 {
151 return m_subDetectors;
152}

◆ getSubDetectors() [2/2]

void PartialEventBuildingInfo::getSubDetectors ( std::vector< eformat::SubDetector > & ids) const

gets back all SubDetectorss added (fills up ids vector given by reference,)

Warning
note that vector is not cleared

Definition at line 145 of file PartialEventBuildingInfo.cxx.

145 {
146 for ( std::set<uint32_t>::const_iterator i = m_subDetectors.begin(); i != m_subDetectors.end(); ++i )
147 ids.push_back( eformat::helper::SourceIdentifier(*i).subdetector_id() );
148}

◆ merge()

void PartialEventBuildingInfo::merge ( const PartialEventBuildingInfo & peb)

merges two PEBI objects I.e.

it the subject of the method invocation will have ROBs and SubDets list which is union of the two

Definition at line 159 of file PartialEventBuildingInfo.cxx.

159 {
160 m_robs.insert(peb.m_robs.begin(), peb.m_robs.end());
161 m_subDetectors.insert(peb.m_subDetectors.begin(), peb.m_subDetectors.end());
162}

Member Data Documentation

◆ m_robs

std::set<uint32_t> PartialEventBuildingInfo::m_robs
private

selected ROBs for partial event building

Definition at line 87 of file PartialEventBuildingInfo.h.

◆ m_subDetectors

std::set<uint32_t> PartialEventBuildingInfo::m_subDetectors
private

selected SubDetectors

Definition at line 88 of file PartialEventBuildingInfo.h.


The documentation for this class was generated from the following files: