CMS 3D CMS Logo

HcalQIE1011Traits.h
Go to the documentation of this file.
1 #ifndef HcalSimAlgos_HcalQIE10Traits_h
2 #define HcalSimAlgos_HcalQIE10Traits_h
3 
6 
8 
9 public:
13  static constexpr double PreMixFactor = 10.0;
14  static const unsigned PreMixBits = 254;
15 };
16 
18 
19 public:
23  static constexpr double PreMixFactor = 10.0;
24  static const unsigned PreMixBits = 254;
25 };
26 
27 template<class Traits>
29 public:
30  typedef typename Traits::ElectronicsSim ElectronicsSim;
31  typedef typename Traits::Digi Digi;
32  typedef typename Traits::DigiCollection DigiCollection;
33 
34  void operator()(DigiCollection & output, CLHEP::HepRandomEngine* engine, CaloSamples * analogSignal, std::vector<DetId>::const_iterator idItr, ElectronicsSim* theElectronicsSim){
35  output.push_back( idItr->rawId() ) ;
36  Digi digi ( output.back() ) ; //QIEDataFrame gets ptr to edm::DataFrame data
37  theElectronicsSim->analogToDigital( engine, *analogSignal , digi, Traits::PreMixFactor, Traits::PreMixBits ) ;
38  }
39 
40 };
41 
42 #endif
QIE11DigiCollection DigiCollection
std::tuple< unsigned int, int, int, DigiType, int, int, int, float > Digi
Definition: GenericDigi.h:30
#define constexpr
HcalElectronicsSim ElectronicsSim
void operator()(DigiCollection &output, CLHEP::HepRandomEngine *engine, CaloSamples *analogSignal, std::vector< DetId >::const_iterator idItr, ElectronicsSim *theElectronicsSim)
static const unsigned PreMixBits
QIE10DigiCollection DigiCollection
HcalElectronicsSim ElectronicsSim
Traits::DigiCollection DigiCollection
Traits::ElectronicsSim ElectronicsSim