1 #ifndef MomentumDEPENDENTPEDELABELER_H 2 #define MomentumDEPENDENTPEDELABELER_H 46 unsigned int instance)
const override;
47 unsigned int lasBeamLabel(
unsigned int lasBeamId)
const override;
49 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 alignableLabelFromParamAndInstance(Alignable *alignable, unsigned int param, unsigned int instance) const override
std::map< Alignable *, MomentumRangeParamMap > AlignableToMomentumRangeMap
std::map< Alignable *, unsigned int > AlignableToIdMap
~MomentumDependentPedeLabeler() override
static PFTauRenderPlugin instance
std::vector< std::string > decompose(const std::string &s, std::string::value_type delimiter) const
UintUintMap theLabelToLasBeamMap
labels for las beams
unsigned int paramNumFromLabel(unsigned int paramLabel) const override
parameter number, 0 <= .. < theMaxNumParam, belonging to unique parameter label
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
AlignableToMomentumRangeMap::value_type AlignableToMomentumRangePair
Container::value_type value_type
unsigned int lasBeamLabel(unsigned int lasBeamId) const override
std::map< unsigned int, unsigned int > UintUintMap
std::map< unsigned int, Alignable * > IdToAlignableMap
unsigned int buildMap(const align::Alignables &)
returns size of map
unsigned int alignableLabel(Alignable *alignable) const override
Return 32-bit unique label for alignable, 0 indicates failure.
unsigned int lasBeamIdFromLabel(unsigned int label) const override
UintUintMap theLasBeamToLabelMap
reverse map
unsigned int buildReverseMap()
returns size of map
bool hasSplitParameters(Alignable *alignable) const override
returns true if the alignable has parameters that are split into various bins
Alignable * alignableFromLabel(unsigned int label) const override
std::map< unsigned int, MomentumRangeVector > MomentumRangeParamMap
std::vector< Alignable * > Alignables
std::vector< MomentumRange > MomentumRangeVector
unsigned int numberOfParameterInstances(Alignable *alignable, int param=-1) const override
returns the number of instances for a given parameter
unsigned int buildMomentumDependencyMap(AlignableTracker *aliTracker, AlignableMuon *aliMuon, AlignableExtras *extras, const edm::ParameterSet &config)
const MomentumRange theOpenMomentumRange
reverse of the above
eventInfo
add run, event number and lumi section
unsigned int theMaxNumberOfParameterInstances
AlignableToIdMap theAlignableToIdMap
std::vector< unsigned int > convertParamSel(const std::string &selString) const
Constructor of the full muon geometry.
unsigned int alignableLabelFromLabel(unsigned int label) const override
alignable label from parameter label (works also for alignable label...)
AlignableToMomentumRangeMap theAlignableToMomentumRangeMap
providing unique ID for alignable, space for param IDs
unsigned int maxNumberOfParameterInstances() const override
returns the maximum number of instances for any parameter of an Alignable*
AlignableToIdMap::value_type AlignableToIdPair
IdToAlignableMap theIdToAlignableMap
providing unique ID for alignable, space for param IDs