File indexing completed on 2024-04-06 12:10:44
0001 #ifndef EventFilter_HGCalRawToDigi_HGCalECONDEmulatorParameters_h
0002 #define EventFilter_HGCalRawToDigi_HGCalECONDEmulatorParameters_h
0003
0004 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0005 #include "FWCore/ParameterSet/interface/ParameterSetDescription.h"
0006
0007 #include <vector>
0008
0009 namespace hgcal::econd {
0010 struct EmulatorParameters {
0011 explicit EmulatorParameters(const edm::ParameterSet&);
0012
0013 static edm::ParameterSetDescription description();
0014
0015 const double chan_surv_prob;
0016 const bool active;
0017 const bool passthrough_mode;
0018 const bool expected_mode;
0019 const bool characterisation_mode;
0020 const bool matching_ebo_numbers;
0021 const bool bo_truncated;
0022 const std::vector<unsigned int> enabled_erxs{};
0023 const unsigned int header_marker;
0024 const unsigned int num_channels_per_erx;
0025 const bool add_econd_crc;
0026 const bool add_idle_word;
0027 const unsigned int programmable_pattern;
0028 struct ErrorProbabilities {
0029 double bitO{0.}, bitB{0.}, bitE{0.}, bitT{0.}, bitH{0.}, bitS{0.};
0030 };
0031 const ErrorProbabilities error_prob;
0032 const unsigned int default_totstatus;
0033 };
0034 }
0035
0036 #endif