Crypto++ 8.7
Free C++ class library of cryptographic schemes
Public Member Functions | List of all members
AlgorithmParameters Class Reference

An object that implements NameValuePairs. More...

#include <algparam.h>

+ Inheritance diagram for AlgorithmParameters:

Public Member Functions

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

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. More...
 

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
Tthe class or type
Parameters
namethe name of the object or value to retrieve
valuereference to a variable that receives the value
throwIfNotUsedif 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
Tthe class or type
Parameters
namethe name of the object or value to retrieve
valuereference 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
namethe name of the object or value to retrieve
valueTypereference to a variable that receives the value
pValuevoid 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: