ProcessConfigurationImpl.h

Go to the documentation of this file.
00001 // Copyright CERN 2012 - Developed in collaboration with GSI
00002 
00003 #ifndef FESA_PROCESS_CONFIGURATION_IMPL_H_
00004 #define FESA_PROCESS_CONFIGURATION_IMPL_H_
00005 
00006 #include <fesa-core/Utilities/ProcessConfigurationDefs.h>
00007 
00008 #include <cmw-util/CmdOptions.h>
00009 #include <cmw-util/Properties.h>
00010 
00011 #include <map>
00012 #include <string>
00013 #include <vector>
00014 
00015 namespace fesa
00016 {
00017 
00018 class ProcessConfigurationImpl
00019 {
00020   public:
00021     ProcessConfigurationImpl(int argc, char* argv[]);
00022     virtual ~ProcessConfigurationImpl();
00023 
00024     bool isHelpNeeded() const;
00025     void printHelp() const;
00026     void load(const ConfigDirs& configDirs);
00027     const std::string& getLogConfigFile() const;
00028     const std::string& getCMWConfigFile() const;
00029     const std::string& getMsgConfigFile() const;
00030     const std::string& getLabMsgConfigFile() const;
00031     const std::string& getCMWServerName() const;
00032     void setCMWServerName(const std::string& name);
00033     bool isInTimingSimulationMode() const;
00034     LoggingMode::LoggingMode getLoggingMode() const;
00035     bool isDefined(const std::string& tag) const;
00036     std::string getStringValue(const std::string& tag) const;
00037     int getIntValue(const std::string& tag) const;
00038     bool getBoolValue(const std::string& tag) const;
00039 
00040   private:
00041     CMW::Util::CmdOptions cmdOptions_;
00042     CMW::Util::Properties properties_;
00043     std::string fesaCfgFile_;
00044     std::string logCfgFile_;
00045     std::string msgCfgFile_;
00046     std::string msgLabCfgFile_;
00047     std::string cmwCfgFile_;
00048     std::string cmwServerName_;
00049     bool timingSimulationMode_;
00050     std::string timingSimulationCfgFile_;
00051     LoggingMode::LoggingMode loggingMode_;
00052 };
00053 
00054 } // fesa
00055 
00056 #endif // FESA_PROCESS_CONFIGURATION_IMPL_H_

Generated on 18 Jan 2013 for Fesa by  doxygen 1.6.1