Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
#include <NRPC_RawDataProviderTool.h>
|
| NRPC_RawDataProviderTool (const std::string &, const std::string &, const IInterface *) |
|
virtual | ~NRPC_RawDataProviderTool ()=default |
| default destructor More...
|
|
virtual StatusCode | initialize () override |
| standard Athena-Algorithm method More...
|
|
virtual StatusCode | convert (const std::vector< const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment * > &vecRobs) const override |
| Convert method - declared in Muon::IMuonRdoToPrepDataTool. More...
|
|
virtual StatusCode | convert (const std::vector< const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment * > &vecRobs, const std::vector< IdentifierHash > &) const override |
|
virtual StatusCode | convert () const override |
| the new ones More...
|
|
virtual StatusCode | convert (const std::vector< IdentifierHash > &HashVec) const override |
|
virtual StatusCode | convert (const std::vector< uint32_t > &robIds) const override |
| for a particular vector of ROBId's More...
|
|
virtual StatusCode | convert (const std::vector< const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment * > &vecRobs, const EventContext &ctx) const override |
| EventContext. More...
|
|
virtual StatusCode | convert (const std::vector< const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment * > &vecRobs, const std::vector< IdentifierHash > &, const EventContext &ctx) const override |
|
virtual StatusCode | convert (const EventContext &ctx) const override |
| for the entire event More...
|
|
virtual StatusCode | convert (const std::vector< IdentifierHash > &HashVec, const EventContext &ctx) const override |
|
virtual StatusCode | convert (const std::vector< uint32_t > &robIds, const EventContext &ctx) const override |
| for a particular vector of ROBId's More...
|
|
virtual StatusCode | convertIntoContainer (const std::vector< const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment * > &vecRobs, xAOD::NRPCRDOContainer &nrpcContainer) const |
| Convert method. More...
|
|
virtual StatusCode | fillCollections (const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment &robFrag, xAOD::NRPCRDOContainer &rdoIdc) const |
|
|
SG::WriteHandleKey< xAOD::NRPCRDOContainer > | m_rdoContainerKey {this, "NrpcRdoKey", "NRPCRDO", "WriteHandleKey for Output AOD::NRPCRDOContainer"} |
|
ServiceHandle< Muon::IMuonIdHelperSvc > | m_idHelperSvc {this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"} |
|
ServiceHandle< IROBDataProviderSvc > | m_robDataProvider {this, "ROBDataProviderSvc", "ROBDataProviderSvc"} |
|
SG::ReadCondHandleKey< RpcCablingMap > | m_readKey {this, "ReadKey", "MuonNRPC_CablingMap", "Key of MuonNRPC_CablingMap"} |
|
Definition at line 62 of file NRPC_RawDataProviderTool.h.
◆ BS
◆ NRPC_RawDataProviderTool()
Muon::NRPC_RawDataProviderTool::NRPC_RawDataProviderTool |
( |
const std::string & |
t, |
|
|
const std::string & |
n, |
|
|
const IInterface * |
p |
|
) |
| |
◆ ~NRPC_RawDataProviderTool()
virtual Muon::NRPC_RawDataProviderTool::~NRPC_RawDataProviderTool |
( |
| ) |
|
|
virtualdefault |
◆ convert() [1/10]
StatusCode Muon::NRPC_RawDataProviderTool::convert |
( |
| ) |
const |
|
overridevirtual |
◆ convert() [2/10]
StatusCode Muon::NRPC_RawDataProviderTool::convert |
( |
const EventContext & |
ctx | ) |
const |
|
overridevirtual |
for the entire event
Definition at line 50 of file NRPC_RawDataProviderTool.cxx.
55 if (!readCdo.isValid()) {
57 return StatusCode::FAILURE;
59 return convert(readCdo->getAllROBId(), ctx);
◆ convert() [3/10]
◆ convert() [4/10]
EventContext.
Definition at line 99 of file NRPC_RawDataProviderTool.cxx.
104 ATH_CHECK(rdoContainer.record(std::make_unique<xAOD::NRPCRDOContainer>(), std::make_unique<xAOD::NRPCRDOAuxContainer>()));
107 return StatusCode::SUCCESS;
◆ convert() [5/10]
◆ convert() [6/10]
◆ convert() [7/10]
StatusCode Muon::NRPC_RawDataProviderTool::convert |
( |
const std::vector< IdentifierHash > & |
HashVec | ) |
const |
|
overridevirtual |
◆ convert() [8/10]
StatusCode Muon::NRPC_RawDataProviderTool::convert |
( |
const std::vector< IdentifierHash > & |
HashVec, |
|
|
const EventContext & |
ctx |
|
) |
| const |
|
overridevirtual |
◆ convert() [9/10]
StatusCode Muon::NRPC_RawDataProviderTool::convert |
( |
const std::vector< uint32_t > & |
robIds | ) |
const |
|
overridevirtual |
◆ convert() [10/10]
StatusCode Muon::NRPC_RawDataProviderTool::convert |
( |
const std::vector< uint32_t > & |
robIds, |
|
|
const EventContext & |
ctx |
|
) |
| const |
|
overridevirtual |
for a particular vector of ROBId's
Definition at line 79 of file NRPC_RawDataProviderTool.cxx.
80 std::vector<const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment*> vecOfRobf;
◆ convertIntoContainer()
Convert method.
Definition at line 29 of file NRPC_RawDataProviderTool.cxx.
35 if (frag->rod_ndata() != 0) {
38 ATH_MSG_DEBUG(
" ROB " << MSG::hex << frag->source_id() <<
" is delivered with an empty payload" );
42 return StatusCode::SUCCESS;
◆ fillCollections()
Definition at line 111 of file NRPC_RawDataProviderTool.cxx.
112 #define WARNING_WITH_LINE(msg) ATH_MSG_WARNING(__FILE__ << ":" << __LINE__<< " " << msg)
117 return StatusCode::SUCCESS;
122 uint32_t sourceId = robFrag.source_id();
123 uint32_t rod_sourceId = robFrag.rod_source_id();
126 uint16_t subDetector = sourceId >> 16;
127 uint16_t boardSector = (sourceId & 0x00ffff);
129 ATH_MSG_VERBOSE(
"ROD version: " << MSG::hex <<
version << MSG::dec <<
" ROB source ID: " << MSG::hex << sourceId << MSG::dec
130 <<
" ROD source ID: " << MSG::hex << rod_sourceId << MSG::dec <<
" Subdetector: " << MSG::hex
131 << subDetector << MSG::dec <<
" boardSector: " << std::hex
132 << boardSector << std::dec );
138 robFrag.rod_data(
data);
140 const unsigned int data_size = robFrag.rod_ndata();
144 unsigned int idata=0;
145 while (idata<data_size) {
146 if (
data[idata]==6 &&
data[idata+4]==0xa0 &&
data[idata+5]==0) {
147 ATH_MSG_DEBUG(
"NRPC: Empty board " << std::hex <<
data[idata+4] << std::dec <<
" for " << std::hex <<
data[idata+1] << std::dec );
148 }
else if (
data[idata]<6) {
149 WARNING_WITH_LINE(
"NRPC: Corrupted: Number of words from board " << std::hex <<
data[idata+4] << std::dec <<
" is <6 :" <<
data[idata] );
151 }
else if ( (
data[idata+
data[idata]-2] & 0x000000ff) != 0xa0) {
161 uint32_t bcid_nom = (bcid12 | bcid34 | bcid56 | bcid78) >> 4;
164 for (
unsigned int i=0;
i<
data[idata]-6;
i++) {
167 float tot = ((
data[idata+4+
i] & 0x007f0000) >> 16)*0.4 ;
168 float time = ((
data[idata+4+
i] & 0x0f000000) >> 24)*1.6 ;
172 uint32_t bcid_nom_4bits = (bcid_nom & 0x0000000f) ;
174 if (bcid_hit >= bcid_nom_4bits) {
175 bcid = ( (bcid_nom & 0xfffffff0) | bcid_hit );
177 bcid = ( (bcid_nom & 0xfffffff0) | bcid_hit ) + 0x00000010;
196 return StatusCode::SUCCESS;
◆ initialize()
StatusCode Muon::NRPC_RawDataProviderTool::initialize |
( |
| ) |
|
|
overridevirtual |
◆ m_idHelperSvc
◆ m_rdoContainerKey
◆ m_readKey
◆ m_robDataProvider
The documentation for this class was generated from the following files:
char data[hepevt_bytes_allocation_ATLAS]
void setBoardsector(uint16_t Boardsector)
Set the sector of the board within the subdetector.
#define ATH_MSG_VERBOSE(x)
void setBoard(uint16_t Board)
Set the number of the TDC channel.
void setChannel(uint16_t Channel)
Set the fire channel number.
void setSubdetector(uint16_t SubDet)
Set the sub detector.
void setBcid(uint32_t Bcid)
Set the bunch crossing identifier.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
setEventNumber setTimeStamp bcid
def time(flags, cells_name, *args, **kw)
void setTime(float Time)
Set the trigger time [ns].
void setTimeoverthr(float Timeoverthr)
Set the time over threshold.