//* $Id: */ // ------------------------------------------------------------------------- // ----- FairEventBuffer header file ----- // ----- Created 23/09/2013 by R. Karabowicz ----- // ------------------------------------------------------------------------- /** FairEventBuffer *@author Radoslaw Karabowicz *@since 23/09/2013 *@version 1.0 ** ** FairRoot base task for the event buffers. ** The tasks may: ** 1. analyze data to reconstruct event times or other characteristics ** in the function TClonesArray* FindEvents(), that returns ** TClonesArray of FairRecoEvents ** 2. identify the data that could belong to event in the ** function and insert this identified data to the output TClonesArrays ** in the function StoreEventData(event) ** The implementations may be using any or both of the above functions. **/ #ifndef FAIREVENTBUFFER_H #define FAIREVENTBUFFER_H 1 #include "FairWriteoutBuffer.h" #include "FairRecoEventHeader.h" #include "TStopwatch.h" #include "TString.h" #include #include #include class TClonesArray; //class FairRecoEventHeader; class FairEventBuffer : public FairWriteoutBuffer { public : /** Default constructor **/ FairEventBuffer(); /** Constructor with task name **/ FairEventBuffer(TString branchName, TString className, TString folderName, Bool_t persistance); /** Destructor **/ virtual ~FairEventBuffer(); virtual void WriteOutAllDeadTimeData(); virtual std::vector > FindEvents() = 0; virtual void StoreEventData(FairRecoEventHeader* /*recoEvent*/) = 0; virtual Bool_t Init() = 0; virtual void Print() = 0; Double_t AllowedTime() { return fMaxAllowedEventCreationTime; }; void SetMaxAllowedTime(Double_t td) { fMaxAllowedEventCreationTime = td; }; private: TStopwatch fTimer; Double_t fExecTime; Double_t fMaxAllowedEventCreationTime; ClassDef(FairEventBuffer,1); }; #endif