Fabcoin Core  0.16.2
P2P Digital Currency
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:
[legend]
Collaboration diagram for AlgorithmParameters:
[legend]

Public Member Functions

 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. 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
virtual ~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 >
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...
 
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...
 

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

Detailed Description

An object that implements 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
throwIfNotUsedif true, the object will throw an exception if the value is not accessed
Note
throwIfNotUsed is ignored if using a compiler that does not support std::uncaught_exception(), such as MSVC 7.0 and earlier.
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 433 of file algparam.h.

Constructor & Destructor Documentation

AlgorithmParameters::AlgorithmParameters ( )

Definition at line 50 of file algparam.cpp.

AlgorithmParameters::AlgorithmParameters ( const AlgorithmParameters x)

Definition at line 55 of file algparam.cpp.

Here is the call graph for this function:

Member Function Documentation

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 67 of file algparam.cpp.

Here is the call graph for this function:

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 456 of file algparam.h.

Here is the call graph for this function:

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 470 of file algparam.h.

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

Definition at line 61 of file algparam.cpp.

Here is the call graph for this function:

Member Data Documentation

bool AlgorithmParameters::m_defaultThrowIfNotUsed
protected

Definition at line 479 of file algparam.h.

member_ptr<AlgorithmParametersBase> AlgorithmParameters::m_next
protected

Definition at line 478 of file algparam.h.


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