Belle II Software development
|
ROIpayload TODO: Better explanation, Is there a reason to inherit from TObject and not Relationsobject here? This Object contains a binary blob which is send as whole from the HLT Roi Sender output node to the ONSEN system, containing the trigger decision and the Region od Interest (ROI) for data selection on the PXD modules See Data format definitions [BELLE2-NOTE-TE-2016-009] on https://docs.belle2.org/. More...
#include <ROIpayload.h>
Public Types | |
using | ubig32_t = boost::endian::big_uint32_t |
Shorthand for 32-bit integer stored in big-endian format. | |
Public Member Functions | |
ROIpayload (int rois=0) | |
Default constructor. | |
virtual | ~ROIpayload () |
destructor. | |
void | setPayloadLength (int length) |
transient value | |
void | setPayloadLength () |
set payload length | |
void | setHeader (bool Accepted, bool SendAll, bool SendROIs) |
set header | |
void | setTriggerNumber (unsigned long int triggerNumber) |
set trigger number | |
void | setRunSubrunExpNumber (int run, int subrun, int exp) |
set run/ subrun/exp number | |
void | addROIraw (unsigned long int roiraw) |
add a ROIrawID | |
void | setCRC () |
set CRC | |
int | getPacketLengthByte () |
get packet length in bytes | |
int | getLength () |
get packet length | |
int * | getRootdata () |
get pointer to the data packet | |
void | init (int length) |
initializer | |
int | getNrROIs () const |
Get the nr of ROIs. | |
int | getDHHID (int j) const |
Return DHH ID of ROI j. | |
int | getMinVid (int j) const |
Return MinVid (Row 1) of ROI j. | |
int | getMaxVid (int j) const |
Return MaxVid (Row 2) of ROI j. | |
int | getMinUid (int j) const |
Return MinUid (Col 1) of ROI j. | |
int | getMaxUid (int j) const |
Return MaxUid (Col 2) of ROI j. | |
int | getType (int j) const |
Return Type (Datcon or HLT) of ROI j. | |
Public Attributes | |
int | m_packetLengthByte = 0 |
packet length in byte | |
int | m_length |
packet length | |
int * | m_rootdata |
pointer to data packet of m_length words | |
int | m_index |
transient index | |
uint32_t * | m_data32 |
transient value | |
ROIrawID::baseType * | m_data64 |
transient value | |
ROIpayload TODO: Better explanation, Is there a reason to inherit from TObject and not Relationsobject here? This Object contains a binary blob which is send as whole from the HLT Roi Sender output node to the ONSEN system, containing the trigger decision and the Region od Interest (ROI) for data selection on the PXD modules See Data format definitions [BELLE2-NOTE-TE-2016-009] on https://docs.belle2.org/.
Warning: The class does not allow to be updated in data store! (BII-3191) -> a module might corrupt entries in the data store if a previous ROIpayload is already in the DataStore A complete rewrite of gthe class might be needed for that. For now, you have to check that there is no object in data store before, and raise a FATAL if so.
Definition at line 35 of file ROIpayload.h.
using ubig32_t = boost::endian::big_uint32_t |
Shorthand for 32-bit integer stored in big-endian format.
Definition at line 41 of file ROIpayload.h.
|
private |
Definition at line 36 of file ROIpayload.h.
|
private |
Definition at line 37 of file ROIpayload.h.
|
explicit |
|
inlinevirtual |
destructor.
Definition at line 50 of file ROIpayload.h.
void addROIraw | ( | unsigned long int | roiraw | ) |
add a ROIrawID
Definition at line 82 of file ROIpayload.cc.
|
inline |
Return DHH ID of ROI j.
j | Index of ROI |
Definition at line 95 of file ROIpayload.h.
|
inline |
get packet length
Definition at line 77 of file ROIpayload.h.
|
inline |
Return MaxUid (Col 2) of ROI j.
j | Index of ROI |
Definition at line 136 of file ROIpayload.h.
|
inline |
Return MaxVid (Row 2) of ROI j.
j | Index of ROI |
Definition at line 116 of file ROIpayload.h.
|
inline |
Return MinUid (Col 1) of ROI j.
j | Index of ROI |
Definition at line 126 of file ROIpayload.h.
|
inline |
Return MinVid (Row 1) of ROI j.
j | Index of ROI |
Definition at line 105 of file ROIpayload.h.
|
inline |
|
inline |
get packet length in bytes
Definition at line 76 of file ROIpayload.h.
|
inline |
|
inline |
Return Type (Datcon or HLT) of ROI j.
j | Index of ROI |
Definition at line 146 of file ROIpayload.h.
void init | ( | int | length | ) |
initializer
Definition at line 25 of file ROIpayload.cc.
void setCRC | ( | ) |
set CRC
Definition at line 92 of file ROIpayload.cc.
void setHeader | ( | bool | Accepted, |
bool | SendAll, | ||
bool | SendROIs | ||
) |
set header
For Testbeam/Debugging purpose, we do not do any selection -> move to a downscaler on ONSEN Merger / SlowControl
for debugging purpose, we want to see the ROIs which were send in (esp from DATCON) -> move to a downscaler on ONSEN Merger / SlowControl
Definition at line 58 of file ROIpayload.cc.
void setPayloadLength | ( | ) |
set payload length
Definition at line 44 of file ROIpayload.cc.
void setPayloadLength | ( | int | length | ) |
transient value
set payload length
Definition at line 37 of file ROIpayload.cc.
void setRunSubrunExpNumber | ( | int | run, |
int | subrun, | ||
int | exp | ||
) |
set run/ subrun/exp number
set run, subrun and experiment number
Definition at line 74 of file ROIpayload.cc.
void setTriggerNumber | ( | unsigned long int | triggerNumber | ) |
set trigger number
Definition at line 69 of file ROIpayload.cc.
uint32_t* m_data32 |
ROIrawID::baseType* m_data64 |
int m_index |
transient index
Definition at line 58 of file ROIpayload.h.
int m_length |
packet length
Definition at line 53 of file ROIpayload.h.
int m_packetLengthByte = 0 |
packet length in byte
Definition at line 52 of file ROIpayload.h.
int* m_rootdata |
pointer to data packet of m_length words
Definition at line 55 of file ROIpayload.h.