All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
SiTracker_dEdxProcessor Class Reference

#include <SiTracker_dEdxProcessor.h>

Inheritance diagram for SiTracker_dEdxProcessor:
[legend]

Public Types

typedef std::vector< dEdxPointdEdxVec
 
typedef double(* evalChoice )(dEdxVec, double &dEdxError)
 

Public Member Functions

virtual ProcessornewProcessor ()
 
 SiTracker_dEdxProcessor ()
 
 SiTracker_dEdxProcessor (const SiTracker_dEdxProcessor &)=delete
 
virtual ~SiTracker_dEdxProcessor ()
 
SiTracker_dEdxProcessoroperator= (const SiTracker_dEdxProcessor &)=delete
 
virtual void init ()
 Called at the begin of the job before anything is read. More...
 
virtual void processRunHeader (LCRunHeader *run)
 Called at the end of every run. More...
 
virtual void processEvent (LCEvent *evt)
 Called for every event - the working horse. More...
 
virtual void check (LCEvent *evt)
 
virtual void end ()
 Called after data processing for clean up. More...
 

Static Public Member Functions

static bool dEdxOrder (dEdxPoint p1, dEdxPoint p2)
 
static double dEdxGeneralTruncMean (dEdxVec, double &dEdxError, const double truncLo=0, const double truncHi=0)
 
static double dEdxMean (dEdxVec, double &dEdxError)
 
static double dEdxMedian (dEdxVec, double &dEdxError)
 
static double dEdxTruncMean (dEdxVec, double &dEdxError)
 
static double dEdxHarmonic (dEdxVec, double &dEdxError)
 
static double dEdxHarmonic2 (dEdxVec, double &dEdxError)
 
static double dEdxWgtHarmonic (dEdxVec, double &dEdxError)
 
static double dEdxWgtHarmonic2 (dEdxVec, double &dEdxError)
 

Static Public Attributes

static double truncFractionUp = 0.3
 
static double truncFractionLo = 0.1
 

Protected Member Functions

void addTime (int i)
 

Protected Attributes

evalChoice dEdxEval {}
 
std::string m_trackCollName {}
 
StringVec m_trkHitCollNames {}
 
bool m_cheatSensorThicknesses {}
 
FloatVec m_sensThicknessCheatVals {}
 
std::string m_dEdxEstimator {}
 
const dd4hep::rec::SurfaceMap * surfMap
 
MarlinTrk::IMarlinTrkSystem * trkSystem
 
double _bField {}
 
LayerFinderlayerFinder {}
 
int lastRunHeaderProcessed {}
 
unsigned nTimers = 8
 
std::vector
< std::chrono::duration
< double > > 
timers
 
std::chrono::high_resolution_clock::time_point lastTP
 
std::chrono::high_resolution_clock::time_point newTP
 

Detailed Description

Definition at line 49 of file SiTracker_dEdxProcessor.h.

Member Typedef Documentation

Definition at line 81 of file SiTracker_dEdxProcessor.h.

typedef double(* SiTracker_dEdxProcessor::evalChoice)(dEdxVec, double &dEdxError)

Definition at line 97 of file SiTracker_dEdxProcessor.h.

Constructor & Destructor Documentation

SiTracker_dEdxProcessor::SiTracker_dEdxProcessor ( )

Definition at line 42 of file SiTracker_dEdxProcessor.cc.

SiTracker_dEdxProcessor::SiTracker_dEdxProcessor ( const SiTracker_dEdxProcessor )
delete
SiTracker_dEdxProcessor::~SiTracker_dEdxProcessor ( )
virtual

Definition at line 110 of file SiTracker_dEdxProcessor.cc.

Member Function Documentation

void SiTracker_dEdxProcessor::addTime ( int  i)
inlineprotected

Definition at line 134 of file SiTracker_dEdxProcessor.h.

void SiTracker_dEdxProcessor::check ( LCEvent *  evt)
virtual

Definition at line 358 of file SiTracker_dEdxProcessor.cc.

double SiTracker_dEdxProcessor::dEdxGeneralTruncMean ( dEdxVec  hitVec,
double &  dEdxError,
const double  truncLo = 0,
const double  truncHi = 0 
)
static

Definition at line 389 of file SiTracker_dEdxProcessor.cc.

double SiTracker_dEdxProcessor::dEdxHarmonic ( dEdxVec  hitVec,
double &  dEdxError 
)
static

Definition at line 470 of file SiTracker_dEdxProcessor.cc.

double SiTracker_dEdxProcessor::dEdxHarmonic2 ( dEdxVec  hitVec,
double &  dEdxError 
)
static

Definition at line 504 of file SiTracker_dEdxProcessor.cc.

double SiTracker_dEdxProcessor::dEdxMean ( dEdxVec  hitVec,
double &  dEdxError 
)
static

Definition at line 426 of file SiTracker_dEdxProcessor.cc.

double SiTracker_dEdxProcessor::dEdxMedian ( dEdxVec  hitVec,
double &  dEdxError 
)
static

Definition at line 433 of file SiTracker_dEdxProcessor.cc.

static bool SiTracker_dEdxProcessor::dEdxOrder ( dEdxPoint  p1,
dEdxPoint  p2 
)
inlinestatic

Definition at line 82 of file SiTracker_dEdxProcessor.h.

double SiTracker_dEdxProcessor::dEdxTruncMean ( dEdxVec  hitVec,
double &  dEdxError 
)
static

Definition at line 463 of file SiTracker_dEdxProcessor.cc.

double SiTracker_dEdxProcessor::dEdxWgtHarmonic ( dEdxVec  hitVec,
double &  dEdxError 
)
static

Definition at line 539 of file SiTracker_dEdxProcessor.cc.

double SiTracker_dEdxProcessor::dEdxWgtHarmonic2 ( dEdxVec  hitVec,
double &  dEdxError 
)
static

Definition at line 577 of file SiTracker_dEdxProcessor.cc.

void SiTracker_dEdxProcessor::end ( )
virtual

Called after data processing for clean up.

Definition at line 363 of file SiTracker_dEdxProcessor.cc.

void SiTracker_dEdxProcessor::init ( )
virtual

Called at the begin of the job before anything is read.

Use to initialize the processor, e.g. book histograms.

Definition at line 116 of file SiTracker_dEdxProcessor.cc.

virtual Processor* SiTracker_dEdxProcessor::newProcessor ( )
inlinevirtual

Definition at line 52 of file SiTracker_dEdxProcessor.h.

SiTracker_dEdxProcessor& SiTracker_dEdxProcessor::operator= ( const SiTracker_dEdxProcessor )
delete
void SiTracker_dEdxProcessor::processEvent ( LCEvent *  evt)
virtual

Called for every event - the working horse.

Definition at line 204 of file SiTracker_dEdxProcessor.cc.

void SiTracker_dEdxProcessor::processRunHeader ( LCRunHeader *  run)
virtual

Called at the end of every run.

Definition at line 196 of file SiTracker_dEdxProcessor.cc.

Member Data Documentation

double SiTracker_dEdxProcessor::_bField {}
protected

Definition at line 124 of file SiTracker_dEdxProcessor.h.

evalChoice SiTracker_dEdxProcessor::dEdxEval {}
protected

Definition at line 101 of file SiTracker_dEdxProcessor.h.

int SiTracker_dEdxProcessor::lastRunHeaderProcessed {}
protected

Definition at line 128 of file SiTracker_dEdxProcessor.h.

std::chrono::high_resolution_clock::time_point SiTracker_dEdxProcessor::lastTP
protected

Definition at line 132 of file SiTracker_dEdxProcessor.h.

LayerFinder* SiTracker_dEdxProcessor::layerFinder {}
protected

Definition at line 126 of file SiTracker_dEdxProcessor.h.

bool SiTracker_dEdxProcessor::m_cheatSensorThicknesses {}
protected

Definition at line 113 of file SiTracker_dEdxProcessor.h.

std::string SiTracker_dEdxProcessor::m_dEdxEstimator {}
protected

Definition at line 118 of file SiTracker_dEdxProcessor.h.

FloatVec SiTracker_dEdxProcessor::m_sensThicknessCheatVals {}
protected

Definition at line 115 of file SiTracker_dEdxProcessor.h.

std::string SiTracker_dEdxProcessor::m_trackCollName {}
protected

Definition at line 105 of file SiTracker_dEdxProcessor.h.

StringVec SiTracker_dEdxProcessor::m_trkHitCollNames {}
protected

Definition at line 110 of file SiTracker_dEdxProcessor.h.

std::chrono::high_resolution_clock::time_point SiTracker_dEdxProcessor::newTP
protected

Definition at line 133 of file SiTracker_dEdxProcessor.h.

unsigned SiTracker_dEdxProcessor::nTimers = 8
protected

Definition at line 130 of file SiTracker_dEdxProcessor.h.

const dd4hep::rec::SurfaceMap* SiTracker_dEdxProcessor::surfMap
protected

Definition at line 121 of file SiTracker_dEdxProcessor.h.

std::vector<std::chrono::duration<double> > SiTracker_dEdxProcessor::timers
protected

Definition at line 131 of file SiTracker_dEdxProcessor.h.

MarlinTrk::IMarlinTrkSystem* SiTracker_dEdxProcessor::trkSystem
protected

Definition at line 122 of file SiTracker_dEdxProcessor.h.

double SiTracker_dEdxProcessor::truncFractionLo = 0.1
static

Definition at line 84 of file SiTracker_dEdxProcessor.h.

double SiTracker_dEdxProcessor::truncFractionUp = 0.3
static

Definition at line 83 of file SiTracker_dEdxProcessor.h.


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