CMS 3D CMS Logo

AlignmentParameterBuilder.h
Go to the documentation of this file.
1 #ifndef Alignment_CommonAlignmentAlgorithm_AlignmentParameterBuilder_h
2 #define Alignment_CommonAlignmentAlgorithm_AlignmentParameterBuilder_h
3 
15 
16 namespace edm {
17  class ParameterSet;
18 }
19 class AlignableExtras;
20 class AlignableTracker;
21 class AlignableMuon;
23 class TrackerTopology;
24 
26 {
27 public:
29  explicit AlignmentParameterBuilder( AlignableTracker *alignableTracker,
30  AlignableExtras *alignableExtras );
31 
33  AlignmentParameterBuilder( AlignableTracker *alignableTracker, AlignableMuon *alignableMuon,
34  AlignableExtras *alignableExtras );
35 
39  AlignableExtras *alignableExtras,
40  const edm::ParameterSet &pSet );
41 
43  AlignmentParameterBuilder( AlignableTracker *alignableTracker, AlignableMuon *alignableMuon,
44  AlignableExtras *alignableExtras,
45  const edm::ParameterSet &pSet);
46 
47 
51  void addAllSelections(const edm::ParameterSet &pSet);
52 
59  unsigned int addSelections(const edm::ParameterSet &pset,
61 
63  unsigned int add(const align::Alignables &alignables,
65  const std::vector<bool> &sel);
68  const std::vector<bool> &sel);
69 
71  const align::Alignables& alignables() const { return theAlignables; };
72 
74  void fixAlignables( int n );
75 
77  const AlignableTracker* alignableTracker() const;
78 
79 private:
83  bool decodeParamSel(std::vector<char> &paramSelChar, std::vector<bool> &result) const;
85  bool addFullParamSel(AlignmentParameters *aliPar, const std::vector<char> &fullSel) const;
86 
87  // data members
88 
91 
94 
97 
100 };
101 
102 #endif
ParametersType
enums for all available AlignmentParameters
AlignableExtras * theAlignableExtras
extra Alignables
virtual ~AlignmentParameterBuilder()
destructor
AlignableMuon * theAlignableMuon
Alignable muon.
void add(std::map< std::string, TH1 * > &h, TH1 *hist)
std::vector< Alignable * > Alignables
Definition: Utilities.h:32
HLT enums.
align::Alignables theAlignables
Vector of alignables.
Constructor of the full muon geometry.
Definition: AlignableMuon.h:37
AlignableTracker * theAlignableTracker
Alignable tracker.
const align::Alignables & alignables() const
Get list of alignables for which AlignmentParameters are built.