1 #ifndef MomentumDEPENDENTPEDELABELER_H
2 #define MomentumDEPENDENTPEDELABELER_H
43 unsigned int instance)
const override;
44 unsigned int lasBeamLabel(
unsigned int lasBeamId)
const override;
46 unsigned int parameterLabel(
unsigned int aliLabel,
unsigned int parNum)
const override;
unsigned int parameterLabel(unsigned int aliLabel, unsigned int parNum) const override
returns the label for a given alignable parameter number combination
unsigned int alignableLabel(Alignable *alignable) const override
Return 32-bit unique label for alignable, 0 indicates failure.
unsigned int alignableLabelFromParamAndInstance(Alignable *alignable, unsigned int param, unsigned int instance) const override
unsigned int lasBeamIdFromLabel(unsigned int label) const override
~MomentumDependentPedeLabeler() override
std::map< Alignable *, MomentumRangeParamMap > AlignableToMomentumRangeMap
static PFTauRenderPlugin instance
std::vector< std::string > decompose(const std::string &s, std::string::value_type delimiter) const
std::map< unsigned int, Alignable * > IdToAlignableMap
unsigned int alignableLabelFromLabel(unsigned int label) const override
alignable label from parameter label (works also for alignable label...)
UintUintMap theLabelToLasBeamMap
labels for las beams
std::pair< float, float > MomentumRange
MomentumDependentPedeLabeler(const PedeLabelerBase::TopLevelAlignables &alignables, const edm::ParameterSet &config)
constructor from three Alignables (null pointers allowed )
define event information passed to algorithms
unsigned int lasBeamLabel(unsigned int lasBeamId) const override
AlignableToMomentumRangeMap::value_type AlignableToMomentumRangePair
Container::value_type value_type
unsigned int maxNumberOfParameterInstances() const override
returns the maximum number of instances for any parameter of an Alignable*
std::map< unsigned int, unsigned int > UintUintMap
unsigned int buildMap(const align::Alignables &)
returns size of map
std::map< Alignable *, unsigned int > AlignableToIdMap
UintUintMap theLasBeamToLabelMap
reverse map
unsigned int buildReverseMap()
returns size of map
std::map< unsigned int, MomentumRangeVector > MomentumRangeParamMap
Alignable * alignableFromLabel(unsigned int label) const override
std::vector< Alignable * > Alignables
std::vector< MomentumRange > MomentumRangeVector
unsigned int paramNumFromLabel(unsigned int paramLabel) const override
parameter number, 0 <= .. < theMaxNumParam, belonging to unique parameter label
tuple config
parse the configuration file
unsigned int buildMomentumDependencyMap(AlignableTracker *aliTracker, AlignableMuon *aliMuon, AlignableExtras *extras, const edm::ParameterSet &config)
unsigned int numberOfParameterInstances(Alignable *alignable, int param=-1) const override
returns the number of instances for a given parameter
bool hasSplitParameters(Alignable *alignable) const override
returns true if the alignable has parameters that are split into various bins
const MomentumRange theOpenMomentumRange
reverse of the above
unsigned int theMaxNumberOfParameterInstances
AlignableToIdMap theAlignableToIdMap
std::vector< unsigned int > convertParamSel(const std::string &selString) const
Constructor of the full muon geometry.
AlignableToMomentumRangeMap theAlignableToMomentumRangeMap
providing unique ID for alignable, space for param IDs
AlignableToIdMap::value_type AlignableToIdPair
IdToAlignableMap theIdToAlignableMap
providing unique ID for alignable, space for param IDs