JAPAn
Just Another Parity Analyzer
|
CODA version 2 event decoder implementation. More...
#include <Coda2EventDecoder.h>
Public Member Functions | |
Coda2EventDecoder () | |
~Coda2EventDecoder () override | |
std::vector< UInt_t > | EncodePHYSEventHeader (std::vector< ROCID_t > &ROCList) override |
void | EncodePrestartEventHeader (int *buffer, int runnumber, int runtype, int localtime) override |
void | EncodeGoEventHeader (int *buffer, int eventcount, int localtime) override |
void | EncodePauseEventHeader (int *buffer, int eventcount, int localtime) override |
void | EncodeEndEventHeader (int *buffer, int eventcount, int localtime) override |
Int_t | DecodeEventIDBank (UInt_t *buffer) override |
void | PrintDecoderInfo (QwLog &out) override |
![]() | |
VEventDecoder () | |
virtual | ~VEventDecoder () |
virtual Bool_t | DecodeSubbankHeader (UInt_t *buffer) |
Decode the subbank header for the current event/bank context. | |
virtual Bool_t | IsPhysicsEvent () |
virtual Bool_t | IsROCConfigurationEvent () |
virtual Bool_t | IsEPICSEvent () |
UInt_t | GetWordsSoFar () const |
UInt_t | GetEvtNumber () const |
UInt_t | GetEvtLength () const |
UInt_t | GetFragLength () const |
UInt_t | GetEvtType () const |
UInt_t | GetBankDataType () const |
UInt_t | GetSubbankTag () const |
UInt_t | GetSubbankType () const |
ROCID_t | GetROC () const |
void | SetWordsSoFar (UInt_t val) |
void | AddWordsSoFarAndFragLength () |
void | SetFragLength (UInt_t val) |
void | SetAllowLowSubbankIDs (Bool_t val=kFALSE) |
![]() | |
MQwCodaControlEvent () | |
~MQwCodaControlEvent () | |
void | ResetControlParameters () |
void | ProcessControlEvent (UInt_t evtype, UInt_t *buffer) |
void | ReportRunSummary () |
UInt_t | GetStartTime () |
UInt_t | GetPrestartTime () |
UInt_t | GetPrestartRunNumber () |
UInt_t | GetRunType () |
UInt_t | GetGoTime (int index=0) |
UInt_t | GetGoEventCount (int index=0) |
UInt_t | GetPauseTime (int index=0) |
UInt_t | GetPauseEventCount (int index=0) |
UInt_t | GetEndTime () |
UInt_t | GetEndEventCount () |
TString | GetStartSQLTime () |
TString | GetEndSQLTime () |
time_t | GetStartUnixTime () |
time_t | GetEndUnixTime () |
Private Attributes | |
UInt_t | fEvtClass |
UInt_t | fStatSum |
UInt_t | fIDBankNum |
Additional Inherited Members | |
![]() | |
enum | KEYWORDS { EPICS_EVTYPE = 131 } |
![]() | |
enum | EventTypes { kSYNC_EVENT = 16 , kPRESTART_EVENT = 17 , kGO_EVENT = 18 , kPAUSE_EVENT = 19 , kEND_EVENT = 20 } |
![]() | |
void | ProcessSync (UInt_t local_time, UInt_t statuscode) |
void | ProcessPrestart (UInt_t local_time, UInt_t local_runnumber, UInt_t local_runtype) |
void | ProcessGo (UInt_t local_time, UInt_t evt_count) |
void | ProcessPause (UInt_t local_time, UInt_t evt_count) |
void | ProcessEnd (UInt_t local_time, UInt_t evt_count) |
![]() | |
UInt_t | fWordsSoFar |
UInt_t | fEvtLength |
UInt_t | fEvtNumber |
CODA event number; only defined for physics events. | |
UInt_t | fFragLength |
UInt_t | fEvtType |
UInt_t | fEvtTag |
UInt_t | fBankDataType |
BankID_t | fSubbankTag |
UInt_t | fSubbankType |
UInt_t | fSubbankNum |
ROCID_t | fROC |
Bool_t | fPhysicsEventFlag |
Bool_t | fControlEventFlag |
Bool_t | fAllowLowSubbankIDs |
![]() | |
Bool_t | fFoundControlEvents |
UInt_t | fPrestartTime |
UInt_t | fPrestartRunNumber |
UInt_t | fRunType |
UInt_t | fEndTime |
UInt_t | fEndEventCount |
UInt_t | fNumberPause |
std::vector< UInt_t > | fPauseEventCount |
std::vector< UInt_t > | fPauseTime |
UInt_t | fNumberGo |
std::vector< UInt_t > | fGoEventCount |
std::vector< UInt_t > | fGoTime |
UInt_t | fStartTime |
TDatime | fPrestartDatime |
TDatime | fStartDatime |
TDatime | fEndDatime |
CODA version 2 event decoder implementation.
Concrete decoder for CODA 2.x format event streams, handling the legacy data structures and bank formats. Maintains compatibility with older data files while providing the same encoding/decoding interface.
Definition at line 22 of file Coda2EventDecoder.h.
|
inline |
Definition at line 25 of file Coda2EventDecoder.h.
References fEvtClass, fIDBankNum, and fStatSum.
|
inlineoverride |
Definition at line 29 of file Coda2EventDecoder.h.
|
overridevirtual |
Determine whether a buffer contains a PHYS, control, or other event.
buffer | Event buffer to decode. |
Implements VEventDecoder.
Definition at line 73 of file Coda2EventDecoder.cc.
References QwLog::endl(), VEventDecoder::fBankDataType, fEvtClass, VEventDecoder::fEvtLength, VEventDecoder::fEvtNumber, VEventDecoder::fEvtTag, VEventDecoder::fEvtType, VEventDecoder::fFragLength, fIDBankNum, VEventDecoder::fPhysicsEventFlag, fStatSum, VEventDecoder::fWordsSoFar, MQwCodaControlEvent::ProcessControlEvent(), and QwDebug.
|
overridevirtual |
Create an END event EVIO header.
buffer | Output buffer (>= 5 words). |
eventcount | Number of events. |
localtime | Event time. |
Implements VEventDecoder.
Definition at line 62 of file Coda2EventDecoder.cc.
References MQwCodaControlEvent::kEND_EVENT, and MQwCodaControlEvent::ProcessEnd().
|
overridevirtual |
Create a GO event EVIO header.
buffer | Output buffer (>= 5 words). |
eventcount | Number of events. |
localtime | Event time. |
Implements VEventDecoder.
Definition at line 40 of file Coda2EventDecoder.cc.
References MQwCodaControlEvent::kGO_EVENT, and MQwCodaControlEvent::ProcessGo().
|
overridevirtual |
Create a PAUSE event EVIO header.
buffer | Output buffer (>= 5 words). |
eventcount | Number of events. |
localtime | Event time. |
Implements VEventDecoder.
Definition at line 51 of file Coda2EventDecoder.cc.
References MQwCodaControlEvent::kPAUSE_EVENT, and MQwCodaControlEvent::ProcessPause().
|
overridevirtual |
Create a PHYS event EVIO header.
ROCList | List of ROC IDs (unused in CODA2 headers). |
Implements VEventDecoder.
Definition at line 14 of file Coda2EventDecoder.cc.
References VEventDecoder::fEvtNumber.
|
overridevirtual |
Create a PRESTART event EVIO header.
buffer | Output buffer (>= 5 words). |
runnumber | Run number. |
runtype | Run type. |
localtime | Event time. |
Implements VEventDecoder.
Definition at line 29 of file Coda2EventDecoder.cc.
References MQwCodaControlEvent::kPRESTART_EVENT, and MQwCodaControlEvent::ProcessPrestart().
|
overridevirtual |
Print internal decoder state for diagnostics.
out | Logging stream. |
Reimplemented from VEventDecoder.
Definition at line 171 of file Coda2EventDecoder.cc.
References QwLog::endl(), VEventDecoder::fBankDataType, fEvtClass, VEventDecoder::fEvtLength, VEventDecoder::fEvtNumber, VEventDecoder::fEvtTag, VEventDecoder::fEvtType, and fIDBankNum.
|
private |
Definition at line 76 of file Coda2EventDecoder.h.
Referenced by Coda2EventDecoder(), DecodeEventIDBank(), and PrintDecoderInfo().
|
private |
Definition at line 78 of file Coda2EventDecoder.h.
Referenced by Coda2EventDecoder(), DecodeEventIDBank(), and PrintDecoderInfo().
|
private |
Definition at line 77 of file Coda2EventDecoder.h.
Referenced by Coda2EventDecoder(), and DecodeEventIDBank().