ATLAS Offline Software
|
Class capable spliting word into parts, used to fill raw containers. More...
#include <AFP_WordReadOut.h>
Public Member Functions | |
AFP_WordReadOut (const std::string &type, const std::string &name, const IInterface *parent) | |
virtual | ~AFP_WordReadOut () override |
virtual StatusCode | initialize () override |
virtual StatusCode | finalize () override |
bool | isHeader (uint32_t the_word) const override |
Returns true if the word is marked as header word. More... | |
bool | isData (uint32_t the_word) const override |
Returns true if the word is marked as data word. More... | |
bool | isService (uint32_t the_word) const override |
Returns true if the word is marked as service word. More... | |
uint32_t | link (uint32_t the_word) const override |
Value of 5-8 most significant bits. More... | |
uint32_t | getBits (uint32_t the_word, const uint16_t start, const uint16_t stop) const override |
Returns integer value of the selcted bits. More... | |
Static Public Attributes | |
static constexpr uint16_t | s_wordHeader = 3 |
Header word is marked with four most significant bits set to 0011. More... | |
static constexpr uint16_t | s_wordData = 3 |
Data word is marked with two most significant bits set to 11. More... | |
static constexpr uint16_t | s_wordService = 0 |
Service word is marked with four most significant bits set to 0000. More... | |
Private Attributes | |
ToolHandle< AFP_LinkNumTranslator > | m_linkNumTrans {this, "AFP_LinkNumTranslator", "AFP_LinkNumTranslator", "Tool that translates link numbers"} |
Class capable spliting word into parts, used to fill raw containers.
Definition at line 16 of file AFP_WordReadOut.h.
AFP_WordReadOut::AFP_WordReadOut | ( | const std::string & | type, |
const std::string & | name, | ||
const IInterface * | parent | ||
) |
Definition at line 7 of file AFP_WordReadOut.cxx.
|
overridevirtual |
Definition at line 12 of file AFP_WordReadOut.cxx.
|
overridevirtual |
Definition at line 27 of file AFP_WordReadOut.cxx.
|
override |
Returns integer value of the selcted bits.
Bits are numbered starting from 0 for the least significant bit and raising as bits significance rises.
start | the most significant bit from which decoding should begin (the start bit will be included) |
stop | the least significant bit where decoding should end (the stop bit will be included) |
For example for word 0011 1010
the function will give following results:
getBits (7, 4) = 3
getBits (3, 0) = 10
getBits (4, 4) = 1
getBits (2, 2) = 0
getBits (5, 3) = 7
Definition at line 32 of file AFP_WordReadOut.cxx.
|
overridevirtual |
Definition at line 16 of file AFP_WordReadOut.cxx.
|
inlineoverride |
Returns true if the word is marked as data word.
The word is marked as data word if two most significant bits are equal s_wordData.
Definition at line 34 of file AFP_WordReadOut.h.
|
inlineoverride |
Returns true if the word is marked as header word.
The word is marked as header if four most significant bits are equal s_wordHeader.
Definition at line 28 of file AFP_WordReadOut.h.
|
inlineoverride |
Returns true if the word is marked as service word.
The word is marked as service word if four most significant bits are equal s_wordService.
Definition at line 40 of file AFP_WordReadOut.h.
|
inlineoverride |
Value of 5-8 most significant bits.
In the following word: xxxx LLLL xxxx xxxx xxxx xxxx xxxx xxxx
it means bits marked with L
.
Definition at line 46 of file AFP_WordReadOut.h.
|
private |
Definition at line 77 of file AFP_WordReadOut.h.
|
staticconstexpr |
Data word is marked with two most significant bits set to 11.
Definition at line 71 of file AFP_WordReadOut.h.
|
staticconstexpr |
Header word is marked with four most significant bits set to 0011.
Definition at line 68 of file AFP_WordReadOut.h.
|
staticconstexpr |
Service word is marked with four most significant bits set to 0000.
Definition at line 74 of file AFP_WordReadOut.h.