1 #ifndef ALITRDDIGITSMANAGER_H
2 #define ALITRDDIGITSMANAGER_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 /* $Id: AliTRDdigitsManager.h,v */
9 /////////////////////////////////////////////////////////////
10 // Manages the TRD digits //
11 /////////////////////////////////////////////////////////////
15 #include "AliTRDsegmentArray.h"
16 #include "AliTRDdataArrayI.h"
17 #include "AliTRDdigit.h"
19 const Int_t kNDict = 3;
21 class AliTRDdigitsManager : public TObject {
25 AliTRDdigitsManager();
26 AliTRDdigitsManager(const AliTRDdigitsManager &m);
27 virtual ~AliTRDdigitsManager();
28 AliTRDdigitsManager &operator=(const AliTRDdigitsManager &m);
30 virtual void Copy(TObject &m);
31 virtual Bool_t MakeBranch();
32 virtual Bool_t ReadDigits();
33 virtual Bool_t WriteDigits();
35 virtual void SetRaw();
37 virtual Bool_t IsRaw() { return fIsRaw; };
38 virtual AliTRDsegmentArray *GetDigits() { return fDigits; };
39 virtual AliTRDsegmentArray *GetDictionary(Int_t i) { return fDictionary[i]; };
41 AliTRDdigit *GetDigit(Int_t row, Int_t col, Int_t time, Int_t det);
42 Int_t GetTrack(Int_t track, Int_t row, Int_t col, Int_t time, Int_t det);
44 AliTRDdataArrayI *GetDigits(Int_t det);
45 AliTRDdataArrayI *GetDictionary(Int_t det, Int_t i);
46 Int_t GetTrack(Int_t track, AliTRDdigit *Digit);
50 AliTRDsegmentArray *fDigits; //! Digits data Array
51 AliTRDsegmentArray *fDictionary[kNDict]; //! Track dictionary data array
53 Bool_t fIsRaw; // Flag indicating raw digits
55 ClassDef(AliTRDdigitsManager,1) // Manages the TRD digits