eic-smear  1.0.3
A collection of ROOT classes for Monte Carlo events and a fast-smearing code simulating detector effects for the Electron-Ion Collider task force
VirtualEvent.h
Go to the documentation of this file.
1 
10 #ifndef INCLUDE_EICSMEAR_ERHIC_VIRTUALEVENT_H_
11 #define INCLUDE_EICSMEAR_ERHIC_VIRTUALEVENT_H_
12 
13 #include <TObject.h>
14 
15 #include <vector>
16 
17 namespace erhic {
18 
19 class VirtualParticle;
20 
25 class VirtualEvent : public TObject {
26  public:
30  virtual ~VirtualEvent() { }
31 
37  virtual const VirtualParticle* GetTrack(UInt_t /* number */) const = 0;
38 
42  virtual VirtualParticle* GetTrack(UInt_t /*number*/) = 0;
43 
47  virtual UInt_t GetNTracks() const = 0;
48 
52  typedef std::vector<const erhic::VirtualParticle*> ParticlePtrList;
53 
57  virtual void HadronicFinalState(ParticlePtrList&) const { }
58 
59  ClassDef(erhic::VirtualEvent, 1)
60 };
61 
62 } // namespace erhic
63 
64 #endif // INCLUDE_EICSMEAR_ERHIC_VIRTUALEVENT_H_
erhic::VirtualEvent::~VirtualEvent
virtual ~VirtualEvent()
Destructor.
Definition: VirtualEvent.h:30
erhic
Definition: EventDis.cxx:14
erhic::VirtualEvent::ParticlePtrList
std::vector< const erhic::VirtualParticle * > ParticlePtrList
typedef for a track pointer collection.
Definition: VirtualEvent.h:52
erhic::VirtualEvent
Abstract base class for a physics event.
Definition: VirtualEvent.h:25
erhic::VirtualEvent::GetNTracks
virtual UInt_t GetNTracks() const =0
Returns the number of tracks in the event.
erhic::VirtualEvent::HadronicFinalState
virtual void HadronicFinalState(ParticlePtrList &) const
Populate a track list with the hadronic final-state.
Definition: VirtualEvent.h:57
erhic::VirtualParticle
Abstract base class for a general particle.
Definition: VirtualParticle.h:23
erhic::VirtualEvent::GetTrack
virtual const VirtualParticle * GetTrack(UInt_t) const =0
Returns the nth track from the event.