CMS 3D CMS Logo

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

#include <PedeLabelerBase.h>

Inheritance diagram for PedeLabelerBase:
MomentumDependentPedeLabeler PedeLabeler RunRangeDependentPedeLabeler

Classes

class  TopLevelAlignables
 

Public Types

typedef
AlignmentAlgorithmBase::RunNumber 
RunNumber
 
typedef
AlignmentAlgorithmBase::RunRange 
RunRange
 
typedef std::vector< RunRangeRunRanges
 

Public Member Functions

virtual AlignablealignableFromLabel (unsigned int label) const =0
 
virtual unsigned int alignableLabel (Alignable *alignable) const =0
 
virtual unsigned int alignableLabelFromLabel (unsigned int label) const =0
 alignable label from parameter label (works also for alignable label...) More...
 
virtual unsigned int alignableLabelFromParamAndInstance (Alignable *alignable, unsigned int param, unsigned int instance) const =0
 
virtual bool hasSplitParameters (Alignable *alignable) const =0
 returns true if the alignable has parameters that are split into various bins More...
 
virtual unsigned int lasBeamIdFromLabel (unsigned int label) const =0
 
virtual unsigned int lasBeamLabel (unsigned int lasBeamId) const =0
 
virtual unsigned int numberOfParameterInstances (Alignable *alignable, int param=-1) const =0
 returns the number of instances for a given parameter More...
 
virtual unsigned int parameterLabel (unsigned int aliLabel, unsigned int parNum) const =0
 returns the label for a given alignable parameter number combination More...
 
virtual unsigned int parameterLabel (Alignable *alignable, unsigned int parNum, const AlignmentAlgorithmBase::EventInfo &eventInfo, const TrajectoryStateOnSurface &tsos) const =0
 
virtual unsigned int paramNumFromLabel (unsigned int paramLabel) const =0
 parameter number, 0 <= .. < theMaxNumParam, belonging to unique parameter label More...
 
 PedeLabelerBase (const TopLevelAlignables &alignables, const edm::ParameterSet &config)
 constructor from three Alignables (null pointers allowed ) More...
 
virtual const RunRangerunRangeFromLabel (unsigned int label) const
 
virtual ~PedeLabelerBase ()
 

Static Public Attributes

static const unsigned int theMaxNumParam = RigidBodyAlignmentParameters::N_PARAM + 14
 
static const unsigned int theMinLabel = 1
 
static const unsigned int theParamInstanceOffset = 700000
 

Protected Attributes

const RunRange theOpenRunRange
 

Detailed Description

Baseclass for pede labelers

Original author: Andreas Mussgiller, January 2011

Date:
2011/02/18 17:08:13
Revision:
1.2

(last update by

Author:
mussgill

)

Definition at line 29 of file PedeLabelerBase.h.

Member Typedef Documentation

Definition at line 33 of file PedeLabelerBase.h.

Definition at line 34 of file PedeLabelerBase.h.

typedef std::vector<RunRange> PedeLabelerBase::RunRanges

Definition at line 35 of file PedeLabelerBase.h.

Constructor & Destructor Documentation

PedeLabelerBase::PedeLabelerBase ( const TopLevelAlignables alignables,
const edm::ParameterSet config 
)

constructor from three Alignables (null pointers allowed )

Definition at line 22 of file PedeLabelerBase.cc.

24  :theOpenRunRange(std::make_pair<RunNumber,RunNumber>((RunNumber)cond::timeTypeSpecs[cond::runnumber].beginValue,
26 {
27 
28 }
const TimeTypeSpecs timeTypeSpecs[]
Definition: Time.cc:22
AlignmentAlgorithmBase::RunNumber RunNumber
const RunRange theOpenRunRange
virtual PedeLabelerBase::~PedeLabelerBase ( )
inlinevirtual

non-virtual destructor: do not inherit from this class

Definition at line 53 of file PedeLabelerBase.h.

53 {}

Member Function Documentation

virtual Alignable* PedeLabelerBase::alignableFromLabel ( unsigned int  label) const
pure virtual

Alignable from alignable or parameter label, null if no alignable (but error only if not las beam, either!)

Implemented in RunRangeDependentPedeLabeler, MomentumDependentPedeLabeler, and PedeLabeler.

Referenced by PedeReader::setParameter().

virtual unsigned int PedeLabelerBase::alignableLabel ( Alignable alignable) const
pure virtual

uniqueId of Alignable, 0 if alignable not known between this ID and the next there is enough 'space' to add parameter numbers 0...nPar-1 to make unique IDs for the labels of active parameters

Implemented in RunRangeDependentPedeLabeler, MomentumDependentPedeLabeler, and PedeLabeler.

Referenced by MillePedeAlignmentAlgorithm::addPxbSurvey(), MillePedeAlignmentAlgorithm::buildUserVariables(), PedeReader::checkAliParams(), PedeSteerer::hierarchyConstraint(), PedeSteerer::presigmasFile(), and PedeReader::setParameter().

virtual unsigned int PedeLabelerBase::alignableLabelFromLabel ( unsigned int  label) const
pure virtual

alignable label from parameter label (works also for alignable label...)

Implemented in RunRangeDependentPedeLabeler, MomentumDependentPedeLabeler, and PedeLabeler.

virtual unsigned int PedeLabelerBase::alignableLabelFromParamAndInstance ( Alignable alignable,
unsigned int  param,
unsigned int  instance 
) const
pure virtual

uniqueId of Alignable for a given parameter index and instance, 0 if alignable not known between this ID and the next there is enough 'space' to add parameter numbers 0...nPar-1 to make unique IDs for the labels of active parameters

Implemented in RunRangeDependentPedeLabeler, MomentumDependentPedeLabeler, and PedeLabeler.

Referenced by PedeSteerer::fixParameter().

virtual bool PedeLabelerBase::hasSplitParameters ( Alignable alignable) const
pure virtual

returns true if the alignable has parameters that are split into various bins

Implemented in RunRangeDependentPedeLabeler, MomentumDependentPedeLabeler, and PedeLabeler.

virtual unsigned int PedeLabelerBase::lasBeamIdFromLabel ( unsigned int  label) const
pure virtual

las beam id from las beam or parameter label zero and error if not a valid las beam label

Implemented in RunRangeDependentPedeLabeler, MomentumDependentPedeLabeler, and PedeLabeler.

Referenced by PedeReader::setParameter().

virtual unsigned int PedeLabelerBase::lasBeamLabel ( unsigned int  lasBeamId) const
pure virtual
virtual unsigned int PedeLabelerBase::numberOfParameterInstances ( Alignable alignable,
int  param = -1 
) const
pure virtual

returns the number of instances for a given parameter

Implemented in RunRangeDependentPedeLabeler, MomentumDependentPedeLabeler, and PedeLabeler.

Referenced by PedeSteerer::fixParameters().

virtual unsigned int PedeLabelerBase::parameterLabel ( unsigned int  aliLabel,
unsigned int  parNum 
) const
pure virtual
virtual unsigned int PedeLabelerBase::parameterLabel ( Alignable alignable,
unsigned int  parNum,
const AlignmentAlgorithmBase::EventInfo eventInfo,
const TrajectoryStateOnSurface tsos 
) const
pure virtual

returns the label for a given alignable parameter number combination in case the parameters are split into various instances

Implemented in RunRangeDependentPedeLabeler, MomentumDependentPedeLabeler, and PedeLabeler.

virtual unsigned int PedeLabelerBase::paramNumFromLabel ( unsigned int  paramLabel) const
pure virtual

parameter number, 0 <= .. < theMaxNumParam, belonging to unique parameter label

Implemented in RunRangeDependentPedeLabeler, MomentumDependentPedeLabeler, and PedeLabeler.

Referenced by PedeReader::setParameter().

virtual const RunRange& PedeLabelerBase::runRangeFromLabel ( unsigned int  label) const
inlinevirtual

Reimplemented in RunRangeDependentPedeLabeler.

Definition at line 90 of file PedeLabelerBase.h.

References theOpenRunRange.

Referenced by PedeReader::read().

90  {
91  return theOpenRunRange;
92  }
const RunRange theOpenRunRange

Member Data Documentation

const unsigned int PedeLabelerBase::theMaxNumParam = RigidBodyAlignmentParameters::N_PARAM + 14
static
const unsigned int PedeLabelerBase::theMinLabel = 1
static
const RunRange PedeLabelerBase::theOpenRunRange
protected
const unsigned int PedeLabelerBase::theParamInstanceOffset = 700000
static