Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

Measurement Class Reference

#include <Measurement.h>

Inheritance diagram for Measurement:

ITMeasurement OTMeasurement VeloPhiMeasurement VeloRMeasurement List of all members.

Public Types

enum  Type {
  Unknown, Muon, OT, ST,
  TT, VeloR, VeloPhi
}
 enumerator for the type of Measurement More...

Public Member Functions

 Measurement ()
 Default Constructor.
virtual ~Measurement ()
 Default Destructor.
double errMeasure2 () const
 return the error squared
Type type () const
 Retrieve measurement type.
virtual Measurementclone () const
 Clone the Measurement.
void setType (const Type &value)
 Update measurement type.
bool checkType (const Type &value) const
 Check measurement type.
double z () const
 Retrieve const the z-position of the measurement.
void setZ (double value)
 Update the z-position of the measurement.
double measure () const
 Retrieve const the measurement value.
void setMeasure (double value)
 Update the measurement value.
double errMeasure () const
 Retrieve const the measurement error.
void setErrMeasure (double value)
 Update the measurement error.
const LHCbIDlhcbID () const
 Retrieve const the corresponding LHCbID.
LHCbIDlhcbID ()
 Retrieve the corresponding LHCbID.
void setLhcbID (const LHCbID &value)
 Update the corresponding LHCbID.

Protected Types

enum  mtypeBits { typeBits = 0 }
 Offsets of bitfield mtype. More...
enum  mtypeMasks { typeMask = 0x3FL }
 Bitmasks for bitfield mtype. More...

Protected Attributes

unsigned int m_mtype
 the variety of measurement types
double m_z
 the z-position of the measurement
double m_measure
 the measurement value
double m_errMeasure
 the measurement error
LHCbID m_lhcbID
 the corresponding LHCbID

Detailed Description

Measurement is the base class for offline and online measurements.

Author:
Jose Hernando, Eduardo Rodrigues created Fri May 27 11:53:47 2005

Definition at line 33 of file Measurement.h.


Member Enumeration Documentation

enum Measurement::mtypeBits [protected]
 

Offsets of bitfield mtype.

Enumeration values:
typeBits 

Definition at line 101 of file Measurement.h.

00101 {typeBits = 0};

enum Measurement::mtypeMasks [protected]
 

Bitmasks for bitfield mtype.

Enumeration values:
typeMask 

Definition at line 104 of file Measurement.h.

00104 {typeMask = 0x3FL};

enum Measurement::Type
 

enumerator for the type of Measurement

Enumeration values:
Unknown 
Muon 
OT 
ST 
TT 
VeloR 
VeloPhi 

Definition at line 38 of file Measurement.h.

00038            { Unknown,
00039              Muon,
00040              OT,
00041              ST,
00042              TT,
00043              VeloR,
00044              VeloPhi };


Constructor & Destructor Documentation

Measurement::Measurement  )  [inline]
 

Default Constructor.

Definition at line 47 of file Measurement.h.

References m_errMeasure, m_lhcbID, m_measure, m_mtype, and m_z.

Referenced by clone().

00047                 : m_mtype(0),
00048                   m_z(0.0),
00049                   m_measure(0.0),
00050                   m_errMeasure(0.0),
00051                   m_lhcbID() {}

virtual Measurement::~Measurement  )  [inline, virtual]
 

Default Destructor.

Definition at line 54 of file Measurement.h.

00054 {}


Member Function Documentation

bool Measurement::checkType const Type value  )  const [inline]
 

Check measurement type.

Definition at line 130 of file Measurement.h.

References m_mtype, typeBits, and typeMask.

00131 {
00132   unsigned int val = (unsigned int)value;
00133   return 0 != ( m_mtype & typeMask & ( val << typeBits ));
00134 }

Measurement * Measurement::clone  )  const [inline, virtual]
 

Clone the Measurement.

Reimplemented in ITMeasurement, OTMeasurement, VeloPhiMeasurement, and VeloRMeasurement.

Definition at line 195 of file Measurement.h.

References Measurement().

00196 {
00197 
00198   Measurement* me = new Measurement(); *me = *this; return me;
00199         
00200 }

double Measurement::errMeasure  )  const [inline]
 

Retrieve const the measurement error.

Definition at line 156 of file Measurement.h.

References m_errMeasure.

Referenced by KalmanFilter::filter().

00157 {
00158   return m_errMeasure;
00159 }

double Measurement::errMeasure2  )  const [inline]
 

return the error squared

Definition at line 181 of file Measurement.h.

References m_errMeasure.

00182 {
00183 
00184   return m_errMeasure*m_errMeasure;
00185         
00186 }

LHCbID & Measurement::lhcbID  )  [inline]
 

Retrieve the corresponding LHCbID.

Definition at line 171 of file Measurement.h.

References m_lhcbID.

00172 {
00173   return m_lhcbID;
00174 }

const LHCbID & Measurement::lhcbID  )  const [inline]
 

Retrieve const the corresponding LHCbID.

Definition at line 166 of file Measurement.h.

References m_lhcbID.

00167 {
00168   return m_lhcbID;
00169 }

double Measurement::measure  )  const [inline]
 

Retrieve const the measurement value.

Definition at line 146 of file Measurement.h.

References m_measure.

Referenced by TrackVeloRProjector::project(), TrackVeloPhiProjector::project(), and TrackOTProjector::project().

00147 {
00148   return m_measure;
00149 }

void Measurement::setErrMeasure double  value  )  [inline]
 

Update the measurement error.

Definition at line 161 of file Measurement.h.

References m_errMeasure.

00162 {
00163   m_errMeasure = value;
00164 }

void Measurement::setLhcbID const LHCbID value  )  [inline]
 

Update the corresponding LHCbID.

Definition at line 176 of file Measurement.h.

References m_lhcbID.

Referenced by ITMeasurement::ITMeasurement(), OTMeasurement::OTMeasurement(), VeloPhiMeasurement::VeloPhiMeasurement(), and VeloRMeasurement::VeloRMeasurement().

00177 {
00178   m_lhcbID = value;
00179 }

void Measurement::setMeasure double  value  )  [inline]
 

Update the measurement value.

Definition at line 151 of file Measurement.h.

References m_measure.

00152 {
00153   m_measure = value;
00154 }

void Measurement::setType const Type value  )  [inline]
 

Update measurement type.

Definition at line 123 of file Measurement.h.

References m_mtype, typeBits, and typeMask.

00124 {
00125   unsigned int val = (unsigned int)value;
00126   m_mtype &= ~typeMask;
00127   m_mtype |= ((((unsigned int)val) << typeBits) & typeMask);
00128 }

void Measurement::setZ double  value  )  [inline]
 

Update the z-position of the measurement.

Definition at line 141 of file Measurement.h.

References m_z.

00142 {
00143   m_z = value;
00144 }

Measurement::Type Measurement::type  )  const [inline]
 

Retrieve measurement type.

Definition at line 188 of file Measurement.h.

References m_mtype, typeBits, and typeMask.

00189 {
00190 
00191   return (Measurement::Type)((m_mtype & typeMask) >> typeBits);
00192         
00193 }

double Measurement::z  )  const [inline]
 

Retrieve const the z-position of the measurement.

Definition at line 136 of file Measurement.h.

References m_z.

Referenced by KalmanFilter::predict(), and FitNode::z().

00137 {
00138   return m_z;
00139 }


Member Data Documentation

double Measurement::m_errMeasure [protected]
 

the measurement error

Definition at line 110 of file Measurement.h.

Referenced by errMeasure(), errMeasure2(), Measurement(), and setErrMeasure().

LHCbID Measurement::m_lhcbID [protected]
 

the corresponding LHCbID

Definition at line 111 of file Measurement.h.

Referenced by lhcbID(), Measurement(), and setLhcbID().

double Measurement::m_measure [protected]
 

the measurement value

Definition at line 109 of file Measurement.h.

Referenced by measure(), Measurement(), and setMeasure().

unsigned int Measurement::m_mtype [protected]
 

the variety of measurement types

Definition at line 107 of file Measurement.h.

Referenced by checkType(), Measurement(), setType(), and type().

double Measurement::m_z [protected]
 

the z-position of the measurement

Definition at line 108 of file Measurement.h.

Referenced by Measurement(), setZ(), and z().


The documentation for this class was generated from the following file:
Generated on Fri May 27 13:59:43 2005 for New Track Event Model by doxygen 1.4.1