CMS 3D CMS Logo

DTTMax Class Reference

Class to calculate the different TMax values according to the track path. More...

#include <CalibMuon/DTCalibration/interface/DTTMax.h>

List of all members.

Public Types

typedef dttmaxenums::SegDir SegDir
typedef dttmaxenums::SigmaFactor SigmaFactor
typedef dttmaxenums::TMaxCells TMaxCells

Public Member Functions

 DTTMax (const std::vector< DTRecHit1D > &hits, const DTSuperLayer &isl, GlobalVector dir, GlobalPoint pos, DTTTrigBaseSync *sync)
 Constructor.
InfoLayer *& getInfoLayer (int layer)
const TMaxgetTMax (TMaxCells cCase)
std::vector< const TMax * > getTMax (const DTSuperLayerId &isl)
std::vector< const TMax * > getTMax (const DTWireId &idWire)
virtual ~DTTMax ()
 Destructor.

Private Member Functions

 DTTMax ()

Private Attributes

bool debug
std::vector< InfoLayer * > theInfoLayers
SegDir theSegDir
std::string theSegType
std::vector< TMax * > theTMaxes

Classes

struct  InfoLayer
struct  TMax
 Information on each of the four TMax values in a SL. More...


Detailed Description

Class to calculate the different TMax values according to the track path.

Date
2008/08/04 16:18:46
Revision
1.1

Author:
Marina Giunta

Definition at line 34 of file DTTMax.h.


Member Typedef Documentation

typedef dttmaxenums::SegDir DTTMax::SegDir

Definition at line 37 of file DTTMax.h.

typedef dttmaxenums::SigmaFactor DTTMax::SigmaFactor

Definition at line 38 of file DTTMax.h.

typedef dttmaxenums::TMaxCells DTTMax::TMaxCells

Definition at line 36 of file DTTMax.h.


Constructor & Destructor Documentation

DTTMax::DTTMax ( const std::vector< DTRecHit1D > &  hits,
const DTSuperLayer isl,
GlobalVector  dir,
GlobalPoint  pos,
DTTTrigBaseSync sync 
)

Constructor.

DTTMax::~DTTMax (  )  [virtual]

Destructor.

Definition at line 370 of file DTTMax.cc.

References theInfoLayers, and theTMaxes.

00370                {
00371   for (vector<InfoLayer*>::const_iterator ilay = theInfoLayers.begin();
00372        ilay != theInfoLayers.end(); ilay++) {
00373     delete (*ilay);
00374   }
00375 
00376   for (vector<TMax*>::const_iterator iTmax = theTMaxes.begin();
00377        iTmax != theTMaxes.end(); iTmax++) {
00378     delete (*iTmax);
00379   }
00380 }

DTTMax::DTTMax (  )  [inline, private]

Definition at line 86 of file DTTMax.h.

00086 {}; // Hide default constructor


Member Function Documentation

InfoLayer*& DTTMax::getInfoLayer ( int  layer  )  [inline]

Definition at line 83 of file DTTMax.h.

References theInfoLayers.

00083 {return theInfoLayers[layer-1];}

const DTTMax::TMax * DTTMax::getTMax ( TMaxCells  cCase  ) 

Definition at line 365 of file DTTMax.cc.

References theTMaxes.

00365                                                 {
00366   return theTMaxes[cCase];
00367 }

vector< const DTTMax::TMax * > DTTMax::getTMax ( const DTSuperLayerId isl  ) 

Definition at line 354 of file DTTMax.cc.

References dttmaxenums::c123, dttmaxenums::c124, dttmaxenums::c134, dttmaxenums::c234, getTMax(), and v.

00354                                                                     {
00355   vector<const TMax*> v;
00356   // add TMax* to the vector only if it really exists 
00357   if((int)getTMax(c123) != 0) v.push_back(getTMax(c123)); 
00358   if((int)getTMax(c124) != 0) v.push_back(getTMax(c124));
00359   if((int)getTMax(c134) != 0) v.push_back(getTMax(c134));
00360   if((int)getTMax(c234) != 0) v.push_back(getTMax(c234));  
00361   return v;
00362 }

vector< const DTTMax::TMax * > DTTMax::getTMax ( const DTWireId idWire  ) 

Definition at line 327 of file DTTMax.cc.

References dttmaxenums::c123, dttmaxenums::c124, dttmaxenums::c134, dttmaxenums::c234, DTLayerId::layer(), and v.

Referenced by DTVDriftCalibration::analyze(), and getTMax().

00327                                                                  {
00328   vector<const TMax*> v;
00329   if(idWire.layer()==1) {
00330     v.push_back(getTMax(c123)); //FIXME: needs pointer
00331     v.push_back(getTMax(c124));
00332     v.push_back(getTMax(c134));
00333   }
00334   else if(idWire.layer()==2) {
00335     v.push_back(getTMax(c123));
00336     v.push_back(getTMax(c124));
00337     v.push_back(getTMax(c234));
00338   }
00339   else if(idWire.layer()==3) {
00340     v.push_back(getTMax(c123));
00341     v.push_back(getTMax(c134));
00342     v.push_back(getTMax(c234));
00343   }
00344   else {
00345     v.push_back(getTMax(c124));
00346     v.push_back(getTMax(c134));
00347     v.push_back(getTMax(c234));
00348   }
00349   return v;
00350 }


Member Data Documentation

bool DTTMax::debug [private]

Definition at line 86 of file DTTMax.h.

std::vector<InfoLayer*> DTTMax::theInfoLayers [private]

Definition at line 91 of file DTTMax.h.

Referenced by getInfoLayer(), and ~DTTMax().

SegDir DTTMax::theSegDir [private]

Definition at line 93 of file DTTMax.h.

std::string DTTMax::theSegType [private]

Definition at line 94 of file DTTMax.h.

std::vector<TMax*> DTTMax::theTMaxes [private]

Definition at line 92 of file DTTMax.h.

Referenced by getTMax(), and ~DTTMax().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:19:08 2009 for CMSSW by  doxygen 1.5.4