44 throw cms::Exception(
"DTTPG") <<
"===> ConfigLUTs constructor : not a LUT string!" << std::endl;
48 short int memory_lut[7];
51 memory_lut[
i] = (buffer[
c]<<8) | buffer[c+1];
57 int btic = memory_lut[0];
62 int wheel = memory_lut[5];
104 std::cout <<
"******************************************************************************" << std::endl;
105 std::cout <<
"* DTTrigger configuration : LUT parameters *" << std::endl;
106 std::cout <<
"******************************************************************************" << std::endl << std::endl;
109 std::cout <<
"d: distance vertex to normal, unit cm. " <<
m_d << std::endl;
110 std::cout <<
"Xcn: distance vertex to normal, unit cm. " <<
m_Xcn << std::endl;
112 std::cout <<
"******************************************************************************" << std::endl;
119 *f = DSPmantissa * (
float)
pow( 2.0, DSPexp );
128 static_assert(
sizeof(decltype(pl)) >=
sizeof(
float));
136 memcpy(&pl,&f,
sizeof(
float));
138 if((pl & 0x80000000)!=0)
140 long int lm = ( 0x800000 | (pl & 0x7FFFFF));
143 DSPexp = ((pl>>23)&0xFF)-126;
144 DSPmantissa = (short)lm;
146 DSPmantissa = - DSPmantissa;
T getUntrackedParameter(std::string const &, T const &) const
void DSPtoIEEE32(short DSPmantissa, short DSPexp, float *f) const
DSP to IEEE32 conversion.
void IEEE32toDSP(float f, short int &DSPmantissa, short int &DSPexp) const
IEEE32 to DSP conversion.
void print() const
Print the setup.
bool debug() const
Debug flag.
~DTConfigLUTs() override
Destructor.
void setDefaults(const edm::ParameterSet &m_ps)
Load pset values into class variables.
float Xcn() const
Xcn: distance vertex to normal, unit cm.
DTConfigLUTs()
Empty Constructor.
Power< A, B >::type pow(const A &a, const B &b)