emcHLRatioFEM Class Reference
[Tower calibration]

#include <emcHLRatioFEM.h>

Inherits emcCalFEM.

Inheritance diagram for emcHLRatioFEM:

Inheritance graph
[legend]
List of all members.

Detailed Description

Stores H/L gain ratio values for one FEM.

emcHLRatioFEM is to be understood here as a set of four values :

Definition at line 20 of file emcHLRatioFEM.h.

Public Types

typedef std::vector< float > Ratio
typedef std::vector< Ratio > RatioVector
typedef std::vector< float
>::iterator 
itRatio
typedef std::vector< float
>::const_iterator 
citRatio
typedef std::vector< Ratio
>::iterator 
itRatioVector
typedef std::vector< Ratio
>::const_iterator 
citRatioVector

Public Member Functions

 emcHLRatioFEM (int absPosition)
 ctor
 emcHLRatioFEM (int absPosition, const PHTimeStamp &t1, const PHTimeStamp &t2)
 ctor
 emcHLRatioFEM (const emcHLRatioFEM &)
 copy ctor
emcHLRatioFEM & operator= (const emcHLRatioFEM &)
 assignment operator.
virtual ~emcHLRatioFEM ()
 Destructor.
virtual emcHLRatioFEM * clone (void) const
virtual emcHLRatioFEM * create (void) const
void AppendOneChannel (float average, float rms, float intercept, float slope)
 Append H/L gain ratio vector for one channel.
virtual const char * GetCategory (void) const
 Category of this emcManageable = "HLRatios".
virtual float getValue (int ichannel) const
 Get average value.
virtual float getValueFast (int ichannel) const
 Same as above w/o bound checking.
virtual float getValue (int ichannel, int what) const
 Get the H/L ratio value(s) for a given channel.
virtual float getValueFast (int ichannel, int what) const
 Same as above but without bound checking.
virtual size_t GetNumberOfChannels (void) const
 Get number of channels handled by this object.
virtual bool IsEqual (const emcCalFEM &obj) const
 Comparison.
virtual void Reset (void)
 Reset the object.
virtual std::ostream & Print (std::ostream &out=std::cout, int level=0) const
 Print.

Static Public Member Functions

static emcHLRatioFEM * Default (const int &absPosition, const PHTimeStamp &t1, const PHTimeStamp &t2)
 Creates a default object with 144 channels.
static float GetGlobalAverage (void)
 Get global (i.e. over all channels) average value.
static float GetGlobalRMS (void)
 Get global (i.e. over all channels) RMS.

Private Member Functions

void Copy (emcHLRatioFEM &o) const
 used by copy ctor.

Private Attributes

RatioVector fHLRatioVector

Static Private Attributes

static float fGlobalAverage = 15.4
static float fGlobalRMS = 1.7


Member Typedef Documentation

typedef std::vector<float>::const_iterator emcHLRatioFEM::citRatio
 

Definition at line 54 of file emcHLRatioFEM.h.

typedef std::vector<Ratio>::const_iterator emcHLRatioFEM::citRatioVector
 

Definition at line 56 of file emcHLRatioFEM.h.

typedef std::vector<float>::iterator emcHLRatioFEM::itRatio
 

Definition at line 53 of file emcHLRatioFEM.h.

typedef std::vector<Ratio>::iterator emcHLRatioFEM::itRatioVector
 

Definition at line 55 of file emcHLRatioFEM.h.

typedef std::vector<float> emcHLRatioFEM::Ratio
 

Definition at line 51 of file emcHLRatioFEM.h.

typedef std::vector<Ratio> emcHLRatioFEM::RatioVector
 

Definition at line 52 of file emcHLRatioFEM.h.


Constructor & Destructor Documentation

emcHLRatioFEM::emcHLRatioFEM (  int  absPosition  )  [explicit]
 

ctor

Definition at line 37 of file emcHLRatioFEM.C.

References classname, name, emcNamed::NameIt(), and title.

Referenced by clone(), create(), and Default().

emcHLRatioFEM::emcHLRatioFEM (  int  absPosition,
const PHTimeStamp &  t1,
const PHTimeStamp &  t2
) 
 

ctor

Definition at line 44 of file emcHLRatioFEM.C.

References classname, name, emcNamed::NameIt(), and title.

emcHLRatioFEM::emcHLRatioFEM (  const emcHLRatioFEM &   ) 
 

copy ctor

Definition at line 53 of file emcHLRatioFEM.C.

References Copy().

emcHLRatioFEM::~emcHLRatioFEM (   )  [virtual]
 

Destructor.

Definition at line 82 of file emcHLRatioFEM.C.

References Reset().


Member Function Documentation

void emcHLRatioFEM::AppendOneChannel (  float  average,
float  rms,
float  intercept,
float  slope
) 
 

Append H/L gain ratio vector for one channel.

Definition at line 88 of file emcHLRatioFEM.C.

References fHLRatioVector.

Referenced by Default(), and emcOMHLRatioFEMT< T >::FromPdbCalBank().

virtual emcHLRatioFEM* emcHLRatioFEM::clone (  void   )  const [inline, virtual]
 

Implements emcCalFEM.

Definition at line 40 of file emcHLRatioFEM.h.

References emcHLRatioFEM().

