Public Member Functions | Protected Member Functions | Protected Attributes

TRocProc Class Reference

#include <TRocProc.h>

Inheritance diagram for TRocProc:
Inheritance graph
[legend]
Collaboration diagram for TRocProc:
Collaboration graph
[legend]

Public Member Functions

 TRocProc (const char *name=0)
virtual ~TRocProc ()
virtual Bool_t BuildEvent (TGo4EventElement *)
 TRocProc ()
 TRocProc (const char *name)
virtual ~TRocProc ()
virtual void InitEvent (TGo4EventElement *evt)
virtual void ProcessSubevent (TGo4MbsSubEvent *subevt)
virtual void FinalizeEvent ()
Short_t GetTriggerNumber () const
Int_t GetEventNumber () const
Long_t ExecuteScript (const char *script_name)

Protected Member Functions

virtual void ProcessRocMsg (roc::Message *msg)
virtual void ProcessNxHit (roc::Message *msg, Double_t nxadc_corr)
virtual void ProcessSubevent (TGo4MbsSubEvent *subevt)
virtual int32_t CalcDistanceToTrigger (int rocid, uint64_t fulltm)
void ProcessTriggerMessage (int rocid, uint64_t fulltm)
virtual void ProcessNxHit (roc::Message *msg, Double_t nxadc_corr)
void ProcessExtendedMessage (unsigned rocid, TRocData *rocevent, TRocMessageExtended &msg, bool with_unprocessed=true)
void ProcessTriggerMessage (TRocData *rocevent, int rocid, uint64_t fulltm)
void HandleUnprocessedMessages (TRocData *rocevent, int rocid)
void LoadPedestalFile (const char *fname)
void SavePedestalFile (const char *fname)
Bool_t ProcessGet4EpochMessage (UInt_t uRocId, TRocData *rocEvent, UInt_t uGet4IndexOffset, roc::Message *mesData)
Bool_t ProcessGet4DataMessage (UInt_t uRocId, UInt_t uGet4IndexOffset, roc::Message *mesData)
Bool_t ProcessGet4ExtSyncMessage (UInt_t uGet4IndexOffset, roc::Message *mesData)
Bool_t TimeOrderMessageBuffer (TRocData *rocToSort)
Bool_t PrintRocEpochIndexes (Int_t uMessagePriority=0)
Bool_t PrintRocEpochCycles (Int_t uMessagePriority=0)
Bool_t PrintLocalEpochIndexes (Int_t uMessagePriority=0)
Bool_t PrintLocalEpochCycles (Int_t uMessagePriority=0)
Bool_t PrintUnsynchronizedEpochCount (Int_t uMessagePriority=0)
Bool_t PrintTotalUnsynchronizedEpochCount (Int_t uMessagePriority=0)
Bool_t PrintMessageBufferIndexes (Int_t uMessagePriority=0)
Bool_t PrintMessageBufferSizes (Int_t uMessagePriority=0)
void ResetTrigger ()
void ResetEndOfBuffer ()
Bool_t AssertRoc (unsigned rocid)
Bool_t AssertNX (unsigned nxid)
Bool_t AssertGET4 (unsigned indx)
void AddSubProcessor (TCBMBeamtimeProc *)

Protected Attributes

TRocParamfParam
unsigned fNumRocs
bool nx_use_mask [MAX_NX]
TH1 * fEvntSize
TH1 * fMsgsPerRoc
TH1 * fTriggerPerRoc
UInt_t fCurrEvntTm
Double_t fLastRateTm
Double_t fRate
std::vector< TRocRecROC
TPedestalExtractorfPedestals
Bool_t fIsTimeSorted
bool get4_use_mask [MAX_GET4]
TH1 * fAUX2_R01
TH1 * fSYNC_R0_R10
TH1 * fDeltaTriggerTime
TGo4WinCond * fGlobalTriggerWind
TGo4WinCond * fGlobalAUXWind
ULong_t fTotaldatasize
TRocEventfOutputEvent
 array of all rocs histograms
