BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
eformat Namespace Reference

Namespaces

namespace  helper
namespace  old
namespace  write

Classes

class  BadVersionIssue
class  FullEventFragment
class  Header
class  Issue
class  NoSuchChildIssue
class  NotAlignedIssue
class  UnboundSourceIdentifierIssue
class  OutOfBoundsIssue
class  PagedMemory
class  ROBFragment
class  ROSFragment
class  SizeCheckIssue
class  SubDetectorFragment
class  TooBigCountIssue
class  WrongMarkerIssue
class  WrongSizeIssue

Typedefs

typedef enum HeaderMarker HeaderMarker
typedef enum RunType RunType
typedef enum SubDetector SubDetector
typedef enum GenericStatus GenericStatus

Enumerations

enum  HeaderMarker {
  ROD = 0xee1234ee , ROB = 0xdd1234dd , ROS = 0xcc1234cc , SUB_DETECTOR = 0xbb1234bb ,
  FULL_EVENT = 0xaa1234aa , ROD = 0xee1234ee , ROB = 0xdd1234dd , ROS = 0xcc1234cc ,
  SUB_DETECTOR = 0xbb1234bb , FULL_EVENT = 0xaa1234aa , ROD = 0xee1234ee , ROB = 0xdd1234dd ,
  ROS = 0xcc1234cc , SUB_DETECTOR = 0xbb1234bb , FULL_EVENT = 0xaa1234aa
}
enum  RunType {
  PHYSICS = 0x00 , CALIBRATION = 0x01 , COSMICS = 0x02 , TEST = 0x0f ,
  PHYSICS = 0x00 , CALIBRATION = 0x01 , COSMICS = 0x02 , TEST = 0x0f ,
  PHYSICS = 0x00 , CALIBRATION = 0x01 , COSMICS = 0x02 , TEST = 0x0f
}
enum  SubDetector {
  FULL_SD_EVENT = 0x00 , PIXEL_BARREL = 0x11 , PIXEL_FORWARD_A_SIDE = 0x12 , PIXEL_FORWARD_C_SIDE = 0x13 ,
  PIXEL_B_LAYER = 0x14 , SCT_BARREL_A_SIDE = 0x21 , SCT_BARREL_C_SIDE = 0x22 , SCT_ENDCAP_A_SIDE = 0x23 ,
  SCT_ENDCAP_C_SIDE = 0x24 , TRT_ANCILLARY_CRATE = 0x30 , TRT_BARREL_A_SIDE = 0x31 , TRT_BARREL_C_SIDE = 0x32 ,
  TRT_ENDCAP_A_SIDE = 0x33 , TRT_ENDCAP_C_SIDE = 0x34 , LAR_EM_BARREL_A_SIDE = 0x41 , LAR_EM_BARREL_C_SIDE = 0x42 ,
  LAR_EM_ENDCAP_A_SIDE = 0x43 , LAR_EM_ENDCAP_C_SIDE = 0x44 , LAR_HAD_ENDCAP_A_SIDE = 0x45 , LAR_HAD_ENDCAP_C_SIDE = 0x46 ,
  LAR_FCAL_A_SIDE = 0x47 , LAR_FCAL_C_SIDE = 0x48 , TILECAL_LASER_CRATE = 0x50 , TILECAL_BARREL_A_SIDE = 0x51 ,
  TILECAL_BARREL_C_SIDE = 0x52 , TILECAL_EXT_A_SIDE = 0x53 , TILECAL_EXT_C_SIDE = 0x54 , MUON_ANCILLARY_CRATE = 0x60 ,
  MUON_MDT_BARREL_A_SIDE = 0x61 , MUON_MDT_BARREL_C_SIDE = 0x62 , MUON_MDT_ENDCAP_A_SIDE = 0x63 , MUON_MDT_ENDCAP_C_SIDE = 0x64 ,
  MUON_RPC_BARREL_A_SIDE = 0x65 , MUON_RPC_BARREL_C_SIDE = 0x66 , MUON_TGC_ENDCAP_A_SIDE = 0x67 , MUON_TGC_ENDCAP_C_SIDE = 0x68 ,
  MUON_CSC_ENDCAP_A_SIDE = 0x69 , MUON_CSC_ENDCAP_C_SIDE = 0x6A , TDAQ_BEAM_CRATE = 0x70 , TDAQ_CALO_PREPROC = 0x71 ,
  TDAQ_CALO_CLUSTER_PROC_DAQ = 0x72 , TDAQ_CALO_CLUSTER_PROC_ROI = 0x73 , TDAQ_CALO_JET_PROC_DAQ = 0x74 , TDAQ_CALO_JET_PROC_ROI = 0x75 ,
  TDAQ_MUON_CTP_INTERFACE = 0x76 , TDAQ_CTP = 0x77 , TDAQ_L2SV = 0x78 , TDAQ_SFI = 0x79 ,
  TDAQ_SFO = 0x7a , TDAQ_LVL2 = 0x7b , TDAQ_EVENT_FILTER = 0x7c , OTHER = 0x81 ,
  BESIII_MDC = 0xa1 , BESIII_TOF = 0xa2 , BESIII_EMC = 0xa3 , BESIII_MUC = 0xa4 ,
  BESIII_TRG = 0xa5 , FULL_SD_EVENT = 0x00 , PIXEL_BARREL = 0x11 , PIXEL_FORWARD_A_SIDE = 0x12 ,
  PIXEL_FORWARD_C_SIDE = 0x13 , PIXEL_B_LAYER = 0x14 , SCT_BARREL_A_SIDE = 0x21 , SCT_BARREL_C_SIDE = 0x22 ,
  SCT_ENDCAP_A_SIDE = 0x23 , SCT_ENDCAP_C_SIDE = 0x24 , TRT_ANCILLARY_CRATE = 0x30 , TRT_BARREL_A_SIDE = 0x31 ,
  TRT_BARREL_C_SIDE = 0x32 , TRT_ENDCAP_A_SIDE = 0x33 , TRT_ENDCAP_C_SIDE = 0x34 , LAR_EM_BARREL_A_SIDE = 0x41 ,
  LAR_EM_BARREL_C_SIDE = 0x42 , LAR_EM_ENDCAP_A_SIDE = 0x43 , LAR_EM_ENDCAP_C_SIDE = 0x44 , LAR_HAD_ENDCAP_A_SIDE = 0x45 ,
  LAR_HAD_ENDCAP_C_SIDE = 0x46 , LAR_FCAL_A_SIDE = 0x47 , LAR_FCAL_C_SIDE = 0x48 , TILECAL_LASER_CRATE = 0x50 ,
  TILECAL_BARREL_A_SIDE = 0x51 , TILECAL_BARREL_C_SIDE = 0x52 , TILECAL_EXT_A_SIDE = 0x53 , TILECAL_EXT_C_SIDE = 0x54 ,
  MUON_ANCILLARY_CRATE = 0x60 , MUON_MDT_BARREL_A_SIDE = 0x61 , MUON_MDT_BARREL_C_SIDE = 0x62 , MUON_MDT_ENDCAP_A_SIDE = 0x63 ,
  MUON_MDT_ENDCAP_C_SIDE = 0x64 , MUON_RPC_BARREL_A_SIDE = 0x65 , MUON_RPC_BARREL_C_SIDE = 0x66 , MUON_TGC_ENDCAP_A_SIDE = 0x67 ,
  MUON_TGC_ENDCAP_C_SIDE = 0x68 , MUON_CSC_ENDCAP_A_SIDE = 0x69 , MUON_CSC_ENDCAP_C_SIDE = 0x6A , TDAQ_BEAM_CRATE = 0x70 ,
  TDAQ_CALO_PREPROC = 0x71 , TDAQ_CALO_CLUSTER_PROC_DAQ = 0x72 , TDAQ_CALO_CLUSTER_PROC_ROI = 0x73 , TDAQ_CALO_JET_PROC_DAQ = 0x74 ,
  TDAQ_CALO_JET_PROC_ROI = 0x75 , TDAQ_MUON_CTP_INTERFACE = 0x76 , TDAQ_CTP = 0x77 , TDAQ_L2SV = 0x78 ,
  TDAQ_SFI = 0x79 , TDAQ_SFO = 0x7a , TDAQ_LVL2 = 0x7b , TDAQ_EVENT_FILTER = 0x7c ,
  OTHER = 0x81 , BESIII_MDC = 0xa1 , BESIII_TOF = 0xa2 , BESIII_EMC = 0xa3 ,
  BESIII_MUC = 0xa4 , BESIII_TRG = 0xa5 , FULL_SD_EVENT = 0x00 , PIXEL_BARREL = 0x11 ,
  PIXEL_FORWARD_A_SIDE = 0x12 , PIXEL_FORWARD_C_SIDE = 0x13 , PIXEL_B_LAYER = 0x14 , SCT_BARREL_A_SIDE = 0x21 ,
  SCT_BARREL_C_SIDE = 0x22 , SCT_ENDCAP_A_SIDE = 0x23 , SCT_ENDCAP_C_SIDE = 0x24 , TRT_ANCILLARY_CRATE = 0x30 ,
  TRT_BARREL_A_SIDE = 0x31 , TRT_BARREL_C_SIDE = 0x32 , TRT_ENDCAP_A_SIDE = 0x33 , TRT_ENDCAP_C_SIDE = 0x34 ,
  LAR_EM_BARREL_A_SIDE = 0x41 , LAR_EM_BARREL_C_SIDE = 0x42 , LAR_EM_ENDCAP_A_SIDE = 0x43 , LAR_EM_ENDCAP_C_SIDE = 0x44 ,
  LAR_HAD_ENDCAP_A_SIDE = 0x45 , LAR_HAD_ENDCAP_C_SIDE = 0x46 , LAR_FCAL_A_SIDE = 0x47 , LAR_FCAL_C_SIDE = 0x48 ,
  TILECAL_LASER_CRATE = 0x50 , TILECAL_BARREL_A_SIDE = 0x51 , TILECAL_BARREL_C_SIDE = 0x52 , TILECAL_EXT_A_SIDE = 0x53 ,
  TILECAL_EXT_C_SIDE = 0x54 , MUON_ANCILLARY_CRATE = 0x60 , MUON_MDT_BARREL_A_SIDE = 0x61 , MUON_MDT_BARREL_C_SIDE = 0x62 ,
  MUON_MDT_ENDCAP_A_SIDE = 0x63 , MUON_MDT_ENDCAP_C_SIDE = 0x64 , MUON_RPC_BARREL_A_SIDE = 0x65 , MUON_RPC_BARREL_C_SIDE = 0x66 ,
  MUON_TGC_ENDCAP_A_SIDE = 0x67 , MUON_TGC_ENDCAP_C_SIDE = 0x68 , MUON_CSC_ENDCAP_A_SIDE = 0x69 , MUON_CSC_ENDCAP_C_SIDE = 0x6A ,
  TDAQ_BEAM_CRATE = 0x70 , TDAQ_CALO_PREPROC = 0x71 , TDAQ_CALO_CLUSTER_PROC_DAQ = 0x72 , TDAQ_CALO_CLUSTER_PROC_ROI = 0x73 ,
  TDAQ_CALO_JET_PROC_DAQ = 0x74 , TDAQ_CALO_JET_PROC_ROI = 0x75 , TDAQ_MUON_CTP_INTERFACE = 0x76 , TDAQ_CTP = 0x77 ,
  TDAQ_L2SV = 0x78 , TDAQ_SFI = 0x79 , TDAQ_SFO = 0x7a , TDAQ_LVL2 = 0x7b ,
  TDAQ_EVENT_FILTER = 0x7c , OTHER = 0x81 , BESIII_MDC = 0xa1 , BESIII_TOF = 0xa2 ,
  BESIII_EMC = 0xa3 , BESIII_MUC = 0xa4 , BESIII_TRG = 0xa5
}
enum  GenericStatus {
  NO_ERROR = 0x0 , BCID_CHECK_FAIL = 0x1 , LVL1ID_CHECK_FAIL = 0x2 , TIMEOUT = 0x4 ,
  DATA_CORRUPTION = 0x8 , INTERNAL_OVERFLOW = 0x16 , NO_ERROR = 0x0 , BCID_CHECK_FAIL = 0x1 ,
  LVL1ID_CHECK_FAIL = 0x2 , TIMEOUT = 0x4 , DATA_CORRUPTION = 0x8 , INTERNAL_OVERFLOW = 0x16 ,
  NO_ERROR = 0x0 , BCID_CHECK_FAIL = 0x1 , LVL1ID_CHECK_FAIL = 0x2 , TIMEOUT = 0x4 ,
  DATA_CORRUPTION = 0x8 , INTERNAL_OVERFLOW = 0x16
}
enum  HeaderMarker {
  ROD = 0xee1234ee , ROB = 0xdd1234dd , ROS = 0xcc1234cc , SUB_DETECTOR = 0xbb1234bb ,
  FULL_EVENT = 0xaa1234aa , ROD = 0xee1234ee , ROB = 0xdd1234dd , ROS = 0xcc1234cc ,
  SUB_DETECTOR = 0xbb1234bb , FULL_EVENT = 0xaa1234aa , ROD = 0xee1234ee , ROB = 0xdd1234dd ,
  ROS = 0xcc1234cc , SUB_DETECTOR = 0xbb1234bb , FULL_EVENT = 0xaa1234aa
}
enum  RunType {
  PHYSICS = 0x00 , CALIBRATION = 0x01 , COSMICS = 0x02 , TEST = 0x0f ,
  PHYSICS = 0x00 , CALIBRATION = 0x01 , COSMICS = 0x02 , TEST = 0x0f ,
  PHYSICS = 0x00 , CALIBRATION = 0x01 , COSMICS = 0x02 , TEST = 0x0f
}
enum  SubDetector {
  FULL_SD_EVENT = 0x00 , PIXEL_BARREL = 0x11 , PIXEL_FORWARD_A_SIDE = 0x12 , PIXEL_FORWARD_C_SIDE = 0x13 ,
  PIXEL_B_LAYER = 0x14 , SCT_BARREL_A_SIDE = 0x21 , SCT_BARREL_C_SIDE = 0x22 , SCT_ENDCAP_A_SIDE = 0x23 ,
  SCT_ENDCAP_C_SIDE = 0x24 , TRT_ANCILLARY_CRATE = 0x30 , TRT_BARREL_A_SIDE = 0x31 , TRT_BARREL_C_SIDE = 0x32 ,
  TRT_ENDCAP_A_SIDE = 0x33 , TRT_ENDCAP_C_SIDE = 0x34 , LAR_EM_BARREL_A_SIDE = 0x41 , LAR_EM_BARREL_C_SIDE = 0x42 ,
  LAR_EM_ENDCAP_A_SIDE = 0x43 , LAR_EM_ENDCAP_C_SIDE = 0x44 , LAR_HAD_ENDCAP_A_SIDE = 0x45 , LAR_HAD_ENDCAP_C_SIDE = 0x46 ,
  LAR_FCAL_A_SIDE = 0x47 , LAR_FCAL_C_SIDE = 0x48 , TILECAL_LASER_CRATE = 0x50 , TILECAL_BARREL_A_SIDE = 0x51 ,
  TILECAL_BARREL_C_SIDE = 0x52 , TILECAL_EXT_A_SIDE = 0x53 , TILECAL_EXT_C_SIDE = 0x54 , MUON_ANCILLARY_CRATE = 0x60 ,
  MUON_MDT_BARREL_A_SIDE = 0x61 , MUON_MDT_BARREL_C_SIDE = 0x62 , MUON_MDT_ENDCAP_A_SIDE = 0x63 , MUON_MDT_ENDCAP_C_SIDE = 0x64 ,
  MUON_RPC_BARREL_A_SIDE = 0x65 , MUON_RPC_BARREL_C_SIDE = 0x66 , MUON_TGC_ENDCAP_A_SIDE = 0x67 , MUON_TGC_ENDCAP_C_SIDE = 0x68 ,
  MUON_CSC_ENDCAP_A_SIDE = 0x69 , MUON_CSC_ENDCAP_C_SIDE = 0x6A , TDAQ_BEAM_CRATE = 0x70 , TDAQ_CALO_PREPROC = 0x71 ,
  TDAQ_CALO_CLUSTER_PROC_DAQ = 0x72 , TDAQ_CALO_CLUSTER_PROC_ROI = 0x73 , TDAQ_CALO_JET_PROC_DAQ = 0x74 , TDAQ_CALO_JET_PROC_ROI = 0x75 ,
  TDAQ_MUON_CTP_INTERFACE = 0x76 , TDAQ_CTP = 0x77 , TDAQ_L2SV = 0x78 , TDAQ_SFI = 0x79 ,
  TDAQ_SFO = 0x7a , TDAQ_LVL2 = 0x7b , TDAQ_EVENT_FILTER = 0x7c , OTHER = 0x81 ,
  BESIII_MDC = 0xa1 , BESIII_TOF = 0xa2 , BESIII_EMC = 0xa3 , BESIII_MUC = 0xa4 ,
  BESIII_TRG = 0xa5 , FULL_SD_EVENT = 0x00 , PIXEL_BARREL = 0x11 , PIXEL_FORWARD_A_SIDE = 0x12 ,
  PIXEL_FORWARD_C_SIDE = 0x13 , PIXEL_B_LAYER = 0x14 , SCT_BARREL_A_SIDE = 0x21 , SCT_BARREL_C_SIDE = 0x22 ,
  SCT_ENDCAP_A_SIDE = 0x23 , SCT_ENDCAP_C_SIDE = 0x24 , TRT_ANCILLARY_CRATE = 0x30 , TRT_BARREL_A_SIDE = 0x31 ,
  TRT_BARREL_C_SIDE = 0x32 , TRT_ENDCAP_A_SIDE = 0x33 , TRT_ENDCAP_C_SIDE = 0x34 , LAR_EM_BARREL_A_SIDE = 0x41 ,
  LAR_EM_BARREL_C_SIDE = 0x42 , LAR_EM_ENDCAP_A_SIDE = 0x43 , LAR_EM_ENDCAP_C_SIDE = 0x44 , LAR_HAD_ENDCAP_A_SIDE = 0x45 ,
  LAR_HAD_ENDCAP_C_SIDE = 0x46 , LAR_FCAL_A_SIDE = 0x47 , LAR_FCAL_C_SIDE = 0x48 , TILECAL_LASER_CRATE = 0x50 ,
  TILECAL_BARREL_A_SIDE = 0x51 , TILECAL_BARREL_C_SIDE = 0x52 , TILECAL_EXT_A_SIDE = 0x53 , TILECAL_EXT_C_SIDE = 0x54 ,
  MUON_ANCILLARY_CRATE = 0x60 , MUON_MDT_BARREL_A_SIDE = 0x61 , MUON_MDT_BARREL_C_SIDE = 0x62 , MUON_MDT_ENDCAP_A_SIDE = 0x63 ,
  MUON_MDT_ENDCAP_C_SIDE = 0x64 , MUON_RPC_BARREL_A_SIDE = 0x65 , MUON_RPC_BARREL_C_SIDE = 0x66 , MUON_TGC_ENDCAP_A_SIDE = 0x67 ,
  MUON_TGC_ENDCAP_C_SIDE = 0x68 , MUON_CSC_ENDCAP_A_SIDE = 0x69 , MUON_CSC_ENDCAP_C_SIDE = 0x6A , TDAQ_BEAM_CRATE = 0x70 ,
  TDAQ_CALO_PREPROC = 0x71 , TDAQ_CALO_CLUSTER_PROC_DAQ = 0x72 , TDAQ_CALO_CLUSTER_PROC_ROI = 0x73 , TDAQ_CALO_JET_PROC_DAQ = 0x74 ,
  TDAQ_CALO_JET_PROC_ROI = 0x75 , TDAQ_MUON_CTP_INTERFACE = 0x76 , TDAQ_CTP = 0x77 , TDAQ_L2SV = 0x78 ,
  TDAQ_SFI = 0x79 , TDAQ_SFO = 0x7a , TDAQ_LVL2 = 0x7b , TDAQ_EVENT_FILTER = 0x7c ,
  OTHER = 0x81 , BESIII_MDC = 0xa1 , BESIII_TOF = 0xa2 , BESIII_EMC = 0xa3 ,
  BESIII_MUC = 0xa4 , BESIII_TRG = 0xa5 , FULL_SD_EVENT = 0x00 , PIXEL_BARREL = 0x11 ,
  PIXEL_FORWARD_A_SIDE = 0x12 , PIXEL_FORWARD_C_SIDE = 0x13 , PIXEL_B_LAYER = 0x14 , SCT_BARREL_A_SIDE = 0x21 ,
  SCT_BARREL_C_SIDE = 0x22 , SCT_ENDCAP_A_SIDE = 0x23 , SCT_ENDCAP_C_SIDE = 0x24 , TRT_ANCILLARY_CRATE = 0x30 ,
  TRT_BARREL_A_SIDE = 0x31 , TRT_BARREL_C_SIDE = 0x32 , TRT_ENDCAP_A_SIDE = 0x33 , TRT_ENDCAP_C_SIDE = 0x34 ,
  LAR_EM_BARREL_A_SIDE = 0x41 , LAR_EM_BARREL_C_SIDE = 0x42 , LAR_EM_ENDCAP_A_SIDE = 0x43 , LAR_EM_ENDCAP_C_SIDE = 0x44 ,
  LAR_HAD_ENDCAP_A_SIDE = 0x45 , LAR_HAD_ENDCAP_C_SIDE = 0x46 , LAR_FCAL_A_SIDE = 0x47 , LAR_FCAL_C_SIDE = 0x48 ,
  TILECAL_LASER_CRATE = 0x50 , TILECAL_BARREL_A_SIDE = 0x51 , TILECAL_BARREL_C_SIDE = 0x52 , TILECAL_EXT_A_SIDE = 0x53 ,
  TILECAL_EXT_C_SIDE = 0x54 , MUON_ANCILLARY_CRATE = 0x60 , MUON_MDT_BARREL_A_SIDE = 0x61 , MUON_MDT_BARREL_C_SIDE = 0x62 ,
  MUON_MDT_ENDCAP_A_SIDE = 0x63 , MUON_MDT_ENDCAP_C_SIDE = 0x64 , MUON_RPC_BARREL_A_SIDE = 0x65 , MUON_RPC_BARREL_C_SIDE = 0x66 ,
  MUON_TGC_ENDCAP_A_SIDE = 0x67 , MUON_TGC_ENDCAP_C_SIDE = 0x68 , MUON_CSC_ENDCAP_A_SIDE = 0x69 , MUON_CSC_ENDCAP_C_SIDE = 0x6A ,
  TDAQ_BEAM_CRATE = 0x70 , TDAQ_CALO_PREPROC = 0x71 , TDAQ_CALO_CLUSTER_PROC_DAQ = 0x72 , TDAQ_CALO_CLUSTER_PROC_ROI = 0x73 ,
  TDAQ_CALO_JET_PROC_DAQ = 0x74 , TDAQ_CALO_JET_PROC_ROI = 0x75 , TDAQ_MUON_CTP_INTERFACE = 0x76 , TDAQ_CTP = 0x77 ,
  TDAQ_L2SV = 0x78 , TDAQ_SFI = 0x79 , TDAQ_SFO = 0x7a , TDAQ_LVL2 = 0x7b ,
  TDAQ_EVENT_FILTER = 0x7c , OTHER = 0x81 , BESIII_MDC = 0xa1 , BESIII_TOF = 0xa2 ,
  BESIII_EMC = 0xa3 , BESIII_MUC = 0xa4 , BESIII_TRG = 0xa5
}
enum  GenericStatus {
  NO_ERROR = 0x0 , BCID_CHECK_FAIL = 0x1 , LVL1ID_CHECK_FAIL = 0x2 , TIMEOUT = 0x4 ,
  DATA_CORRUPTION = 0x8 , INTERNAL_OVERFLOW = 0x16 , NO_ERROR = 0x0 , BCID_CHECK_FAIL = 0x1 ,
  LVL1ID_CHECK_FAIL = 0x2 , TIMEOUT = 0x4 , DATA_CORRUPTION = 0x8 , INTERNAL_OVERFLOW = 0x16 ,
  NO_ERROR = 0x0 , BCID_CHECK_FAIL = 0x1 , LVL1ID_CHECK_FAIL = 0x2 , TIMEOUT = 0x4 ,
  DATA_CORRUPTION = 0x8 , INTERNAL_OVERFLOW = 0x16
}
enum  HeaderMarker {
  ROD = 0xee1234ee , ROB = 0xdd1234dd , ROS = 0xcc1234cc , SUB_DETECTOR = 0xbb1234bb ,
  FULL_EVENT = 0xaa1234aa , ROD = 0xee1234ee , ROB = 0xdd1234dd , ROS = 0xcc1234cc ,
  SUB_DETECTOR = 0xbb1234bb , FULL_EVENT = 0xaa1234aa , ROD = 0xee1234ee , ROB = 0xdd1234dd ,
  ROS = 0xcc1234cc , SUB_DETECTOR = 0xbb1234bb , FULL_EVENT = 0xaa1234aa
}
enum  RunType {
  PHYSICS = 0x00 , CALIBRATION = 0x01 , COSMICS = 0x02 , TEST = 0x0f ,
  PHYSICS = 0x00 , CALIBRATION = 0x01 , COSMICS = 0x02 , TEST = 0x0f ,
  PHYSICS = 0x00 , CALIBRATION = 0x01 , COSMICS = 0x02 , TEST = 0x0f
}
enum  SubDetector {
  FULL_SD_EVENT = 0x00 , PIXEL_BARREL = 0x11 , PIXEL_FORWARD_A_SIDE = 0x12 , PIXEL_FORWARD_C_SIDE = 0x13 ,
  PIXEL_B_LAYER = 0x14 , SCT_BARREL_A_SIDE = 0x21 , SCT_BARREL_C_SIDE = 0x22 , SCT_ENDCAP_A_SIDE = 0x23 ,
  SCT_ENDCAP_C_SIDE = 0x24 , TRT_ANCILLARY_CRATE = 0x30 , TRT_BARREL_A_SIDE = 0x31 , TRT_BARREL_C_SIDE = 0x32 ,
  TRT_ENDCAP_A_SIDE = 0x33 , TRT_ENDCAP_C_SIDE = 0x34 , LAR_EM_BARREL_A_SIDE = 0x41 , LAR_EM_BARREL_C_SIDE = 0x42 ,
  LAR_EM_ENDCAP_A_SIDE = 0x43 , LAR_EM_ENDCAP_C_SIDE = 0x44 , LAR_HAD_ENDCAP_A_SIDE = 0x45 , LAR_HAD_ENDCAP_C_SIDE = 0x46 ,
  LAR_FCAL_A_SIDE = 0x47 , LAR_FCAL_C_SIDE = 0x48 , TILECAL_LASER_CRATE = 0x50 , TILECAL_BARREL_A_SIDE = 0x51 ,
  TILECAL_BARREL_C_SIDE = 0x52 , TILECAL_EXT_A_SIDE = 0x53 , TILECAL_EXT_C_SIDE = 0x54 , MUON_ANCILLARY_CRATE = 0x60 ,
  MUON_MDT_BARREL_A_SIDE = 0x61 , MUON_MDT_BARREL_C_SIDE = 0x62 , MUON_MDT_ENDCAP_A_SIDE = 0x63 , MUON_MDT_ENDCAP_C_SIDE = 0x64 ,
  MUON_RPC_BARREL_A_SIDE = 0x65 , MUON_RPC_BARREL_C_SIDE = 0x66 , MUON_TGC_ENDCAP_A_SIDE = 0x67 , MUON_TGC_ENDCAP_C_SIDE = 0x68 ,
  MUON_CSC_ENDCAP_A_SIDE = 0x69 , MUON_CSC_ENDCAP_C_SIDE = 0x6A , TDAQ_BEAM_CRATE = 0x70 , TDAQ_CALO_PREPROC = 0x71 ,
  TDAQ_CALO_CLUSTER_PROC_DAQ = 0x72 , TDAQ_CALO_CLUSTER_PROC_ROI = 0x73 , TDAQ_CALO_JET_PROC_DAQ = 0x74 , TDAQ_CALO_JET_PROC_ROI = 0x75 ,
  TDAQ_MUON_CTP_INTERFACE = 0x76 , TDAQ_CTP = 0x77 , TDAQ_L2SV = 0x78 , TDAQ_SFI = 0x79 ,
  TDAQ_SFO = 0x7a , TDAQ_LVL2 = 0x7b , TDAQ_EVENT_FILTER = 0x7c , OTHER = 0x81 ,
  BESIII_MDC = 0xa1 , BESIII_TOF = 0xa2 , BESIII_EMC = 0xa3 , BESIII_MUC = 0xa4 ,
  BESIII_TRG = 0xa5 , FULL_SD_EVENT = 0x00 , PIXEL_BARREL = 0x11 , PIXEL_FORWARD_A_SIDE = 0x12 ,
  PIXEL_FORWARD_C_SIDE = 0x13 , PIXEL_B_LAYER = 0x14 , SCT_BARREL_A_SIDE = 0x21 , SCT_BARREL_C_SIDE = 0x22 ,
  SCT_ENDCAP_A_SIDE = 0x23 , SCT_ENDCAP_C_SIDE = 0x24 , TRT_ANCILLARY_CRATE = 0x30 , TRT_BARREL_A_SIDE = 0x31 ,
  TRT_BARREL_C_SIDE = 0x32 , TRT_ENDCAP_A_SIDE = 0x33 , TRT_ENDCAP_C_SIDE = 0x34 , LAR_EM_BARREL_A_SIDE = 0x41 ,
  LAR_EM_BARREL_C_SIDE = 0x42 , LAR_EM_ENDCAP_A_SIDE = 0x43 , LAR_EM_ENDCAP_C_SIDE = 0x44 , LAR_HAD_ENDCAP_A_SIDE = 0x45 ,
  LAR_HAD_ENDCAP_C_SIDE = 0x46 , LAR_FCAL_A_SIDE = 0x47 , LAR_FCAL_C_SIDE = 0x48 , TILECAL_LASER_CRATE = 0x50 ,
  TILECAL_BARREL_A_SIDE = 0x51 , TILECAL_BARREL_C_SIDE = 0x52 , TILECAL_EXT_A_SIDE = 0x53 , TILECAL_EXT_C_SIDE = 0x54 ,
  MUON_ANCILLARY_CRATE = 0x60 , MUON_MDT_BARREL_A_SIDE = 0x61 , MUON_MDT_BARREL_C_SIDE = 0x62 , MUON_MDT_ENDCAP_A_SIDE = 0x63 ,
  MUON_MDT_ENDCAP_C_SIDE = 0x64 , MUON_RPC_BARREL_A_SIDE = 0x65 , MUON_RPC_BARREL_C_SIDE = 0x66 , MUON_TGC_ENDCAP_A_SIDE = 0x67 ,
  MUON_TGC_ENDCAP_C_SIDE = 0x68 , MUON_CSC_ENDCAP_A_SIDE = 0x69 , MUON_CSC_ENDCAP_C_SIDE = 0x6A , TDAQ_BEAM_CRATE = 0x70 ,
  TDAQ_CALO_PREPROC = 0x71 , TDAQ_CALO_CLUSTER_PROC_DAQ = 0x72 , TDAQ_CALO_CLUSTER_PROC_ROI = 0x73 , TDAQ_CALO_JET_PROC_DAQ = 0x74 ,
  TDAQ_CALO_JET_PROC_ROI = 0x75 , TDAQ_MUON_CTP_INTERFACE = 0x76 , TDAQ_CTP = 0x77 , TDAQ_L2SV = 0x78 ,
  TDAQ_SFI = 0x79 , TDAQ_SFO = 0x7a , TDAQ_LVL2 = 0x7b , TDAQ_EVENT_FILTER = 0x7c ,
  OTHER = 0x81 , BESIII_MDC = 0xa1 , BESIII_TOF = 0xa2 , BESIII_EMC = 0xa3 ,
  BESIII_MUC = 0xa4 , BESIII_TRG = 0xa5 , FULL_SD_EVENT = 0x00 , PIXEL_BARREL = 0x11 ,
  PIXEL_FORWARD_A_SIDE = 0x12 , PIXEL_FORWARD_C_SIDE = 0x13 , PIXEL_B_LAYER = 0x14 , SCT_BARREL_A_SIDE = 0x21 ,
  SCT_BARREL_C_SIDE = 0x22 , SCT_ENDCAP_A_SIDE = 0x23 , SCT_ENDCAP_C_SIDE = 0x24 , TRT_ANCILLARY_CRATE = 0x30 ,
  TRT_BARREL_A_SIDE = 0x31 , TRT_BARREL_C_SIDE = 0x32 , TRT_ENDCAP_A_SIDE = 0x33 , TRT_ENDCAP_C_SIDE = 0x34 ,
  LAR_EM_BARREL_A_SIDE = 0x41 , LAR_EM_BARREL_C_SIDE = 0x42 , LAR_EM_ENDCAP_A_SIDE = 0x43 , LAR_EM_ENDCAP_C_SIDE = 0x44 ,
  LAR_HAD_ENDCAP_A_SIDE = 0x45 , LAR_HAD_ENDCAP_C_SIDE = 0x46 , LAR_FCAL_A_SIDE = 0x47 , LAR_FCAL_C_SIDE = 0x48 ,
  TILECAL_LASER_CRATE = 0x50 , TILECAL_BARREL_A_SIDE = 0x51 , TILECAL_BARREL_C_SIDE = 0x52 , TILECAL_EXT_A_SIDE = 0x53 ,
  TILECAL_EXT_C_SIDE = 0x54 , MUON_ANCILLARY_CRATE = 0x60 , MUON_MDT_BARREL_A_SIDE = 0x61 , MUON_MDT_BARREL_C_SIDE = 0x62 ,
  MUON_MDT_ENDCAP_A_SIDE = 0x63 , MUON_MDT_ENDCAP_C_SIDE = 0x64 , MUON_RPC_BARREL_A_SIDE = 0x65 , MUON_RPC_BARREL_C_SIDE = 0x66 ,
  MUON_TGC_ENDCAP_A_SIDE = 0x67 , MUON_TGC_ENDCAP_C_SIDE = 0x68 , MUON_CSC_ENDCAP_A_SIDE = 0x69 , MUON_CSC_ENDCAP_C_SIDE = 0x6A ,
  TDAQ_BEAM_CRATE = 0x70 , TDAQ_CALO_PREPROC = 0x71 , TDAQ_CALO_CLUSTER_PROC_DAQ = 0x72 , TDAQ_CALO_CLUSTER_PROC_ROI = 0x73 ,
  TDAQ_CALO_JET_PROC_DAQ = 0x74 , TDAQ_CALO_JET_PROC_ROI = 0x75 , TDAQ_MUON_CTP_INTERFACE = 0x76 , TDAQ_CTP = 0x77 ,
  TDAQ_L2SV = 0x78 , TDAQ_SFI = 0x79 , TDAQ_SFO = 0x7a , TDAQ_LVL2 = 0x7b ,
  TDAQ_EVENT_FILTER = 0x7c , OTHER = 0x81 , BESIII_MDC = 0xa1 , BESIII_TOF = 0xa2 ,
  BESIII_EMC = 0xa3 , BESIII_MUC = 0xa4 , BESIII_TRG = 0xa5
}
enum  GenericStatus {
  NO_ERROR = 0x0 , BCID_CHECK_FAIL = 0x1 , LVL1ID_CHECK_FAIL = 0x2 , TIMEOUT = 0x4 ,
  DATA_CORRUPTION = 0x8 , INTERNAL_OVERFLOW = 0x16 , NO_ERROR = 0x0 , BCID_CHECK_FAIL = 0x1 ,
  LVL1ID_CHECK_FAIL = 0x2 , TIMEOUT = 0x4 , DATA_CORRUPTION = 0x8 , INTERNAL_OVERFLOW = 0x16 ,
  NO_ERROR = 0x0 , BCID_CHECK_FAIL = 0x1 , LVL1ID_CHECK_FAIL = 0x2 , TIMEOUT = 0x4 ,
  DATA_CORRUPTION = 0x8 , INTERNAL_OVERFLOW = 0x16
}

