FIXEME: More...
#include <DTROChainCoding.h>
Public Member Functions | |
DTROChainCoding () | |
Constructors. | |
DTROChainCoding (const int &ddu, const int &ros, const int &rob, const int &tdc, const int &channel) | |
DTROChainCoding (uint32_t code_) | |
int | getChannel () const |
int | getChannelID () const |
uint32_t | getCode () const |
Getters ///////////////////////. | |
int | getDDU () const |
int | getDDUID () const |
int | getROB () const |
int | getROBID () const |
int | getROS () const |
int | getROSID () const |
int | getSC () const |
SC getters: same as ROS getters (SC data goes in the corresponding ROS) | |
int | getSCID () const |
int | getTDC () const |
int | getTDCID () const |
void | setChain (const int &ddu, const int &ros, const int &rob, const int &tdc, const int &channel) |
void | setChannel (const int &ID) |
void | setCode (const uint32_t &code_) |
Setters ///////////////////////. | |
void | setDDU (const int &ID) |
need to reset the bits before setting | |
void | setROB (const int &ID) |
void | setROS (const int &ID) |
void | setTDC (const int &ID) |
virtual | ~DTROChainCoding () |
Destructor. | |
Private Attributes | |
uint32_t | code |
Static Private Attributes | |
static const int | CHANNEL_MASK = 0x1F |
static const int | CHANNEL_SHIFT = 0 |
static const int | DDU_MASK = 0x3FF |
static const int | DDU_SHIFT = 16 |
static const int | ROB_MASK = 0x1F |
static const int | ROB_SHIFT = 7 |
static const int | ROS_MASK = 0xF |
static const int | ROS_SHIFT = 12 |
static const int | TDC_MASK = 0x3 |
static const int | TDC_SHIFT = 5 |
FIXEME:
A class for handling the DT Read-out chain.
Definition at line 33 of file DTROChainCoding.h.
DTROChainCoding::DTROChainCoding | ( | ) | [inline] |
DTROChainCoding::DTROChainCoding | ( | const int & | ddu, |
const int & | ros, | ||
const int & | rob, | ||
const int & | tdc, | ||
const int & | channel | ||
) | [inline] |
Definition at line 41 of file DTROChainCoding.h.
References CHANNEL_SHIFT, code, DDU_SHIFT, ROB_SHIFT, ROS_SHIFT, and TDC_SHIFT.
DTROChainCoding::DTROChainCoding | ( | uint32_t | code_ | ) | [inline] |
Definition at line 51 of file DTROChainCoding.h.
: code(code_) {}
virtual DTROChainCoding::~DTROChainCoding | ( | ) | [inline, virtual] |
int DTROChainCoding::getChannel | ( | ) | const [inline] |
Definition at line 96 of file DTROChainCoding.h.
References CHANNEL_MASK, CHANNEL_SHIFT, and code.
{ return (code >> CHANNEL_SHIFT) & CHANNEL_MASK; }
int DTROChainCoding::getChannelID | ( | ) | const [inline] |
Definition at line 97 of file DTROChainCoding.h.
References CHANNEL_SHIFT, and code.
{ return (code >> CHANNEL_SHIFT) ; }
uint32_t DTROChainCoding::getCode | ( | ) | const [inline] |
Getters ///////////////////////.
Definition at line 87 of file DTROChainCoding.h.
References code.
Referenced by DTROS25Unpacker::interpretRawData().
{ return code; }
int DTROChainCoding::getDDU | ( | ) | const [inline] |
int DTROChainCoding::getDDUID | ( | ) | const [inline] |
Definition at line 89 of file DTROChainCoding.h.
References code, and DDU_SHIFT.
Referenced by DTDataIntegrityTask::processFED(), and DTDataIntegrityTask::processROS25().
int DTROChainCoding::getROB | ( | ) | const [inline] |
Definition at line 92 of file DTROChainCoding.h.
References code, ROB_MASK, and ROB_SHIFT.
Referenced by DTDataIntegrityTask::processROS25().
int DTROChainCoding::getROBID | ( | ) | const [inline] |
int DTROChainCoding::getROS | ( | ) | const [inline] |
Definition at line 90 of file DTROChainCoding.h.
References code, ROS_MASK, and ROS_SHIFT.
Referenced by DTDataIntegrityTask::processROS25().
int DTROChainCoding::getROSID | ( | ) | const [inline] |
Definition at line 91 of file DTROChainCoding.h.
References code, and ROS_SHIFT.
Referenced by DTDataIntegrityTask::processROS25().
int DTROChainCoding::getSC | ( | ) | const [inline] |
int DTROChainCoding::getSCID | ( | ) | const [inline] |
Definition at line 101 of file DTROChainCoding.h.
References code, and ROS_SHIFT.
Referenced by DTDataIntegrityTask::processROS25().
int DTROChainCoding::getTDC | ( | ) | const [inline] |
int DTROChainCoding::getTDCID | ( | ) | const [inline] |
void DTROChainCoding::setChain | ( | const int & | ddu, |
const int & | ros, | ||
const int & | rob, | ||
const int & | tdc, | ||
const int & | channel | ||
) | [inline] |
Definition at line 58 of file DTROChainCoding.h.
References CHANNEL_SHIFT, code, DDU_SHIFT, ROB_SHIFT, ROS_SHIFT, and TDC_SHIFT.
void DTROChainCoding::setChannel | ( | const int & | ID | ) | [inline] |
Definition at line 82 of file DTROChainCoding.h.
References CHANNEL_MASK, CHANNEL_SHIFT, and code.
{ code = ( code & (~(CHANNEL_MASK << CHANNEL_SHIFT)) ) | (ID << CHANNEL_SHIFT); }
void DTROChainCoding::setCode | ( | const uint32_t & | code_ | ) | [inline] |
Setters ///////////////////////.
Definition at line 57 of file DTROChainCoding.h.
References code.
{code = code_;}
void DTROChainCoding::setDDU | ( | const int & | ID | ) | [inline] |
need to reset the bits before setting
Definition at line 70 of file DTROChainCoding.h.
References code, DDU_MASK, and DDU_SHIFT.
Referenced by DTDataIntegrityTask::postBeginJob(), DTDataIntegrityTask::processFED(), and DTDataIntegrityTask::processROS25().
void DTROChainCoding::setROB | ( | const int & | ID | ) | [inline] |
void DTROChainCoding::setROS | ( | const int & | ID | ) | [inline] |
Definition at line 73 of file DTROChainCoding.h.
References code, ROS_MASK, and ROS_SHIFT.
Referenced by DTDataIntegrityTask::postBeginJob(), and DTDataIntegrityTask::processROS25().
void DTROChainCoding::setTDC | ( | const int & | ID | ) | [inline] |
const int DTROChainCoding::CHANNEL_MASK = 0x1F [static, private] |
Definition at line 124 of file DTROChainCoding.h.
Referenced by getChannel(), and setChannel().
const int DTROChainCoding::CHANNEL_SHIFT = 0 [static, private] |
Definition at line 123 of file DTROChainCoding.h.
Referenced by DTROChainCoding(), getChannel(), getChannelID(), setChain(), and setChannel().
uint32_t DTROChainCoding::code [private] |
Definition at line 106 of file DTROChainCoding.h.
Referenced by DTROChainCoding(), getChannel(), getChannelID(), getCode(), getDDU(), getDDUID(), getROB(), getROBID(), getROS(), getROSID(), getSC(), getSCID(), getTDC(), getTDCID(), setChain(), setChannel(), setCode(), setDDU(), setROB(), setROS(), and setTDC().
const int DTROChainCoding::DDU_MASK = 0x3FF [static, private] |
Definition at line 112 of file DTROChainCoding.h.
const int DTROChainCoding::DDU_SHIFT = 16 [static, private] |
Definition at line 111 of file DTROChainCoding.h.
Referenced by DTROChainCoding(), getDDU(), getDDUID(), setChain(), and setDDU().
const int DTROChainCoding::ROB_MASK = 0x1F [static, private] |
Definition at line 118 of file DTROChainCoding.h.
const int DTROChainCoding::ROB_SHIFT = 7 [static, private] |
Definition at line 117 of file DTROChainCoding.h.
Referenced by DTROChainCoding(), getROB(), getROBID(), setChain(), and setROB().
const int DTROChainCoding::ROS_MASK = 0xF [static, private] |
Definition at line 115 of file DTROChainCoding.h.
const int DTROChainCoding::ROS_SHIFT = 12 [static, private] |
Definition at line 114 of file DTROChainCoding.h.
Referenced by DTROChainCoding(), getROS(), getROSID(), getSC(), getSCID(), setChain(), and setROS().
const int DTROChainCoding::TDC_MASK = 0x3 [static, private] |
Definition at line 121 of file DTROChainCoding.h.
const int DTROChainCoding::TDC_SHIFT = 5 [static, private] |
Definition at line 120 of file DTROChainCoding.h.
Referenced by DTROChainCoding(), getTDC(), getTDCID(), setChain(), and setTDC().