CMS 3D CMS Logo

Public Types | Public Member Functions | Protected Attributes

PhysicsTools::Calibration::Histogram< Value_t, Axis_t > Class Template Reference

#include <Histogram.h>

List of all members.

Public Types

typedef
PhysicsTools::Calibration::Range
< Axis_t > 
Range

Public Member Functions

Value_t binContent (int bin) const
Value_t binError (int bin) const
Range binRange (int bin) const
bool empty () const
Value_t error (Axis_t x) const
void fill (Axis_t x, Value_t weight=1.0)
int findBin (Axis_t x) const
bool hasEquidistantBins () const
 Histogram (const Histogram &orig)
 Histogram (const std::vector< Axis_t > &binULimits)
template<typename OAxis_t >
 Histogram (const std::vector< OAxis_t > &binULimits)
template<typename OValue_t , typename OAxis_t >
 Histogram (const Histogram< OValue_t, OAxis_t > &orig)
template<typename OAxis_t >
 Histogram (unsigned int nBins, const PhysicsTools::Calibration::Range< OAxis_t > &range)
 Histogram ()
 Histogram (unsigned int nBins, Axis_t min, Axis_t max)
Value_t integral (Axis_t hBound, Axis_t lBound=0.0, int mode=1) const
Value_t normalization () const
Value_t normalizedError (Axis_t x) const
Value_t normalizedIntegral (Axis_t hBound, Axis_t lBound=0.0, int mode=1) const
Value_t normalizedValue (Axis_t x) const
int numberOfBins () const
Histogramoperator= (const Histogram &orig)
template<typename OValue_t , typename OAxis_t >
Histogramoperator= (const Histogram< OValue_t, OAxis_t > &orig)
Range range () const
void reset ()
void setBinContent (int bin, Value_t value)
template<typename OValue_t >
void setValues (const std::vector< OValue_t > &values)
void setValues (const std::vector< Value_t > &values)
const std::vector< Axis_t > upperLimits () const
Value_t value (Axis_t x) const
const std::vector< Value_t > & values () const
 ~Histogram ()

Protected Attributes

std::vector< Axis_t > binULimits
std::vector< Value_t > binValues
Range limits
Value_t total
bool totalValid

Detailed Description

template<typename Value_t, typename Axis_t = Value_t>
class PhysicsTools::Calibration::Histogram< Value_t, Axis_t >

Definition at line 28 of file Histogram.h.


Member Typedef Documentation

template<typename Value_t, typename Axis_t = Value_t>
typedef PhysicsTools::Calibration::Range<Axis_t> PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::Range

Definition at line 30 of file Histogram.h.


Constructor & Destructor Documentation

template<typename Value_t, typename Axis_t = Value_t>
PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::Histogram ( )
template<typename Value_t, typename Axis_t = Value_t>
PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::Histogram ( const Histogram< Value_t, Axis_t > &  orig)
template<typename Value_t, typename Axis_t = Value_t>
template<typename OValue_t , typename OAxis_t >
PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::Histogram ( const Histogram< OValue_t, OAxis_t > &  orig)
template<typename Value_t, typename Axis_t = Value_t>
PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::Histogram ( const std::vector< Axis_t > &  binULimits)
template<typename Value_t, typename Axis_t = Value_t>
template<typename OAxis_t >
PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::Histogram ( const std::vector< OAxis_t > &  binULimits)
template<typename Value_t, typename Axis_t = Value_t>
template<typename OAxis_t >
PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::Histogram ( unsigned int  nBins,
const PhysicsTools::Calibration::Range< OAxis_t > &  range 
)
template<typename Value_t, typename Axis_t = Value_t>
PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::Histogram ( unsigned int  nBins,
Axis_t  min,
Axis_t  max 
)
template<typename Value_t, typename Axis_t = Value_t>
PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::~Histogram ( )

Member Function Documentation

template<typename Value_t, typename Axis_t = Value_t>
Value_t PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::binContent ( int  bin) const [inline]
template<typename Value_t, typename Axis_t = Value_t>
Value_t PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::binError ( int  bin) const [inline]

Definition at line 66 of file Histogram.h.

Referenced by PhysicsTools::Calibration::Histogram< float >::error().

{ return std::sqrt(binContent(bin)); }
template<typename Value_t, typename Axis_t = Value_t>
Range PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::binRange ( int  bin) const
template<typename Value_t, typename Axis_t = Value_t>
bool PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::empty ( ) const [inline]

Definition at line 74 of file Histogram.h.

{ return binValues.empty(); }
template<typename Value_t, typename Axis_t = Value_t>
Value_t PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::error ( Axis_t  x) const [inline]

Definition at line 67 of file Histogram.h.

{ return binError(findBin(x)); }
template<typename Value_t, typename Axis_t = Value_t>
void PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::fill ( Axis_t  x,
Value_t  weight = 1.0 
)
template<typename Value_t, typename Axis_t = Value_t>
int PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::findBin ( Axis_t  x) const
template<typename Value_t, typename Axis_t = Value_t>
bool PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::hasEquidistantBins ( ) const [inline]

Definition at line 75 of file Histogram.h.

{ return binULimits.empty(); }
template<typename Value_t, typename Axis_t = Value_t>
Value_t PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::integral ( Axis_t  hBound,
Axis_t  lBound = 0.0,
int  mode = 1 
) const
template<typename Value_t, typename Axis_t = Value_t>
Value_t PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::normalization ( ) const
template<typename Value_t, typename Axis_t = Value_t>
Value_t PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::normalizedError ( Axis_t  x) const [inline]

Definition at line 68 of file Histogram.h.

template<typename Value_t, typename Axis_t = Value_t>
Value_t PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::normalizedIntegral ( Axis_t  hBound,
Axis_t  lBound = 0.0,
int  mode = 1 
) const [inline]

Definition at line 93 of file Histogram.h.

        { return integral(hBound, lBound, mode) / normalization(); }
template<typename Value_t, typename Axis_t = Value_t>
Value_t PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::normalizedValue ( Axis_t  x) const [inline]

Definition at line 63 of file Histogram.h.

        { return binContent(findBin(x)) / normalization(); }
template<typename Value_t, typename Axis_t = Value_t>
int PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::numberOfBins ( ) const [inline]

Definition at line 76 of file Histogram.h.

Referenced by LikelihoodPdf::normalization().

{ return binValues.size() - 2; }
template<typename Value_t, typename Axis_t = Value_t>
template<typename OValue_t , typename OAxis_t >
Histogram& PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::operator= ( const Histogram< OValue_t, OAxis_t > &  orig)
template<typename Value_t, typename Axis_t = Value_t>
Histogram& PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::operator= ( const Histogram< Value_t, Axis_t > &  orig)
template<typename Value_t, typename Axis_t = Value_t>
Range PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::range ( ) const [inline]

Definition at line 86 of file Histogram.h.

{ return limits; }
template<typename Value_t, typename Axis_t = Value_t>
void PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::reset ( )
template<typename Value_t, typename Axis_t = Value_t>
void PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::setBinContent ( int  bin,
Value_t  value 
)
template<typename Value_t, typename Axis_t = Value_t>
void PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::setValues ( const std::vector< Value_t > &  values)
template<typename Value_t, typename Axis_t = Value_t>
template<typename OValue_t >
void PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::setValues ( const std::vector< OValue_t > &  values)
template<typename Value_t, typename Axis_t = Value_t>
const std::vector<Axis_t> PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::upperLimits ( ) const [inline]

Definition at line 59 of file Histogram.h.

{ return binULimits; }
template<typename Value_t, typename Axis_t = Value_t>
Value_t PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::value ( Axis_t  x) const [inline]

Definition at line 62 of file Histogram.h.

Referenced by LikelihoodPdf::getVal().

{ return binContent(findBin(x)); }
template<typename Value_t, typename Axis_t = Value_t>
const std::vector<Value_t>& PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::values ( ) const [inline]

Definition at line 78 of file Histogram.h.

        { return binValues; }

Member Data Documentation

template<typename Value_t, typename Axis_t = Value_t>
std::vector<Axis_t> PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::binULimits [protected]
template<typename Value_t, typename Axis_t = Value_t>
std::vector<Value_t> PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::binValues [protected]
template<typename Value_t, typename Axis_t = Value_t>
Range PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::limits [protected]

Definition at line 99 of file Histogram.h.

Referenced by PhysicsTools::Calibration::Histogram< float >::range().

template<typename Value_t, typename Axis_t = Value_t>
Value_t PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::total [mutable, protected]

Definition at line 102 of file Histogram.h.

template<typename Value_t, typename Axis_t = Value_t>
bool PhysicsTools::Calibration::Histogram< Value_t, Axis_t >::totalValid [mutable, protected]

Definition at line 103 of file Histogram.h.