void emcHLRatioFEM::Copy (  emcHLRatioFEM &  o  )  const [private]
 

used by copy ctor.

Definition at line 71 of file emcHLRatioFEM.C.

References emcCalFEM::Copy(), and fHLRatioVector.

Referenced by emcHLRatioFEM(), and operator=().

virtual emcHLRatioFEM* emcHLRatioFEM::create (  void   )  const [inline, virtual]
 

Implements emcCalFEM.

Definition at line 43 of file emcHLRatioFEM.h.

References emcCalFEM::AbsolutePosition(), emcHLRatioFEM(), emcCalFEM::GetEndValTime(), and emcCalFEM::GetStartValTime().

emcHLRatioFEM * emcHLRatioFEM::Default (  const int &  absPosition,
const PHTimeStamp &  t1,
const PHTimeStamp &  t2
)  [static]
 

Creates a default object with 144 channels.

where H/L=fGlobalAverage and rms=fGlobalRMS.

Definition at line 107 of file emcHLRatioFEM.C.

References AppendOneChannel(), emcHLRatioFEM(), fGlobalAverage, and fGlobalRMS.

Referenced by creator().

virtual const char* emcHLRatioFEM::GetCategory (  void   )  const [inline, virtual]
 

Category of this emcManageable = "HLRatios".

Implements emcCalFEM.

Definition at line 71 of file emcHLRatioFEM.h.

static float emcHLRatioFEM::GetGlobalAverage (  void   )  [inline, static]
 

Get global (i.e. over all channels) average value.

Definition at line 97 of file emcHLRatioFEM.h.

References fGlobalAverage.

static float emcHLRatioFEM::GetGlobalRMS (  void   )  [inline, static]
 

Get global (i.e. over all channels) RMS.

Definition at line 100 of file emcHLRatioFEM.h.

References fGlobalRMS.

virtual size_t emcHLRatioFEM::GetNumberOfChannels (  void   )  const [inline, virtual]
 

Get number of channels handled by this object.

Implements emcCalFEM.

Definition at line 103 of file emcHLRatioFEM.h.

References fHLRatioVector.

Referenced by emcOMHLRatioFEMT< T >::ToPdbCalBank().

float emcHLRatioFEM::getValue (  int  ichannel,
int  what
)  const [virtual]
 

Get the H/L ratio value(s) for a given channel.

what = 0 -> average what = 1 -> rms what = 2 -> intercept what = 3 -> slope

Reimplemented from emcCalFEM.

Definition at line 124 of file emcHLRatioFEM.C.

References emcCalFEM::DefaultReturnValue(), EMC_WARNING_MSG, fHLRatioVector, and getValueFast().

virtual float emcHLRatioFEM::getValue (  int  ichannel  )  const [inline, virtual]
 

Get average value.

Reimplemented from emcCalFEM.

Definition at line 77 of file emcHLRatioFEM.h.

Referenced by IsEqual(), and emcOMHLRatioFEMT< T >::ToPdbCalBank().

float emcHLRatioFEM::getValueFast (  int  ichannel,
int  what
)  const [virtual]
 

Same as above but without bound checking.

Reimplemented from emcCalFEM.

Definition at line 147 of file emcHLRatioFEM.C.

References fHLRatioVector.

virtual float emcHLRatioFEM::getValueFast (  int  ichannel  )  const [inline, virtual]
 

Same as above w/o bound checking.

Reimplemented from emcCalFEM.

Definition at line 81 of file emcHLRatioFEM.h.

Referenced by getValue().

bool emcHLRatioFEM::IsEqual (  const emcCalFEM &  obj  )  const [virtual]
 

Comparison.

Implements emcCalFEM.

Definition at line 154 of file emcHLRatioFEM.C.

References getValue(), j, and emcCalFEM::size().

emcHLRatioFEM & emcHLRatioFEM::operator= (  const emcHLRatioFEM &   ) 
 

assignment operator.

Definition at line 61 of file emcHLRatioFEM.C.

References Copy(), and Reset().

virtual std::ostream& emcHLRatioFEM::Print (  std::ostream &  out = std::cout,
int  level = 0
)  const [virtual]
 

Print.

Reimplemented from emcCalFEM.

void emcHLRatioFEM::Reset (  void   )  [virtual]
 

Reset the object.

Implements emcCalFEM.

Definition at line 168 of file emcHLRatioFEM.C.

References fHLRatioVector.

Referenced by emcOMHLRatioFEMT< T >::FromPdbCalBank(), operator=(), and ~emcHLRatioFEM().


Member Data Documentation

float emcHLRatioFEM::fGlobalAverage = 15.4 [static, private]
 

Definition at line 126 of file emcHLRatioFEM.h.

Referenced by Default(), and GetGlobalAverage().

float emcHLRatioFEM::fGlobalRMS = 1.7 [static, private]
 

Definition at line 127 of file emcHLRatioFEM.h.

Referenced by Default(), and GetGlobalRMS().

RatioVector emcHLRatioFEM::fHLRatioVector [private]
 

Definition at line 124 of file emcHLRatioFEM.h.

Referenced by AppendOneChannel(), Copy(), GetNumberOfChannels(), getValue(), getValueFast(), and Reset().


The documentation for this class was generated from the following files: