00001 #ifndef IGUANA_FRAMEWORK_IG_ENVS_ELEMENT_H
00002 # define IGUANA_FRAMEWORK_IG_ENVS_ELEMENT_H
00003
00004
00005
00006 # include "Iguana/Framework/interface/IgStateElement.h"
00007 # include <vector>
00008 # include <string>
00009
00010
00011
00012
00013
00014
00015
00016
00017 class IGUANA_FRAMEWORK_API IgEnvsElement : public IgStateElement
00018 {
00019 IG_DECLARE_STATE_ELEMENT (IgEnvsElement);
00020 public:
00021 IgEnvsElement (IgState* state);
00022
00023
00024
00025
00026 bool getEnv(const std::string& name, std::string& value) const;
00027 bool getEnv(const std::string& name, std::vector<std::string>& value,
00028 char separator = ':') const;
00029 bool getEnv(const std::string& name, int& value) const;
00030 bool getEnv(const std::string& name, long& value) const;
00031 bool getEnv(const std::string& name, unsigned int& value) const;
00032 bool getEnv(const std::string& name, unsigned long& value) const;
00033 bool getEnv(const std::string& name, float& value) const;
00034 bool getEnv(const std::string& name, double& value) const;
00035
00036 private:
00037 IgState *m_state;
00038 };
00039
00040
00041
00042
00043 #endif // IGUANA_FRAMEWORK_IG_ENVS_ELEMENT_H