00001 #ifndef Alignment_SurveyAnalysis_SurveyDBUploader_h 00002 #define Alignment_SurveyAnalysis_SurveyDBUploader_h 00003 00020 #include "FWCore/Framework/interface/EDAnalyzer.h" 00021 00022 class Alignable; 00023 class Alignments; 00024 class AlignTransform; 00025 class SurveyErrors; 00026 00027 class SurveyDBUploader: 00028 public edm::EDAnalyzer 00029 { 00030 typedef AlignTransform SurveyValue; 00031 typedef Alignments SurveyValues; 00032 00033 public: 00034 00036 SurveyDBUploader( 00037 const edm::ParameterSet& 00038 ); 00039 00040 virtual void analyze( 00041 const edm::Event&, 00042 const edm::EventSetup& 00043 ) {} 00044 00046 virtual void endJob(); 00047 00048 private: 00049 00051 void getSurveyInfo( 00052 const Alignable* 00053 ); 00054 00055 std::string theValueRcd; // tag name of survey values record in DB 00056 std::string theErrorRcd; // tag name of survey errors record in DB 00057 00058 SurveyValues* theValues; // survey values for all alignables in detector 00059 SurveyErrors* theErrors; // survey errors for all alignables in detector 00060 }; 00061 00062 #endif