5 #include "AliEveEventBufferHomer.h"
6 #include "AliEveHOMERManager.h"
13 ClassImp(AliEveEventBufferHomer);
15 ///_______________________________________________________________________
16 AliEveEventBufferHomer::AliEveEventBufferHomer() :
21 // see header file for class documentation
22 fHomer = new AliEveHOMERManager();
28 ///____________________________________________________________________
29 AliEveEventBufferHomer::~AliEveEventBufferHomer() {
40 ///______________________________________________________________________
41 TObject * AliEveEventBufferHomer::GetEventFromSource() {
42 //see header file for documentation
44 cout << "calling nexthomerevent"<<endl;
45 TList * blockList = fHomer->NextHOMEREvent();
46 if(blockList) return dynamic_cast<TObject*>(blockList);
50 cout << "AliEveEventBufferHomer::GetEventFromSource() : fHomer is null pointer!!"<<endl;
53 ///___________________________________________________________________________
54 void AliEveEventBufferHomer::AddToBuffer(TObject * event) {
55 cout << "Add to buffer"<<endl;
57 fBIndex[kTop] = CalculateNext(fBIndex[kTop]);
58 TList * list = dynamic_cast<TList*>(fEventBuffer->At(fBIndex[kTop]));
61 list->AddAll(dynamic_cast<TList*>(event));
66 ///______________________________________________________________________
67 void AliEveEventBufferHomer::Initialize() {
68 //Add TList pointers to the buffer array
69 for(Int_t i = 0; i < fBufferSize; i++) {
70 TList * list = new TList();
71 list->SetOwner(kTRUE);
72 fEventBuffer->AddAt(list, i);
76 Int_t iResult = fHomer->Initialize();
78 cout << "Error Initializing HOMER!!!"<<endl;
83 fHomer->SetRetryCount(1,15);
84 fHomer->SetBlockOwner(kFALSE);
85 fHomer->StartEveSourceListLoop();
89 ///______________________________________________________________________
90 void AliEveEventBufferHomer::ConnectToSource () {
92 fHomer->SetRetryCount(200, 15);
93 fHomer->ReConnectHOMER();
96 ///_____________________________________________________________________
97 void AliEveEventBufferHomer::WriteToFile(){
99 TFile * file = TFile::Open(Form("Event_0x%016X_ITS.root", 100), "RECREATE");
100 fEventBuffer->At(fBIndex[kTop])->Write("blockList", TObject::kSingleKey);
104 TFile * afile = TFile::Open(Form("Event_0x%016X_Async.root", 100), "RECREATE");
105 fAsyncList->Write("blockList", TObject::kSingleKey);