Bool_t fFirstSubEvent
 shortcut to output event
Bool_t fHasNewGlobalTrigger
 indicate if first subevent is processing
unsigned fTriggerCounter
 true if new global trigger was found
std::vector< TGet4RecFECHIP
 count all trigger messages received
UInt_t printData
 array of all get4 related structure
UInt_t uNbEvents [MAX_ROC]
UInt_t uFirstEventIndex [MAX_ROC]
UInt_t uPrevEventIndex [MAX_ROC]
std::vector< std::vector
< TRocMessageExtended > > 
vMessageInterBuffer
std::vector< TRocMessageExtendedvMessageEventBuffer
UInt_t uCurrentBlockBuffer
Bool_t bTransferMessageNext
UInt_t uEpochBufferStart
UInt_t uCycleBufferStart
std::vector< std::vector
< TRocMessageExtended > > 
vMessageInterBufferUnprocessed
std::vector< std::vector
< TRocMessageExtended > > 
vUnprocessedMessages
UInt_t uLastEpochMainClock
UInt_t uMainEpochCycle
UInt_t uCurrentEpoch2
UInt_t uCurrentCycle2
UInt_t uRocEpochFirstSyncedChip
UInt_t uRocCycleFirstSyncedChip
ULong64_t uEpochFirstSyncAfterReset
UInt_t uCycleFirstSyncAfterReset
TH1 * fGet4SynchChip
TH1 * fGet4ErrorChip
TH2 * fGet4SynchPatt
TH2 * fGet4ErrorPatt
TH1 * fGet4DataLoss
TH1 * fGet4EpochLoss
TH2 * fNbMissedSync
TH2 * fGet4EdgeMessagePerRawEvent
TH2 * fGet4NotValidMessRawEvent
TH1 * fGet4RisEdgesNb
TH1 * fGet4FalEdgesNb
TH2 * fGet4EdgesDiffEvol
TH1 * fGet4RisEdgesEvol
TH1 * fGet4FalEdgesEvol
TH2 * fMapEpochsMain
TH2 * fMapEpochsRoc
TH2 * fMapEpochsLocal
TH1 * fDistribEpochsMain
TH2 * fDistribEpochsRoc
TH2 * fDistribEpochsLocal
TH2 * fInterChipSyncEpochShift
UInt_t uIndexResetGet4
TCBMBeamtimeEventfBeamtimeEvent
TGo4MbsEvent * fMbsInput
Short_t fMbsTriggerNumber
Int_t fMbsEventNumber

Detailed Description

Definition at line 73 of file TRocProc.h.


Constructor & Destructor Documentation

TRocProc::TRocProc ( const char *  name = 0  ) 
TRocProc::~TRocProc (  )  [virtual]

Definition at line 71 of file TRocProc.cxx.

TRocProc::TRocProc (  ) 

Definition at line 34 of file TRocProc.cxx.

TRocProc::TRocProc ( const char *  name  ) 
virtual TRocProc::~TRocProc (  )  [virtual]

Member Function Documentation

void TCBMBeamtimeProc::AddSubProcessor ( TCBMBeamtimeProc proc  )  [protected, inherited]
Bool_t TRocProc::AssertGET4 ( unsigned  indx  )  [inline, protected]

Definition at line 88 of file TRocProc.h.

References get4_use_mask, and MAX_GET4.

Bool_t TRocProc::AssertNX ( unsigned  nxid  )  [inline, protected]

Definition at line 82 of file TRocProc.h.

References MAX_NX, and nx_use_mask.

Bool_t TRocProc::AssertRoc ( unsigned  rocid  )  [inline, protected]

Definition at line 75 of file TRocProc.h.

References TRocEvent::ConfigRocs, and MAX_ROC.

Referenced by FinalizeEvent(), and ProcessTriggerMessage().

Bool_t TRocProc::BuildEvent ( TGo4EventElement *  ev  )  [virtual]
int32_t TRocProc::CalcDistanceToTrigger ( int  rocid,
uint64_t  fulltm 
) [protected, virtual]

