CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
HcalQIESample Class Reference

#include <HcalQIESample.h>

Public Member Functions

int adc () const
 get the ADC sample More...
 
int capid () const
 get the Capacitor id More...
 
bool dv () const
 is the Data Valid bit set? More...
 
bool er () const
 is the error bit set? More...
 
int fiber () const
 get the fiber number More...
 
int fiberAndChan () const
 get the id channel More...
 
int fiberChan () const
 get the fiber channel number More...
 
 HcalQIESample ()
 
 HcalQIESample (uint16_t data)
 
 HcalQIESample (int adc, int capid, int fiber, int fiberchan, bool dv=true, bool er=false)
 
double nominal_fC () const
 get the nominal FC (no calibrations applied) More...
 
uint16_t operator() ()
 for streaming More...
 
uint16_t raw () const
 get the raw word More...
 

Private Attributes

uint16_t theSample
 

Detailed Description

Simple container packer/unpacker for a single QIE data word

Author
J. Mans - Minnesota

Definition at line 13 of file HcalQIESample.h.

Constructor & Destructor Documentation

HcalQIESample::HcalQIESample ( )
inline

Definition at line 15 of file HcalQIESample.h.

References theSample.

15 { theSample=0; }
uint16_t theSample
Definition: HcalQIESample.h:42
HcalQIESample::HcalQIESample ( uint16_t  data)
inline

Definition at line 16 of file HcalQIESample.h.

References data, and theSample.

16 { theSample=data; }
uint16_t theSample
Definition: HcalQIESample.h:42
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
HcalQIESample::HcalQIESample ( int  adc,
int  capid,
int  fiber,
int  fiberchan,
bool  dv = true,
bool  er = false 
)

Definition at line 24 of file HcalQIESample.cc.

References theSample.

24  {
25  theSample=(adc&0x7f) | ((capid&0x3)<<7) |
26  (((fiber-1)&0x7)<<13) | ((fiberchan&0x3)<<11) |
27  ((dv)?(0x0200):(0)) | ((er)?(0x0400):(0));
28 }
int adc() const
get the ADC sample
Definition: HcalQIESample.h:22
bool dv() const
is the Data Valid bit set?
Definition: HcalQIESample.h:28
uint16_t theSample
Definition: HcalQIESample.h:42
int fiber() const
get the fiber number
Definition: HcalQIESample.h:32
int capid() const
get the Capacitor id
Definition: HcalQIESample.h:26
bool er() const
is the error bit set?
Definition: HcalQIESample.h:30

Member Function Documentation

int HcalQIESample::adc ( ) const
inline

get the ADC sample

Definition at line 22 of file HcalQIESample.h.

References theSample.

Referenced by nominal_fC(), operator<<(), and CastorLEDMonitor::processEvent().

22 { return theSample&0x7F; }
uint16_t theSample
Definition: HcalQIESample.h:42
int HcalQIESample::capid ( ) const
inline
bool HcalQIESample::dv ( ) const
inline

is the Data Valid bit set?

Definition at line 28 of file HcalQIESample.h.

References theSample.

Referenced by operator<<().

28 { return (theSample&0x0200)!=0; }
uint16_t theSample
Definition: HcalQIESample.h:42
bool HcalQIESample::er ( ) const
inline

is the error bit set?

Definition at line 30 of file HcalQIESample.h.

References theSample.

Referenced by operator<<().

30 { return (theSample&0x0400)!=0; }
uint16_t theSample
Definition: HcalQIESample.h:42
int HcalQIESample::fiber ( ) const
inline

get the fiber number

Definition at line 32 of file HcalQIESample.h.

References theSample.

32 { return ((theSample>>13)&0x7)+1; }
uint16_t theSample
Definition: HcalQIESample.h:42
int HcalQIESample::fiberAndChan ( ) const
inline

get the id channel

Definition at line 36 of file HcalQIESample.h.

References theSample.

36 { return (theSample>>11)&0x1F; }
uint16_t theSample
Definition: HcalQIESample.h:42
int HcalQIESample::fiberChan ( ) const
inline

get the fiber channel number

Definition at line 34 of file HcalQIESample.h.

References theSample.

34 { return (theSample>>11)&0x3; }
uint16_t theSample
Definition: HcalQIESample.h:42
double HcalQIESample::nominal_fC ( ) const

get the nominal FC (no calibrations applied)

Definition at line 30 of file HcalQIESample.cc.

References adc(), and nominal_adc2fc.

Referenced by HFRaddamTask::_process(), HBHETimeProfileStatusBitSetter::compare_digi_energy::operator()(), and HBHETimeProfileStatusBitSetter::TotalEnergyInDataFrame().

30  {
31  return nominal_adc2fc[adc()];
32 }
int adc() const
get the ADC sample
Definition: HcalQIESample.h:22
static const float nominal_adc2fc[128]
Definition: HcalQIESample.cc:3
uint16_t HcalQIESample::operator() ( )
inline

for streaming

Definition at line 39 of file HcalQIESample.h.

References theSample.

39 { return theSample; }
uint16_t theSample
Definition: HcalQIESample.h:42
uint16_t HcalQIESample::raw ( ) const
inline

get the raw word

Definition at line 20 of file HcalQIESample.h.

References theSample.

Referenced by CastorPacker::pack().

20 { return theSample; }
uint16_t theSample
Definition: HcalQIESample.h:42

Member Data Documentation

uint16_t HcalQIESample::theSample
private

Definition at line 42 of file HcalQIESample.h.

Referenced by adc(), capid(), dv(), er(), fiber(), fiberAndChan(), fiberChan(), HcalQIESample(), operator()(), and raw().