ATLAS Offline Software
Loading...
Searching...
No Matches
PileUpEventInfo::SubEvent Class Reference

a triple allowing access to a sub-event More...

#include <PileUpEventInfo.h>

Collaboration diagram for PileUpEventInfo::SubEvent:

Public Types

typedef PileUpTimeEventIndex::time_type time_type
typedef PileUpTimeEventIndex::index_type index_type
typedef PileUpTimeEventIndex::PileUpType pileup_type
typedef std::list< SubEvent >::const_iterator const_iterator
typedef std::list< SubEvent >::iterator iterator

Public Member Functions

 SubEvent ()
 ~SubEvent ()
 SubEvent (const SubEvent &)
SubEventoperator= (const SubEvent &)
 SubEvent (SubEvent &&)
SubEventoperator= (SubEvent &&)
 SubEvent (time_type t, const EventInfo *pse, StoreGateSvc *psg)
 SubEvent (time_type t, index_type index, const EventInfo *pse, StoreGateSvc *psg)
 SubEvent (time_type t, index_type index, PileUpTimeEventIndex::PileUpType typ, const EventInfo *pse, StoreGateSvc *psg)
 SubEvent (time_type t, unsigned int BCID, index_type index, PileUpTimeEventIndex::PileUpType typ, const EventInfo &rse, StoreGateSvc *psg)
 SubEvent (time_type t, std::unique_ptr< EventInfo > pse, StoreGateSvc *psg)
 SubEvent (time_type t, index_type index, std::unique_ptr< EventInfo > pse, StoreGateSvc *psg)
 SubEvent (time_type t, index_type index, PileUpTimeEventIndex::PileUpType typ, std::unique_ptr< EventInfo > pse, StoreGateSvc *psg)
 SubEvent (time_type t, unsigned int BCID, index_type index, PileUpTimeEventIndex::PileUpType typ, std::unique_ptr< EventInfo > pse, StoreGateSvc *psg)
time_type time () const
 t0 wrto original event (hence original evt time == 0)
index_type index () const
unsigned int BCID () const
pileup_type type () const
 pileup event proveance

Public Attributes

EventInfopSubEvt
 redundant but handy e.g. for persist. FIXME OWNED COPY
StoreGateSvcpSubEvtSG
 the sub event store

Private Attributes

PileUpTimeEventIndex m_timeIndex

Detailed Description

a triple allowing access to a sub-event

Definition at line 57 of file PileUpEventInfo.h.

Member Typedef Documentation

◆ const_iterator

typedef std::list<SubEvent>::const_iterator PileUpEventInfo::SubEvent::const_iterator

Definition at line 102 of file PileUpEventInfo.h.

◆ index_type

typedef PileUpTimeEventIndex::index_type PileUpEventInfo::SubEvent::index_type

Definition at line 65 of file PileUpEventInfo.h.

◆ iterator

typedef std::list<SubEvent>::iterator PileUpEventInfo::SubEvent::iterator

Definition at line 103 of file PileUpEventInfo.h.

◆ pileup_type

typedef PileUpTimeEventIndex::PileUpType PileUpEventInfo::SubEvent::pileup_type

Definition at line 66 of file PileUpEventInfo.h.

◆ time_type

typedef PileUpTimeEventIndex::time_type PileUpEventInfo::SubEvent::time_type

Definition at line 64 of file PileUpEventInfo.h.

Constructor & Destructor Documentation

◆ SubEvent() [1/11]

PileUpEventInfo::SubEvent::SubEvent ( )

Definition at line 34 of file PileUpEventInfo.cxx.

35 :
36 m_timeIndex(0), //FIXME why 0?
37 pSubEvt(0), pSubEvtSG(0)
38
39{}
EventInfo * pSubEvt
redundant but handy e.g. for persist. FIXME OWNED COPY
PileUpTimeEventIndex m_timeIndex
StoreGateSvc * pSubEvtSG
the sub event store