Functions

HeaderMarker child_marker (HeaderMarker e)
std::string marker2string (const eformat::HeaderMarker &e)
std::string marker2string (uint32_t e)
uint32_t * next_fragment (std::fstream &fs, uint32_t *addr=0, size_t size=0)
size_t find_rods (const uint32_t *block_start, size_t block_size, const uint32_t **rod=0, uint32_t *rod_size=0, size_t max_count=0)
template<class TPointer>
size_t find_fragments (eformat::HeaderMarker marker, TPointer block_start, size_t block_size, TPointer *frag=0, size_t max_count=0)
size_t get_robs (const uint32_t *fragment, const uint32_t **rob, size_t max_count)

Variables

const uint32_t STATUS_FRONT = 0
 status goes in front of data block
const uint32_t STATUS_BACK = 1
 status goes after data block
const uint32_t DEFAULT_STATUS = NO_ERROR
const uint32_t DEFAULT_VERSION = 0x03000000
const uint16_t MAJOR_DEFAULT_VERSION = 0x0300
const uint16_t MAJOR_OLD_VERSION = 0x0204

Typedef Documentation

◆ GenericStatus

An alias

Definition at line 36 of file Event/eformat/include/eformat/Status.h.

◆ HeaderMarker

An alias

Definition at line 37 of file Event/eformat/include/eformat/HeaderMarker.h.

◆ RunType

typedef enum RunType eformat::RunType

An alias

Definition at line 28 of file Event/eformat/include/eformat/RunNumber.h.

◆ SubDetector

An alias

Definition at line 88 of file Event/eformat/include/eformat/SourceIdentifier.h.

Enumeration Type Documentation

◆ GenericStatus [1/3]

Defines possible generic errors for the status words

Enumerator
NO_ERROR 
BCID_CHECK_FAIL 
LVL1ID_CHECK_FAIL 
TIMEOUT 
DATA_CORRUPTION 
INTERNAL_OVERFLOW 
NO_ERROR 
BCID_CHECK_FAIL 
LVL1ID_CHECK_FAIL 
TIMEOUT 
DATA_CORRUPTION 
INTERNAL_OVERFLOW 
NO_ERROR 
BCID_CHECK_FAIL 
LVL1ID_CHECK_FAIL 
TIMEOUT 
DATA_CORRUPTION 
INTERNAL_OVERFLOW 

Definition at line 24 of file Event/eformat/include/eformat/Status.h.

◆ GenericStatus [2/3]

Defines possible generic errors for the status words

Enumerator
NO_ERROR 
BCID_CHECK_FAIL 
LVL1ID_CHECK_FAIL 
TIMEOUT 
DATA_CORRUPTION 
INTERNAL_OVERFLOW 
NO_ERROR 
BCID_CHECK_FAIL 
LVL1ID_CHECK_FAIL 
TIMEOUT 
DATA_CORRUPTION 
INTERNAL_OVERFLOW 
NO_ERROR 
BCID_CHECK_FAIL 
LVL1ID_CHECK_FAIL 
TIMEOUT 
DATA_CORRUPTION 
INTERNAL_OVERFLOW 

