NAME
ACE_Env_Value - Enviroment Variable Value
SYNOPSIS
template<class T>
class ACE_Env_Value
{
public:
ACE_Env_Value (void);
ACE_Env_Value (const ASYS_TCHAR *varname, const T &vardefault);
~ACE_Env_Value (void);
operator T (void);
void open (const ASYS_TCHAR *varname, const T &defval);
const ASYS_TCHAR *varname (void) const;
private:
inline ACE_UNIMPLEMENTED_FUNC (
ACE_Env_Value(const ACE_Env_Value<T> &)
);
void fetch_value (void);
const ASYS_TCHAR *varname_;
T value_;
};
DESCRIPTION
Template to encapsulate getting a value from an environment variable and using a supplied default value if not in the environment.
PUBLIC MEMBERS
ACE_Env_Value (void);
Default constructor which isn't bound to a specific environment variable name or a default value. Before being useful it must open'd.
ACE_Env_Value (const ASYS_TCHAR *varname, const T &vardefault);
Constructor that calls open.
~ACE_Env_Value (void);
Destroy the value.
operator T (void);
Returns the value as type T.
void open (const ASYS_TCHAR *varname, const T &defval);
The constructor, read varname from the enviroment, using vardefault as its value if it is not defined.
const ASYS_TCHAR *varname (void) const;
Returns the name of the variable being tracked.
PRIVATE MEMBERS
inline ACE_UNIMPLEMENTED_FUNC (
ACE_Env_Value(const ACE_Env_Value<T> &)
);
Disallow copying and assignment.
void fetch_value (void);
const ASYS_TCHAR *varname_;
T value_;
AUTHOR
Chris Cleeland (derived from work by Carlos O'Ryan)
LIBRARY
ACE