00001 #ifndef Alignment_TrackerAlignment_TrackerScenarioBuilder_h 00002 #define Alignment_TrackerAlignment_TrackerScenarioBuilder_h 00003 00013 00014 #include <vector> 00015 #include <string> 00016 00017 #include "Alignment/CommonAlignment/interface/MisalignmentScenarioBuilder.h" 00018 00019 class AlignableTracker; 00020 00022 00023 class TrackerScenarioBuilder : public MisalignmentScenarioBuilder 00024 { 00025 00026 public: 00027 00029 explicit TrackerScenarioBuilder( AlignableTracker* alignable ); 00030 00032 ~TrackerScenarioBuilder() {}; 00033 00035 void applyScenario( const edm::ParameterSet& scenario ); 00037 virtual bool isTopLevel_(const std::string& parameterSetName) const; 00039 virtual bool possiblyPartOf(const std::string &sub, const std::string &large) const; 00040 00041 private: // Members 00042 00043 AlignableTracker* theAlignableTracker; 00044 00045 std::vector<std::string> theSubdets; 00046 unsigned int theFirstStripIndex; 00047 00048 }; 00049 00050 00051 #endif