Reimplemented in TCosyDec10Proc.

Definition at line 210 of file TRocProc.cxx.

References ROC.

Referenced by BuildEvent().

Long_t TCBMBeamtimeProc::ExecuteScript ( const char *  script_name  )  [inherited]

Temporary here - will be from 4.5.3 version in distribution

Definition at line 142 of file TCBMBeamtimeProc.cxx.

Referenced by TCernOct12UnpackProc::TCernOct12UnpackProc(), TFaspProc::TFaspProc(), TFiberHodProc::TFiberHodProc(), TSpadicV10Proc::TSpadicV10Proc(), and TTrbProc::TTrbProc().

void TRocProc::FinalizeEvent (  )  [virtual]
Int_t TCBMBeamtimeProc::GetEventNumber (  )  const [inline, inherited]
Short_t TCBMBeamtimeProc::GetTriggerNumber (  )  const [inline, inherited]
void TRocProc::HandleUnprocessedMessages ( TRocData rocevent,
int  rocid 
) [protected]
void TRocProc::InitEvent ( TGo4EventElement *  evt  )  [virtual]

Reimplemented from TCBMBeamtimeProc.

Definition at line 879 of file TRocProc.cxx.

References fFirstSubEvent, fOutputEvent, and TCBMBeamtimeEvent::GetSubEvent().

void TRocProc::LoadPedestalFile ( const char *  fname  )  [protected]
Bool_t TRocProc::PrintLocalEpochCycles ( Int_t  uMessagePriority = 0  )  [protected]

Definition at line 3707 of file TRocProc.cxx.

References FECHIP, fParam, and TRocParam::uNbFeets.

Referenced by ProcessGet4EpochMessage().

Bool_t TRocProc::PrintLocalEpochIndexes ( Int_t  uMessagePriority = 0  )  [protected]

Definition at line 3656 of file TRocProc.cxx.

References FECHIP, fParam, and TRocParam::uNbFeets.

Referenced by ProcessGet4EpochMessage().

Bool_t TRocProc::PrintMessageBufferIndexes ( Int_t  uMessagePriority = 0  )  [protected]

Definition at line 3866 of file TRocProc.cxx.

References FECHIP, fParam, and TRocParam::uNbFeets.

Referenced by ProcessGet4EpochMessage().

Bool_t TRocProc::PrintMessageBufferSizes ( Int_t  uMessagePriority = 0  )  [protected]

Definition at line 3923 of file TRocProc.cxx.

References FECHIP, fParam, TRocParam::uNbBuffers, and TRocParam::uNbFeets.

Referenced by ProcessGet4EpochMessage().

Bool_t TRocProc::PrintRocEpochCycles ( Int_t  uMessagePriority = 0  )  [protected]

Definition at line 3605 of file TRocProc.cxx.

References FECHIP, fParam, and TRocParam::uNbFeets.

Bool_t TRocProc::PrintRocEpochIndexes ( Int_t  uMessagePriority = 0  )  [protected]

Definition at line 3557 of file TRocProc.cxx.

References FECHIP, fParam, and TRocParam::uNbFeets.

Referenced by ProcessGet4EpochMessage().

Bool_t TRocProc::PrintTotalUnsynchronizedEpochCount ( Int_t  uMessagePriority = 0  )  [protected]

Definition at line 3809 of file TRocProc.cxx.

References FECHIP, fParam, and TRocParam::uNbFeets.

Bool_t TRocProc::PrintUnsynchronizedEpochCount ( Int_t  uMessagePriority = 0  )  [protected]

Definition at line 3758 of file TRocProc.cxx.

References FECHIP, fParam, and TRocParam::uNbFeets.

