class AliTRDarrayADC;
class AliTRDarraySignal;
class AliTRDarrayDictionary;
-class AliTRDReconstructor;
+class AliTRDdigitsParam;
class AliTRDdigitsManager : public TObject {
enum { kNDict = 3 };
- AliTRDdigitsManager(const AliTRDReconstructor *const rec = 0x0); //if rec is given, we are reading raw data, so the TObjArrays may (and will) contain only one entry
+ AliTRDdigitsManager(Bool_t rawRec = kFALSE); //if true digitsmanager uses only one entry in the TObjectArrays
AliTRDdigitsManager(const AliTRDdigitsManager &m);
virtual ~AliTRDdigitsManager();
AliTRDdigitsManager &operator=(const AliTRDdigitsManager &m);
virtual void Copy(TObject &m) const;
virtual void CreateArrays();
- virtual void ResetArrays();
- virtual void ResetArrays(Int_t det);
+ void ClearArrays(Int_t det);
virtual Bool_t BuildIndexes(Int_t det);
- virtual Bool_t MakeBranch(TTree *tree);
- virtual Bool_t ReadDigits(TTree *tree);
+ virtual Bool_t MakeBranch(TTree * const tree);
+ virtual Bool_t ReadDigits(TTree * consttree);
virtual Bool_t WriteDigits();
virtual void SetEvent(Int_t evt) { fEvent = evt; };
AliTRDarrayADC *GetDigits(Int_t det) const;
AliTRDarraySignal *GetSDigits(Int_t det) const;
AliTRDarrayDictionary *GetDictionary(Int_t det, Int_t i) const;
-
+ AliTRDdigitsParam *GetDigitsParam() const { return fDigitsParam; };
AliTRDSignalIndex *GetIndexes(Int_t det);
- TObjArray *GetIndexes() { return fSignalIndexes; };
+ TObjArray *GetIndexes() const { return fSignalIndexes; };
void RemoveDigits(Int_t det);
void RemoveDictionaries(Int_t det);
void RemoveIndexes(Int_t det);
void ClearIndexes(Int_t det);
- Int_t GetTrack(Int_t track, AliTRDdigit *digit) const;
+ Int_t GetTrack(Int_t track, AliTRDdigit * const digit) const;
Short_t GetDigitAmp(Int_t row, Int_t col, Int_t time, Int_t det) const;
UChar_t GetPadStatus(Int_t row, Int_t col, Int_t time, Int_t det) const;
- Bool_t LoadArray(TObjArray *object, const Char_t *branchname, TTree *tree=0);
- Bool_t LoadArrayDict(TObjArray *object, const Char_t *branchname, TTree *tree=0);
- Bool_t StoreArray(TObjArray *array1, const Char_t *branchname, TTree *tree=0);
- Bool_t StoreArrayDict(TObjArray *array3, const Char_t *branchname, TTree *tree=0);
-
+ Bool_t LoadArrayDigits();
+ Bool_t LoadArrayDict();
+ Bool_t LoadDigitsParam();
+ Bool_t StoreArrayDigits();
+ Bool_t StoreArrayDict();
+ Bool_t StoreDigitsParam();
+
protected:
static const Int_t fgkNDict; // Number of track dictionary arrays
Bool_t fHasSDigits; // Switch for the summable digits
TObjArray *fSignalIndexes; // Provides access to the active pads and tbins
Bool_t fUseDictionaries; // Use dictionaries or not (case of real data)
- TTree *fTreeD; // Tree with detector objects
- TBranch *fBranch; // Branchaddress
Int_t fDets; // No of Detectors
- Bool_t fRawRec; // Reconstruct from raw data. If its kTRUE then the TObjArrays have only one entry.
- // If kFALSE then they have (AliTRDgeometry::Ndet()) entries (default).
+ Bool_t fRawRec; // Reconstruct from raw files? If its kTRUE then the TObjArrays have only one entry.
+ AliTRDdigitsParam *fDigitsParam; // Parameters of the digits
- ClassDef(AliTRDdigitsManager,7) // Manages the TRD digits
+ ClassDef(AliTRDdigitsManager,8) // Manages the TRD digits
};
#endif