Definition at line 24 of file InstallArea/x86_64-el9-gcc13-dbg/include/eformat/Status.h.

24 {
25 NO_ERROR = 0x0,
26 BCID_CHECK_FAIL = 0x1,
28 TIMEOUT = 0x4,
29 DATA_CORRUPTION = 0x8,
31 };

◆ GenericStatus [3/3]

Defines possible generic errors for the status words

Enumerator
NO_ERROR 
BCID_CHECK_FAIL 
LVL1ID_CHECK_FAIL 
TIMEOUT 
DATA_CORRUPTION 
INTERNAL_OVERFLOW 
NO_ERROR 
BCID_CHECK_FAIL 
LVL1ID_CHECK_FAIL 
TIMEOUT 
DATA_CORRUPTION 
INTERNAL_OVERFLOW 
NO_ERROR 
BCID_CHECK_FAIL 
LVL1ID_CHECK_FAIL 
TIMEOUT 
DATA_CORRUPTION 
INTERNAL_OVERFLOW 

Definition at line 24 of file InstallArea/x86_64-el9-gcc13-opt/include/eformat/Status.h.

24 {
25 NO_ERROR = 0x0,
26 BCID_CHECK_FAIL = 0x1,
28 TIMEOUT = 0x4,
29 DATA_CORRUPTION = 0x8,
31 };

◆ HeaderMarker [1/3]

The types of header markers available. They are all 32 bit numbers, with 1234 in the middle for the identification of byte ordering (endianness).

Enumerator
ROD 

The ROD marker.

ROB 

The ROB marker.

ROS 

The ROS marker.

SUB_DETECTOR 

The SubDet. marker.

FULL_EVENT 
ROD 

The ROD marker.

ROB 

The ROB marker.

ROS 

The ROS marker.

SUB_DETECTOR 

The SubDet. marker.

FULL_EVENT 
ROD 

The ROD marker.

ROB 

The ROB marker.

ROS 

The ROS marker.

SUB_DETECTOR 

The SubDet. marker.

FULL_EVENT 

Definition at line 26 of file Event/eformat/include/eformat/HeaderMarker.h.

26 {
27 ROD = 0xee1234ee, ///< The ROD marker
28 ROB = 0xdd1234dd, ///< The ROB marker
29 ROS = 0xcc1234cc, ///< The ROS marker
30 SUB_DETECTOR = 0xbb1234bb, ///< The SubDet. marker
31 FULL_EVENT = 0xaa1234aa
32 }; ///< The event marker

◆ HeaderMarker [2/3]

The types of header markers available. They are all 32 bit numbers, with 1234 in the middle for the identification of byte ordering (endianness).

Enumerator
ROD 

The ROD marker.

ROB 

The ROB marker.

ROS 

The ROS marker.

SUB_DETECTOR 

The SubDet. marker.

FULL_EVENT 
ROD 

The ROD marker.

ROB 

The ROB marker.

ROS 

The ROS marker.

