#ifndef __TMrbModuleListEntry_h__
#define __TMrbModuleListEntry_h__
#include "TArrayI.h"
#include "TMrbNamedX.h"
class TMrbModuleListEntry : public TObject {
public:
TMrbModuleListEntry( Int_t NofParams = 0,
Int_t IndexOfFirstParam = 0,
Int_t TimeOffset = 0,
TMrbNamedX * FirstParam = NULL,
TMrbNamedX * FirstHisto = NULL,
TMrbNamedX * FirstSingle = NULL) :
fNofParams(NofParams),
fIndexOfFirstParam(IndexOfFirstParam),
fTimeOffset(TimeOffset),
fFirstParam(FirstParam),
fFirstHisto(FirstHisto),
fFirstSingle(FirstSingle) {
fNofEventHits = 0;
fEventsPerTrigger = 0;
fNofChannelHits.Set(NofParams);
fNofChannelHits.Reset();
};
virtual ~TMrbModuleListEntry() {};
inline Int_t GetNofParams() const { return(fNofParams); };
inline void SetNofParams(Int_t NofParams) { fNofParams = NofParams; };
inline Int_t GetTimeOffset() const { return(fTimeOffset); };
inline void SetTimeOffset(Int_t TimeOffset) { fTimeOffset = TimeOffset; };
inline Int_t GetIndexOfFirstParam() const { return(fIndexOfFirstParam); };
inline void SetIndexOfFirstParam(Int_t FirstParam) { fIndexOfFirstParam = FirstParam; };
inline TMrbNamedX * GetFirstParam() const { return(fFirstParam); };
inline void SetFirstParam(TMrbNamedX * FirstParam) { fFirstParam = FirstParam; };
inline TMrbNamedX * GetFirstHisto(Bool_t SingleFlag = kFALSE) const {
return(SingleFlag ? fFirstSingle : fFirstHisto);
};
inline void SetFirstHisto(TMrbNamedX * FirstHisto, Bool_t SingleFlag = kFALSE) {
if (SingleFlag) fFirstSingle = FirstHisto;
else fFirstHisto = FirstHisto;
};
void ResetChannelHits(Int_t Channel = -1);
inline void ResetEventHits() { fNofEventHits = 0; };
inline void ResetAllHits() { fNofEventHits = 0; fNofChannelHits.Reset(); };
inline void IncrEventHits() { fNofEventHits++; };
void IncrChannelHits(Int_t Channel);
inline Int_t GetEventHits() { return(fNofEventHits); };
Int_t GetChannelHits(Int_t Channel);
inline void IncrEventsPerTrigger() { fEventsPerTrigger++; };
inline void ResetEventsPerTrigger() { fEventsPerTrigger = 0; };
inline Int_t GetEventsPerTrigger() { return(fEventsPerTrigger); };
protected:
Int_t fNofParams;
Int_t fIndexOfFirstParam;
Int_t fTimeOffset;
Int_t fNofEventHits;
Int_t fEventsPerTrigger;
TArrayI fNofChannelHits;
TMrbNamedX * fFirstParam;
TMrbNamedX * fFirstHisto;
TMrbNamedX * fFirstSingle;
ClassDef(TMrbModuleListEntry, 0)
};
#endif