AlgorithmParameters Class Reference

An object that implements NameValuePairs. More...

`#include <algparam.h>`

Inheritance diagram for AlgorithmParameters:

## Public Member Functions

| AlgorithmParameters ()
| Construct a AlgorithmParameters.
| AlgorithmParameters (const AlgorithmParameters &x)
AlgorithmParameters & | operator= (const AlgorithmParameters &x)
template<class T >
AlgorithmParameters & | operator() (const char *name, const T &value, bool throwIfNotUsed)
template<class T >
AlgorithmParameters & | operator() (const char *name, const T &value)
| Appends a NameValuePair to a collection of NameValuePairs.
bool | GetVoidValue (const char *name, const std::type_info &valueType, void *pValue) const
| Get a named value.
Public Member Functions inherited from NameValuePairs
template<class T >
bool | GetThisObject (T &object) const
| Get a copy of this object or subobject.
template<class T >
bool | GetThisPointer (T *&ptr) const
| Get a pointer to this object.
template<class T >
bool | GetValue (const char *name, T &value) const
| Get a named value.
template<class T >
T | GetValueWithDefault (const char *name, T defaultValue) const
| Get a named value.
CRYPTOPP_DLL std::string | GetValueNames () const
| Get a list of value names that can be retrieved.
CRYPTOPP_DLL bool | GetIntValue (const char *name, int &value) const
| Get a named value with type int.
CRYPTOPP_DLL int | GetIntValueWithDefault (const char *name, int defaultValue) const
| Get a named value with type int, with default.
CRYPTOPP_DLL bool | GetWord64Value (const char *name, word64 &value) const
| Get a named value with type word64.
CRYPTOPP_DLL word64 | GetWord64ValueWithDefault (const char *name, word64 defaultValue) const
| Get a named value with type word64, with default.
template<class T >
void | GetRequiredParameter (const char *className, const char *name, T &value) const
| Retrieves a required name/value pair.
CRYPTOPP_DLL void | GetRequiredIntParameter (const char *className, const char *name, int &value) const
| Retrieves a required name/value pair.

## Additional Inherited Members

Static Public Member Functions inherited from NameValuePairs
static CRYPTOPP_DLL void | ThrowIfTypeMismatch (const char *name, const std::type_info &stored, const std::type_info &retrieving)
| Ensures an expected name and type is present.

## Detailed Description

An object that implements NameValuePairs.

Note
  A NameValuePairs object containing an arbitrary number of name value pairs may be constructed by repeatedly using operator() on the object returned by MakeParameters, for example:

          AlgorithmParameters parameters = MakeParameters(name1, value1)(name2, value2)(name3, value3);

Definition at line 425 of file algparam.h.

## Constructor & Destructor Documentation

## AlgorithmParameters()

AlgorithmParameters::AlgorithmParameters | ( |  | ) |

Construct a AlgorithmParameters.

Note
  A NameValuePairs object containing an arbitrary number of name value pairs may be constructed by repeatedly using operator() on the object returned by MakeParameters, for example:

          AlgorithmParameters parameters = MakeParameters(name1, value1)(name2, value2)(name3, value3);

## Member Function Documentation

## operator()() [1/2]

template<class T >

AlgorithmParameters & AlgorithmParameters::operator() | ( | const char * | name,
|  | const T & | value,
|  | bool | throwIfNotUsed
| ) |  |

inline

Template Parameters

  T | the class or type

Parameters

  name | the name of the object or value to retrieve
  value | reference to a variable that receives the value
  throwIfNotUsed | if true, the object will throw an exception if the value is not accessed

Definition at line 466 of file algparam.h.

## operator()() [2/2]

template<class T >

AlgorithmParameters & AlgorithmParameters::operator() | ( | const char * | name,
|  | const T & | value
| ) |  |

inline

Appends a NameValuePair to a collection of NameValuePairs.

Template Parameters

  T | the class or type

Parameters

  name | the name of the object or value to retrieve
  value | reference to a variable that receives the value

Definition at line 480 of file algparam.h.

## GetVoidValue()

bool AlgorithmParameters::GetVoidValue | ( | const char * | name,
|  | const std::type_info & | valueType,
|  | void * | pValue
| ) |  | const

virtual

Get a named value.

Parameters

  name | the name of the object or value to retrieve
  valueType | reference to a variable that receives the value
  pValue | void pointer to a variable that receives the value

Returns
  true if the value was retrieved, false otherwise

GetVoidValue() retrieves the value of name if it exists.

Note
  GetVoidValue() is an internal function and should be implemented by derived classes. Users should use one of the other functions instead.

See also
  GetValue(), GetValueWithDefault(), GetIntValue(), GetIntValueWithDefault(), GetRequiredParameter() and GetRequiredIntParameter()

Implements NameValuePairs.

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

- algparam.h