SUB_DETECTOR 

The SubDet. marker.

FULL_EVENT 
ROD 

The ROD marker.

ROB 

The ROB marker.

ROS 

The ROS marker.

SUB_DETECTOR 

The SubDet. marker.

FULL_EVENT 

Definition at line 26 of file InstallArea/x86_64-el9-gcc13-dbg/include/eformat/HeaderMarker.h.

26 {
27 ROD = 0xee1234ee, ///< The ROD marker
28 ROB = 0xdd1234dd, ///< The ROB marker
29 ROS = 0xcc1234cc, ///< The ROS marker
30 SUB_DETECTOR = 0xbb1234bb, ///< The SubDet. marker
31 FULL_EVENT = 0xaa1234aa
32 }; ///< The event marker

◆ HeaderMarker [3/3]

The types of header markers available. They are all 32 bit numbers, with 1234 in the middle for the identification of byte ordering (endianness).

Enumerator
ROD 

The ROD marker.

ROB 

The ROB marker.

ROS 

The ROS marker.

SUB_DETECTOR 

The SubDet. marker.

FULL_EVENT 
ROD 

The ROD marker.

ROB 

The ROB marker.

ROS 

The ROS marker.

SUB_DETECTOR 

The SubDet. marker.

FULL_EVENT 
ROD 

The ROD marker.

ROB 

The ROB marker.

ROS 

The ROS marker.

SUB_DETECTOR 

The SubDet. marker.

FULL_EVENT 

Definition at line 26 of file InstallArea/x86_64-el9-gcc13-opt/include/eformat/HeaderMarker.h.

26 {
27 ROD = 0xee1234ee, ///< The ROD marker
28 ROB = 0xdd1234dd, ///< The ROB marker
29 ROS = 0xcc1234cc, ///< The ROS marker
30 SUB_DETECTOR = 0xbb1234bb, ///< The SubDet. marker
31 FULL_EVENT = 0xaa1234aa
32 }; ///< The event marker

◆ RunType [1/3]

Physics Types

Enumerator
PHYSICS 
CALIBRATION 
COSMICS 
TEST 
PHYSICS 
CALIBRATION 
COSMICS 
TEST 
PHYSICS 
CALIBRATION 
COSMICS 
TEST 

Definition at line 23 of file Event/eformat/include/eformat/RunNumber.h.

◆ RunType [2/3]

Physics Types

Enumerator
PHYSICS 
CALIBRATION 
COSMICS 
TEST 
PHYSICS 
CALIBRATION 
COSMICS 
TEST 
PHYSICS 
CALIBRATION 
COSMICS 
TEST 

Definition at line 23 of file InstallArea/x86_64-el9-gcc13-dbg/include/eformat/RunNumber.h.

23{ PHYSICS = 0x00, CALIBRATION = 0x01, COSMICS = 0x02, TEST = 0x0f };

◆ RunType [3/3]

Physics Types

Enumerator
PHYSICS 
CALIBRATION 
COSMICS 
TEST 
PHYSICS 
CALIBRATION 
COSMICS 
TEST 
PHYSICS 
CALIBRATION 
COSMICS 
TEST 

Definition at line 23 of file InstallArea/x86_64-el9-gcc13-opt/include/eformat/RunNumber.h.

23{ PHYSICS = 0x00, CALIBRATION = 0x01, COSMICS = 0x02, TEST = 0x0f };

◆ SubDetector [1/3]

Sub-detector ID

Enumerator
FULL_SD_EVENT 
PIXEL_BARREL 
PIXEL_FORWARD_A_SIDE 
PIXEL_FORWARD_C_SIDE 
PIXEL_B_LAYER 
SCT_BARREL_A_SIDE 
SCT_BARREL_C_SIDE 
SCT_ENDCAP_A_SIDE 
SCT_ENDCAP_C_SIDE 
TRT_ANCILLARY_CRATE 
TRT_BARREL_A_SIDE 
TRT_BARREL_C_SIDE 
TRT_ENDCAP_A_SIDE 
TRT_ENDCAP_C_SIDE 
LAR_EM_BARREL_A_SIDE 
LAR_EM_BARREL_C_SIDE 
LAR_EM_ENDCAP_A_SIDE 
LAR_EM_ENDCAP_C_SIDE 
LAR_HAD_ENDCAP_A_SIDE 
LAR_HAD_ENDCAP_C_SIDE 
LAR_FCAL_A_SIDE 
LAR_FCAL_C_SIDE 
TILECAL_LASER_CRATE 
TILECAL_BARREL_A_SIDE 
TILECAL_BARREL_C_SIDE 
TILECAL_EXT_A_SIDE 
TILECAL_EXT_C_SIDE 
MUON_ANCILLARY_CRATE 
MUON_MDT_BARREL_A_SIDE 
MUON_MDT_BARREL_C_SIDE 
MUON_MDT_ENDCAP_A_SIDE 
MUON_MDT_ENDCAP_C_SIDE 
MUON_RPC_BARREL_A_SIDE 
MUON_RPC_BARREL_C_SIDE 
MUON_TGC_ENDCAP_A_SIDE 
MUON_TGC_ENDCAP_C_SIDE 
MUON_CSC_ENDCAP_A_SIDE 
MUON_CSC_ENDCAP_C_SIDE 
TDAQ_BEAM_CRATE 
TDAQ_CALO_PREPROC 
TDAQ_CALO_CLUSTER_PROC_DAQ 
TDAQ_CALO_CLUSTER_PROC_ROI 
TDAQ_CALO_JET_PROC_DAQ 
TDAQ_CALO_JET_PROC_ROI 
TDAQ_MUON_CTP_INTERFACE 
TDAQ_CTP 
TDAQ_L2SV 
TDAQ_SFI 
TDAQ_SFO 
TDAQ_LVL2 
TDAQ_EVENT_FILTER 
OTHER 
BESIII_MDC 
BESIII_TOF 
BESIII_EMC 
BESIII_MUC 
BESIII_TRG 
FULL_SD_EVENT 
PIXEL_BARREL 
PIXEL_FORWARD_A_SIDE 
PIXEL_FORWARD_C_SIDE 
PIXEL_B_LAYER 
SCT_BARREL_A_SIDE 
SCT_BARREL_C_SIDE 
SCT_ENDCAP_A_SIDE 
SCT_ENDCAP_C_SIDE 
TRT_ANCILLARY_CRATE 
TRT_BARREL_A_SIDE 
TRT_BARREL_C_SIDE 
TRT_ENDCAP_A_SIDE 
TRT_ENDCAP_C_SIDE 
LAR_EM_BARREL_A_SIDE 
LAR_EM_BARREL_C_SIDE 
LAR_EM_ENDCAP_A_SIDE 
LAR_EM_ENDCAP_C_SIDE 
LAR_HAD_ENDCAP_A_SIDE 
LAR_HAD_ENDCAP_C_SIDE 
LAR_FCAL_A_SIDE 
LAR_FCAL_C_SIDE 
TILECAL_LASER_CRATE 
TILECAL_BARREL_A_SIDE 
TILECAL_BARREL_C_SIDE 
TILECAL_EXT_A_SIDE 
TILECAL_EXT_C_SIDE 
MUON_ANCILLARY_CRATE 
MUON_MDT_BARREL_A_SIDE 
MUON_MDT_BARREL_C_SIDE 
MUON_MDT_ENDCAP_A_SIDE 
MUON_MDT_ENDCAP_C_SIDE 
MUON_RPC_BARREL_A_SIDE 
MUON_RPC_BARREL_C_SIDE 
MUON_TGC_ENDCAP_A_SIDE 
MUON_TGC_ENDCAP_C_SIDE 
MUON_CSC_ENDCAP_A_SIDE 
MUON_CSC_ENDCAP_C_SIDE 
TDAQ_BEAM_CRATE 
TDAQ_CALO_PREPROC 
TDAQ_CALO_CLUSTER_PROC_DAQ 
TDAQ_CALO_CLUSTER_PROC_ROI 
TDAQ_CALO_JET_PROC_DAQ 
TDAQ_CALO_JET_PROC_ROI 
TDAQ_MUON_CTP_INTERFACE 
TDAQ_CTP 
TDAQ_L2SV 
TDAQ_SFI 
TDAQ_SFO 
TDAQ_LVL2 
TDAQ_EVENT_FILTER 
OTHER 
BESIII_MDC 
BESIII_TOF 
BESIII_EMC 
BESIII_MUC 
BESIII_TRG 
FULL_SD_EVENT 
PIXEL_BARREL 
PIXEL_FORWARD_A_SIDE 
PIXEL_FORWARD_C_SIDE 
PIXEL_B_LAYER 
SCT_BARREL_A_SIDE 
SCT_BARREL_C_SIDE 
SCT_ENDCAP_A_SIDE 
SCT_ENDCAP_C_SIDE 
TRT_ANCILLARY_CRATE 
TRT_BARREL_A_SIDE 
TRT_BARREL_C_SIDE 
TRT_ENDCAP_A_SIDE 
TRT_ENDCAP_C_SIDE 
LAR_EM_BARREL_A_SIDE 
LAR_EM_BARREL_C_SIDE 
LAR_EM_ENDCAP_A_SIDE 
LAR_EM_ENDCAP_C_SIDE 
LAR_HAD_ENDCAP_A_SIDE 
LAR_HAD_ENDCAP_C_SIDE 
LAR_FCAL_A_SIDE 
LAR_FCAL_C_SIDE 
TILECAL_LASER_CRATE 
TILECAL_BARREL_A_SIDE 
TILECAL_BARREL_C_SIDE 
TILECAL_EXT_A_SIDE 
TILECAL_EXT_C_SIDE 
MUON_ANCILLARY_CRATE 
MUON_MDT_BARREL_A_SIDE 
MUON_MDT_BARREL_C_SIDE 
MUON_MDT_ENDCAP_A_SIDE 
MUON_MDT_ENDCAP_C_SIDE 
MUON_RPC_BARREL_A_SIDE 
MUON_RPC_BARREL_C_SIDE 
MUON_TGC_ENDCAP_A_SIDE 
MUON_TGC_ENDCAP_C_SIDE 
MUON_CSC_ENDCAP_A_SIDE 
MUON_CSC_ENDCAP_C_SIDE 
TDAQ_BEAM_CRATE 
TDAQ_CALO_PREPROC 
TDAQ_CALO_CLUSTER_PROC_DAQ 
TDAQ_CALO_CLUSTER_PROC_ROI 
TDAQ_CALO_JET_PROC_DAQ 
TDAQ_CALO_JET_PROC_ROI 
TDAQ_MUON_CTP_INTERFACE 
TDAQ_CTP 
TDAQ_L2SV 
TDAQ_SFI 
TDAQ_SFO 
TDAQ_LVL2 
TDAQ_EVENT_FILTER 
OTHER 
BESIII_MDC 
BESIII_TOF 
BESIII_EMC 
BESIII_MUC 
BESIII_TRG 

