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
TruncatedAverageDeDxEstimator Class Reference

#include <TruncatedAverageDeDxEstimator.h>

Inheritance diagram for TruncatedAverageDeDxEstimator:
BaseDeDxEstimator

Public Member Functions

virtual std::pair< float, float > dedx (const reco::DeDxHitCollection &Hits)
 
 TruncatedAverageDeDxEstimator (const edm::ParameterSet &iConfig)
 
- Public Member Functions inherited from BaseDeDxEstimator
virtual void beginRun (edm::Run const &run, const edm::EventSetup &iSetup)
 
virtual ~BaseDeDxEstimator ()
 

Private Attributes

float m_fraction
 

Detailed Description

Definition at line 8 of file TruncatedAverageDeDxEstimator.h.

Constructor & Destructor Documentation

TruncatedAverageDeDxEstimator::TruncatedAverageDeDxEstimator ( const edm::ParameterSet iConfig)
inline

Definition at line 11 of file TruncatedAverageDeDxEstimator.h.

References edm::ParameterSet::getParameter(), and m_fraction.

11  {
12  m_fraction = iConfig.getParameter<double>("fraction");
13  }
T getParameter(std::string const &) const

Member Function Documentation

virtual std::pair<float,float> TruncatedAverageDeDxEstimator::dedx ( const reco::DeDxHitCollection Hits)
inlinevirtual

Implements BaseDeDxEstimator.

Definition at line 15 of file TruncatedAverageDeDxEstimator.h.

References i, and m_fraction.

15  {
16  int nTrunc = int( Hits.size()*m_fraction);
17  double sumdedx = 0;
18  for(size_t i=0;i + nTrunc < Hits.size() ; i++){
19  sumdedx+=Hits[i].charge();
20  }
21  double avrdedx = (Hits.size()) ? sumdedx/(Hits.size()-nTrunc) :0.0;
22  return std::make_pair(avrdedx,-1);
23  }
int i
Definition: DBlmapReader.cc:9

Member Data Documentation

float TruncatedAverageDeDxEstimator::m_fraction
private

Definition at line 26 of file TruncatedAverageDeDxEstimator.h.

Referenced by dedx(), and TruncatedAverageDeDxEstimator().