CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
ME0SegAlgoMM Class Reference

#include <ME0SegAlgoMM.h>

Inheritance diagram for ME0SegAlgoMM:
ME0SegmentAlgorithm

Public Types

typedef std::vector< const
ME0RecHit * > 
EnsembleHitContainer
 Typedefs. More...
 
typedef std::vector
< EnsembleHitContainer
ProtoSegments
 
- Public Types inherited from ME0SegmentAlgorithm
typedef std::pair< const
ME0EtaPartition *, std::map
< uint32_t, const
ME0EtaPartition * > > 
ME0Ensemble
 

Public Member Functions

 ME0SegAlgoMM (const edm::ParameterSet &ps)
 Constructor. More...
 
std::vector< ME0Segmentrun (const ME0Ensemble &ensemble, const EnsembleHitContainer &rechits)
 
virtual ~ME0SegAlgoMM ()
 Destructor. More...
 
- Public Member Functions inherited from ME0SegmentAlgorithm
 ME0SegmentAlgorithm (const edm::ParameterSet &)
 Constructor. More...
 
virtual std::vector< ME0Segmentrun (const ME0Ensemble &ensemble, const std::vector< const ME0RecHit * > &rechits)=0
 
virtual ~ME0SegmentAlgorithm ()
 Destructor. More...
 

Private Member Functions

std::vector< ME0SegmentbuildSegments (const EnsembleHitContainer &rechits)
 
ProtoSegments chainHits (const EnsembleHitContainer &rechits)
 
ProtoSegments clusterHits (const EnsembleHitContainer &rechits)
 Utility functions. More...
 
bool isGoodToMerge (const EnsembleHitContainer &newChain, const EnsembleHitContainer &oldChain)
 

Private Attributes

bool debug
 
double dEtaChainBoxMax
 
double dPhiChainBoxMax
 
double dTimeChainBoxMax
 
double dXclusBoxMax
 
double dYclusBoxMax
 
int maxRecHitsInCluster
 
unsigned int minHitsPerSegment
 
const std::string myName
 
bool preClustering
 
bool preClustering_useChaining
 
EnsembleHitContainer proto_segment
 
std::unique_ptr< ME0SegFitsfit_
 
ME0Ensemble theEnsemble
 

Static Private Attributes

static float running_max =999999.
 

Detailed Description

This algorithm is very basic no attemp to deal with ambiguities , noise etc. The ME0 track segments is built out of the rechit's in a the 6 ME0 Layer denoted as the ME0 Ensabmle .

Authors
Marcello Maggi

Definition at line 24 of file ME0SegAlgoMM.h.

Member Typedef Documentation

typedef std::vector<const ME0RecHit*> ME0SegAlgoMM::EnsembleHitContainer

Typedefs.

Definition at line 30 of file ME0SegAlgoMM.h.

Definition at line 31 of file ME0SegAlgoMM.h.

Constructor & Destructor Documentation

ME0SegAlgoMM::ME0SegAlgoMM ( const edm::ParameterSet ps)
explicit

Constructor.

Definition at line 25 of file ME0SegAlgoMM.cc.

ME0SegAlgoMM::~ME0SegAlgoMM ( )
virtual

Destructor.

Definition at line 47 of file ME0SegAlgoMM.cc.

Member Function Documentation

std::vector< ME0Segment > ME0SegAlgoMM::buildSegments ( const EnsembleHitContainer rechits)
private

Definition at line 323 of file ME0SegAlgoMM.cc.

ME0SegAlgoMM::ProtoSegments ME0SegAlgoMM::chainHits ( const EnsembleHitContainer rechits)
private

Definition at line 204 of file ME0SegAlgoMM.cc.

ME0SegAlgoMM::ProtoSegments ME0SegAlgoMM::clusterHits ( const EnsembleHitContainer rechits)
private

Utility functions.

Definition at line 104 of file ME0SegAlgoMM.cc.

bool ME0SegAlgoMM::isGoodToMerge ( const EnsembleHitContainer newChain,
const EnsembleHitContainer oldChain 
)
private

Definition at line 271 of file ME0SegAlgoMM.cc.

std::vector< ME0Segment > ME0SegAlgoMM::run ( const ME0Ensemble ensemble,
const EnsembleHitContainer rechits 
)

Build segments for all desired groups of hits

Definition at line 51 of file ME0SegAlgoMM.cc.

Member Data Documentation

bool ME0SegAlgoMM::debug
private

Definition at line 63 of file ME0SegAlgoMM.h.

double ME0SegAlgoMM::dEtaChainBoxMax
private

Definition at line 70 of file ME0SegAlgoMM.h.

double ME0SegAlgoMM::dPhiChainBoxMax
private

Definition at line 69 of file ME0SegAlgoMM.h.

double ME0SegAlgoMM::dTimeChainBoxMax
private

Definition at line 71 of file ME0SegAlgoMM.h.

double ME0SegAlgoMM::dXclusBoxMax
private

Definition at line 66 of file ME0SegAlgoMM.h.

double ME0SegAlgoMM::dYclusBoxMax
private

Definition at line 67 of file ME0SegAlgoMM.h.

int ME0SegAlgoMM::maxRecHitsInCluster
private

Definition at line 72 of file ME0SegAlgoMM.h.

unsigned int ME0SegAlgoMM::minHitsPerSegment
private

Definition at line 64 of file ME0SegAlgoMM.h.

const std::string ME0SegAlgoMM::myName
private

Definition at line 59 of file ME0SegAlgoMM.h.

bool ME0SegAlgoMM::preClustering
private

Definition at line 65 of file ME0SegAlgoMM.h.

bool ME0SegAlgoMM::preClustering_useChaining
private

Definition at line 68 of file ME0SegAlgoMM.h.

EnsembleHitContainer ME0SegAlgoMM::proto_segment
private

Definition at line 75 of file ME0SegAlgoMM.h.

float ME0SegAlgoMM::running_max =999999.
staticprivate

Definition at line 78 of file ME0SegAlgoMM.h.

std::unique_ptr<ME0SegFit> ME0SegAlgoMM::sfit_
private

Definition at line 79 of file ME0SegAlgoMM.h.

ME0Ensemble ME0SegAlgoMM::theEnsemble
private

Definition at line 76 of file ME0SegAlgoMM.h.