X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=MUON%2FAliMUONPayloadTrigger.h;h=082b727505cd53cf1b6e577e49d95361e9b38341;hb=fc179f1702342af92f3d93cc28e46ed9a44bc67e;hp=706aab14b86ec29ba3d190fd22e23f0959cc459f;hpb=00e8673202f1989d263e349e60b86768e5c519d9;p=u%2Fmrichter%2FAliRoot.git diff --git a/MUON/AliMUONPayloadTrigger.h b/MUON/AliMUONPayloadTrigger.h index 706aab14b86..082b727505c 100644 --- a/MUON/AliMUONPayloadTrigger.h +++ b/MUON/AliMUONPayloadTrigger.h @@ -7,42 +7,64 @@ /// \ingroup raw /// \class AliMUONPayloadTrigger -/// \brief Class for decoding trigger rawdata +/// \brief Class for decoding the payload for trigger raw data /// -/// \author Christian Finck -/// -/////////////////////////////////////////////////////////////////////////////// -/// -/// This class decode the payload for trigger raw data. -/// -/////////////////////////////////////////////////////////////////////////////// +// Author Christian Finck #include class AliMUONDDLTrigger; class AliMUONLocalStruct; class AliMUONRegHeader; +class AliMUONLogger; +class AliMUONLogger; class AliMUONPayloadTrigger: public TObject { public : AliMUONPayloadTrigger(); virtual ~AliMUONPayloadTrigger(); - Bool_t Decode(UInt_t *buffer); + Bool_t Decode(UInt_t *buffer, Bool_t scalerEvent = kFALSE); void ResetDDL(); + /// Return maximum number of regional cards in DATE file Int_t GetMaxReg() const {return fMaxReg;} + /// Return maximum number of local cards in DATE file Int_t GetMaxLoc() const {return fMaxLoc;} - void SetMaxReg(Int_t reg); void SetMaxLoc(Int_t loc); + /// Return pointer to local structure AliMUONLocalStruct* GetLocalInfo() const {return fLocalStruct;} + /// Return pointer for regional structure AliMUONRegHeader* GetRegHeader() const {return fRegHeader;} + /// Return pointer for DDL structure AliMUONDDLTrigger* GetDDLTrigger() const {return fDDLTrigger;} + /// Get number of end of DARC word errors + Int_t GetDarcEoWErrors() const {return fDarcEoWErrors;} + /// Get number of end of Global word errors + Int_t GetGlobalEoWErrors() const {return fGlobalEoWErrors;} + /// Get number of end of regional word errors + Int_t GetRegEoWErrors() const {return fRegEoWErrors;} + /// Get number of end of local word errors + Int_t GetLocalEoWErrors() const {return fLocalEoWErrors;} + + /// Get Error logger + AliMUONLogger* GetErrorLogger() const {return fLog;} + + /// set warnings flag + void DisableWarnings() {fWarnings = kFALSE;} + private : + /// Not implemented + AliMUONPayloadTrigger(const AliMUONPayloadTrigger& stream); + /// Not implemented + AliMUONPayloadTrigger& operator = (const AliMUONPayloadTrigger& stream); + + void AddErrorMessage(const Char_t* msg); + void SetMaxReg(Int_t reg); Int_t fMaxReg; ///< maximum number of regional cards in DATE file Int_t fMaxLoc; ///< maximum number of local cards in DATE file @@ -51,11 +73,15 @@ class AliMUONPayloadTrigger: public TObject { AliMUONRegHeader* fRegHeader; //!< pointer for regional structure AliMUONLocalStruct* fLocalStruct; //!< pointer to local structure + AliMUONLogger* fLog; //!< Map of errors msg; + Int_t fDarcEoWErrors; //!< number of end of DARC word errors; + Int_t fGlobalEoWErrors; //!< number of end of global word errors; + Int_t fRegEoWErrors; //!< number of end of regional word errors; + Int_t fLocalEoWErrors; //!< number of end of local word errors; + Bool_t fWarnings; //!< flag to enable/disable warnings + Bool_t fNofRegSet; //!< true if number of regional boards is set from outside - AliMUONPayloadTrigger(const AliMUONPayloadTrigger& stream); - AliMUONPayloadTrigger& operator = (const AliMUONPayloadTrigger& stream); - - ClassDef(AliMUONPayloadTrigger, 1) // base class for reading MUON trigger rawdata + ClassDef(AliMUONPayloadTrigger, 3) // base class for reading MUON trigger rawdata }; #endif