◆ ~SubEvent()

PileUpEventInfo::SubEvent::~SubEvent ( )

Definition at line 78 of file PileUpEventInfo.cxx.

78 {
79 delete pSubEvt;
80}

◆ SubEvent() [2/11]

PileUpEventInfo::SubEvent::SubEvent ( const SubEvent & rhs)

Definition at line 41 of file PileUpEventInfo.cxx.

41 :
42 m_timeIndex(rhs.m_timeIndex),
43 pSubEvt(0 == rhs.pSubEvt ? 0 : new EventInfo(*rhs.pSubEvt)),
44 pSubEvtSG(rhs.pSubEvtSG)
45
46{}

◆ SubEvent() [3/11]

PileUpEventInfo::SubEvent::SubEvent ( SubEvent && rhs)

Definition at line 59 of file PileUpEventInfo.cxx.

59 :
60 m_timeIndex(rhs.m_timeIndex),
61 pSubEvt(rhs.pSubEvt),
62 pSubEvtSG(rhs.pSubEvtSG) {
63 rhs.pSubEvt = 0;
64}

◆ SubEvent() [4/11]

PileUpEventInfo::SubEvent::SubEvent ( time_type t,
const EventInfo * pse,
StoreGateSvc * psg )

Definition at line 82 of file PileUpEventInfo.cxx.

84 :
85 m_timeIndex(t),
86 pSubEvt(0 == pse ? 0 : new EventInfo(*pse)),
87 pSubEvtSG(psg)
88{}

◆ SubEvent() [5/11]

PileUpEventInfo::SubEvent::SubEvent ( time_type t,
index_type index,
const EventInfo * pse,
StoreGateSvc * psg )

Definition at line 90 of file PileUpEventInfo.cxx.

92 :
94 pSubEvt(0 == pse ? 0 : new EventInfo(*pse)),
95 pSubEvtSG(psg)
96{}
uint16_t index() const
Get the index of the sub-event.

◆ SubEvent() [6/11]

PileUpEventInfo::SubEvent::SubEvent ( time_type t,
index_type index,
PileUpTimeEventIndex::PileUpType typ,
const EventInfo * pse,
StoreGateSvc * psg )

Definition at line 97 of file PileUpEventInfo.cxx.

100 :
101 m_timeIndex(t, index, typ),
102 pSubEvt(0 == pse ? 0 : new EventInfo(*pse)),
103 pSubEvtSG(psg)
104{}

◆ SubEvent() [7/11]

PileUpEventInfo::SubEvent::SubEvent ( time_type t,
unsigned int BCID,
index_type index,
PileUpTimeEventIndex::PileUpType typ,
const EventInfo & rse,
StoreGateSvc * psg )

Definition at line 105 of file PileUpEventInfo.cxx.

109 :
110 m_timeIndex(t, index, typ),
111 pSubEvt(new EventInfo(rse)),
112 pSubEvtSG(psg) {
113 pSubEvt->event_ID()->set_bunch_crossing_id(BCID);
114}
EventID * event_ID()
the unique identification of the event.
unsigned int BCID() const

◆ SubEvent() [8/11]

PileUpEventInfo::SubEvent::SubEvent ( time_type t,
std::unique_ptr< EventInfo > pse,
StoreGateSvc * psg )

Definition at line 116 of file PileUpEventInfo.cxx.

118 :
119 m_timeIndex(t),
120 pSubEvt(pse.release()),
121 pSubEvtSG(psg)
122{}

◆ SubEvent() [9/11]

PileUpEventInfo::SubEvent::SubEvent ( time_type t,
index_type index,
std::unique_ptr< EventInfo > pse,
StoreGateSvc * psg )

Definition at line 124 of file PileUpEventInfo.cxx.

126 :
127 m_timeIndex(t, index),
128 pSubEvt(pse.release()),
129 pSubEvtSG(psg)
130{}

◆ SubEvent() [10/11]

