Murl::Util::Environment::EnumArrayParameter< EnumType > Class Template Reference

The enumeration array parameter template class. More...

#include "murl_util_environment.h"

Inheritance diagram for Murl::Util::Environment::EnumArrayParameter< EnumType >:

Public Member Functions

 EnumArrayParameter (ParameterType type, const String &longId, const String &shortId, const String &description, const Enum< EnumType > &enumClass, EnumType defaultValue)
 The constructor taking a default value. More...
 
 EnumArrayParameter (ParameterType type, const String &longId, const String &shortId, const String &description, const Enum< EnumType > &enumClass)
 The constructor. More...
 
SInt32 Process (SInt32 currentIndex, SInt32 argC, const char **argV) override
 Overload of Parameter::Process() converting the mValue(s). More...
 
- Public Member Functions inherited from Murl::Util::Environment::Parameter
 Parameter (ParameterType type, const String &longId, const String &shortId, const String &description, SInt32 skip, Bool isArray)
 The constructor. More...
 
virtual ~Parameter ()
 The destructor.
 

Public Attributes

const Enum< EnumType > & mEnum
 The enumeration string mapping class.
 
Bool mHasDefaultValue
 Flag if mValue array has a default value set.
 
Array< EnumType > mValue
 The processed argument values.
 
- Public Attributes inherited from Murl::Util::Environment::Parameter
ParameterType mType
 The parameter type.
 
String mLongId
 The long parameter identifier string.
 
String mShortId
 The short parameter identifier string.
 
String mDescription
 The parameter description string.
 
Bool mIsSet
 Flag if the parameter is set.
 
SInt32 mSkip
 The number of arguments used by the parameter.
 
Bool mIsArray
 Signature for parameter arrays.
 

Additional Inherited Members

- Public Types inherited from Murl::Util::Environment::Parameter
using AutoPtr = AutoPointer< Parameter >
 Definition of the parameter auto pointer.
 

Detailed Description

template<class EnumType>
class Murl::Util::Environment::EnumArrayParameter< EnumType >

The enumeration array parameter template class.

Constructor & Destructor Documentation

◆ EnumArrayParameter() [1/2]

template<class EnumType >
Murl::Util::Environment::EnumArrayParameter< EnumType >::EnumArrayParameter ( ParameterType  type,
const String longId,
const String shortId,
const String description,
const Enum< EnumType > &  enumClass,
EnumType  defaultValue 
)
inline

The constructor taking a default value.

Parameters
typeThe type of the parameter.
longIdThe long parameter identifier string.
shortIdThe short parameter identifier string.
descriptionThe parameter description string.
enumClassThe enumeration string mapping class.
defaultValueThe default value.

References Murl::Array< DataType >::Add(), and Murl::Util::Environment::EnumArrayParameter< EnumType >::mValue.

◆ EnumArrayParameter() [2/2]

template<class EnumType >
Murl::Util::Environment::EnumArrayParameter< EnumType >::EnumArrayParameter ( ParameterType  type,
const String longId,
const String shortId,
const String description,
const Enum< EnumType > &  enumClass 
)
inline

The constructor.

Parameters
typeThe type of the parameter.
longIdThe long parameter identifier string.
shortIdThe short parameter identifier string.
descriptionThe parameter description string.
enumClassThe enumeration string mapping class.

Member Function Documentation

◆ Process()

template<class EnumType >
SInt32 Murl::Util::Environment::EnumArrayParameter< EnumType >::Process ( SInt32  currentIndex,
SInt32  argC,
const char **  argV 
)
inlineoverridevirtual

Overload of Parameter::Process() converting the mValue(s).

Parameters
currentIndexThe zero-based index to the current argument.
argCThe number of arguments.
argVThe argument string values.
Returns
The number of arguments processed or -1 if parsing the argument failed.

Reimplemented from Murl::Util::Environment::Parameter.

References Murl::Array< DataType >::Add(), Murl::Array< DataType >::Clear(), Murl::Util::Environment::EnumArrayParameter< EnumType >::mEnum, Murl::Util::Environment::EnumArrayParameter< EnumType >::mHasDefaultValue, Murl::Util::Environment::EnumArrayParameter< EnumType >::mValue, Murl::System::Console::Print(), and Murl::Util::Environment::Parameter::Process().


The documentation for this class was generated from the following file:
  • murl_util_environment.h


Copyright © 2011-2022 Spraylight GmbH.