Security Scol plugin
Public Member Functions | Protected Attributes | List of all members
AlgorithmParameters Class Reference

An object that implements NameValuePairs. More...

#include <algparam.h>

Inheritance diagram for AlgorithmParameters:
NameValuePairs

Public Member Functions

 AlgorithmParameters ()
 Construct a AlgorithmParameters.
 
 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.
 
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 >
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.
 

Protected Attributes

member_ptr< AlgorithmParametersBasem_next
 
bool m_defaultThrowIfNotUsed
 

Additional Inherited Members

- Static Public Member Functions inherited from NameValuePairs
static CRYPTOPP_DLL void CRYPTOPP_API 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() [1/2]

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);
  

Definition at line 48 of file algparam.cpp.

◆ AlgorithmParameters() [2/2]

AlgorithmParameters::AlgorithmParameters ( const AlgorithmParameters x)

Definition at line 53 of file algparam.cpp.

Member Function Documentation

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

Definition at line 65 of file algparam.cpp.

◆ operator()() [1/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.

◆ operator()() [2/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=()

AlgorithmParameters & AlgorithmParameters::operator= ( const AlgorithmParameters x)

Definition at line 59 of file algparam.cpp.

Member Data Documentation

◆ m_defaultThrowIfNotUsed

bool AlgorithmParameters::m_defaultThrowIfNotUsed
protected

Definition at line 489 of file algparam.h.

◆ m_next

member_ptr<AlgorithmParametersBase> AlgorithmParameters::m_next
protected

Definition at line 488 of file algparam.h.


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