]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - RAW/AliRawReaderFile.h
Removal of the default physics event selection. Requested by Filimon and FMD experts...
[u/mrichter/AliRoot.git] / RAW / AliRawReaderFile.h
index 2a52a48852a355d19b6a4cd5ebe339d4deb59471..7a4ef27deba93bcaa7f12ab482c3eb44bc05d438 100644 (file)
@@ -19,6 +19,7 @@ class fstream;
 #endif
 #include <TString.h>
 
+class TArrayC;
 
 class AliRawReaderFile: public AliRawReader {
   public :
@@ -28,16 +29,16 @@ class AliRawReaderFile: public AliRawReader {
 
     virtual void     RequireHeader(Bool_t required);
 
-    virtual UInt_t   GetType() const {return 0;};
-    virtual UInt_t   GetRunNumber() const {return 0;};
-    virtual const UInt_t* GetEventId() const {return 0;};
-    virtual const UInt_t* GetTriggerPattern() const {return 0;};
-    virtual const UInt_t* GetDetectorPattern() const {return 0;};
+    virtual UInt_t   GetType() const {return fType;};
+    virtual UInt_t   GetRunNumber() const {return fRunNb;};
+    virtual const UInt_t* GetEventId() const {return fId;};
+    virtual const UInt_t* GetTriggerPattern() const {return fTriggerPattern;};
+    virtual const UInt_t* GetDetectorPattern() const {return &fDetectorPattern;};
     virtual const UInt_t* GetAttributes() const {return 0;};
     virtual const UInt_t* GetSubEventAttributes() const {return 0;};
     virtual UInt_t   GetLDCId() const {return 0;};
     virtual UInt_t   GetGDCId() const {return 0;};
-    virtual UInt_t   GetTimestamp() const {return 0;};
+    virtual UInt_t   GetTimestamp() const {return fTimestamp;};
 
     virtual Int_t    GetEquipmentSize() const {return fEquipmentSize;};
     virtual Int_t    GetEquipmentType() const {return 0;};
@@ -55,10 +56,15 @@ class AliRawReaderFile: public AliRawReader {
     virtual Bool_t   NextEvent();
     virtual Bool_t   RewindEvents();
 
+    void             SetEventType(UInt_t type) { fType = type; }
+    void             SetRunNb(UInt_t run) { fRunNb = run; }
+    void             SetDetectorPattern(UInt_t pattern) { fDetectorPattern = pattern; }
   protected :
     TString          GetDirName() const;
     void*            OpenDirectory();
     Bool_t           OpenNextFile();
+    Bool_t           CreateFileIndex();
 
     Int_t            fEventIndex;  // index of the event
     TString          fDirName;     // name of the input directory
@@ -68,6 +74,15 @@ class AliRawReaderFile: public AliRawReader {
     UChar_t*         fBuffer;      // buffer for payload
     Int_t            fBufferSize;  // size of fBuffer in bytes
     Int_t            fEquipmentSize; // equipment size from raw-data payload
+    TArrayC*         fDDLIndex;    //! the index of DDL files
+    Int_t            fDDLCurrent;  //! the index of DDL files
+
+    UInt_t           fType;        // event type (no idea from where to get it - put physics_event)
+    UInt_t           fRunNb;       // run number (no idea from where to get it - put 0)
+    UInt_t           fId[2];       // id field (read from the first CDH found, period is not filled)
+    UInt_t           fTriggerPattern[2]; // the trigger class pattern (read from the first CDH found)
+    UInt_t           fDetectorPattern;   // the detector pattern (no idea from where to read it)
+    UInt_t           fTimestamp;   // event timestamp (read from the DDL file creation time)
 
   private :
     AliRawReaderFile(const AliRawReaderFile& rawReader);