![]() |
ATLAS Offline Software
|
TGC ROD decoder for conversion from ROB fragment to TgcRDO. More...
#include <TgcRODReadOut.h>
Public Member Functions | |
| TgcRODReadOut (const MuonTGC_CablingSvc &cabling) | |
| Constructor. | |
| virtual | ~TgcRODReadOut () |
| Destructor. | |
| StatusCode | byteStream2Rdo (const ByteStream &bs, TgcRdo &tgcRdo, uint32_t source_id) const |
| Convert BS (ROB fragment) to RDO. | |
| StatusCode | check (const ByteStream &bs, TgcRdo &tgcRdo, uint32_t source_id) const |
| Convert BS (ROB fragment) to RDO and compare decoded RDO container and another RDO container decoded by other converter. | |
| StatusCode | compare (TgcRdo *rdo, TgcRdo *newRdo) const |
| Compare two RDO containers. | |
| StatusCode | decodeRodToRdo (TgcRdo &tgcRdo, const ByteStream &vData, uint16_t subDetectorId, uint16_t rodId, uint32_t l1Id, uint16_t bcId) const |
| Decode BS to RDO container. | |
Static Public Member Functions | |
| static bool | isMatched (const TgcRawData *rdo1, const TgcRawData *rdo2) |
| Compare two RDOs. | |
Protected Types | |
| enum | { RawDataFragMask =0xFF000000 , FragmentIdMask =0xFF000000 , FragmentCountMask =0x00FFFFFF , HeaderMask =0xE0000000 , HeaderEvent =0x00000000 , HeaderError =0x20000000 , HeaderSLB10 =0x40000000 , HeaderSLB11 =0x60000000 , HeaderSLBC =0x80000000 , HeaderSLBP =0xA0000000 , HeaderSLBN =0xC0000000 , HeaderTrailer =0x70000000 , ROD_START = 0xEE1234EE , ROD_HEADER_SIZE = 0x09 , ROD_STATUS_SIZE = 0x05 } |
Protected Member Functions | |
| bool | setSbLoc (uint16_t subDetectorId, uint16_t rodId, TgcSlbData *slb, int rxId) const |
| Set sbLoc. | |
Private Types | |
| enum | NROD_SIDE { NROD = 24+1 , NSROD = 6+1 , ASIDE = 0x67 , CSIDE = 0x68 } |
| The number of RODs (1-24 for 12-fold) More... | |
| typedef OFFLINE_FRAGMENTS_NAMESPACE::PointerType | ByteStream |
Private Member Functions | |
| TgcRODReadOut & | operator= (const TgcRODReadOut &right) |
| TgcRODReadOut (const TgcRODReadOut &) | |
Private Attributes | |
| std::atomic< unsigned int > | m_failedDecodeRodToRdo [NROD+1] |
| The number of failures on decodeRodToRdo. | |
| std::atomic< unsigned int > | m_failedHeaderSizeRawData [NROD+1] |
| The number of strange header and SizeRawData. | |
| std::atomic< unsigned int > | m_failedSetSbLoc [NROD+1] |
| The number of failures on setSbLoc. | |
| std::atomic< unsigned int > | m_failedSetType [NROD+1] |
| The number of failures on setType. | |
| std::atomic< unsigned int > | m_failedGetSLBIDfromRxID [NROD+1] |
| The number of failures on getSLBIDfromRxID. | |
| std::atomic< unsigned int > | m_failedGetReadoutIDfromSLBID [NROD+1] |
| The number of failures on getReadoutIDfromSLBID. | |
| const MuonTGC_CablingSvc & | m_cabling |
| TGC Cabling Svc. | |
| TgcSlbDataHelper * | m_tgcSlbDataHelper |
| TGC SLB data helper. | |
TGC ROD decoder for conversion from ROB fragment to TgcRDO.
This class was developed by Tadashi Maeno based on MdtRODReadOut written by S. Rosati. Hisaya Kurashige
removed TGC ROD Encoder and updated decodeRodToRdo on January 2008. Takashi Kubota migrated to MuonTGC_CnvTools.
Definition at line 35 of file TgcRODReadOut.h.
Definition at line 38 of file TgcRODReadOut.h.
|
protected |
Definition at line 69 of file TgcRODReadOut.h.
|
private |
The number of RODs (1-24 for 12-fold)
| Enumerator | |
|---|---|
| NROD | |
| NSROD | |
| ASIDE | |
| CSIDE | |
Definition at line 95 of file TgcRODReadOut.h.
| Muon::TgcRODReadOut::TgcRODReadOut | ( | const MuonTGC_CablingSvc & | cabling | ) |
Constructor.
Definition at line 12 of file TgcRODReadOut.cxx.
|
virtual |
Destructor.
Definition at line 28 of file TgcRODReadOut.cxx.
|
private |
| StatusCode Muon::TgcRODReadOut::byteStream2Rdo | ( | const ByteStream & | bs, |
| TgcRdo & | tgcRdo, | ||
| uint32_t | source_id ) const |
Convert BS (ROB fragment) to RDO.
Definition at line 64 of file TgcRODReadOut.cxx.
| StatusCode Muon::TgcRODReadOut::check | ( | const ByteStream & | bs, |
| TgcRdo & | tgcRdo, | ||
| uint32_t | source_id ) const |
Convert BS (ROB fragment) to RDO and compare decoded RDO container and another RDO container decoded by other converter.
Definition at line 105 of file TgcRODReadOut.cxx.
Compare two RDO containers.
Definition at line 145 of file TgcRODReadOut.cxx.
| StatusCode Muon::TgcRODReadOut::decodeRodToRdo | ( | TgcRdo & | tgcRdo, |
| const ByteStream & | vData, | ||
| uint16_t | subDetectorId, | ||
| uint16_t | rodId, | ||
| uint32_t | l1Id, | ||
| uint16_t | bcId ) const |
Decode BS to RDO container.
Definition at line 269 of file TgcRODReadOut.cxx.
|
static |
Compare two RDOs.
Definition at line 214 of file TgcRODReadOut.cxx.
|
private |
|
protected |
Set sbLoc.
Definition at line 640 of file TgcRODReadOut.cxx.
|
private |
TGC Cabling Svc.
Definition at line 115 of file TgcRODReadOut.h.
|
mutableprivate |
The number of failures on decodeRodToRdo.
Definition at line 102 of file TgcRODReadOut.h.
|
mutableprivate |
The number of failures on getReadoutIDfromSLBID.
Definition at line 112 of file TgcRODReadOut.h.
|
mutableprivate |
The number of failures on getSLBIDfromRxID.
Definition at line 110 of file TgcRODReadOut.h.
|
mutableprivate |
The number of strange header and SizeRawData.
Definition at line 104 of file TgcRODReadOut.h.
|
mutableprivate |
The number of failures on setSbLoc.
Definition at line 106 of file TgcRODReadOut.h.
|
mutableprivate |
The number of failures on setType.
Definition at line 108 of file TgcRODReadOut.h.
|
private |
TGC SLB data helper.
Definition at line 118 of file TgcRODReadOut.h.