![]() |
AliRoot Core
v5-06-15 (45dab64)
|
Callback event handler class for the AliMUONTrackerDDLDecoder. More...
#include <AliMUONTrackerDDLDecoderEventHandler.h>
Public Types | |
enum | ErrorCode { kNoError = 0, kBufferTooBig = 10, kTooManyBlocks = 11, kTooManyDSPs = 12, kTooManyBusPatches = 13, kNoBlockHeader = 14, kBadBlockKey = 15, kBadBlockLength = 16, kBadBlockTotalLength = 17, kBlockLengthMismatch = 18, kNoDSPHeader = 19, kBadDSPKey = 20, kBadDSPLength = 21, kBadDSPTotalLength = 22, kDSPLengthMismatch = 23, kNoBusPatchHeader = 24, kBadBusPatchKey = 25, kBadBusPatchLength = 26, kBadBusPatchTotalLength = 27, kBusPatchLengthMismatch = 28, kNoDDLTrailerWords = 29, kTooFewDDLTrailerWords = 30, kUnknownDspError = 31, kTokenLost = 32, kGlitchFound = 1, kBadPaddingWord = 2, kParityError = 3 } |
All the possible error codes for the parsing. More... | |
Public Member Functions | |
virtual | ~AliMUONTrackerDDLDecoderEventHandler () |
void | OnNewBuffer (const void *, UInt_t) |
void | OnEndOfBuffer (const void *, UInt_t) |
void | OnNewBlock (const AliMUONBlockHeaderStruct *, const void *) |
void | OnEndOfBlock (const AliMUONBlockHeaderStruct *, const void *) |
void | OnNewDSP (const AliMUONDSPHeaderStruct *, const void *) |
void | OnEndOfDSP (const AliMUONDSPHeaderStruct *, const void *) |
void | OnNewBusPatch (const AliMUONBusPatchHeaderStruct *, const void *) |
void | OnEndOfBusPatch (const AliMUONBusPatchHeaderStruct *, const void *) |
void | OnData (UInt_t, bool) |
void | OnError (ErrorCode, const void *) |
Static Public Member Functions | |
static void | UnpackADC (UInt_t data, UShort_t &manuId, UChar_t &channelId, UShort_t &adc) |
static const char * | ErrorCodeToString (ErrorCode code) |
static const char * | ErrorCodeToMessage (ErrorCode code) |
Callback event handler class for the AliMUONTrackerDDLDecoder.
This class is the base class defining what methods the event handler for the high performance decoder should have. This handler actually does nothing. The user of this decoder will have to derive from this class a custom event handler that actually does something within the callback methods OnNewBusPatch, OnData, OnError etc...
Definition at line 95 of file AliMUONTrackerDDLDecoderEventHandler.h.
All the possible error codes for the parsing.
Definition at line 104 of file AliMUONTrackerDDLDecoderEventHandler.h.
|
inlinevirtual |
The only reason for a virtual destructor is to make -Weffc++ shutup. This should not really be here since we do not need or use virtual methods.
Definition at line 101 of file AliMUONTrackerDDLDecoderEventHandler.h.
|
inlinestatic |
This is a utility method which converts an error code to user friendly descriptive message useful for printing to the screen.
code | The error code as received in OnError for example. |
This is a utility method which converts an error code to user friendly descriptive message useful for printing to the screen.
code | The error code as received in OnError for example. |
Definition at line 329 of file AliMUONTrackerDDLDecoderEventHandler.h.
Referenced by operator<<().
|
inlinestatic |
This is a utility method which converts an error code to a string representation for printing purposes.
code | The error code as received in OnError for example. |
This is a utility method which converts an error code to a string representation for printing purposes.
code | The error code as received in OnError for example. |
Definition at line 288 of file AliMUONTrackerDDLDecoderEventHandler.h.
|
inline |
OnData is called for every raw data word found within a bus patch. Every data ward received by a call to OnData is associated to the bus patch header received in the most recent call to OnNewBusPatch. The default behaviour of this method is to do nothing.
Definition at line 239 of file AliMUONTrackerDDLDecoderEventHandler.h.
|
inline |
OnEndOfBlock is called whenever a block has been processed. Symmetric calls are made to OnEndOfBlock after each call to OnNewBlock. This happens once all DSP structures contained inside the current block have been processed. The default behaviour of this method is to do nothing.
Definition at line 179 of file AliMUONTrackerDDLDecoderEventHandler.h.
|
inline |
The OnEndOfBuffer method will be called whenever the buffer containing a DDL payload has been processed. For each OnNewBuffer method call a symmetric call to OnEndOfBuffer is made at the end of processing (after the last call to OnData) The default behaviour of this method is to do nothing.
Definition at line 156 of file AliMUONTrackerDDLDecoderEventHandler.h.
|
inline |
OnEndOfBusPatch is called whenever a bus patch has been processed. For every call to OnNewBusPatch a symmetric call to OnEndOfBusPatch is made once the bus patch is completely processed (no more OnData calls). The default behaviour of this method is to do nothing.
Definition at line 229 of file AliMUONTrackerDDLDecoderEventHandler.h.
|
inline |
OnEndOfDSP is called whenever a DSP header has already been processed. For every call to OnNewDSP a symmetric call to OnEndOfDSP is made once all the bus patch structured contained in the DSP are processed. The default behaviour of this method is to do nothing.
Definition at line 203 of file AliMUONTrackerDDLDecoderEventHandler.h.
|
inline |
Whenever a parsing error of the DDL payload is encountered because of corruption of the raw data (eg. bit flips) the OnError method is called immediately at the point this error is discovered. The default behaviour of this method is to do nothing.
Definition at line 254 of file AliMUONTrackerDDLDecoderEventHandler.h.
|
inline |
OnNewBlock is called whenever a new block header is found in the payload. The default behaviour of this method is to do nothing.
Definition at line 166 of file AliMUONTrackerDDLDecoderEventHandler.h.
|
inline |
The OnNewBuffer method will be called whenever a new buffer containing a DDL payload is about to be processed. The default behaviour of this method is to do nothing.
Definition at line 146 of file AliMUONTrackerDDLDecoderEventHandler.h.
|
inline |
OnNewBusPatch is called whenever a new bus patch header is found in the payload. Every bus patch received by a call to OnNewBusPatch is associated to the DSP header received in the most recent call to OnNewDSP. The default behaviour of this method is to do nothing.
Definition at line 216 of file AliMUONTrackerDDLDecoderEventHandler.h.
|
inline |
OnNewDSP is called whenever a new DSP header is found in the payload. Every DSP header received by a call to OnNewDSP is associated to the block header received in the most recent call to OnNewBlock. The default behaviour of this method is to do nothing.
Definition at line 191 of file AliMUONTrackerDDLDecoderEventHandler.h.
|
inlinestatic |
This is a utility method which will unpack the MANU ID, channel ID and ADC signal value from a raw data word. It should normally be used in OnData() to unpack these fields. [in]
data | This is the raw data word found in the DDL payload. [out] |
manuId | This is filled with the unpacked MANU ID. [out] |
channelId | This is filled with the unpacked MANU channel ID. [out] |
adc | This is filled with the unpacked ADC signal. |
Definition at line 263 of file AliMUONTrackerDDLDecoderEventHandler.h.
Referenced by AliMUONRawStreamTrackerHP::AliBusPatch::GetData(), and AliMUONRawStreamTrackerHP::Next().