9#ifndef PRERAWCOPPERFORMAT_V1_H 
   10#define PRERAWCOPPERFORMAT_V1_H 
   15#include <rawdata/dataobjects/PostRawCOPPERFormat_v1.h> 
   16#include <rawdata/CRCCalculator.h> 
  135                                       unsigned int prev_eve32, 
unsigned int prev_exprunsubrun_no, 
unsigned int* cur_exprunsubrun_no) OVERRIDE_CPP17;
 
  148                   unsigned int prev_evenum, 
unsigned int* cur_evenum,
 
  149                   unsigned int prev_copper_ctr, 
unsigned int* cur_copper_ctr,
 
  150                   unsigned int prev_exprunsubrun_no, 
unsigned int* cur_exprunsubrun_no) OVERRIDE_CPP17;
 
  164    void CopyReducedData(
int* bufin, 
int nwords, 
int num_events, 
int num_nodes, 
int* buf_to, 
int* nwords_to);
 
  179                         int* detector_buf_1st, 
int nwords_1st,
 
  180                         int* detector_buf_2nd, 
int nwords_2nd,
 
  181                         int* detector_buf_3rd, 
int nwords_3rd,
 
  182                         int* detector_buf_4th, 
int nwords_4th,
 
  190      SIZE_COPPER_DRIVER_HEADER = 7,
 
  191      SIZE_COPPER_DRIVER_TRAILER = 2
 
  198      POS_MAGIC_COPPER_1 = 0,
 
  199      POS_EVE_NUM_COPPER = 1,
 
  200      POS_SUBSYSTEM_ID = 2,
 
  203      POS_MAGIC_COPPER_2 = 7,
 
  205      POS_CH_A_DATA_LENGTH = 9,
 
  206      POS_CH_B_DATA_LENGTH = 10,
 
  207      POS_CH_C_DATA_LENGTH = 11,
 
  208      POS_CH_D_DATA_LENGTH = 12,
 
  210      SIZE_COPPER_HEADER = 13
 
  219      POS_MAGIC_COPPER_3 = 0,
 
  220      POS_CHKSUM_COPPER = 1,
 
  221      POS_MAGIC_COPPER_4 = 2,
 
  223      SIZE_COPPER_TRAILER = 3
 
  230      POS_MAGIC_B2LHSLB = 0,
 
  232      SIZE_B2LHSLB_HEADER = 1
 
  238      POS_TT_CTIME_TYPE = 0,
 
  243      SIZE_B2LFEE_HEADER = 5
 
  251      POS_TT_CTIME_B2LFEE = 0,
 
  252      POS_CHKSUM_B2LFEE = 1,
 
  253      SIZE_B2LFEE_TRAILER = 2
 
  261      POS_CHKSUM_B2LHSLB = 0,
 
  262      SIZE_B2LHSLB_TRAILER = 1
 
  271      COPPER_MAGIC_DRIVER_HEADER = 0x7FFF0008,
 
  272      COPPER_MAGIC_FPGA_HEADER = 0xFFFFFAFA,
 
  273      COPPER_MAGIC_FPGA_TRAILER = 0xFFFFF5F5,
 
  274      COPPER_MAGIC_DRIVER_TRAILER = 0x7FFF0009
 
  282      B2LHSLB_HEADER_MAGIC = 0xFFAA0000,
 
  283      B2LHSLB_TRAILER_MAGIC = 0xFF550000
 
  306#ifdef USE_B2LFEE_FORMAT_BOTH_VER1_AND_2 
  307    CheckB2LFEEHeaderVersion(n);
 
  318#ifdef USE_B2LFEE_FORMAT_BOTH_VER1_AND_2 
  319    CheckB2LFEEHeaderVersion(n);
 
  330#ifdef USE_B2LFEE_FORMAT_BOTH_VER1_AND_2 
  331    CheckB2LFEEHeaderVersion(n);
 
  342#ifdef USE_B2LFEE_FORMAT_BOTH_VER1_AND_2 
  343    CheckB2LFEEHeaderVersion(n);
 
  354#ifdef USE_B2LFEE_FORMAT_BOTH_VER1_AND_2 
  355    CheckB2LFEEHeaderVersion(n);
 
  366    return (
unsigned int)(
m_buffer[ pos_nwords ]);
 
  372    return (
unsigned int)(
m_buffer[ pos_nwords ]);
 
  381    return (
unsigned int)(
m_buffer[ pos_nwords ]);
 
  387    return (
unsigned int)(
m_buffer[ pos_nwords ]);
 
  394                     - 
tmp_trailer.RAWTRAILER_NWORDS - SIZE_COPPER_DRIVER_TRAILER;
 
  402    return (
unsigned int)(
m_buffer[ pos_nwords ]);
 
  411    return (
unsigned int)(
m_buffer[ pos_nwords ]);
 
The Raw COPPER class ver.1 ( the latest version since May, 2014 ) This class stores data received by ...
struct to contain header information used by RawCOPPERFormat::Packer()
int Get3rdFINESSENwords(int n) OVERRIDE_CPP17
get data size of FINESSE slot C buffer
unsigned int GetDriverChkSum(int n) OVERRIDE_CPP17
read COPPER driver's checksum value
int GetOffset1stFINESSE(int n) OVERRIDE_CPP17
get # of offset words for FINESSE slot A buffer position
unsigned int GetCOPPERCounter(int n) OVERRIDE_CPP17
get posistion of COPPER block in unit of word
unsigned int GetMagicFPGATrailer(int n) OVERRIDE_CPP17
get magic word of COPPER FPGA trailer
int Get1stFINESSENwords(int n) OVERRIDE_CPP17
get data size of FINESSE slot A buffer
unsigned int GetMagicDriverTrailer(int n) OVERRIDE_CPP17
get magic word of COPPER driver trailer
int * Get2ndDetectorBuffer(int n) OVERRIDE_CPP17
get Detector Buffer of slot B
virtual int GetOffset2ndFINESSE(int n)
get # of offset words for FINESSE slot B buffer position
int GetTrlNwords()
Set magic word.
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
int * Get4thDetectorBuffer(int n) OVERRIDE_CPP17
get Detector Buffer of slot D
int Get4thFINESSENwords(int n) OVERRIDE_CPP17
get data size of FINESSE slot D buffer
virtual int GetOffset4thFINESSE(int n)
get # of offset words for FINESSE slot D buffer position
virtual int GetOffset3rdFINESSE(int n)
get # of offset words for FINESSE slot C buffer position
virtual int * GetExpRunSubrunBuf(int n) OVERRIDE_CPP17
get b2l block from "FEE b2link header"
int * Get3rdDetectorBuffer(int n) OVERRIDE_CPP17
get Detector Buffer of slot C
unsigned int GetMagicDriverHeader(int n) OVERRIDE_CPP17
get magic word of COPPER driver header
int * Get1stDetectorBuffer(int n) OVERRIDE_CPP17
get Detector buffer of slot A
int Get2ndFINESSENwords(int n) OVERRIDE_CPP17
get data size of FINESSE slot B buffer
Abstract base class for different kinds of events.