#include <MomentumDependentPedeLabeler.h>
Public Member Functions | |
Alignable * | alignableFromLabel (unsigned int label) const |
unsigned int | alignableLabel (Alignable *alignable) const |
Return 32-bit unique label for alignable, 0 indicates failure. More... | |
unsigned int | alignableLabelFromLabel (unsigned int label) const |
alignable label from parameter label (works also for alignable label...) More... | |
unsigned int | alignableLabelFromParamAndInstance (Alignable *alignable, unsigned int param, unsigned int instance) const |
bool | hasSplitParameters (Alignable *alignable) const |
returns true if the alignable has parameters that are split into various bins More... | |
unsigned int | lasBeamIdFromLabel (unsigned int label) const |
unsigned int | lasBeamLabel (unsigned int lasBeamId) const |
unsigned int | maxNumberOfParameterInstances () const |
returns the maximum number of instances for any parameter of an Alignable* More... | |
MomentumDependentPedeLabeler (const PedeLabelerBase::TopLevelAlignables &alignables, const edm::ParameterSet &config) | |
constructor from three Alignables (null pointers allowed ) More... | |
unsigned int | numberOfParameterInstances (Alignable *alignable, int param=-1) const |
returns the number of instances for a given parameter More... | |
unsigned int | parameterLabel (unsigned int aliLabel, unsigned int parNum) const |
returns the label for a given alignable parameter number combination More... | |
unsigned int | parameterLabel (Alignable *alignable, unsigned int parNum, const AlignmentAlgorithmBase::EventInfo &eventInfo, const TrajectoryStateOnSurface &tsos) const |
unsigned int | paramNumFromLabel (unsigned int paramLabel) const |
parameter number, 0 <= .. < theMaxNumParam, belonging to unique parameter label More... | |
~MomentumDependentPedeLabeler () | |
Public Member Functions inherited from PedeLabelerBase | |
virtual void | addCalibrations (const std::vector< IntegratedCalibrationBase * > &iCals) |
tell labeler to treat also integrated calibrations More... | |
const AlignableExtras * | alignableExtras () const |
const AlignableMuon * | alignableMuon () const |
const AlignableTracker * | alignableTracker () const |
virtual unsigned int | calibrationLabel (const IntegratedCalibrationBase *calib, unsigned int paramNum) const |
label for parameter 'paramNum' (counted from 0) of an integrated calibration More... | |
virtual std::pair< IntegratedCalibrationBase *, unsigned int > | calibrationParamFromLabel (unsigned int label) const |
virtual unsigned int | firstFreeLabel () const |
unsigned int | parameterInstanceOffset () const |
offset in labels between consecutive parameter instances of Alignable*s More... | |
PedeLabelerBase (const TopLevelAlignables &alignables, const edm::ParameterSet &config) | |
constructor from three Alignables (null pointers allowed ) More... | |
virtual const RunRange & | runRangeFromLabel (unsigned int label) const |
virtual | ~PedeLabelerBase () |
Private Types | |
typedef std::map< Alignable *, unsigned int > | AlignableToIdMap |
typedef AlignableToIdMap::value_type | AlignableToIdPair |
typedef std::map< Alignable *, MomentumRangeParamMap > | AlignableToMomentumRangeMap |
typedef AlignableToMomentumRangeMap::value_type | AlignableToMomentumRangePair |
typedef std::map< unsigned int, Alignable * > | IdToAlignableMap |
typedef std::pair< float, float > | MomentumRange |
typedef std::map< unsigned int, MomentumRangeVector > | MomentumRangeParamMap |
typedef std::vector< MomentumRange > | MomentumRangeVector |
typedef std::map< unsigned int, unsigned int > | UintUintMap |
Private Member Functions | |
unsigned int | buildMap (const std::vector< Alignable * > &alis) |
returns size of map More... | |
unsigned int | buildMomentumDependencyMap (AlignableTracker *aliTracker, AlignableMuon *aliMuon, AlignableExtras *extras, const edm::ParameterSet &config) |
unsigned int | buildReverseMap () |
returns size of map More... | |
std::vector< unsigned int > | convertParamSel (const std::string &selString) const |
std::vector< std::string > | decompose (const std::string &s, std::string::value_type delimiter) const |
Private Attributes | |
AlignableToIdMap | theAlignableToIdMap |
AlignableToMomentumRangeMap | theAlignableToMomentumRangeMap |
providing unique ID for alignable, space for param IDs More... | |
IdToAlignableMap | theIdToAlignableMap |
providing unique ID for alignable, space for param IDs More... | |
UintUintMap | theLabelToLasBeamMap |
labels for las beams More... | |
UintUintMap | theLasBeamToLabelMap |
reverse map More... | |
unsigned int | theMaxNumberOfParameterInstances |
const MomentumRange | theOpenMomentumRange |
reverse of the above More... | |
Additional Inherited Members | |
Public Types inherited from PedeLabelerBase | |
using | RunNumber = align::RunNumber |
using | RunRange = align::RunRange |
using | RunRanges = align::RunRanges |
Static Public Attributes inherited from PedeLabelerBase | |
static const unsigned int | theMaxNumParam = RigidBodyAlignmentParameters::N_PARAM + 14 |
static const unsigned int | theMinLabel = 1 |
static const unsigned int | theParamInstanceOffset = 700000 |
Protected Member Functions inherited from PedeLabelerBase | |
virtual unsigned int | firstNonAlignableLabel () const |
const AlignableObjectId & | objectIdProvider () const |
Return tracker alignable object ID provider derived from the tracker's geometry. More... | |
Protected Attributes inherited from PedeLabelerBase | |
const RunRange | theOpenRunRange |
provides labels for AlignmentParameters for pede
(last update by
)
Definition at line 25 of file MomentumDependentPedeLabeler.h.
|
private |
Definition at line 72 of file MomentumDependentPedeLabeler.h.
|
private |
Definition at line 73 of file MomentumDependentPedeLabeler.h.
|
private |
Definition at line 77 of file MomentumDependentPedeLabeler.h.
|
private |
Definition at line 78 of file MomentumDependentPedeLabeler.h.
|
private |
Definition at line 79 of file MomentumDependentPedeLabeler.h.
|
private |
Definition at line 74 of file MomentumDependentPedeLabeler.h.
|
private |
Definition at line 76 of file MomentumDependentPedeLabeler.h.
|
private |
Definition at line 75 of file MomentumDependentPedeLabeler.h.
|
private |
Definition at line 80 of file MomentumDependentPedeLabeler.h.
MomentumDependentPedeLabeler::MomentumDependentPedeLabeler | ( | const PedeLabelerBase::TopLevelAlignables & | alignables, |
const edm::ParameterSet & | config | ||
) |
constructor from three Alignables (null pointers allowed )
Definition at line 27 of file MomentumDependentPedeLabeler.cc.
References PedeLabelerBase::TopLevelAlignables::aliExtras_, PedeLabelerBase::TopLevelAlignables::aliMuon_, PedeLabelerBase::TopLevelAlignables::aliTracker_, buildMap(), buildMomentumDependencyMap(), buildReverseMap(), and AlignableExtras::components().
MomentumDependentPedeLabeler::~MomentumDependentPedeLabeler | ( | ) |
non-virtual destructor: do not inherit from this class
Definition at line 54 of file MomentumDependentPedeLabeler.cc.
|
virtual |
Alignable from alignable or parameter label, null if no alignable (but error only if not las beam, either!)
Implements PedeLabelerBase.
Definition at line 250 of file MomentumDependentPedeLabeler.cc.
References alignableLabelFromLabel(), position, theIdToAlignableMap, theLabelToLasBeamMap, and PedeLabelerBase::theMinLabel.
Referenced by maxNumberOfParameterInstances().
|
virtual |
Return 32-bit unique label for alignable, 0 indicates failure.
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
Implements PedeLabelerBase.
Definition at line 60 of file MomentumDependentPedeLabeler.cc.
References Alignable::alignableObjectId(), Alignable::id(), position, and theAlignableToIdMap.
|
virtual |
alignable label from parameter label (works also for alignable label...)
Implements PedeLabelerBase.
Definition at line 244 of file MomentumDependentPedeLabeler.cc.
References paramNumFromLabel().
Referenced by alignableFromLabel(), lasBeamIdFromLabel(), and maxNumberOfParameterInstances().
|
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
Implements PedeLabelerBase.
Definition at line 80 of file MomentumDependentPedeLabeler.cc.
References Alignable::alignableObjectId(), Exception, Alignable::id(), position, theAlignableToIdMap, theAlignableToMomentumRangeMap, and PedeLabelerBase::theParamInstanceOffset.
|
private |
returns size of map
Definition at line 412 of file MomentumDependentPedeLabeler.cc.
References Exception, hcalTTPDigis_cfi::id, theAlignableToIdMap, theLasBeamToLabelMap, PedeLabelerBase::theMaxNumParam, PedeLabelerBase::theMinLabel, and PedeLabelerBase::theParamInstanceOffset.
Referenced by MomentumDependentPedeLabeler().
|
private |
Definition at line 317 of file MomentumDependentPedeLabeler.cc.
References AlignmentParameterSelector::addSelection(), AlignmentParameterSelector::clear(), convertParamSel(), decompose(), Exception, edm::ParameterSet::getParameter(), AlignableObjectId::idToString(), NULL, PedeLabelerBase::objectIdProvider(), AlignmentParameterSelector::selectedAlignables(), AlignmentParameters::size(), theAlignableToMomentumRangeMap, edm::tokenize(), and pileupCalc::upper.
Referenced by MomentumDependentPedeLabeler().
|
private |
returns size of map
Definition at line 459 of file MomentumDependentPedeLabeler.cc.
References DEFINE_EDM_PLUGIN, crabWrapper::key, hpstanc_transforms::max, numberOfParameterInstances(), theAlignableToIdMap, theIdToAlignableMap, theLabelToLasBeamMap, theLasBeamToLabelMap, theMaxNumberOfParameterInstances, and PedeLabelerBase::theParamInstanceOffset.
Referenced by MomentumDependentPedeLabeler().
|
private |
Definition at line 308 of file MomentumDependentPedeLabeler.cc.
References mps_fire::result.
Referenced by buildMomentumDependencyMap().
|
private |
Definition at line 288 of file MomentumDependentPedeLabeler.cc.
References mps_fire::result.
Referenced by buildMomentumDependencyMap().
|
virtual |
returns true if the alignable has parameters that are split into various bins
Implements PedeLabelerBase.
Definition at line 198 of file MomentumDependentPedeLabeler.cc.
References theAlignableToMomentumRangeMap.
|
virtual |
las beam id from las beam or parameter label zero and error if not a valid las beam label
Implements PedeLabelerBase.
Definition at line 271 of file MomentumDependentPedeLabeler.cc.
References alignableLabelFromLabel(), position, theLabelToLasBeamMap, and PedeLabelerBase::theMinLabel.
Referenced by maxNumberOfParameterInstances().
|
virtual |
Implements PedeLabelerBase.
Definition at line 115 of file MomentumDependentPedeLabeler.cc.
References position, and theLasBeamToLabelMap.
|
inlinevirtual |
returns the maximum number of instances for any parameter of an Alignable*
Implements PedeLabelerBase.
Definition at line 58 of file MomentumDependentPedeLabeler.h.
References alignableFromLabel(), alignableLabelFromLabel(), diffTwoXMLs::label, lasBeamIdFromLabel(), paramNumFromLabel(), and theMaxNumberOfParameterInstances.
|
virtual |
returns the number of instances for a given parameter
Implements PedeLabelerBase.
Definition at line 206 of file MomentumDependentPedeLabeler.cc.
References hpstanc_transforms::max, and theAlignableToMomentumRangeMap.
Referenced by buildReverseMap().
|
virtual |
returns the label for a given alignable parameter number combination
Implements PedeLabelerBase.
Definition at line 129 of file MomentumDependentPedeLabeler.cc.
References Exception, and PedeLabelerBase::theMaxNumParam.
|
virtual |
returns the label for a given alignable parameter number combination in case the parameters are split into v
Implements PedeLabelerBase.
Definition at line 140 of file MomentumDependentPedeLabeler.cc.
References Alignable::alignableObjectId(), Exception, TrajectoryStateOnSurface::globalMomentum(), Alignable::id(), PV3DBase< T, PVType, FrameType >::mag(), PFRecoTauDiscriminationByIsolation_cfi::offset, position, edm::second(), theAlignableToIdMap, theAlignableToMomentumRangeMap, PedeLabelerBase::theMaxNumParam, and PedeLabelerBase::theParamInstanceOffset.
|
virtual |
parameter number, 0 <= .. < theMaxNumParam, belonging to unique parameter label
Implements PedeLabelerBase.
Definition at line 233 of file MomentumDependentPedeLabeler.cc.
References PedeLabelerBase::theMinLabel, and PedeLabelerBase::theParamInstanceOffset.
Referenced by alignableLabelFromLabel(), and maxNumberOfParameterInstances().
|
private |
Definition at line 94 of file MomentumDependentPedeLabeler.h.
Referenced by alignableLabel(), alignableLabelFromParamAndInstance(), buildMap(), buildReverseMap(), and parameterLabel().
|
private |
providing unique ID for alignable, space for param IDs
Definition at line 95 of file MomentumDependentPedeLabeler.h.
Referenced by alignableLabelFromParamAndInstance(), buildMomentumDependencyMap(), hasSplitParameters(), numberOfParameterInstances(), and parameterLabel().
|
private |
providing unique ID for alignable, space for param IDs
Definition at line 96 of file MomentumDependentPedeLabeler.h.
Referenced by alignableFromLabel(), and buildReverseMap().
|
private |
labels for las beams
Definition at line 98 of file MomentumDependentPedeLabeler.h.
Referenced by alignableFromLabel(), buildReverseMap(), and lasBeamIdFromLabel().
|
private |
reverse map
Definition at line 97 of file MomentumDependentPedeLabeler.h.
Referenced by buildMap(), buildReverseMap(), and lasBeamLabel().
|
private |
Definition at line 100 of file MomentumDependentPedeLabeler.h.
Referenced by buildReverseMap(), and maxNumberOfParameterInstances().
|
private |
reverse of the above
Definition at line 99 of file MomentumDependentPedeLabeler.h.