PileUpEventInfo::SubEvent::SubEvent ( time_type t,
index_type index,
PileUpTimeEventIndex::PileUpType typ,
std::unique_ptr< EventInfo > pse,
StoreGateSvc * psg )

Definition at line 131 of file PileUpEventInfo.cxx.

134 :
135 m_timeIndex(t, index, typ),
136 pSubEvt(pse.release()),
137 pSubEvtSG(psg)
138{}

◆ SubEvent() [11/11]

PileUpEventInfo::SubEvent::SubEvent ( time_type t,
unsigned int BCID,
index_type index,
PileUpTimeEventIndex::PileUpType typ,
std::unique_ptr< EventInfo > pse,
StoreGateSvc * psg )

Definition at line 139 of file PileUpEventInfo.cxx.

143 :
144 m_timeIndex(t, index, typ),
145 pSubEvt(pse.release()),
146 pSubEvtSG(psg) {
147 pSubEvt->event_ID()->set_bunch_crossing_id(BCID);
148}

Member Function Documentation

◆ BCID()

unsigned int PileUpEventInfo::SubEvent::BCID ( ) const

Definition at line 151 of file PileUpEventInfo.cxx.

151 {
152 // Be sure to call const methods to avoid checker warnings.
153 return(0 == pSubEvt ? 0 : std::as_const(*pSubEvt).event_ID()->bunch_crossing_id());
154}

◆ index()

index_type PileUpEventInfo::SubEvent::index ( ) const
inline

Definition at line 96 of file PileUpEventInfo.h.

96{return m_timeIndex.index();}
index_type index() const
the index of the component event in PileUpEventInfo

◆ operator=() [1/2]

PileUpEventInfo::SubEvent & PileUpEventInfo::SubEvent::operator= ( const SubEvent & rhs)

Definition at line 49 of file PileUpEventInfo.cxx.

49 {
50 if (this != &rhs) {
51 m_timeIndex = rhs.m_timeIndex;
52 pSubEvtSG = rhs.pSubEvtSG;
53 delete pSubEvt;
54 pSubEvt = (0 == rhs.pSubEvt ? 0 : new EventInfo(*rhs.pSubEvt));
55 }
56 return *this;
57}

◆ operator=() [2/2]

PileUpEventInfo::SubEvent & PileUpEventInfo::SubEvent::operator= ( SubEvent && rhs)

Definition at line 67 of file PileUpEventInfo.cxx.

67 {
68 if (this != &rhs) {
69 m_timeIndex = rhs.m_timeIndex;
70 pSubEvtSG = rhs.pSubEvtSG;
71 delete pSubEvt;
72 pSubEvt = rhs.pSubEvt;
73 rhs.pSubEvt = 0;
74 }
75 return *this;
76}

◆ time()

time_type PileUpEventInfo::SubEvent::time ( ) const
inline

t0 wrto original event (hence original evt time == 0)

Definition at line 95 of file PileUpEventInfo.h.

95{return m_timeIndex.time();}
time_type time() const
bunch xing time in ns

◆ type()

pileup_type PileUpEventInfo::SubEvent::type ( ) const
inline

pileup event proveance

Definition at line 100 of file PileUpEventInfo.h.

100{return m_timeIndex.type();}
PileUpType type() const
the pileup type - minbias, cavern, beam halo, signal?

Member Data Documentation

◆ m_timeIndex

PileUpTimeEventIndex PileUpEventInfo::SubEvent::m_timeIndex
private

Definition at line 59 of file PileUpEventInfo.h.

◆ pSubEvt

EventInfo* PileUpEventInfo::SubEvent::pSubEvt

redundant but handy e.g. for persist. FIXME OWNED COPY

Definition at line 61 of file PileUpEventInfo.h.

◆ pSubEvtSG

StoreGateSvc* PileUpEventInfo::SubEvent::pSubEvtSG

the sub event store

Definition at line 62 of file PileUpEventInfo.h.


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