void TRocProc::ProcessExtendedMessage ( unsigned  rocid,
TRocData rocevent,
TRocMessageExtended msg,
bool  with_unprocessed = true 
) [protected]
Bool_t TRocProc::ProcessGet4DataMessage ( UInt_t  uRocId,
UInt_t  uGet4IndexOffset,
roc::Message mesData 
) [protected]
Bool_t TRocProc::ProcessGet4EpochMessage ( UInt_t  uRocId,
TRocData rocEvent,
UInt_t  uGet4IndexOffset,
roc::Message mesData 
) [protected]
Bool_t TRocProc::ProcessGet4ExtSyncMessage ( UInt_t  uGet4IndexOffset,
roc::Message mesData 
) [protected]
virtual void TRocProc::ProcessNxHit ( roc::Message msg,
Double_t  nxadc_corr 
) [inline, protected, virtual]

Reimplement this method when one want to access only nXYTER hits from input event

Reimplemented in TCosyDec10Proc.

Definition at line 39 of file TRocProc.h.

virtual void TRocProc::ProcessNxHit ( roc::Message msg,
Double_t  nxadc_corr 
) [inline, protected, virtual]

Reimplement this method when one want to access only nXYTER hits from input event

Reimplemented in TCosyDec10Proc.

Definition at line 86 of file TRocProc.h.

Referenced by BuildEvent().

virtual void TRocProc::ProcessRocMsg ( roc::Message msg  )  [inline, protected, virtual]

Reimplement this method when one want to access all ROC messages

Reimplemented in TCernNov10Proc, and TCosyDec10Proc.

Definition at line 83 of file TRocProc.h.

Referenced by BuildEvent().

virtual void TRocProc::ProcessSubevent ( TGo4MbsSubEvent *  subevt  )  [virtual]

Reimplemented from TCBMBeamtimeProc.

Reimplemented in TCernNov10Proc, and TCosyDec10Proc.

void TRocProc::ProcessSubevent ( TGo4MbsSubEvent *  subevt  )  [inline, protected, virtual]

GET4 unpacking & pre-processing

GET4 unpacking & pre-processing

GET4 unpacking & pre-processing

GET4 unpacking & pre-processing

GET4 unpacking & pre-processing

Reimplemented from TCBMBeamtimeProc.

Reimplemented in TCernNov10Proc, and TCosyDec10Proc.

Definition at line 88 of file TRocProc.h.

Referenced by BuildEvent().

void TRocProc::ProcessTriggerMessage ( TRocData rocevent,
int  rocid,
uint64_t  fulltm 
) [protected]
void TRocProc::ProcessTriggerMessage ( int  rocid,
uint64_t  fulltm 
) [protected]

Definition at line 191 of file TRocProc.cxx.

References fTriggerPerRoc, nx_use_mask, and ROC.

Referenced by BuildEvent(), and ProcessTriggerMessage().

void TRocProc::ResetEndOfBuffer (  )  [protected]

Definition at line 2114 of file TRocProc.cxx.

References ROC.

Referenced by FinalizeEvent().

void TRocProc::ResetTrigger (  )  [protected]

Definition at line 2091 of file TRocProc.cxx.

References fHasNewGlobalTrigger, and ROC.

Referenced by FinalizeEvent().

void TRocProc::SavePedestalFile ( const char *  fname  )  [protected]
Bool_t TRocProc::TimeOrderMessageBuffer ( TRocData rocToSort  )  [protected]

Definition at line 3528 of file TRocProc.cxx.

References TRocData::vMessageEventBuffer.

Referenced by FinalizeEvent().


Field Documentation

Bool_t TRocProc::bTransferMessageNext [protected]

Definition at line 152 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

TH1* TRocProc::fAUX2_R01 [protected]

Definition at line 112 of file TRocProc.h.

Definition at line 60 of file TCBMBeamtimeProc.h.

Referenced by TCBMBeamtimeProc::BuildEvent().

UInt_t TRocProc::fCurrEvntTm [protected]

Definition at line 105 of file TRocProc.h.

TH1* TRocProc::fDeltaTriggerTime [protected]

Definition at line 196 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

TH1* TRocProc::fDistribEpochsMain [protected]

Definition at line 194 of file TRocProc.h.

TH2* TRocProc::fDistribEpochsRoc [protected]

Definition at line 195 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

std::vector<TGet4Rec> TRocProc::FECHIP [protected]
TH1 * TRocProc::fEvntSize [protected]

