X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=STEER%2FAliTriggerRunScalers.h;h=055be486c1a13748d3718bde03240c6b618db9fa;hb=22d7ad3e9feed9134beae1391f5550bb52c44b6c;hp=67bce8eb7aa83d678bc1c80d2a3e1dc0076c4bd7;hpb=e39e51f645d582b8a26480e977334e8789ecee54;p=u%2Fmrichter%2FAliRoot.git diff --git a/STEER/AliTriggerRunScalers.h b/STEER/AliTriggerRunScalers.h index 67bce8eb7aa..055be486c1a 100644 --- a/STEER/AliTriggerRunScalers.h +++ b/STEER/AliTriggerRunScalers.h @@ -15,7 +15,9 @@ ////////////////////////////////////////////////////////////////////////////// class TObject; class AliTimeStamp; +class AliTriggerScalersESD; class AliTriggerScalersRecord; +class AliTriggerScalersRecordESD; #include "TArrayC.h" @@ -23,18 +25,21 @@ class AliTriggerRunScalers : public TObject { public: AliTriggerRunScalers(); - virtual ~AliTriggerRunScalers() { fScalersRecord.SetOwner(); fScalersRecord.Delete(); } - + virtual ~AliTriggerRunScalers(); // Getters Short_t GetVersion() const { return fVersion; } ULong_t GetRunNumber() const { return fRunNumber; } UChar_t GetNumClasses() const { return fnClasses; } Char_t GetClass( Int_t i ) const { return fClassIndex[i]; } - TObjArray* GetScalersRecords() { return &fScalersRecord; } - AliTriggerScalersRecord* GetScalersRecord( Int_t index ) - { return (AliTriggerScalersRecord*)fScalersRecord.At(index); } - Int_t FindNearestScalersRecord( AliTimeStamp * stamp ); - Bool_t ConsistencyCheck(); + const TObjArray* GetScalersRecords() const { return &fScalersRecord; } + const TObjArray* GetScalersRecordsESD() const { return &fScalersRecordESD; } + AliTriggerScalersRecord* GetScalersRecord( Int_t index ) const { return (AliTriggerScalersRecord*)fScalersRecord.At(index); } + Int_t FindNearestScalersRecord( const AliTimeStamp *stamp ) const; + AliTriggerScalersESD* GetScalersForEventClass(const AliTimeStamp* stamp,const Int_t classIndex) const; + // Analysis + Int_t ConsistencyCheck(Int_t position,Bool_t correctOverflow, UInt_t** overflow); + Int_t CorrectScalersOverflow(); + Int_t CheckRunScalers(){return (fScalersRecord.GetEntriesFast()==fScalersRecordESD.GetEntriesFast());} // Setters void SetVersion( Short_t ver ) { fVersion = ver; } void SetRunNumber( ULong_t run ) { fRunNumber = run; } @@ -42,22 +47,22 @@ public: void SetClass( UChar_t i, UChar_t index ) { fClassIndex[i]=index; } void AddTriggerScalers( AliTriggerScalersRecord* scal ); virtual void Print( const Option_t* opt ="" ) const; - + AliTriggerRunScalers( const AliTriggerRunScalers &run ); + AliTriggerRunScalers& operator=(const AliTriggerRunScalers& run); static AliTriggerRunScalers* ReadScalers( TString & filename ); - private: Short_t fVersion; // Version ULong_t fRunNumber; // Run number UChar_t fnClasses; // Number of trigger classes TArrayC fClassIndex; // list of classes used in this partition TObjArray fScalersRecord; // Array of records (AliTriggerScalersRecord) + TObjArray fScalersRecordESD; // Array of records with 64bit scalers (AliTriggerScalersRecordESD) + - // AliTriggerRunScalers( const AliTriggerRunScalers &run ); - AliTriggerRunScalers& operator=(const AliTriggerRunScalers& run); - ClassDef( AliTriggerRunScalers, 1 ) // Define a Run Trigger Scalers (Scalers) + ClassDef( AliTriggerRunScalers, 3 ) // Define a Run Trigger Scalers (Scalers) }; #endif