Go to the documentation of this file.00001
00002
00003
00004
00005
00008
00009 #ifndef lgrConfigLoader_H_
00010 #define lgrConfigLoader_H_
00011
00012 #include "lgrApp.h"
00013 #include <mtl/env.h>
00014 #include <vector>
00015
00016 namespace MAKLogger
00017 {
00018 class DtAnyValue;
00019 template <typename T>
00020 class DtCollector;
00021 class DtCommand;
00022 class DtRuntimeCommandFactory;
00023
00025 class DT_DLL_LGRAPP DtLoggerAppConfigLoader
00026 {
00027 public:
00028
00030 DtLoggerAppConfigLoader(const DtRuntimeCommandFactory* factory,
00031 const DtString& filename );
00032
00033 virtual ~DtLoggerAppConfigLoader();
00034
00036 virtual bool isValid() const;
00037
00039 virtual void getInitCommands(DtCollector<DtCommand> commandCollector) const;
00040 virtual void getStartupCommands(DtCollector<DtCommand> commandCollector) const;
00041
00044 virtual const DtEnvValueSP getDefaultVariable(const DtString& name) const;
00045
00048 virtual DtString getDefaultVariableValue(const DtString& name) const;
00049
00052 virtual DtString getDefaultVariableType(const DtString& name) const;
00053
00057 virtual DtEnvValueSP setDefaultVariable(const DtString& name,const DtString& value,
00058 const DtString& type);
00059
00063 virtual DtEnvValueSP setDefaultVariableList(const DtString& name,
00064 const std::vector<DtString>&, const DtString& type);
00065
00067 virtual DtEnvValueSP setDefaultVariable(const DtString& name,const DtString& value);
00068
00070 virtual DtEnvValueSP setDefaultVariable(const DtString& name,bool value);
00071
00073 virtual DtEnvValueSP setDefaultVariable(const DtString& name,int value);
00074
00076 virtual DtEnvValueSP setDefaultVariable(const DtString& name,double value);
00077
00079 virtual DtEnvValueSP setDefaultVariable(const DtString& name,std::vector<DtString>& value);
00080
00082 virtual DtEnvValueSP setDefaultVariable(const DtString& name,std::vector<int>& value);
00083
00085 virtual DtEnvValueSP setDefaultVariable(const DtString& name,std::vector<bool>& value);
00086
00088 virtual DtEnvValueSP setDefaultVariable(const DtString& name,std::vector<double>& value);
00089
00091 const DtEnvironment& environment() const;
00092
00093 protected:
00094
00096 virtual void getCommands(const DtString& stageName,
00097 DtCollector<DtCommand> commandCollector) const;
00098
00100 virtual DtCommand generateCommand(DtEnvironment& commandObj) const;
00101
00103 virtual DtAnyValue* generateParameter(DtEnvironment& paramObj) const;
00104
00107 bool parseFile(const DtString& filename);
00108
00109 bool myValidConfiguration;
00110 const DtRuntimeCommandFactory* myRuntimeFactory;
00111 DtEnvironment myEnvironment;
00112 };
00113
00114 }
00115
00116 #endif