Heavy ion Analysis Libriares
|
#include <Event.h>
Public Member Functions | |
Event () | |
Event (const Event &other) | |
void | Build (Event *event, const CompressionMap &map) |
void | Build (Event *event) |
void | Compress (const CompressionMap &map) |
virtual void | Update (EventInterface *interface) |
virtual void | Clear (Option_t *opt=" ") |
void | SetEventID (Int_t newID) |
void | SetPhi (Double_t phi, Double_t phi_error=0) |
virtual void | RotateZ (Double_t phi) |
virtual void | Print (Option_t *opt="") const |
Track * | GetTrack (Int_t i) const |
Track * | AddTrack () |
virtual Bool_t | ExistInTree () const |
virtual Bool_t | IsCompatible (const Event *non_buffered) const |
Int_t | GetEventID () const |
Int_t | GetTotalTrackNo () const |
Int_t | GetTotalV0No () const |
Int_t | GetMutliplicity () const |
Double_t | GetPhi () const |
Double_t | GetPhiError () const |
TLorentzVector * | GetVertex () const |
virtual EFormatType | GetFormatType () const |
virtual TString | GetFormatName () const |
Track * | GetNewTrack () const |
virtual EventInterface * | CreateInterface () const =0 |
virtual Float_t | GetFieldVal (Int_t fieldID) const |
virtual TString | GetFieldName (Int_t fieldID) const |
TClonesArray * | GetV0HiddenInfo () const |
virtual | ~Event () |
virtual void | CopyHiddenSettings (const Event *) |
virtual void | Boost (Double_t vx, Double_t vy, Double_t vz) |
virtual Event * | GetNewEvent () const |
virtual Int_t | GetMaxExpectedLinks () const |
virtual Bool_t | HasHiddenSettings () const |
virtual Package * | Report () const |
Protected Member Functions | |
Double_t | CalculateCharge (Int_t pdg) const |
void | ResetHiddenInfoCounter () |
void | CopyData (Event *event) |
void | CopyCompress (Event *event, const CompressionMap &map) |
void | Compress (TClonesArray *array, const CompressionMap &map) |
virtual void | ShallowCopyTracks (Event *event) |
virtual void | ShallowCopyCompressTracks (Event *event, const CompressionMap &map) |
virtual void | ShallowCopyEvent (Event *event) |
Bool_t | CheckBranches (Int_t n...) const |
Bool_t | CheckBranches (std::initializer_list< TString > list) const |
Event (TString track_class, TString v0_class="Hal::V0Track", TString xi_class="Hal::XiTrack") | |
Protected Attributes | |
TDatabasePDG * | fPDG |
TClonesArray * | fTracks |
TClonesArray * | fV0sHiddenInfo |
TClonesArray * | fXisHiddenInfo |
TLorentzVector * | fVertex |
Double_t | fPhi |
Double_t | fPhiError |
Int_t | fEventId |
Int_t | fTotalTracksNo |
Int_t | fMultiplicity |
Friends | |
class | SmearedEvent |
class | ComplexEvent |
class | Track |
Abstract class for storing events. It contains representation of basic paramters, and Track array.
Currently all classes work in folllowing way: Event-derived classes is basic class that store most important inforrmations. Getters/setters here are usually inlined to improve performance (crutial if analysis call getters frequently). Event also might contains so called EventInterface . EventInterface based classes are used to store and acces "real event" in 'oryginal structure" from tree. Event interface is always present in "current event". If you don;t want to store event interface in buffered events you can call "DisableSource". In such case only data from Event-based events are stored in memory. Another option of compression is calling Compress() method, in such case only tracks that passed cuts are stored..
|
protected |
constructor used by derived classes
track_class | name of track class, e.g. if you have MagicEvent class with MagicTrack your constructor should look like MagicEvent():Event("MagicTrack"){... . |
v0_class | - name of class with V0 data |
xi_class | - name of class with Xi data |
Hal::Event::Event | ( | ) |
Hal::Event::Event | ( | const Event & | other | ) |
|
virtual |
void Hal::Event::Build | ( | Event * | event | ) |
void Hal::Event::Build | ( | Event * | event, |
const CompressionMap & | map ) |
|
protected |
|
protected |
|
protected |
|
virtual |
used for clear (usually track array)
opt | option of Clear |
Reimplemented in Hal::ComplexEvent, Hal::SmearedEvent, HalUni::UnigenEvent, and MyHal::EventTemplate.
void Hal::Event::Compress | ( | const CompressionMap & | map | ) |
|
protected |
compress given clones array
array | array of clones to compress |
map_size | size of map |
|
protected |
|
protected |
|
inlinevirtual |
|
pure virtual |
create interface - original structure of event, by allocating memory
Implemented in Hal::ComplexEvent, Hal::VirtualEvent, HalDbg::McEvent, HalDbg::RecoEvent, HalOTF::McEvent, HalOTF::RecoEvent, HalUni::UnigenEvent, and MyHal::EventTemplate.
|
inlinevirtual |
Reimplemented in Hal::ComplexEvent, Hal::VirtualEvent, HalDbg::McEvent, HalDbg::RecoEvent, HalOTF::McEvent, HalOTF::RecoEvent, HalUni::UnigenEvent, and MyHal::EventTemplate.
|
inline |
|
virtual |
return name of the track property by ID
fieldID |
Reimplemented in Hal::ComplexEvent, Hal::ExpEvent, and Hal::McEvent.
|
virtual |
return track property by ID, this should be positive number larger than 200 (for ID outside of framework)
fieldID |
Reimplemented in Hal::ComplexEvent, Hal::ExpEvent, and Hal::McEvent.
|
virtual |
Reimplemented in Hal::SmearedEvent, HalDbg::ComplexEvent, HalDbg::McEvent, HalDbg::RecoEvent, HalOTF::ComplexEvent, HalOTF::McEvent, HalOTF::RecoEvent, HalUni::UnigenEvent, and MyHal::EventTemplate.
|
inlinevirtual |
Reimplemented in Hal::ComplexEvent, and Hal::McEvent.
|
inlinevirtual |
|
inline |
|
virtual |
for allocation event should be reimpleneted only if default constructor + CopyHiddenVariabels is not enough to create complete empty new event
Reimplemented in Hal::VirtualEvent.
Track * Hal::Event::GetNewTrack | ( | ) | const |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
this function should be reimplemented only if hidden settings are used - the settings that are used during calculation of event properties
Reimplemented in Hal::ComplexEvent.
|
virtual |
check if this buffered and "non-buffered" format are compatible this function should be reimplemented only if user want to copy data from other format
buffered | return true if formats are compatible |
Reimplemented in Hal::ComplexEvent.
|
virtual |
|
virtual |
|
inlineprotected |
|
virtual |
|
inline |
|
inline |
|
protectedvirtual |
copy only track data from "event" into this
event | event to copy |
compression | map |
Reimplemented in Hal::ComplexEvent.
|
protectedvirtual |
copy only event data from "event" into this
event | event to copy |
Reimplemented in Hal::ComplexEvent, Hal::ExpEvent, and Hal::McEvent.
|
protectedvirtual |
copy only track data from "event" into this
event | event to copy |
Reimplemented in Hal::ComplexEvent, and Hal::McEvent.
|
virtual |
update fields by using "source event", it's better to implement this method due to improve performance. In such case you can use directly getters/setters from oryginal structure instead of calling virtual methods from EventInterface
interface | - interface to event stored in tree |
Reimplemented in Hal::ComplexEvent, Hal::McEvent, Hal::SmearedEvent, Hal::VirtualEvent, HalDbg::ComplexEvent, HalDbg::McEvent, HalDbg::RecoEvent, HalOTF::ComplexEvent, HalOTF::McEvent, HalOTF::RecoEvent, HalUni::UnigenEvent, and MyHal::EventTemplate.
|
friend |
|
friend |