00001
00002
00004
00005 #ifndef ANALYSISCALIBRATIONDATAUPDATER_H
00006 #define ANALYSISCALIBRATIONDATAUPDATER_H
00007
00008
00009 #include "GaudiKernel/Algorithm.h"
00010 #include "GaudiKernel/MsgStream.h"
00011 #include <string>
00012
00013 class AtlasDetectorID;
00014 class Identifier;
00015
00016 class TFile;
00017 class TObject;
00018
00019 namespace Analysis
00020 {
00021
00033 class CalibrationDataUpdater : public Algorithm
00034 {
00035 public:
00036
00038 CalibrationDataUpdater(const std::string& name, ISvcLocator* pSvcLocator);
00040 ~CalibrationDataUpdater();
00041
00043 StatusCode initialize();
00045 StatusCode execute();
00047 StatusCode finalize();
00048
00049 private:
00050
00052 mutable MsgStream m_log;
00053
00055 void setDefaultResults(std::string Name, TFile* fOut) const;
00056 void copyResults(const std::string& from, const std::string& to,
00057 TFile* fIn, TFile* fOut) const;
00058 bool isValidName(std::string Name) const;
00059 void writeOutput(TObject* in, std::string Name, TFile* fOut) const;
00060
00061
00062
00064 std::string m_inputRootFile;
00065
00067 std::string m_DbRootFile;
00068
00070 std::vector<std::string> m_paramNames;
00071
00075 bool m_overrideDefaults;
00076
00077 };
00078 }
00079
00080 #endif