 |
Belle II Software
release-05-02-19
|
13 #include <framework/core/Module.h>
14 #include <vxd/dataobjects/VxdID.h>
15 #include <framework/datastore/StoreArray.h>
16 #include <framework/datastore/StoreObjPtr.h>
17 #include <rawdata/dataobjects/RawPXD.h>
18 #include <pxd/dataobjects/PXDDAQStatus.h>
19 #include <pxd/dataobjects/PXDErrorFlags.h>
39 class PXDPackerErrModule :
public Module {
40 enum {PACKER_NUM_ROWS = 768};
41 enum {PACKER_NUM_COLS = 250};
51 void event() override final;
110 void pack_dhc(
int dhc_id,
int dhe_mask,
int* dhe_ids);
114 void pack_dhe(
int dhe_id,
int dhp_mask);
118 void pack_dhp(
int dhp_id,
int dhe_id,
int dhe_reformat);
132 void do_the_reverse_mapping(
unsigned int& row,
unsigned int& col,
unsigned short layer,
unsigned short sensor);
std::vector< unsigned char > m_current_frame
For current processed frames.
void initialize() override final
Initialize the module.
unsigned int m_real_trigger_nr
Real Trigger Nr.
void pack_dhp_raw(int dhp_id, int dhe_id)
Pack one DHP RAW to buffer.
void pack_dhp(int dhp_id, int dhe_id, int dhe_reformat)
Pack one DHP to buffer.
bool CheckErrorMaskInEvent(unsigned int eventnr, PXDError::PXDErrorFlags mask)
bool isErrorIn(uint32_t enr)
Check if we want this type of error in this event.
unsigned int m_trigger_dhp_framenr
DHP Readout Frame Nr for DHP and DHE headers.
void terminate() override final
Terminate the module.
std::vector< unsigned int > m_onsen_header
For one DHC event, we utilize one header (writing out, beware of endianess!)
Abstract base class for different kinds of events.
Type-safe access to single objects in the data store.
void pack_dhe(int dhe_id, int dhp_mask)
Pack one DHE (several DHP) to buffer.
unsigned short m_run_nr_word2
Exp+Run Nr.
unsigned int m_trigger_dhe_gate
DHE Trigger Gate for DHE headers.
void event() override final
do the packing
std::vector< std::vector< int > > m_dhe_to_dhc
Parameter dhc<->dhe list, mapping from steering file.
unsigned short m_run_nr_word1
Run+Subrun Nr.
static std::vector< PXDErrorFlags > m_errors
The pxd error flags.
bool m_InvertMapping
Flag if we invert mapping to DHP row/col or use premapped coordinates.
std::string m_PXDDAQEvtStatsName
The name of the StoreObjPtr of PXDDAQStatus to be read.
unsigned int m_trigger_nr
Trigger Nr.
PXDPackerErrModule()
Constructor defining the parameters.
StoreArray< RawPXD > m_storeRaws
Output array for RawPxds.
unsigned int dhe_byte_count
Byte count in current DHE package.
void start_frame(void)
Start with a new Frame.
unsigned int dhc_byte_count
Byte count in current DHC package.
void append_int16(unsigned short w)
cat 16bit value to frame
unsigned char halfladder_pixmap[PACKER_NUM_ROWS][PACKER_NUM_COLS]
temporary hitmap buffer for pixel to raw data conversion
std::string m_RawPXDsName
The name of the StoreArray of generated RawPXDs.
Accessor to arrays stored in the data store.
void add_frame_to_payload(void)
Add Frame to Event payload.
bool m_Clusterize
Use clusterizer (FCE format)
void append_int8(unsigned char w)
cat 8bit value to frame
unsigned long long int m_meta_time
Time(Tag) from MetaInfo.
void pack_dhc(int dhc_id, int dhe_mask, int *dhe_ids)
Pack one DHC (several DHE) stored in one RawPXD object.
std::map< VxdID, int > startOfVxdID
Store start of Vxd Detector related digits.
void pack_event(void)
Pack one event (several DHC) stored in seperate RawPXD object.
bool m_found_fatal
flag if we found one test failing
StoreObjPtr< PXDDAQStatus > m_daqStatus
Output array for RawPxds.
unsigned int m_packed_events
Event counter.
std::vector< std::vector< unsigned char > > m_onsen_payload
For one DHC event, we utilize one payload for all DHE/DHP frames.
bool m_Check
false=Pack Raw Data, true=Check unpacked result
void append_int32(unsigned int w)
cat 32value value to frame
std::map< int, std::vector< int > > m_dhc_mapto_dhe
mapping calculated from m_dhe_to_dhc for easier handling