diff options
Diffstat (limited to 'ace/Env_Value_T.inl')
-rw-r--r-- | ace/Env_Value_T.inl | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/ace/Env_Value_T.inl b/ace/Env_Value_T.inl new file mode 100644 index 00000000000..9f98f0fdb45 --- /dev/null +++ b/ace/Env_Value_T.inl @@ -0,0 +1,51 @@ +// $Id$ + +template <class T> ACE_INLINE +ACE_Env_Value<T>::operator T (void) +{ + return value_; +} + +template <class T> ACE_INLINE +ACE_Env_Value<T>::ACE_Env_Value (void) + : varname_ (0) +{ +} + +template <class T> ACE_INLINE +ACE_Env_Value<T>::ACE_Env_Value (const ACE_TCHAR *varname, + const T &defval) + : varname_ (varname), + value_(defval) +{ + this->fetch_value (); +} + +template <class T> ACE_INLINE void +ACE_Env_Value<T>::open (const ACE_TCHAR *varname, + const T &defval) +{ + varname_ = varname; + value_ = defval; + this->fetch_value (); +} + +template <class T> ACE_INLINE void +ACE_Env_Value<T>::fetch_value (void) +{ + const ACE_TCHAR *env = ACE_OS::getenv (varname_); + + if (env != 0) + ACE_Convert (env, value_); +} + +template <class T> ACE_INLINE const ACE_TCHAR* +ACE_Env_Value<T>::varname (void) const +{ + return varname_; +} + +template <class T> ACE_INLINE +ACE_Env_Value<T>::~ACE_Env_Value (void) +{ +} |