CMS 3D CMS Logo

HcalTPGCoder Class Reference

Converts ADC to linear E or ET for use in the TPG path Also compresses linear scale for transmission to RCT. More...

#include <CalibFormats/HcalObjects/interface/HcalTPGCoder.h>

Inheritance diagram for HcalTPGCoder:

HcaluLUTTPGCoder

List of all members.

Public Member Functions

unsigned short adc2Linear (unsigned char adc, HcalDetId id) const
virtual unsigned short adc2Linear (HcalQIESample sample, HcalDetId id) const =0
virtual void adc2Linear (const HFDataFrame &df, IntegerCaloSamples &ics) const =0
virtual void adc2Linear (const HBHEDataFrame &df, IntegerCaloSamples &ics) const =0
virtual void compress (const IntegerCaloSamples &ics, const std::vector< bool > &featureBits, HcalTriggerPrimitiveDigi &tp) const =0
virtual std::vector< unsigned
short > 
getLinearizationLUT (HcalDetId id) const
 Get the full linearization LUT (128 elements).
virtual float getLUTGain (HcalDetId id) const =0
virtual float getLUTPedestal (HcalDetId id) const =0


Detailed Description

Converts ADC to linear E or ET for use in the TPG path Also compresses linear scale for transmission to RCT.

Note : whether the coder produces E or ET is determined by the specific implementation of the coder.

Date
2007/07/11 22:06:36
Revision
1.6
Author:
J. Mans - Minnesota

Definition at line 26 of file HcalTPGCoder.h.


Member Function Documentation

unsigned short HcalTPGCoder::adc2Linear ( unsigned char  adc,
HcalDetId  id 
) const [inline]

Definition at line 31 of file HcalTPGCoder.h.

References adc2Linear().

00031 { return adc2Linear(HcalQIESample(adc,0,0,0),id); }

virtual unsigned short HcalTPGCoder::adc2Linear ( HcalQIESample  sample,
HcalDetId  id 
) const [pure virtual]

Implemented in HcaluLUTTPGCoder.

virtual void HcalTPGCoder::adc2Linear ( const HFDataFrame df,
IntegerCaloSamples ics 
) const [pure virtual]

Implemented in HcaluLUTTPGCoder.

virtual void HcalTPGCoder::adc2Linear ( const HBHEDataFrame df,
IntegerCaloSamples ics 
) const [pure virtual]

Implemented in HcaluLUTTPGCoder.

Referenced by adc2Linear(), HcalTriggerPrimitiveAlgo::addSignal(), and getLinearizationLUT().

virtual void HcalTPGCoder::compress ( const IntegerCaloSamples ics,
const std::vector< bool > &  featureBits,
HcalTriggerPrimitiveDigi tp 
) const [pure virtual]

Implemented in HcaluLUTTPGCoder.

std::vector< unsigned short > HcalTPGCoder::getLinearizationLUT ( HcalDetId  id  )  const [virtual]

Get the full linearization LUT (128 elements).

Default implementation just uses adc2Linear to get all values

Definition at line 3 of file HcalTPGCoder.cc.

References adc2Linear(), i, and lut.

00003                                                                               {
00004   std::vector<unsigned short> lut(128);
00005   for (unsigned char i=0; i<128; ++i) lut[i]=adc2Linear(i,id);
00006   return lut;
00007 }

virtual float HcalTPGCoder::getLUTGain ( HcalDetId  id  )  const [pure virtual]

Implemented in HcaluLUTTPGCoder.

virtual float HcalTPGCoder::getLUTPedestal ( HcalDetId  id  )  const [pure virtual]

Implemented in HcaluLUTTPGCoder.


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:24:00 2009 for CMSSW by  doxygen 1.5.4