Elm  1.0
ELM is a library providing generic data structures, OS-independent interface, plugins and XML.
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
elm::option::EnumOption< T > Class Template Reference

#include <elm/option/EnumOption.h>

+ Inheritance diagram for elm::option::EnumOption< T >:

Classes

struct  value_t
 

Public Types

typedef struct
elm::option::EnumOption::value_t 
value_t
 

Public Member Functions

 EnumOption (Manager &manager, char short_name, CString description, value_t values[])
 
 EnumOption (Manager &manager, CString long_name, CString description, value_t values[])
 
 EnumOption (Manager &manager, char short_name, CString long_name, CString description, value_t values[])
 
const T & value (void) const
 
void set (const T &value)
 
virtual usage_t usage (void)
 
virtual CString argDescription (void)
 
virtual void process (String arg)
 
 operator T (void) const
 
EnumOptionoperator= (const T &value)
 
- Public Member Functions inherited from elm::option::StandardOption
 StandardOption (Manager &manager, int tag,...)
 
 StandardOption (Manager &manager, int tag, VarArg &args)
 
 StandardOption (Manager &manager, char short_name, cstring description)
 
 StandardOption (Manager &manager, cstring long_name, cstring description)
 
 StandardOption (Manager &manager, char short_name, cstring long_name, cstring description)
 
virtual char shortName (void)
 
virtual cstring longName (void)
 
virtual cstring description (void)
 
- Public Member Functions inherited from elm::option::Option
 Option (void)
 
 Option (const Make &make)
 
virtual ~Option (void)
 
void output (io::Output &out)
 

Additional Inherited Members

- Protected Member Functions inherited from elm::option::StandardOption
virtual void configure (Manager &manager, int tag, VarArg &args)
 
- Protected Member Functions inherited from elm::option::Option
void init (Manager &manager, int tag,...)
 
void init (Manager &manager, int tag, VarArg &args)
 
- Protected Attributes inherited from elm::option::Option
cstring desc
 

Detailed Description

template<class T>
class elm::option::EnumOption< T >

This class handle enumerations in command line arguments. At construction time, it receive an associative array of EnumOption::value_t that matches T values with their name. The first item of this array is used to get the default value of the option and the argument description for help display.

Parameters
TType of the enumerated value.

Member Typedef Documentation

template<class T >
typedef struct elm::option::EnumOption::value_t elm::option::EnumOption< T >::value_t

Constructor & Destructor Documentation

template<class T >
elm::option::EnumOption< T >::EnumOption ( Manager manager,
char  short_name,
CString  description,
value_t  values[] 
)
template<class T >
elm::option::EnumOption< T >::EnumOption ( Manager manager,
CString  long_name,
CString  description,
value_t  values[] 
)

Build a boolean option with a long name.

Parameters
managerParent option manager.
long_nameMultiple-letter name.
descriptionOption description.
valuesList of enumerated values.
template<class T >
elm::option::EnumOption< T >::EnumOption ( Manager manager,
char  short_name,
CString  long_name,
CString  description,
value_t  values[] 
)

Build a boolean option with a short name and a long name.

Parameters
managerParent option manager.
short_nameSingle-letter name.
long_nameMultiple-letter name.
descriptionOption description.
valuesList of enumerated values.

Member Function Documentation

template<class T >
CString elm::option::EnumOption< T >::argDescription ( void  )
virtual

If the option requires an argument, get the description of the argument.

Returns
Argument description.

Implements elm::option::Option.

template<class T >
elm::option::EnumOption< T >::operator T ( void  ) const

Shortcut to get().

template<class T >
EnumOption & elm::option::EnumOption< T >::operator= ( const T &  value)

Shortcut to set().

References elm::value().

template<class T >
void elm::option::EnumOption< T >::process ( String  arg)
virtual

This method is called by the option manager when the option is encountered.

Parameters
argIf the option requires an argument, the value of the argument.

Implements elm::option::Option.

References elm::_.

template<class T >
void elm::option::EnumOption< T >::set ( const T &  value)

Change the current value of the option.

Parameters
valueNew value of the option.

References elm::value().

template<class T >
usage_t elm::option::EnumOption< T >::usage ( void  )
virtual

Get the argument usage type of this function.

Returns
Argument usage type.

Implements elm::option::Option.

References elm::option::arg_required.

template<class T >
const T & elm::option::EnumOption< T >::value ( void  ) const

Get the current value of the option.

Returns
Current value.

The documentation for this class was generated from the following files: