|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef ITkStripsRawDataByteStreamCnv_ITkStripsRodEncoder_h
6 #define ITkStripsRawDataByteStreamCnv_ITkStripsRodEncoder_h
13 #include "GaudiKernel/ToolHandle.h"
57 virtual void fillROD(std::vector<uint32_t>& vec32Data,
const uint32_t& robID,
58 const std::vector<const SCT_RDORawData*>& vecRDOs)
const override;
73 void encodeData(
const std::vector<int>& vecTimeBins, std::vector<uint16_t>& vec16Words,
84 void packFragments(std::vector<uint16_t>& vec16Words, std::vector<uint32_t>& vec32Words)
const;
96 const unsigned short int* position,
97 const unsigned short int& numWords)
const;
132 "Tool to retrieve ITkStrips Cabling"};
139 BooleanProperty
m_condensed{
this,
"CondensedMode",
false,
"Condensed mode (true) or Expanded mode (false)"};
145 #endif // SCT_RAWDATABYTESTREAMCNV_SCT_RODENCODER_H
virtual StatusCode initialize() override
Initialize.
uint32_t set32Bits(const unsigned short int *arr16Words, const unsigned short int *position, const unsigned short int &numWords) const
@breif Method to set pairs of 16 bit words to a 32 bit word.
Athena Algorithm Tool that provides conversion from ITkStrips RDO to ROD format Bytestream.
void packFragments(std::vector< uint16_t > &vec16Words, std::vector< uint32_t > &vec32Words) const
Method to pack vector of 16 bit words intto a vector of 32 bit words.
ITkStripsRodEncoder(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
std::set< Identifier > m_swapModuleID
Swap Module identifier, set by SCTRawContByteStreamTool.
virtual StatusCode finalize() override
Finalize.
uint32_t onlineID(const SCT_RDORawData *rdo) const
Get the online Identifier from the RDO.
uint16_t getHeaderUsingHash(const IdentifierHash &linkHash, const int &errorWord) const
Get the 16-bit word for a header for a link with a ByteStream error.
BooleanProperty m_condensed
Example Boolean used to determine decoding mode, maybe unused finally.
int getRODLink(const SCT_RDORawData *rdo) const
Get the ROD link number info in the RDO header data.
Identifier offlineID(const SCT_RDORawData *rdo) const
Get the offline Identifier from the RDO.
::StatusCode StatusCode
StatusCode definition for legacy code.
uint16_t getHeaderUsingRDO(const SCT_RDORawData *rdo) const
Get the 16-bit word for a header for a hit.
int getTimeBin(const SCT_RDORawData *rdo) const
Get the time bin info from the RDO.
virtual void fillROD(std::vector< uint32_t > &vec32Data, const uint32_t &robID, const std::vector< const SCT_RDORawData * > &vecRDOs) const override
Main Convert method.
int side(const SCT_RDORawData *rdo) const
Get the side info from the RDO.
int getStrip(const SCT_RDORawData *rdo) const
Get the strip number info from the RDO.
uint16_t getTrailer(const int &errorWord) const
Get the 16-bit word for a trailer, with or without ByteStream errors.
void encodeData(const std::vector< int > &vecTimeBins, std::vector< uint16_t > &vec16Words, const SCT_RDORawData *rdo, const int &groupSize, const int &strip) const
Method to encode RDO data to vector of 16 bin words.
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
const SCT_ID * m_itkStripsID
Identifier helper class for the ITkStrips subdetector that creates compact Identifier objects and Ide...
ToolHandle< ISCT_CablingTool > m_cabling
Providing mappings of online and offline identifiers and also serial numbers.
virtual ~ITkStripsRodEncoder()=default
Destructor.