MetricKnn API
Fast Similarity Search using the Metric Space Approach
Public Member Functions | Static Public Member Functions | Protected Attributes | Friends | List of all members
mknn::IndexParams Class Reference

Stores parameters in an internal map, which associates a names with its value. More...

#include <mknn_params.hpp>

Public Member Functions

void parseString (std::string parameters_string)
 Parses a string in the format: ID_INDEX,parameter1=value1,parameter2=value2 More...
 
void copyAll (IndexParams &params_from)
 Copies all the key-values pairs in params_from and adds them to params_to. More...
 
std::string toString ()
 Returns a string with the parameters which can be parsed. More...
 
 IndexParams ()
 Default constructor.
 
virtual ~IndexParams ()
 Default destructor.
 
 IndexParams (const IndexParams &other)
 Copy constructor.
 
IndexParamsoperator= (const IndexParams &other)
 Assignment operator.
 
IndexParams Add Methods
void addString (std::string name, std::string value)
 Adds a string to the parameters. More...
 
void addDouble (std::string name, double value)
 Adds a floating point number to the parameters. More...
 
void addInt (std::string name, long long value)
 Adds an integer number to the parameters. More...
 
void addBool (std::string name, bool value)
 Adds an boolean value to the parameters. More...
 
void addObject (std::string name, void *value)
 Adds an object number to the parameters. More...
 
IndexParams Get Methods
std::string getString (std::string name)
 Returns a string value. More...
 
double getDouble (std::string name)
 Returns a floating-point number. More...
 
long long getInt (std::string name)
 Returns an integer number. More...
 
bool getBool (std::string name)
 Returns a boolean value. More...
 
void * getObject (std::string name)
 Returns a object reference. More...
 
IndexParams Other Methods
void setIndexId (std::string id_index)
 
std::string getIndexId ()
 

Static Public Member Functions

static IndexParams newEmpty ()
 Creates an empty object. More...
 
static IndexParams newParseString (std::string parameters_string)
 Creates an empty object and set parameters by calling method parseString. More...
 

Protected Attributes

std::unique_ptr< Impl > pimpl
 opaque object
 

Friends

class Index
 
class PredefIndex
 

Detailed Description

Stores parameters in an internal map, which associates a names with its value.

The internal map only stores two type of objects: strings and void pointers. The getter and setter methods that use integer/double/boolean actually convert them to/from a string.

Member Function Documentation

void mknn::IndexParams::addBool ( std::string  name,
bool  value 
)

Adds an boolean value to the parameters.

A copy of name is stored in params.

Parameters
namethe name of the parameter.
valuethe value of the parameter.
void mknn::IndexParams::addDouble ( std::string  name,
double  value 
)

Adds a floating point number to the parameters.

A copy of name is stored in params.

Parameters
namethe name of the parameter.
valuethe value of the parameter.
void mknn::IndexParams::addInt ( std::string  name,
long long  value 
)

Adds an integer number to the parameters.

A copy of name is stored in params.

Parameters
namethe name of the parameter.
valuethe value of the parameter.
void mknn::IndexParams::addObject ( std::string  name,
void *  value 
)

Adds an object number to the parameters.

A copy of name is stored in params but the value pointer itself is stored in params. Therefore the value pointer must remain valid during all the lifetime of params.

Parameters
namethe name of the parameter.
valuethe value of the parameter.
void mknn::IndexParams::addString ( std::string  name,
std::string  value 
)

Adds a string to the parameters.

A copy of name and value are stored in params.

Parameters
namethe name of the parameter.
valuethe value of the parameter.
void mknn::IndexParams::copyAll ( IndexParams params_from)

Copies all the key-values pairs in params_from and adds them to params_to.

Parameters
params_fromthe parameters from which the values are read.
bool mknn::IndexParams::getBool ( std::string  name)

Returns a boolean value.

Parameters
namethe name of the parameter.
Returns
the stored value. If the stored value is not a boolean value, it will raise an error.
double mknn::IndexParams::getDouble ( std::string  name)

Returns a floating-point number.

Parameters
namethe name of the parameter.
Returns
the stored number. If the stored value is not a number, it will raise an error.
std::string mknn::IndexParams::getIndexId ( )
Returns
long long mknn::IndexParams::getInt ( std::string  name)

Returns an integer number.

Parameters
namethe name of the parameter.
Returns
the stored number. If the stored value is not a number, it will raise an error.
void* mknn::IndexParams::getObject ( std::string  name)

Returns a object reference.

Parameters
namethe name of the parameter.
Returns
a pointer to the stored object.
std::string mknn::IndexParams::getString ( std::string  name)

Returns a string value.

Parameters
namethe name of the parameter.
Returns
a pointer to the stored string (it must not be modified).
static IndexParams mknn::IndexParams::newEmpty ( )
static

Creates an empty object.

Returns
a new empty object.
static IndexParams mknn::IndexParams::newParseString ( std::string  parameters_string)
static

Creates an empty object and set parameters by calling method parseString.

Parameters
parameters_stringthe string in the given format.
Returns
a parameters object
void mknn::IndexParams::parseString ( std::string  parameters_string)

Parses a string in the format: ID_INDEX,parameter1=value1,parameter2=value2

Each parsed parameters is added to params.

The list of valid indexes and their IDs can be listed by invoking PredefIndex::helpListIndexes.

Parameters
parameters_stringthe string in the given format.
void mknn::IndexParams::setIndexId ( std::string  id_index)
Parameters
id_index
std::string mknn::IndexParams::toString ( )

Returns a string with the parameters which can be parsed.

Returns
a string representation of parameters.

The documentation for this class was generated from the following file:
Powered by Download MetricKnn