#include <TSpadicV10Proc.h>
Public Member Functions | |
TSpadicV10Proc () | |
TSpadicV10Proc (const char *name) | |
virtual | ~TSpadicV10Proc () |
virtual void | InitEvent (TGo4EventElement *evt) |
virtual void | ProcessSubevent (TGo4MbsSubEvent *subevt) |
virtual void | FinalizeEvent () |
virtual Bool_t | BuildEvent (TGo4EventElement *) |
Short_t | GetTriggerNumber () const |
Int_t | GetEventNumber () const |
Long_t | ExecuteScript (const char *script_name) |
Protected Member Functions | |
void | ProcessExtendedMessage (unsigned sid, TSpadicV10Data *rocevent, TSpadicV10MessageExtended &msg, bool with_unprocessed=true) |
void | ProcessTriggerMessage (TSpadicV10Data *event, int brd_id, uint64_t fulltm) |
void | LoadPedestalFile (const char *fname) |
void | SavePedestalFile (const char *fname) |
Bool_t | PrintSpadicV10EpochIndexes (Int_t uMessagePriority=0) |
Bool_t | PrintSpadicV10EpochCycles (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 () |
unsigned | numBoards () const |
Bool_t | AssertBoard (unsigned brd) |
Bool_t | AssertSpadic (unsigned brd, unsigned spid) |
Bool_t | AssertGroup (unsigned gid) |
void | AddSubProcessor (TCBMBeamtimeProc *) |
Protected Attributes | |
TSpadicV10Param * | fParam |
std::vector< TSpadicV10BoardRec > | BRDS |
Bool_t | fIsTimeSorted |
array of boards histograms | |
TH1 * | fEvntSize |
TH1 * | fMsgsPerBoard |
TH1 * | fTriggersPerBoard |
TH1 * | fSYNC1_R01 |
TH1 * | fAUX2_R01 |
TH1 * | fDeltaTriggerTime |
TGo4WinCond * | fGlobalTriggerWind |
TGo4WinCond * | fGlobalAUXWind |
ULong_t | fTotaldatasize |
UInt_t | fCurrEvntTm |
Double_t | fLastRateTm |
Double_t | fRate |
TSpadicV10Event * | fOutputEvent |
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 | |
TCBMBeamtimeEvent * | fBeamtimeEvent |
TGo4MbsEvent * | fMbsInput |
Short_t | fMbsTriggerNumber |
Int_t | fMbsEventNumber |
Definition at line 23 of file TSpadicV10Proc.h.
TSpadicV10Proc::TSpadicV10Proc | ( | ) |
Definition at line 29 of file TSpadicV10Proc.cxx.
TSpadicV10Proc::TSpadicV10Proc | ( | const char * | name | ) |
Definition at line 55 of file TSpadicV10Proc.cxx.
References TSpadicV10Param::activeBoards, AssertBoard(), AssertSpadic(), BRDS, TCBMBeamtimeProc::ExecuteScript(), fAUX2_R01, fDeltaTriggerTime, fEvntSize, fGlobalAUXWind, fGlobalTriggerWind, TSpadicV10Rec::fInfoTypes, fLastRateTm, fMsgsPerBoard, TSpadicV10Rec::fMsgTypes, fParam, fRate, TSpadicV10Rec::fSpadic_ADCdist, TSpadicV10Rec::fSpadic_overflows, TSpadicV10Rec::fSpadic_trace, TSpadicV10Rec::fSpadic_trace2D, TSpadicV10Rec::fSpadic_trace_clean, TSpadicV10Rec::fStopTypes, fSYNC1_R01, fTotaldatasize, TSpadicV10Rec::fTrigger_Chs, fTriggersPerBoard, TSpadicV10Rec::fTrigTypes, sp605::INFO_DIS, sp605::INFO_MSB, sp605::INFO_NBE, sp605::INFO_NGT, sp605::INFO_NOP, sp605::INFO_NRT, sp605::INFO_SYN, MAX_SPADICV10_GROUPS, MAX_SPADICV10CHANNELS, roc::MSG_AUX, sp605::MSG_EPOCH, roc::MSG_EPOCH, roc::MSG_EPOCH2, roc::MSG_GET4, sp605::MSG_HIT, roc::MSG_HIT, sp605::MSG_INFO, sp605::MSG_NOP, sp605::MSG_OVERFLOW, roc::MSG_SYNC, roc::MSG_SYS, TSpadicV10Param::numBoards, ResetEndOfBuffer(), SPADICV10_TRACE_SIZE, sp605::STOP_FIFOFULL, sp605::STOP_FIFOFULLMULTIHIT, sp605::STOP_MULTIHIT, sp605::STOP_NORMAL, sp605::STOP_OUTBUFFULL, sp605::STOP_OUTBUFFULLMULTIHIT, roc::SYSMSG_ADC, roc::SYSMSG_DAQ_FINISH, roc::SYSMSG_DAQ_RESUME, roc::SYSMSG_DAQ_START, roc::SYSMSG_FIFO_RESET, roc::SYSMSG_NX_PARITY, roc::SYSMSG_PACKETLOST, roc::SYSMSG_PCTIME, roc::SYSMSG_SYNC_PARITY, roc::SYSMSG_USER, sp605::TRIG_BOTH, sp605::TRIG_GLOBAL, sp605::TRIG_NEIGHBOR, and sp605::TRIG_SELF.
TSpadicV10Proc::~TSpadicV10Proc | ( | ) | [virtual] |
Definition at line 38 of file TSpadicV10Proc.cxx.
void TCBMBeamtimeProc::AddSubProcessor | ( | TCBMBeamtimeProc * | proc | ) | [protected, inherited] |
Definition at line 41 of file TCBMBeamtimeProc.cxx.
References TCBMBeamtimeProc::fSubProcessors.
Referenced by TCernGem12DetectorProc::TCernGem12DetectorProc(), TCernGem12FinalProc::TCernGem12FinalProc(), TCernGem12UnpackProc::TCernGem12UnpackProc(), TCernOct11DetectorProc::TCernOct11DetectorProc(), TCernOct11UnpackProc::TCernOct11UnpackProc(), TCernOct12DetectorProc::TCernOct12DetectorProc(), TCernOct12FinalProc::TCernOct12FinalProc(), TCernOct12UnpackProc::TCernOct12UnpackProc(), TCosyJan12DetectorProc::TCosyJan12DetectorProc(), TCosyJan12FinalProc::TCosyJan12FinalProc(), TCosyJan12UnpackProc::TCosyJan12UnpackProc(), TCosyNov11DetectorProc::TCosyNov11DetectorProc(), TCosyNov11UnpackProc::TCosyNov11UnpackProc(), TGsiAug12CalibrationProc::TGsiAug12CalibrationProc(), TGsiAug12DetectorProc::TGsiAug12DetectorProc(), TGsiAug12OutputProc::TGsiAug12OutputProc(), TGsiAug12TrackingProc::TGsiAug12TrackingProc(), TGsiAug12UnpackProc::TGsiAug12UnpackProc(), TLaserTest12DetectorProc::TLaserTest12DetectorProc(), and TLaserTest12UnpackProc::TLaserTest12UnpackProc().
Bool_t TSpadicV10Proc::AssertBoard | ( | unsigned | brd | ) | [inline, protected] |
Definition at line 74 of file TSpadicV10Proc.h.
References BRDS.
Referenced by FinalizeEvent(), ProcessSubevent(), ProcessTriggerMessage(), and TSpadicV10Proc().
Bool_t TSpadicV10Proc::AssertGroup | ( | unsigned | gid | ) | [inline, protected] |
Definition at line 84 of file TSpadicV10Proc.h.
Bool_t TSpadicV10Proc::AssertSpadic | ( | unsigned | brd, | |
unsigned | spid | |||
) | [inline, protected] |
Definition at line 79 of file TSpadicV10Proc.h.
References BRDS.
Referenced by ProcessSubevent(), and TSpadicV10Proc().
Bool_t TCBMBeamtimeProc::BuildEvent | ( | TGo4EventElement * | outevnt | ) | [virtual, inherited] |
Reimplemented in TCernNov10Proc, TCosyDec10Proc, TRocProc, and TSpadicProc.
Definition at line 52 of file TCBMBeamtimeProc.cxx.
References TCBMBeamtimeProc::fBeamtimeEvent, TCBMBeamtimeProc::FinalizeEvent(), TCBMBeamtimeProc::fMbsEventNumber, TCBMBeamtimeProc::fMbsInput, TCBMBeamtimeProc::fMbsTriggerNumber, TCBMBeamtimeProc::fProcIterator, TCBMBeamtimeProc::InitEvent(), and TCBMBeamtimeProc::ProcessSubevent().
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(), and TTrbProc::TTrbProc().
void TSpadicV10Proc::FinalizeEvent | ( | ) | [virtual] |
Reimplemented from TCBMBeamtimeProc.
Definition at line 715 of file TSpadicV10Proc.cxx.
References AssertBoard(), BRDS, TSpadicV10Param::doSorting, fAUX2_R01, fEvntSize, TSpadicV10Data::fExtMessages, fGlobalTriggerWind, fIsTimeSorted, fLastRateTm, TSpadicV10Event::fMbsEventNumber, fOutputEvent, fParam, fRate, fSYNC1_R01, fTotaldatasize, TCBMBeamtimeProc::GetEventNumber(), TCBMBeamtimeProc::GetTriggerNumber(), TSpadicV10Param::globalTrigger, TSpadicV10Param::noTrigger, numBoards(), ResetEndOfBuffer(), ResetTrigger(), and TSpadicV10Param::triggerSignal.
Int_t TCBMBeamtimeProc::GetEventNumber | ( | ) | const [inline, inherited] |
Returns event number of main MBS event
Definition at line 48 of file TCBMBeamtimeProc.h.
References TCBMBeamtimeProc::fMbsEventNumber.
Referenced by FinalizeEvent(), TRocProc::FinalizeEvent(), TGet4v1Proc::FinalizeEvent(), TRPCProc::FinalizeEvent(), TGet4v1Proc::ProcessSubevent(), and TGet4v1Proc::ProcessTriggerMessage().
Short_t TCBMBeamtimeProc::GetTriggerNumber | ( | ) | const [inline, inherited] |
Returns trigger number of main MBS event
Definition at line 45 of file TCBMBeamtimeProc.h.
References TCBMBeamtimeProc::fMbsTriggerNumber.
Referenced by FinalizeEvent(), TRocProc::FinalizeEvent(), TTrbProc::ProcessSubevent(), ProcessSubevent(), TSpadicProc::ProcessSubevent(), TGet4v1Proc::ProcessSubevent(), and TMbsCrateProc::ProcessSubevent().
void TSpadicV10Proc::InitEvent | ( | TGo4EventElement * | evt | ) | [virtual] |
Reimplemented from TCBMBeamtimeProc.
Definition at line 294 of file TSpadicV10Proc.cxx.
References BRDS, fFirstSubEvent, fOutputEvent, TCBMBeamtimeEvent::GetSubEvent(), and numBoards().
void TSpadicV10Proc::LoadPedestalFile | ( | const char * | fname | ) | [protected] |
unsigned TSpadicV10Proc::numBoards | ( | ) | const [inline, protected] |
Definition at line 72 of file TSpadicV10Proc.h.
References BRDS.
Referenced by FinalizeEvent(), InitEvent(), ProcessTriggerMessage(), ResetEndOfBuffer(), and ResetTrigger().
Bool_t TSpadicV10Proc::PrintLocalEpochCycles | ( | Int_t | uMessagePriority = 0 |
) | [protected] |
Bool_t TSpadicV10Proc::PrintLocalEpochIndexes | ( | Int_t | uMessagePriority = 0 |
) | [protected] |
Bool_t TSpadicV10Proc::PrintMessageBufferIndexes | ( | Int_t | uMessagePriority = 0 |
) | [protected] |
Bool_t TSpadicV10Proc::PrintMessageBufferSizes | ( | Int_t | uMessagePriority = 0 |
) | [protected] |
Bool_t TSpadicV10Proc::PrintSpadicV10EpochCycles | ( | Int_t | uMessagePriority = 0 |
) | [protected] |
Bool_t TSpadicV10Proc::PrintSpadicV10EpochIndexes | ( | Int_t | uMessagePriority = 0 |
) | [protected] |
GET4 unpacking & pre-processing
Bool_t TSpadicV10Proc::PrintTotalUnsynchronizedEpochCount | ( | Int_t | uMessagePriority = 0 |
) | [protected] |
Bool_t TSpadicV10Proc::PrintUnsynchronizedEpochCount | ( | Int_t | uMessagePriority = 0 |
) | [protected] |
void TSpadicV10Proc::ProcessExtendedMessage | ( | unsigned | sid, | |
TSpadicV10Data * | rocevent, | |||
TSpadicV10MessageExtended & | msg, | |||
bool | with_unprocessed = true | |||
) | [protected] |
Reimplement this method when one want to access only nXYTER hits from input event Method should either add message to output event, or to unprocessed messages, or discard event completely
Definition at line 917 of file TSpadicV10Proc.cxx.
References BRDS, fDeltaTriggerTime, TSpadicV10Data::fExtMessages, fGlobalTriggerWind, fIsTimeSorted, fParam, TSpadicV10MessageExtended::GetFullChNum(), TSpadicV10MessageExtended::GetFullTime(), TSpadicV10MessageExtended::GetMessageType(), TSpadicV10MessageExtended::GetSpadicId(), TSpadicV10Param::globalTrigger, TSpadicV10Param::noTrigger, and TSpadicV10MessageExtended::SetTriggerDeltaT().
Referenced by ProcessSubevent(), and ProcessTriggerMessage().
void TSpadicV10Proc::ProcessSubevent | ( | TGo4MbsSubEvent * | subevt | ) | [virtual] |
Reimplemented from TCBMBeamtimeProc.
Definition at line 332 of file TSpadicV10Proc.cxx.
References AssertBoard(), AssertSpadic(), BRDS, TSpadicV10Param::debugLevel, TSpadicV10Param::doSorting, TSpadicV10Rec::fCurrEpoch, fEvntSize, fFirstSubEvent, TSpadicV10Rec::fInfoTypes, fIsTimeSorted, TSpadicV10Data::fLastSyncTm, fMsgsPerBoard, TSpadicV10Rec::fMsgTypes, fOutputEvent, fParam, TSpadicV10Rec::fSpadic_ADCdist, TSpadicV10Rec::fSpadic_overflows, TSpadicV10Rec::fSpadic_trace, TSpadicV10Rec::fSpadic_trace2D, TSpadicV10Rec::fStopTypes, fTotaldatasize, TSpadicV10Rec::fTrigTypes, roc::Message::getAuxChNum(), sp605::Message::getChNum(), sp605::Message::getEpoch(), sp605::Message::getGroup(), sp605::Message::getHitType(), sp605::Message::getInfoEpoch(), sp605::Message::getInfoType(), roc::Message::getMessageType(), sp605::Message::getMsgType(), sp605::Message::getOverflowHits(), sp605::Message::getStopType(), roc::Message::getSyncChNum(), roc::Message::getSyncData(), roc::Message::getSysMesType(), sp605::Message::getTrace(), sp605::Message::getTraceSize(), TCBMBeamtimeProc::GetTriggerNumber(), sp605::INFO_SYN, TSpadicV10Param::masterBoard, MAX_SPADICV10_AUX, MAX_SPADICV10_SYNC, MAX_SPADICV10CHANNELS, roc::MSG_AUX, sp605::MSG_EPOCH, roc::MSG_EPOCH, sp605::MSG_HIT, sp605::MSG_INFO, sp605::MSG_NOP, sp605::MSG_OVERFLOW, roc::MSG_SYNC, roc::MSG_SYS, TSpadicV10Param::noTrigger, ProcessExtendedMessage(), ProcessTriggerMessage(), TSpadicV10MessageExtended::SetSpadicId(), and TSpadicV10Param::triggerSignal.
void TSpadicV10Proc::ProcessTriggerMessage | ( | TSpadicV10Data * | event, | |
int | brd_id, | |||
uint64_t | fulltm | |||
) | [protected] |
Definition at line 237 of file TSpadicV10Proc.cxx.
References AssertBoard(), BRDS, fFirstSubEvent, fHasNewGlobalTrigger, TSpadicV10Event::fLastGlobalTriggerTm, TSpadicV10Data::fLastTriggerTm, fOutputEvent, fParam, fTriggersPerBoard, TSpadicV10Param::globalTrigger, TSpadicV10Param::masterBoard, numBoards(), and ProcessExtendedMessage().
Referenced by ProcessSubevent().
void TSpadicV10Proc::ResetEndOfBuffer | ( | ) | [protected] |
Definition at line 1051 of file TSpadicV10Proc.cxx.
References BRDS, and numBoards().
Referenced by FinalizeEvent(), and TSpadicV10Proc().
void TSpadicV10Proc::ResetTrigger | ( | ) | [protected] |
Definition at line 1036 of file TSpadicV10Proc.cxx.
References BRDS, fHasNewGlobalTrigger, and numBoards().
Referenced by FinalizeEvent().
void TSpadicV10Proc::SavePedestalFile | ( | const char * | fname | ) | [protected] |
std::vector<TSpadicV10BoardRec> TSpadicV10Proc::BRDS [protected] |
Definition at line 91 of file TSpadicV10Proc.h.
Referenced by AssertBoard(), AssertSpadic(), FinalizeEvent(), InitEvent(), numBoards(), ProcessExtendedMessage(), ProcessSubevent(), ProcessTriggerMessage(), ResetEndOfBuffer(), ResetTrigger(), and TSpadicV10Proc().
TH1* TSpadicV10Proc::fAUX2_R01 [protected] |
Definition at line 102 of file TSpadicV10Proc.h.
Referenced by FinalizeEvent(), and TSpadicV10Proc().
TCBMBeamtimeEvent* TCBMBeamtimeProc::fBeamtimeEvent [protected, inherited] |
Definition at line 60 of file TCBMBeamtimeProc.h.
Referenced by TCBMBeamtimeProc::BuildEvent().
UInt_t TSpadicV10Proc::fCurrEvntTm [protected] |
Definition at line 110 of file TSpadicV10Proc.h.
TH1* TSpadicV10Proc::fDeltaTriggerTime [protected] |
Definition at line 104 of file TSpadicV10Proc.h.
Referenced by ProcessExtendedMessage(), and TSpadicV10Proc().
TH1* TSpadicV10Proc::fEvntSize [protected] |
Definition at line 96 of file TSpadicV10Proc.h.
Referenced by FinalizeEvent(), ProcessSubevent(), and TSpadicV10Proc().
Bool_t TSpadicV10Proc::fFirstSubEvent [protected] |
shortcut to output event
Definition at line 116 of file TSpadicV10Proc.h.
Referenced by InitEvent(), ProcessSubevent(), and ProcessTriggerMessage().
TGo4WinCond* TSpadicV10Proc::fGlobalAUXWind [protected] |
Definition at line 106 of file TSpadicV10Proc.h.
Referenced by TSpadicV10Proc().
TGo4WinCond* TSpadicV10Proc::fGlobalTriggerWind [protected] |
Definition at line 105 of file TSpadicV10Proc.h.
Referenced by FinalizeEvent(), ProcessExtendedMessage(), and TSpadicV10Proc().
Bool_t TSpadicV10Proc::fHasNewGlobalTrigger [protected] |
indicate if first subevent is processing
Definition at line 118 of file TSpadicV10Proc.h.
Referenced by ProcessTriggerMessage(), and ResetTrigger().
Bool_t TSpadicV10Proc::fIsTimeSorted [protected] |
array of boards histograms
Definition at line 94 of file TSpadicV10Proc.h.
Referenced by FinalizeEvent(), ProcessExtendedMessage(), and ProcessSubevent().
Double_t TSpadicV10Proc::fLastRateTm [protected] |
Definition at line 112 of file TSpadicV10Proc.h.
Referenced by FinalizeEvent(), and TSpadicV10Proc().
Int_t TCBMBeamtimeProc::fMbsEventNumber [protected, inherited] |
Definition at line 63 of file TCBMBeamtimeProc.h.
Referenced by TCBMBeamtimeProc::BuildEvent(), TRPCProc::FinalizeEvent(), and TCBMBeamtimeProc::GetEventNumber().
TGo4MbsEvent* TCBMBeamtimeProc::fMbsInput [protected, inherited] |
Definition at line 61 of file TCBMBeamtimeProc.h.
Referenced by TCBMBeamtimeProc::BuildEvent().
Short_t TCBMBeamtimeProc::fMbsTriggerNumber [protected, inherited] |
Definition at line 62 of file TCBMBeamtimeProc.h.
Referenced by TCBMBeamtimeProc::BuildEvent(), and TCBMBeamtimeProc::GetTriggerNumber().
TH1* TSpadicV10Proc::fMsgsPerBoard [protected] |
Definition at line 98 of file TSpadicV10Proc.h.
Referenced by ProcessSubevent(), and TSpadicV10Proc().
TSpadicV10Event* TSpadicV10Proc::fOutputEvent [protected] |
Definition at line 115 of file TSpadicV10Proc.h.
Referenced by FinalizeEvent(), InitEvent(), ProcessSubevent(), and ProcessTriggerMessage().
TSpadicV10Param* TSpadicV10Proc::fParam [protected] |
Definition at line 89 of file TSpadicV10Proc.h.
Referenced by FinalizeEvent(), ProcessExtendedMessage(), ProcessSubevent(), ProcessTriggerMessage(), and TSpadicV10Proc().
Double_t TSpadicV10Proc::fRate [protected] |
Definition at line 113 of file TSpadicV10Proc.h.
Referenced by FinalizeEvent(), and TSpadicV10Proc().
TH1* TSpadicV10Proc::fSYNC1_R01 [protected] |
Definition at line 101 of file TSpadicV10Proc.h.
Referenced by FinalizeEvent(), and TSpadicV10Proc().
ULong_t TSpadicV10Proc::fTotaldatasize [protected] |
Definition at line 108 of file TSpadicV10Proc.h.
Referenced by FinalizeEvent(), ProcessSubevent(), and TSpadicV10Proc().
unsigned TSpadicV10Proc::fTriggerCounter [protected] |
true if new global trigger was found
Definition at line 119 of file TSpadicV10Proc.h.
TH1* TSpadicV10Proc::fTriggersPerBoard [protected] |
Definition at line 99 of file TSpadicV10Proc.h.
Referenced by ProcessTriggerMessage(), and TSpadicV10Proc().