Definition at line 100 of file TRocProc.h.

Referenced by BuildEvent(), FinalizeEvent(), and TRocProc().

Bool_t TRocProc::fFirstSubEvent [protected]

shortcut to output event

Definition at line 132 of file TRocProc.h.

Referenced by InitEvent(), and ProcessTriggerMessage().

TH1* TRocProc::fGet4DataLoss [protected]

Definition at line 178 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

Definition at line 182 of file TRocProc.h.

Referenced by FinalizeEvent().

TH2* TRocProc::fGet4EdgesDiffEvol [protected]

Definition at line 187 of file TRocProc.h.

Referenced by ProcessGet4DataMessage().

TH1* TRocProc::fGet4EpochLoss [protected]

Definition at line 179 of file TRocProc.h.

TH1* TRocProc::fGet4ErrorChip [protected]

Definition at line 174 of file TRocProc.h.

TH2* TRocProc::fGet4ErrorPatt [protected]

Definition at line 176 of file TRocProc.h.

TH1* TRocProc::fGet4FalEdgesEvol [protected]

Definition at line 189 of file TRocProc.h.

Referenced by ProcessGet4DataMessage().

TH1* TRocProc::fGet4FalEdgesNb [protected]

Definition at line 186 of file TRocProc.h.

Referenced by ProcessGet4DataMessage().

Definition at line 183 of file TRocProc.h.

Referenced by FinalizeEvent().

TH1* TRocProc::fGet4RisEdgesEvol [protected]

Definition at line 188 of file TRocProc.h.

Referenced by ProcessGet4DataMessage().

TH1* TRocProc::fGet4RisEdgesNb [protected]

Definition at line 185 of file TRocProc.h.

Referenced by ProcessGet4DataMessage().

TH1* TRocProc::fGet4SynchChip [protected]

Definition at line 173 of file TRocProc.h.

Referenced by ProcessGet4ExtSyncMessage().

TH2* TRocProc::fGet4SynchPatt [protected]

Definition at line 175 of file TRocProc.h.

Referenced by ProcessGet4ExtSyncMessage().

TGo4WinCond* TRocProc::fGlobalAUXWind [protected]

Definition at line 121 of file TRocProc.h.

TGo4WinCond* TRocProc::fGlobalTriggerWind [protected]
Bool_t TRocProc::fHasNewGlobalTrigger [protected]

indicate if first subevent is processing

Definition at line 134 of file TRocProc.h.

Referenced by ProcessTriggerMessage(), and ResetTrigger().

Definition at line 199 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

Bool_t TRocProc::fIsTimeSorted [protected]

Definition at line 102 of file TRocProc.h.

Referenced by FinalizeEvent(), and ProcessExtendedMessage().

Double_t TRocProc::fLastRateTm [protected]

Definition at line 107 of file TRocProc.h.

Referenced by BuildEvent(), FinalizeEvent(), and TRocProc().

TH2* TRocProc::fMapEpochsLocal [protected]

Definition at line 193 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

TH2* TRocProc::fMapEpochsMain [protected]

Definition at line 191 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

TH2* TRocProc::fMapEpochsRoc [protected]

Definition at line 192 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

Int_t TCBMBeamtimeProc::fMbsEventNumber [protected, inherited]
TGo4MbsEvent* TCBMBeamtimeProc::fMbsInput [protected, inherited]

Definition at line 61 of file TCBMBeamtimeProc.h.

Referenced by TCBMBeamtimeProc::BuildEvent().

Short_t TCBMBeamtimeProc::fMbsTriggerNumber [protected, inherited]
TH1 * TRocProc::fMsgsPerRoc [protected]

Definition at line 102 of file TRocProc.h.

Referenced by BuildEvent(), and TRocProc().

TH2* TRocProc::fNbMissedSync [protected]

Definition at line 180 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

unsigned TRocProc::fNumRocs [protected]

Definition at line 96 of file TRocProc.h.

