13#ifndef MLPACK_BINDINGS_CLI_GET_RAW_PARAM_HPP
14#define MLPACK_BINDINGS_CLI_GET_RAW_PARAM_HPP
30 const typename boost::disable_if<arma::is_arma_type<T>>::type* = 0,
32 const typename boost::disable_if<std::is_same<T,
33 std::tuple<mlpack::data::DatasetInfo, arma::mat>>>::type* = 0)
36 return *boost::any_cast<T>(&d.
value);
45 const typename boost::enable_if_c<
46 arma::is_arma_type<T>::value ||
48 arma::mat>>::value>::type* = 0)
51 typedef std::tuple<T, std::string> TupleType;
52 T& value = std::get<0>(*boost::any_cast<TupleType>(&d.
value));
62 const typename boost::disable_if<arma::is_arma_type<T>>::type* = 0,
66 typedef std::tuple<T*, std::string> TupleType;
67 T*& value = std::get<0>(*boost::any_cast<TupleType>(&d.
value));
85 *((T**) output) = &GetRawParam<typename std::remove_pointer<T>::type>(
Auxiliary information for a dataset, including mappings to/from strings (or other types) and the data...
T & GetRawParam(util::ParamData &d, const typename boost::disable_if< arma::is_arma_type< T > >::type *=0, const typename boost::disable_if< data::HasSerialize< T > >::type *=0, const typename boost::disable_if< std::is_same< T, std::tuple< mlpack::data::DatasetInfo, arma::mat > > >::type *=0)
This overload is called when nothing special needs to happen to the name of the parameter.
Linear algebra utility functions, generally performed on matrices or vectors.
The core includes that mlpack expects; standard C++ includes and Armadillo.
This structure holds all of the information about a single parameter, including its value (which is s...
boost::any value
The actual value that is held.