Definition at line 25 of file Event/eformat/include/eformat/SourceIdentifier.h.

25 {
26 FULL_SD_EVENT = 0x00,
27 PIXEL_BARREL = 0x11,
30 PIXEL_B_LAYER = 0x14,
31 SCT_BARREL_A_SIDE = 0x21,
32 SCT_BARREL_C_SIDE = 0x22,
33 SCT_ENDCAP_A_SIDE = 0x23,
34 SCT_ENDCAP_C_SIDE = 0x24,
36 TRT_BARREL_A_SIDE = 0x31,
37 TRT_BARREL_C_SIDE = 0x32,
38 TRT_ENDCAP_A_SIDE = 0x33,
39 TRT_ENDCAP_C_SIDE = 0x34,
46 LAR_FCAL_A_SIDE = 0x47,
47 LAR_FCAL_C_SIDE = 0x48,
51 TILECAL_EXT_A_SIDE = 0x53,
52 TILECAL_EXT_C_SIDE = 0x54,
64 TDAQ_BEAM_CRATE = 0x70,
65 TDAQ_CALO_PREPROC = 0x71,
71 TDAQ_CTP = 0x77,
72 TDAQ_L2SV = 0x78,
73 TDAQ_SFI = 0x79,
74 TDAQ_SFO = 0x7a,
75 TDAQ_LVL2 = 0x7b,
76 TDAQ_EVENT_FILTER = 0x7c,
77 OTHER = 0x81,
78 BESIII_MDC = 0xa1,
79 BESIII_TOF = 0xa2,
80 BESIII_EMC = 0xa3,
81 BESIII_MUC = 0xa4,
82 BESIII_TRG = 0xa5
83 };

◆ SubDetector [2/3]

Sub-detector ID

Enumerator
FULL_SD_EVENT 
PIXEL_BARREL 
PIXEL_FORWARD_A_SIDE 
PIXEL_FORWARD_C_SIDE 
PIXEL_B_LAYER 
SCT_BARREL_A_SIDE 
SCT_BARREL_C_SIDE 
SCT_ENDCAP_A_SIDE 
SCT_ENDCAP_C_SIDE 
TRT_ANCILLARY_CRATE 
TRT_BARREL_A_SIDE 
TRT_BARREL_C_SIDE 
TRT_ENDCAP_A_SIDE 
TRT_ENDCAP_C_SIDE 
LAR_EM_BARREL_A_SIDE 
LAR_EM_BARREL_C_SIDE 
LAR_EM_ENDCAP_A_SIDE 
LAR_EM_ENDCAP_C_SIDE 
LAR_HAD_ENDCAP_A_SIDE 
LAR_HAD_ENDCAP_C_SIDE 
LAR_FCAL_A_SIDE 
LAR_FCAL_C_SIDE 
TILECAL_LASER_CRATE 
TILECAL_BARREL_A_SIDE 
TILECAL_BARREL_C_SIDE 
TILECAL_EXT_A_SIDE 
TILECAL_EXT_C_SIDE 
MUON_ANCILLARY_CRATE 
MUON_MDT_BARREL_A_SIDE 
MUON_MDT_BARREL_C_SIDE 
MUON_MDT_ENDCAP_A_SIDE 
MUON_MDT_ENDCAP_C_SIDE 
MUON_RPC_BARREL_A_SIDE 
MUON_RPC_BARREL_C_SIDE 
MUON_TGC_ENDCAP_A_SIDE 
MUON_TGC_ENDCAP_C_SIDE 
MUON_CSC_ENDCAP_A_SIDE 
MUON_CSC_ENDCAP_C_SIDE 
TDAQ_BEAM_CRATE 
TDAQ_CALO_PREPROC 
TDAQ_CALO_CLUSTER_PROC_DAQ 
TDAQ_CALO_CLUSTER_PROC_ROI 
TDAQ_CALO_JET_PROC_DAQ 
TDAQ_CALO_JET_PROC_ROI 
TDAQ_MUON_CTP_INTERFACE 
TDAQ_CTP 
TDAQ_L2SV 
TDAQ_SFI 
TDAQ_SFO 
TDAQ_LVL2 
TDAQ_EVENT_FILTER 
OTHER 
BESIII_MDC 
BESIII_TOF 
BESIII_EMC 
BESIII_MUC 
BESIII_TRG 
FULL_SD_EVENT 
PIXEL_BARREL 
PIXEL_FORWARD_A_SIDE 
PIXEL_FORWARD_C_SIDE 
PIXEL_B_LAYER 
SCT_BARREL_A_SIDE 
SCT_BARREL_C_SIDE 
SCT_ENDCAP_A_SIDE 
SCT_ENDCAP_C_SIDE 
TRT_ANCILLARY_CRATE 
TRT_BARREL_A_SIDE 
TRT_BARREL_C_SIDE 
TRT_ENDCAP_A_SIDE 
TRT_ENDCAP_C_SIDE 
LAR_EM_BARREL_A_SIDE 
LAR_EM_BARREL_C_SIDE 
LAR_EM_ENDCAP_A_SIDE 
LAR_EM_ENDCAP_C_SIDE 
LAR_HAD_ENDCAP_A_SIDE 
LAR_HAD_ENDCAP_C_SIDE 
LAR_FCAL_A_SIDE 
LAR_FCAL_C_SIDE 
TILECAL_LASER_CRATE 
TILECAL_BARREL_A_SIDE 
TILECAL_BARREL_C_SIDE 
TILECAL_EXT_A_SIDE 
TILECAL_EXT_C_SIDE 
MUON_ANCILLARY_CRATE 
MUON_MDT_BARREL_A_SIDE 
MUON_MDT_BARREL_C_SIDE 
MUON_MDT_ENDCAP_A_SIDE 
MUON_MDT_ENDCAP_C_SIDE 
MUON_RPC_BARREL_A_SIDE 
MUON_RPC_BARREL_C_SIDE 
MUON_TGC_ENDCAP_A_SIDE 
MUON_TGC_ENDCAP_C_SIDE 
MUON_CSC_ENDCAP_A_SIDE 
MUON_CSC_ENDCAP_C_SIDE 
TDAQ_BEAM_CRATE 
TDAQ_CALO_PREPROC 
TDAQ_CALO_CLUSTER_PROC_DAQ 
TDAQ_CALO_CLUSTER_PROC_ROI 
TDAQ_CALO_JET_PROC_DAQ 
TDAQ_CALO_JET_PROC_ROI 
TDAQ_MUON_CTP_INTERFACE 
TDAQ_CTP 
TDAQ_L2SV 
TDAQ_SFI 
TDAQ_SFO 
TDAQ_LVL2 
TDAQ_EVENT_FILTER 
OTHER 
BESIII_MDC 
BESIII_TOF 
BESIII_EMC 
BESIII_MUC 
BESIII_TRG 
FULL_SD_EVENT 
PIXEL_BARREL 
PIXEL_FORWARD_A_SIDE 
PIXEL_FORWARD_C_SIDE 
PIXEL_B_LAYER 
SCT_BARREL_A_SIDE 
SCT_BARREL_C_SIDE 
SCT_ENDCAP_A_SIDE 
SCT_ENDCAP_C_SIDE 
TRT_ANCILLARY_CRATE 
TRT_BARREL_A_SIDE 
TRT_BARREL_C_SIDE 
TRT_ENDCAP_A_SIDE 
TRT_ENDCAP_C_SIDE 
LAR_EM_BARREL_A_SIDE 
LAR_EM_BARREL_C_SIDE 
LAR_EM_ENDCAP_A_SIDE 
LAR_EM_ENDCAP_C_SIDE 
LAR_HAD_ENDCAP_A_SIDE 
LAR_HAD_ENDCAP_C_SIDE 
LAR_FCAL_A_SIDE 
LAR_FCAL_C_SIDE 
TILECAL_LASER_CRATE 
TILECAL_BARREL_A_SIDE 
TILECAL_BARREL_C_SIDE 
TILECAL_EXT_A_SIDE 
TILECAL_EXT_C_SIDE 
MUON_ANCILLARY_CRATE 
MUON_MDT_BARREL_A_SIDE 
MUON_MDT_BARREL_C_SIDE 
MUON_MDT_ENDCAP_A_SIDE 
MUON_MDT_ENDCAP_C_SIDE 
MUON_RPC_BARREL_A_SIDE 
MUON_RPC_BARREL_C_SIDE 
MUON_TGC_ENDCAP_A_SIDE 
MUON_TGC_ENDCAP_C_SIDE 
MUON_CSC_ENDCAP_A_SIDE 
MUON_CSC_ENDCAP_C_SIDE 
TDAQ_BEAM_CRATE 
TDAQ_CALO_PREPROC 
TDAQ_CALO_CLUSTER_PROC_DAQ 
TDAQ_CALO_CLUSTER_PROC_ROI 
TDAQ_CALO_JET_PROC_DAQ 
TDAQ_CALO_JET_PROC_ROI 
TDAQ_MUON_CTP_INTERFACE 
TDAQ_CTP 
TDAQ_L2SV 
TDAQ_SFI 
TDAQ_SFO 
TDAQ_LVL2 
TDAQ_EVENT_FILTER 
OTHER 
BESIII_MDC 
BESIII_TOF 
BESIII_EMC 
BESIII_MUC 
BESIII_TRG 

Definition at line 25 of file InstallArea/x86_64-el9-gcc13-dbg/include/eformat/SourceIdentifier.h.

25 {
26 FULL_SD_EVENT = 0x00,
27 PIXEL_BARREL = 0x11,
30 PIXEL_B_LAYER = 0x14,
31 SCT_BARREL_A_SIDE = 0x21,
32 SCT_BARREL_C_SIDE = 0x22,
33 SCT_ENDCAP_A_SIDE = 0x23,
34 SCT_ENDCAP_C_SIDE = 0x24,
36 TRT_BARREL_A_SIDE = 0x31,
37 TRT_BARREL_C_SIDE = 0x32,
38 TRT_ENDCAP_A_SIDE = 0x33,
39 TRT_ENDCAP_C_SIDE = 0x34,
46 LAR_FCAL_A_SIDE = 0x47,
47 LAR_FCAL_C_SIDE = 0x48,
51 TILECAL_EXT_A_SIDE = 0x53,
52 TILECAL_EXT_C_SIDE = 0x54,
64 TDAQ_BEAM_CRATE = 0x70,
65 TDAQ_CALO_PREPROC = 0x71,
71 TDAQ_CTP = 0x77,
72 TDAQ_L2SV = 0x78,
73 TDAQ_SFI = 0x79,
74 TDAQ_SFO = 0x7a,
75 TDAQ_LVL2 = 0x7b,
76 TDAQ_EVENT_FILTER = 0x7c,
77 OTHER = 0x81,
78 BESIII_MDC = 0xa1,
79 BESIII_TOF = 0xa2,
80 BESIII_EMC = 0xa3,
81 BESIII_MUC = 0xa4,
82 BESIII_TRG = 0xa5
83 };

◆ SubDetector [3/3]

Sub-detector ID

Enumerator
FULL_SD_EVENT 
PIXEL_BARREL 
PIXEL_FORWARD_A_SIDE 
PIXEL_FORWARD_C_SIDE 
PIXEL_B_LAYER 
SCT_BARREL_A_SIDE 
SCT_BARREL_C_SIDE 
SCT_ENDCAP_A_SIDE 
SCT_ENDCAP_C_SIDE 
TRT_ANCILLARY_CRATE 
TRT_BARREL_A_SIDE 
TRT_BARREL_C_SIDE 
TRT_ENDCAP_A_SIDE 
TRT_ENDCAP_C_SIDE 
LAR_EM_BARREL_A_SIDE 
LAR_EM_BARREL_C_SIDE 
LAR_EM_ENDCAP_A_SIDE 
LAR_EM_ENDCAP_C_SIDE 
LAR_HAD_ENDCAP_A_SIDE 
LAR_HAD_ENDCAP_C_SIDE 
LAR_FCAL_A_SIDE 
LAR_FCAL_C_SIDE 
TILECAL_LASER_CRATE 
TILECAL_BARREL_A_SIDE 
TILECAL_BARREL_C_SIDE 
TILECAL_EXT_A_SIDE 
TILECAL_EXT_C_SIDE 
MUON_ANCILLARY_CRATE 
MUON_MDT_BARREL_A_SIDE 
MUON_MDT_BARREL_C_SIDE 
MUON_MDT_ENDCAP_A_SIDE 
MUON_MDT_ENDCAP_C_SIDE 
MUON_RPC_BARREL_A_SIDE 
MUON_RPC_BARREL_C_SIDE 
MUON_TGC_ENDCAP_A_SIDE 
MUON_TGC_ENDCAP_C_SIDE 
MUON_CSC_ENDCAP_A_SIDE 
MUON_CSC_ENDCAP_C_SIDE 
TDAQ_BEAM_CRATE 
TDAQ_CALO_PREPROC 
TDAQ_CALO_CLUSTER_PROC_DAQ 
TDAQ_CALO_CLUSTER_PROC_ROI 
TDAQ_CALO_JET_PROC_DAQ 
TDAQ_CALO_JET_PROC_ROI 
TDAQ_MUON_CTP_INTERFACE 
TDAQ_CTP 
TDAQ_L2SV 
TDAQ_SFI 
TDAQ_SFO 
TDAQ_LVL2 
TDAQ_EVENT_FILTER 
OTHER 
BESIII_MDC 
BESIII_TOF 
BESIII_EMC 
BESIII_MUC 
BESIII_TRG 
FULL_SD_EVENT 
PIXEL_BARREL 
PIXEL_FORWARD_A_SIDE 
PIXEL_FORWARD_C_SIDE 
PIXEL_B_LAYER 
SCT_BARREL_A_SIDE 
SCT_BARREL_C_SIDE 
SCT_ENDCAP_A_SIDE 
SCT_ENDCAP_C_SIDE 
TRT_ANCILLARY_CRATE 
TRT_BARREL_A_SIDE 
TRT_BARREL_C_SIDE 
TRT_ENDCAP_A_SIDE 
TRT_ENDCAP_C_SIDE 
LAR_EM_BARREL_A_SIDE 
LAR_EM_BARREL_C_SIDE 
LAR_EM_ENDCAP_A_SIDE 
LAR_EM_ENDCAP_C_SIDE 
LAR_HAD_ENDCAP_A_SIDE 
LAR_HAD_ENDCAP_C_SIDE 
LAR_FCAL_A_SIDE 
LAR_FCAL_C_SIDE 
TILECAL_LASER_CRATE 
TILECAL_BARREL_A_SIDE 
TILECAL_BARREL_C_SIDE 
TILECAL_EXT_A_SIDE 
TILECAL_EXT_C_SIDE 
MUON_ANCILLARY_CRATE 
MUON_MDT_BARREL_A_SIDE 
MUON_MDT_BARREL_C_SIDE 
MUON_MDT_ENDCAP_A_SIDE 
MUON_MDT_ENDCAP_C_SIDE 
MUON_RPC_BARREL_A_SIDE 
MUON_RPC_BARREL_C_SIDE 
MUON_TGC_ENDCAP_A_SIDE 
MUON_TGC_ENDCAP_C_SIDE 
MUON_CSC_ENDCAP_A_SIDE 
MUON_CSC_ENDCAP_C_SIDE 
TDAQ_BEAM_CRATE 
TDAQ_CALO_PREPROC 
TDAQ_CALO_CLUSTER_PROC_DAQ 
TDAQ_CALO_CLUSTER_PROC_ROI 
TDAQ_CALO_JET_PROC_DAQ 
TDAQ_CALO_JET_PROC_ROI 
TDAQ_MUON_CTP_INTERFACE 
TDAQ_CTP 
TDAQ_L2SV 
TDAQ_SFI 
TDAQ_SFO 
TDAQ_LVL2 
TDAQ_EVENT_FILTER 
OTHER 
BESIII_MDC 
BESIII_TOF 
BESIII_EMC 
BESIII_MUC 
BESIII_TRG 
FULL_SD_EVENT 
PIXEL_BARREL 
PIXEL_FORWARD_A_SIDE 
PIXEL_FORWARD_C_SIDE 
PIXEL_B_LAYER 
SCT_BARREL_A_SIDE 
SCT_BARREL_C_SIDE 
SCT_ENDCAP_A_SIDE 
SCT_ENDCAP_C_SIDE 
TRT_ANCILLARY_CRATE 
TRT_BARREL_A_SIDE 
TRT_BARREL_C_SIDE 
TRT_ENDCAP_A_SIDE 
TRT_ENDCAP_C_SIDE 
LAR_EM_BARREL_A_SIDE 
LAR_EM_BARREL_C_SIDE 
LAR_EM_ENDCAP_A_SIDE 
LAR_EM_ENDCAP_C_SIDE 
LAR_HAD_ENDCAP_A_SIDE 
LAR_HAD_ENDCAP_C_SIDE 
LAR_FCAL_A_SIDE 
LAR_FCAL_C_SIDE 
TILECAL_LASER_CRATE 
TILECAL_BARREL_A_SIDE 
TILECAL_BARREL_C_SIDE 
TILECAL_EXT_A_SIDE 
TILECAL_EXT_C_SIDE 
MUON_ANCILLARY_CRATE 
MUON_MDT_BARREL_A_SIDE 
MUON_MDT_BARREL_C_SIDE 
MUON_MDT_ENDCAP_A_SIDE 
MUON_MDT_ENDCAP_C_SIDE 
MUON_RPC_BARREL_A_SIDE 
MUON_RPC_BARREL_C_SIDE 
MUON_TGC_ENDCAP_A_SIDE 
MUON_TGC_ENDCAP_C_SIDE 
MUON_CSC_ENDCAP_A_SIDE 
MUON_CSC_ENDCAP_C_SIDE 
TDAQ_BEAM_CRATE 
TDAQ_CALO_PREPROC 
TDAQ_CALO_CLUSTER_PROC_DAQ 
TDAQ_CALO_CLUSTER_PROC_ROI 
TDAQ_CALO_JET_PROC_DAQ 
TDAQ_CALO_JET_PROC_ROI 
TDAQ_MUON_CTP_INTERFACE 
TDAQ_CTP 
TDAQ_L2SV 
TDAQ_SFI 
TDAQ_SFO 
TDAQ_LVL2 
TDAQ_EVENT_FILTER 
OTHER 
BESIII_MDC 
BESIII_TOF 
BESIII_EMC 
BESIII_MUC 
BESIII_TRG 

Definition at line 25 of file InstallArea/x86_64-el9-gcc13-opt/include/eformat/SourceIdentifier.h.

25 {
26 FULL_SD_EVENT = 0x00,
27 PIXEL_BARREL = 0x11,
30 PIXEL_B_LAYER = 0x14,
31 SCT_BARREL_A_SIDE = 0x21,
32 SCT_BARREL_C_SIDE = 0x22,
33 SCT_ENDCAP_A_SIDE = 0x23,
34 SCT_ENDCAP_C_SIDE = 0x24,
36 TRT_BARREL_A_SIDE = 0x31,
37 TRT_BARREL_C_SIDE = 0x32,
38 TRT_ENDCAP_A_SIDE = 0x33,
39 TRT_ENDCAP_C_SIDE = 0x34,
46 LAR_FCAL_A_SIDE = 0x47,
47 LAR_FCAL_C_SIDE = 0x48,
51 TILECAL_EXT_A_SIDE = 0x53,
52 TILECAL_EXT_C_SIDE = 0x54,
64 TDAQ_BEAM_CRATE = 0x70,
65 TDAQ_CALO_PREPROC = 0x71,
71 TDAQ_CTP = 0x77,
72 TDAQ_L2SV = 0x78,
73 TDAQ_SFI = 0x79,
74 TDAQ_SFO = 0x7a,
75 TDAQ_LVL2 = 0x7b,
76 TDAQ_EVENT_FILTER = 0x7c,
77 OTHER = 0x81,
78 BESIII_MDC = 0xa1,
79 BESIII_TOF = 0xa2,
80 BESIII_EMC = 0xa3,
81 BESIII_MUC = 0xa4,
82 BESIII_TRG = 0xa5
83 };

Function Documentation

◆ child_marker()

HeaderMarker eformat::child_marker ( HeaderMarker e)

Returns the child marker of a given parent marker

Parameters
eThe marker from which you would like to the get child fragment type from

Definition at line 15 of file HeaderMarker.cxx.

15 {
16 using namespace eformat;
17 switch ( e )
18 {
19 case FULL_EVENT: return SUB_DETECTOR;
20 case SUB_DETECTOR: return ROS;
21 case ROS: return ROB;
22 case ROB: return ROD;
23 default: break;
24 }
25 return FULL_EVENT;
26}

Referenced by eformat::Header< TPointer >::children().

◆ find_fragments()

template<class TPointer>
size_t eformat::find_fragments ( eformat::HeaderMarker marker,
TPointer block_start,
size_t block_size,
TPointer * frag = 0,
size_t max_count = 0 )

A generic method to find all fragments in a contiguous area of memory. These fragments cannot be RODFragments. For that, use the eformat::find_rods().

Parameters
markerThe marker you are searching for.
block_startA pointer to the block start
block_sizeThe overall size of this block, in 32-bit words
fragA (optional) preallocated set of pointers to hold the found fragments. If frag is NULL, only counts the number of children.
max_countThe maximum number of fragments I'll search for, if frag is not NULL. If frag is NULL, this flag has no meaning.
Returns
The number of fragments the function actually found, irrespective of max_count.

Definition at line 108 of file Event/eformat/include/eformat/util.h.

109 {
110 uint32_t counter = 0;
111 TPointer next = block_start;
112 TPointer endp = block_start;
113 endp += block_size;
114 while ( next < endp )
115 {
116 if ( next[0] != marker ) throw EFORMAT_WRONG_MARKER( next[0], marker );
117 if ( frag && counter < max_count ) frag[counter] = next;
118 ++counter;
119 next += next[1];
120 }
121 return counter;
122}
#define EFORMAT_WRONG_MARKER(current, expected)

Referenced by eformat::Header< TPointer >::children().

◆ find_rods()

size_t eformat::find_rods ( const uint32_t * block_start,
size_t block_size,
const uint32_t ** rod = 0,
uint32_t * rod_size = 0,
size_t max_count = 0 )

Returns pointers (to words) to the start of each ROD fragment block in a piece of memory. This is primarily intended for LVL2 supervisor usage.

Warning
This will invert the data order, meaning the last ROD will be the first in the vector to appear, due to the way the ROD readout has to happen (back to front of the stream). If that is not satisfactory, you have to sort back the vector yourself.
Parameters
block_startThe start address of the data block you want to dig the ROD pointers from
block_sizeThe size of the block, in 32-bit words
rodA (optional) pointer to set of pre-allocated pointers
rod_sizeA (optional) pointer to set of pre-allocated size_t's, where the size of each ROD, in words, will be stored.
max_countThe maximum number of blocks to dig out from block_start, if rod is not NULL. If rod is NULL, this is meaningless.
Returns
The number of ROD fragments the function actually found on the block, irrespective of max_count.

Definition at line 83 of file util.cxx.

84 {
85 const uint32_t* block_end = block_start + block_size;
86 size_t counter = 0;
87 while ( block_end > block_start )
88 {
89 uint32_t curr_rod_size = 12; //< base size for a ROD as eformat 2.4
90 curr_rod_size += *( block_end - 3 ) + *( block_end - 2 ); // status and data sizes
91 block_end -= curr_rod_size;
92 if ( rod && counter < max_count )
93 {
94 if ( block_end[0] != eformat::ROD )
95 throw EFORMAT_WRONG_MARKER( block_end[0], eformat::ROD );
96 rod_size[counter] = curr_rod_size;
97 rod[counter] = block_end;
98 }
99 ++counter;
100 }
101 return counter;
102}

◆ get_robs()

size_t eformat::get_robs ( const uint32_t * fragment,
const uint32_t ** rob,
size_t max_count )

Gets pointers to all ROB fragments from a fragment of a type which is not known in advance.

Parameters
fragmentThe top level fragment to extract the other ROBFragment's from.
rodA pointer to set of pre-allocated pointers
max_countThe maximum number of blocks to dig out from block_start.
Returns
The number of ROBFragments the function actually found

Definition at line 104 of file util.cxx.

104 {
105 using namespace eformat;
106 ERS_DEBUG_1( "Getting all ROB's from 0x%x...", fragment[0] );
107
108 size_t counter = 0;
109 switch ( ( eformat::HeaderMarker )( fragment[0] ) )
110 {
111 case ROD: return 0;
112 case ROB: {
113 if ( max_count > 0 )
114 {
115 rob[0] = fragment;
116 ++counter;
117 }
118 else return 0; // not enough space
119 }
120 break;
121 case ROS: {
122 eformat::ROSFragment<const uint32_t*> ros( fragment );
123 counter += ros.children( rob, max_count );
124 ERS_DEBUG_1( "ROS 0x%x contains %d ROB's", ros.source_id(), counter );
125 }
126 break;
127 case SUB_DETECTOR: {
128 eformat::SubDetectorFragment<const uint32_t*> sd( fragment );
129 const uint32_t* ros[256];
130 size_t ros_counter = sd.children( ros, 256 );
131 for ( size_t i = 0; i < ros_counter; ++i )
132 counter += get_robs( ros[i], &rob[counter], max_count - counter );
133 ERS_DEBUG_1( "Subdetector 0x%x contains %d ROB's", sd.source_id(), counter );
134 }
135 break;
136 case FULL_EVENT: {
137 eformat::FullEventFragment<const uint32_t*> fe( fragment );
138 const uint32_t* sd[64];
139 size_t sd_counter = fe.children( sd, 64 );
140 for ( size_t i = 0; i < sd_counter; ++i )
141 counter += get_robs( sd[i], &rob[counter], max_count - counter );
142 ERS_DEBUG_1( "Fullevent 0x%x contains %d ROB's", fe.source_id(), counter );
143 }
144 break;
145 }
146
147 return counter;
148}
#define ERS_DEBUG_1(...)
size_t get_robs(const uint32_t *fragment, const uint32_t **rob, size_t max_count)
Definition util.cxx:104

Referenced by EFEventLoopMgr::executeEvent(), get_robs(), main(), main(), MixerAlg::nextEvent(), RawDataInputSvc::nextEvent(), and RawEventReader::readEvent().

◆ marker2string() [1/2]

std::string eformat::marker2string ( const eformat::HeaderMarker & e)

Returns a string that represents the string of the equivalent marker

Parameters
eThe enumeration value

Definition at line 28 of file HeaderMarker.cxx.

28 {
29 using namespace eformat;
30 switch ( e )
31 {
32 case ROD: return "ROD";
33 case ROB: return "ROB";
34 case ROS: return "ROS";
35 case SUB_DETECTOR: return "SUB_DETECTOR";
36 case FULL_EVENT: return "FULL_EVENT";
37 }
38 return "UNKNOWN_MARKER";
39}

Referenced by eformat::Header< TPointer >::check(), eformat::Header< TPointer >::child(), marker2string(), and eformat::Header< TPointer >::nchildren().

◆ marker2string() [2/2]

std::string eformat::marker2string ( uint32_t e)

Returns a string that represents the string of the equivalent marker

Parameters
eThe enumeration value

Definition at line 41 of file HeaderMarker.cxx.

41 {
43}
std::string marker2string(const eformat::HeaderMarker &e)

◆ next_fragment()

uint32_t * eformat::next_fragment ( std::fstream & fs,
uint32_t * addr = 0,
size_t size = 0 )

This function will read the next fragment in a normal, already opened, std::fstream. The space for the fragment will be allocated dynamically and the user should free it. Otherwise, if the user wants to re-use a pre-allocated memory space, the second and third arguments can be given, in which case the function will check if the space is enough. If the space is not enough, NULL is returned.

Parameters
fsThe input filestream
addrThe optional user allocated space
sizeThe optional size, in bytes, of the allocated space

Definition at line 24 of file util.cxx.

24 {
25 using namespace eformat;
26
27 off_t offset = fs.tellg();
28 ERS_DEBUG_3( "Current stream position is 0x%lx", offset );
29
30 uint32_t data[2];
31 if ( fs && fs.good() && !fs.eof() )
32 {
33 // soft check, so we don't make mistakes
34 fs.read( (char*)data, 8 );
35 if ( !fs.good() || fs.eof() ) return 0; // end-of-file
36 switch ( (HeaderMarker)data[0] )
37 {
38 case FULL_EVENT:
39 case SUB_DETECTOR:
40 case ROS:
41 case ROB:
42 case ROD: break;
43 default:
44 // stop!
45 std::cout << "Word at offset " << HEX( offset ) << " is not one of " << HEX( FULL_EVENT )
46 << ", " << HEX( SUB_DETECTOR ) << ", " << HEX( ROS ) << ", " << HEX( ROB )
47 << "or " << HEX( ROS ) << ". Stopping execution..." << std::endl;
48 return 0;
49 }
50 }
51 else return 0; // file is over
52
53 // data[1] is the fragment size, in words. Take it and read the fragment
54 ERS_DEBUG_3( "Resetting stream position to 0x%lx...", offset );
55 fs.seekg( offset );
56 if ( addr && ( size >= ( data[1] * 4 ) ) )
57 {
58 // space is preallocated and checked
59 ERS_DEBUG_3( "Reading fragment data..." );
60 fs.read( (char*)addr, data[1] * 4 );
61 ERS_DEBUG_2( "Size of fragment readout is %u bytes", 4 * data[1] );
62 ERS_DEBUG_3( "Stream position is 0x%lx", offset = fs.tellg() );
63 return addr;
64 }
65 else if ( addr )
66 {
67 std::cout << "The fragment at offset " << HEX( offset ) << " has " << data[1] * 4
68 << " bytes and you provided only " << size
69 << " bytes in your buffer. Stopping execution..." << std::endl;
70 return 0;
71 }
72
73 // if I get here, is because I have to allocate space myself
74 ERS_DEBUG_3( "Allocating fragment data storage of size %ud bytes", 4 * data[1] );
75 uint32_t* retval = new uint32_t[data[1]];
76 ERS_DEBUG_3( "Reading fragment data..." );
77 fs.read( (char*)retval, data[1] * 4 );
78 ERS_DEBUG_2( "Size of fragment readout is %u bytes", 4 * data[1] );
79 ERS_DEBUG_3( "Stream position is 0x%lx", offset = fs.tellg() );
80 return retval;
81}
#define fs
TTree * data
#define ERS_DEBUG_3(...)
#define ERS_DEBUG_2(...)

Referenced by main().

Variable Documentation

◆ DEFAULT_STATUS

◆ DEFAULT_VERSION

◆ MAJOR_DEFAULT_VERSION

const uint16_t eformat::MAJOR_DEFAULT_VERSION = 0x0300

◆ MAJOR_OLD_VERSION

const uint16_t eformat::MAJOR_OLD_VERSION = 0x0204

The major default eformat version to use

Definition at line 34 of file Event/eformat/include/eformat/Version.h.

Referenced by eformat::old::Header::check(), eformat::old::RODFragment::check(), eformat::old::convert(), and convert_ros().

◆ STATUS_BACK

const uint32_t eformat::STATUS_BACK = 1

status goes after data block

Definition at line 39 of file Event/eformat/include/eformat/Status.h.

Referenced by eformat::old::RODFragment::data().

◆ STATUS_FRONT