Referenced by BuildEvent(), TCosyDec10Proc::BuildEvent(), and TRocProc().

array of all rocs histograms

Definition at line 131 of file TRocProc.h.

Referenced by FinalizeEvent(), InitEvent(), and ProcessTriggerMessage().

TRocParam * TRocProc::fParam [protected]

Definition at line 100 of file TRocProc.h.

Referenced by BuildEvent(), FinalizeEvent(), and TCosyDec10Proc::ProcessNxHit().

Double_t TRocProc::fRate [protected]

Definition at line 108 of file TRocProc.h.

Referenced by BuildEvent(), FinalizeEvent(), and TRocProc().

TH1* TRocProc::fSYNC_R0_R10 [protected]

Definition at line 114 of file TRocProc.h.

Referenced by FinalizeEvent().

ULong_t TRocProc::fTotaldatasize [protected]

Definition at line 123 of file TRocProc.h.

Referenced by FinalizeEvent().

unsigned TRocProc::fTriggerCounter [protected]

true if new global trigger was found

Definition at line 135 of file TRocProc.h.

TH1 * TRocProc::fTriggerPerRoc [protected]

Definition at line 103 of file TRocProc.h.

Referenced by ProcessTriggerMessage(), and TRocProc().

bool TRocProc::get4_use_mask[MAX_GET4] [protected]

Definition at line 108 of file TRocProc.h.

Referenced by AssertGET4().

bool TRocProc::nx_use_mask [protected]

Definition at line 98 of file TRocProc.h.

Referenced by AssertNX(), BuildEvent(), ProcessTriggerMessage(), and TRocProc().

UInt_t TRocProc::printData [protected]

array of all get4 related structure

Definition at line 142 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

std::vector< TRocRec > TRocProc::ROC [protected]
UInt_t TRocProc::uCurrentBlockBuffer [protected]

Definition at line 150 of file TRocProc.h.

UInt_t TRocProc::uCurrentCycle2 [protected]

Definition at line 164 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

UInt_t TRocProc::uCurrentEpoch2 [protected]

Definition at line 163 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

UInt_t TRocProc::uCycleBufferStart [protected]

Definition at line 154 of file TRocProc.h.

Definition at line 170 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

UInt_t TRocProc::uEpochBufferStart [protected]

Definition at line 153 of file TRocProc.h.

ULong64_t TRocProc::uEpochFirstSyncAfterReset [protected]

Definition at line 169 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

UInt_t TRocProc::uFirstEventIndex[MAX_ROC] [protected]

Definition at line 144 of file TRocProc.h.

UInt_t TRocProc::uIndexResetGet4 [protected]

Definition at line 202 of file TRocProc.h.

UInt_t TRocProc::uLastEpochMainClock [protected]

Definition at line 161 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

UInt_t TRocProc::uMainEpochCycle [protected]

Definition at line 162 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

UInt_t TRocProc::uNbEvents[MAX_ROC] [protected]

Definition at line 143 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

UInt_t TRocProc::uPrevEventIndex[MAX_ROC] [protected]

Definition at line 145 of file TRocProc.h.

Definition at line 167 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

Definition at line 166 of file TRocProc.h.

Referenced by ProcessGet4EpochMessage().

Definition at line 149 of file TRocProc.h.

std::vector< std::vector<TRocMessageExtended> > TRocProc::vMessageInterBuffer [protected]

Definition at line 148 of file TRocProc.h.

Referenced by FinalizeEvent(), HandleUnprocessedMessages(), and ProcessGet4EpochMessage().

std::vector< std::vector<TRocMessageExtended> > TRocProc::vMessageInterBufferUnprocessed [protected]

Definition at line 157 of file TRocProc.h.

Referenced by HandleUnprocessedMessages(), and ProcessGet4EpochMessage().

std::vector< std::vector<TRocMessageExtended> > TRocProc::vUnprocessedMessages [protected]

Definition at line 158 of file TRocProc.h.

Referenced by HandleUnprocessedMessages(), and ProcessGet4EpochMessage().


The documentation for this class was generated from the following files: