mlpack
Namespaces | Functions
get_param.hpp File Reference
#include <mlpack/prereqs.hpp>
#include "parameter_type.hpp"
Include dependency graph for get_param.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 mlpack
 Linear algebra utility functions, generally performed on matrices or vectors.
 

Functions

template<typename T >
T & mlpack::bindings::cli::GetParam (util::ParamData &d, const typename std::enable_if<!arma::is_arma_type< T >::value >::type *=0, const typename std::enable_if<!data::HasSerialize< T >::value >::type *=0, const typename std::enable_if<!std::is_same< T, std::tuple< mlpack::data::DatasetInfo, arma::mat >>::value >::type *=0)
 This overload is called when nothing special needs to happen to the name of the parameter. More...
 
template<typename T >
T & mlpack::bindings::cli::GetParam (util::ParamData &d, const typename std::enable_if< arma::is_arma_type< T >::value >::type *=0)
 Return a matrix parameter. More...
 
template<typename T >
T & mlpack::bindings::cli::GetParam (util::ParamData &d, const typename std::enable_if< std::is_same< T, std::tuple< mlpack::data::DatasetInfo, arma::mat >>::value >::type *=0)
 Return a matrix/dataset info parameter. More...
 
template<typename T >
T *& mlpack::bindings::cli::GetParam (util::ParamData &d, const typename std::enable_if<!arma::is_arma_type< T >::value >::type *=0, const typename std::enable_if< data::HasSerialize< T >::value >::type *=0)
 Return a serializable object. More...
 
template<typename T >
void mlpack::bindings::cli::GetParam (util::ParamData &d, const void *, void *output)
 Return a parameter casted to the given type. More...
 

Detailed Description

Author
Ryan Curtin

Use template metaprogramming to get the right type of parameter.

mlpack is free software; you may redistribute it and/or modify it under the terms of the 3-clause BSD license. You should have received a copy of the 3-clause BSD license along with mlpack. If not, see http://www.opensource.org/licenses/BSD-3-Clause for more information.

Function Documentation

◆ GetParam() [1/5]

template<typename T >
T& mlpack::bindings::cli::GetParam ( util::ParamData d,
const typename std::enable_if<!arma::is_arma_type< T >::value >::type *  = 0,
const typename std::enable_if<!data::HasSerialize< T >::value >::type *  = 0,
const typename std::enable_if<!std::is_same< T, std::tuple< mlpack::data::DatasetInfo, arma::mat >>::value >::type *  = 0 
)

This overload is called when nothing special needs to happen to the name of the parameter.

Parameters
dParamData object to get parameter value from.

◆ GetParam() [2/5]

template<typename T >
T& mlpack::bindings::cli::GetParam ( util::ParamData d,
const typename std::enable_if< arma::is_arma_type< T >::value >::type *  = 0 
)

Return a matrix parameter.

Parameters
dParamData object to get parameter value from.

◆ GetParam() [3/5]

template<typename T >
T& mlpack::bindings::cli::GetParam ( util::ParamData d,
const typename std::enable_if< std::is_same< T, std::tuple< mlpack::data::DatasetInfo, arma::mat >>::value >::type *  = 0 
)

Return a matrix/dataset info parameter.

Parameters
dParamData object to get parameter value from.

◆ GetParam() [4/5]

template<typename T >
T*& mlpack::bindings::cli::GetParam ( util::ParamData d,
const typename std::enable_if<!arma::is_arma_type< T >::value >::type *  = 0,
const typename std::enable_if< data::HasSerialize< T >::value >::type *  = 0 
)

Return a serializable object.

Parameters
dParamData object to get parameter value from.

◆ GetParam() [5/5]

template<typename T >
void mlpack::bindings::cli::GetParam ( util::ParamData d,
const void *  ,
void *  output 
)

Return a parameter casted to the given type.

Type checking does not happen here!

Parameters
dParameter information.
*(input) Unused parameter.
outputPlace to store pointer to value.