X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=ITS%2FAliITSRawStreamSPDErrorLog.h;h=68b7da2fa749d224da203cee2917a8b4997225ad;hb=b4627c82f6e6b39a342d01644f668698349a6dd6;hp=55e17c37d00682d4dffe0942eb6bb0196e88d923;hpb=b696414b1aa0d8f540b2f640a96e39b8cc9a2e0e;p=u%2Fmrichter%2FAliRoot.git diff --git a/ITS/AliITSRawStreamSPDErrorLog.h b/ITS/AliITSRawStreamSPDErrorLog.h index 55e17c37d00..68b7da2fa74 100644 --- a/ITS/AliITSRawStreamSPDErrorLog.h +++ b/ITS/AliITSRawStreamSPDErrorLog.h @@ -24,12 +24,16 @@ class AliITSRawStreamSPDErrorLog : public TObject { AliITSRawStreamSPDErrorLog& operator=(const AliITSRawStreamSPDErrorLog& logger); virtual ~AliITSRawStreamSPDErrorLog(); - enum {kNrErrorCodes = 17}; + enum {kNrErrorCodes = 21}; enum {kTotal = 0}; void Reset(); void ProcessError(UInt_t errorCode, UInt_t eq, Int_t bytesRead, Int_t headersRead, const Char_t *errMess); void AddMessage(const Char_t *errMess); + + void ResetEvent(); + void ProcessEvent(UInt_t eventNum); + void AddErrorMessagesFromCurrentEvent(UInt_t eventNum); void SummarizeEvent(UInt_t eventNum); UInt_t GetNrErrors(UInt_t errorCode, UInt_t eq); @@ -37,7 +41,6 @@ class AliITSRawStreamSPDErrorLog : public TObject { UInt_t GetNrErrorsTotal(UInt_t errorCode, UInt_t eq); UInt_t GetNrErrorsTotalAllEq(UInt_t errorCode); - void SetPayloadSize(UInt_t eq, UInt_t size); void SetByteOffset(UInt_t eq, Int_t size); void SuppressErrorMessages(UInt_t errorCode, Bool_t suppr = kTRUE); void SuppressErrorEq(UInt_t eq, Bool_t suppr = kTRUE); @@ -45,27 +48,33 @@ class AliITSRawStreamSPDErrorLog : public TObject { static UInt_t GetNrErrorCodes(){return kNrErrorCodes;} TGraph* GetConsErrEvent(UInt_t errorCode, UInt_t eq); + TGraph* GetConsErrPos(UInt_t errorCode, UInt_t eq); TH1F* GetConsErrType(UInt_t eq); TH1F* GetConsErrFraction(UInt_t eq); // NB!!! Take care of deleting returned object later TH1F* GetConsErrFractionUnScaled(UInt_t eq); - TH1F* GetConsErrPos(UInt_t errorCode, UInt_t eq); TGText* GetText() {return fText;} + TGText* GetTextThisEvent(UInt_t eq) {if (eq<20) return fTextTmp[eq]; else return NULL;} + TGText* GetTextGeneralThisEvent() {return fTextTmpGeneral;} + UInt_t GetEventErrPosCounter(UInt_t errorCode, UInt_t eq); + UInt_t GetEventErrPos(UInt_t index, UInt_t errorCode, UInt_t eq); private: Int_t fNErrors[kNrErrorCodes][20]; // number of errors for this event, for each code and eq + Int_t fNErrorsTotal[kNrErrorCodes][20]; // number of errors for all events, for each code and eq UInt_t fNEvents[20]; // number of events used, for each eq - UInt_t fPayloadSize[20]; // size of payload for this event, for each eq - Bool_t fPayloadSizeSet[20]; // was the payload size set for this eq? UInt_t fErrEventCounter[kNrErrorCodes][20]; // event counter used when filling graph + UInt_t fErrPosCounter[kNrErrorCodes][20]; // event counter used when filling graph + UInt_t fErrPosTMPCounter[kNrErrorCodes][20]; // event counter used when filling graph Int_t fByteOffset[20]; // offset: how many bytes in the equipment header, for each eq Bool_t fSuppressMess[kNrErrorCodes]; // do we suppress error messages for a specific error code? Bool_t fSuppressEq[20]; // do we suppress error messages for a specific eq? TGraph *fConsErrEvent[kNrErrorCodes][20]; // graphs to display number of errors found in each event + TGraph *fConsErrPos[kNrErrorCodes][20]; // graphs to display number of bytes read for each error and event + TGraph *fConsErrPosTMP[kNrErrorCodes][20]; // temporary, to fill tgraph above for event TH1F *fConsErrType[20]; // histogram of how many errors for each error code TH1F *fConsErrFraction[20]; // histogram of rate of events with errors for each error code - TH1F *fConsErrPos[kNrErrorCodes][20]; // histogram of where in payload the errors occur TGText *fText; // text buffer for all events analyzed so far TGText *fTextTmp[20]; // text buffer for this event (defined error codes) @@ -74,7 +83,8 @@ class AliITSRawStreamSPDErrorLog : public TObject { void InitHistograms(); void DeleteHistograms() const; - ClassDef(AliITSRawStreamSPDErrorLog, 1); + ClassDef(AliITSRawStreamSPDErrorLog, 2); }; #endif +