 |
Belle II Software
release-05-02-19
|
9 #ifndef PRERAWCOPPERFORMAT_V1_H
10 #define PRERAWCOPPERFORMAT_V1_H
15 #include <rawdata/dataobjects/PostRawCOPPERFormat_v1.h>
16 #include <rawdata/CRCCalculator.h>
118 unsigned int prev_eve32,
unsigned int prev_exprunsubrun_no,
unsigned int* cur_exprunsubrun_no) OVERRIDE_CPP17;
128 unsigned int prev_evenum,
unsigned int* cur_evenum,
129 unsigned int prev_copper_ctr,
unsigned int* cur_copper_ctr,
130 unsigned int prev_exprunsubrun_no,
unsigned int* cur_exprunsubrun_no) OVERRIDE_CPP17;
143 void CopyReducedData(
int* bufin,
int nwords,
int num_events,
int num_nodes,
int* buf_to,
int* nwords_to);
157 int* detector_buf_1st,
int nwords_1st,
158 int* detector_buf_2nd,
int nwords_2nd,
159 int* detector_buf_3rd,
int nwords_3rd,
160 int* detector_buf_4th,
int nwords_4th,
168 SIZE_COPPER_DRIVER_HEADER = 7,
169 SIZE_COPPER_DRIVER_TRAILER = 2
176 POS_MAGIC_COPPER_1 = 0,
177 POS_EVE_NUM_COPPER = 1,
178 POS_SUBSYSTEM_ID = 2,
181 POS_MAGIC_COPPER_2 = 7,
183 POS_CH_A_DATA_LENGTH = 9,
184 POS_CH_B_DATA_LENGTH = 10,
185 POS_CH_C_DATA_LENGTH = 11,
186 POS_CH_D_DATA_LENGTH = 12,
188 SIZE_COPPER_HEADER = 13
197 POS_MAGIC_COPPER_3 = 0,
198 POS_CHKSUM_COPPER = 1,
199 POS_MAGIC_COPPER_4 = 2,
201 SIZE_COPPER_TRAILER = 3
208 POS_MAGIC_B2LHSLB = 0,
210 SIZE_B2LHSLB_HEADER = 1
216 POS_TT_CTIME_TYPE = 0,
221 SIZE_B2LFEE_HEADER = 5
229 POS_TT_CTIME_B2LFEE = 0,
230 POS_CHKSUM_B2LFEE = 1,
231 SIZE_B2LFEE_TRAILER = 2
239 POS_CHKSUM_B2LHSLB = 0,
240 SIZE_B2LHSLB_TRAILER = 1
249 COPPER_MAGIC_DRIVER_HEADER = 0x7FFF0008,
250 COPPER_MAGIC_FPGA_HEADER = 0xFFFFFAFA,
251 COPPER_MAGIC_FPGA_TRAILER = 0xFFFFF5F5,
252 COPPER_MAGIC_DRIVER_TRAILER = 0x7FFF0009
260 B2LHSLB_HEADER_MAGIC = 0xFFAA0000,
261 B2LHSLB_TRAILER_MAGIC = 0xFF550000
284 #ifdef USE_B2LFEE_FORMAT_BOTH_VER1_AND_2
285 CheckB2LFEEHeaderVersion(n);
296 #ifdef USE_B2LFEE_FORMAT_BOTH_VER1_AND_2
297 CheckB2LFEEHeaderVersion(n);
308 #ifdef USE_B2LFEE_FORMAT_BOTH_VER1_AND_2
309 CheckB2LFEEHeaderVersion(n);
320 #ifdef USE_B2LFEE_FORMAT_BOTH_VER1_AND_2
321 CheckB2LFEEHeaderVersion(n);
332 #ifdef USE_B2LFEE_FORMAT_BOTH_VER1_AND_2
333 CheckB2LFEEHeaderVersion(n);
344 return (
unsigned int)(
m_buffer[ pos_nwords ]);
350 return (
unsigned int)(
m_buffer[ pos_nwords ]);
359 return (
unsigned int)(
m_buffer[ pos_nwords ]);
365 return (
unsigned int)(
m_buffer[ pos_nwords ]);
372 -
tmp_trailer.RAWTRAILER_NWORDS - SIZE_COPPER_DRIVER_TRAILER;
380 return (
unsigned int)(
m_buffer[ pos_nwords ]);
389 return (
unsigned int)(
m_buffer[ pos_nwords ]);
struct to contain header information used by RawCOPPERFormat::Packer()
virtual int GetOffset3rdFINESSE(int n)
get # of offset words for FINESSE slot C buffer position
unsigned int GetMagicFPGATrailer(int n) OVERRIDE_CPP17
get magic word of COPPER FPGA trailer
int GetOffset1stFINESSE(int n) OVERRIDE_CPP17
get # of offset words for FINESSE slot A buffer position
int Get1stFINESSENwords(int n) OVERRIDE_CPP17
get data size of FINESSE slot A buffer
virtual int GetOffset2ndFINESSE(int n)
get # of offset words for FINESSE slot B buffer position
int * Get2ndDetectorBuffer(int n) OVERRIDE_CPP17
get Detector Buffer of slot B
virtual int * GetExpRunSubrunBuf(int n) OVERRIDE_CPP17
get b2l block from "FEE b2link header"
unsigned int GetDriverChkSum(int n) OVERRIDE_CPP17
read COPPER driver's checksum value
int GetTrlNwords()
Set magic word.
unsigned int GetMagicDriverHeader(int n) OVERRIDE_CPP17
get magic word of COPPER driver header
virtual int GetOffset4thFINESSE(int n)
get # of offset words for FINESSE slot D buffer position
unsigned int GetMagicFPGAHeader(int n) OVERRIDE_CPP17
get magic word of COPPER FPGA header
unsigned int GetTrailerChksum(int n) OVERRIDE_CPP17
get a checksum on trailer
Abstract base class for different kinds of events.
int * Get3rdDetectorBuffer(int n) OVERRIDE_CPP17
get Detector Buffer of slot C
int Get4thFINESSENwords(int n) OVERRIDE_CPP17
get data size of FINESSE slot D buffer
unsigned int GetMagicDriverTrailer(int n) OVERRIDE_CPP17
get magic word of COPPER driver trailer
int Get3rdFINESSENwords(int n) OVERRIDE_CPP17
get data size of FINESSE slot C buffer
The Raw COPPER class ver.1 ( the latest version since May, 2014 ) This class stores data received by ...
int Get2ndFINESSENwords(int n) OVERRIDE_CPP17
get data size of FINESSE slot B buffer
int * Get4thDetectorBuffer(int n) OVERRIDE_CPP17
get Detector Buffer of slot D
unsigned int GetCOPPERCounter(int n) OVERRIDE_CPP17
get posistion of COPPER block in unit of word
int * Get1stDetectorBuffer(int n) OVERRIDE_CPP17
get Detector buffer of slot A