10#include "DataFormat.h"
11#include "EventInterfaceAdvanced.h"
13#include "McTrackInterface.h"
15 McEvent::McEvent() : Event(), fB(0) {}
17 McEvent::McEvent(TString track_classname, TString v0_classname, TString xi_classname) :
18 Event(track_classname, v0_classname, xi_classname), fB(0) {}
20 void McEvent::ShallowCopyEvent(
Event* event) {
21 Event::ShallowCopyEvent(event);
22 if (event->InheritsFrom(
"Hal::McEvent")) fB = ((
McEvent*) event)->GetImpactParameter();
25 McEvent::~McEvent() {}
27 McEvent::McEvent(
const McEvent& other) : Event(other) {
fB = other.fB; }
30 fV0sHiddenInfo->Clear();
31 fXisHiddenInfo->Clear();
33 fTotalTracksNo = mc_event->fTracks->GetEntriesFast();
34 fTracks->ExpandCreateFast(fTotalTracksNo);
35 for (
int i = 0; i < fTotalTracksNo; i++) {
48 for (
int i = 0; i < fTotalTracksNo; i++) {
50 tr->SetPdg(trinterface->GetPdg());
52 trinterface->GetStartX(), trinterface->GetStartY(), trinterface->GetStartZ(), trinterface->GetStartT());
54 trinterface->GetFreezX(), trinterface->GetFreezY(), trinterface->GetFreezZ(), trinterface->GetFreezT());
61 case DataFieldID::Event::EMc::kB:
return GetImpactParameter();
break;
68 case DataFieldID::Event::EMc::kB:
return "B [fm]";
break;
TrackInterface * GetTrackInterface() const
virtual void Update(EventInterface *interface)
virtual Float_t GetFieldVal(Int_t fieldID) const
virtual TString GetFieldName(Int_t fieldID) const
Track * GetTrack(Int_t i) const
virtual void ShallowCopyTracks(Event *event)
virtual Float_t GetFieldVal(Int_t fieldID) const
virtual void Update(EventInterface *interface)
virtual TString GetFieldName(Int_t fieldID) const
void SetFreezoutPosition(Double_t x, Double_t y, Double_t z, Double_t t)
virtual void CopyData(Track *other)
void SetStartPosition(Double_t x, Double_t y, Double_t z, Double_t t)
virtual void ResetTrack(Int_t thisID=-1, Event *event=nullptr)