mlpack 3.4.2
get_printable_param.hpp
Go to the documentation of this file.
1
13#ifndef MLPACK_BINDINGS_TESTS_GET_PRINTABLE_PARAM_HPP
14#define MLPACK_BINDINGS_TESTS_GET_PRINTABLE_PARAM_HPP
15
16#include <mlpack/prereqs.hpp>
19
20namespace mlpack {
21namespace bindings {
22namespace tests {
23
27template<typename T>
29 util::ParamData& data,
30 const typename boost::disable_if<arma::is_arma_type<T>>::type* = 0,
31 const typename boost::disable_if<util::IsStdVector<T>>::type* = 0,
32 const typename boost::disable_if<data::HasSerialize<T>>::type* = 0,
33 const typename boost::disable_if<std::is_same<T,
34 std::tuple<data::DatasetInfo, arma::mat>>>::type* = 0);
35
39template<typename T>
41 util::ParamData& data,
42 const typename boost::enable_if<util::IsStdVector<T>>::type* = 0);
43
47template<typename T>
49 util::ParamData& data,
50 const typename boost::enable_if<arma::is_arma_type<T>>::type* = 0);
51
55template<typename T>
57 util::ParamData& data,
58 const typename boost::disable_if<arma::is_arma_type<T>>::type* = 0,
59 const typename boost::enable_if<data::HasSerialize<T>>::type* = 0);
60
64template<typename T>
66 util::ParamData& data,
67 const typename boost::enable_if<std::is_same<T,
68 std::tuple<data::DatasetInfo, arma::mat>>>::type* = 0);
69
75template<typename T>
77 const void* /* input */,
78 void* output)
79{
80 *((std::string*) output) =
81 GetPrintableParam<typename std::remove_pointer<T>::type>(data);
82}
83
84} // namespace tests
85} // namespace bindings
86} // namespace mlpack
87
88// Include implementation.
89#include "get_printable_param_impl.hpp"
90
91#endif
std::string GetPrintableParam(util::ParamData &data, const typename boost::disable_if< arma::is_arma_type< T > >::type *=0, const typename boost::disable_if< util::IsStdVector< T > >::type *=0, const typename boost::disable_if< data::HasSerialize< T > >::type *=0, const typename boost::disable_if< std::is_same< T, std::tuple< data::DatasetInfo, arma::mat > > >::type *=0)
Print an option.
Linear algebra utility functions, generally performed on matrices or vectors.
Definition: cv.hpp:1
The core includes that mlpack expects; standard C++ includes and Armadillo.
Metaprogramming structure for vector detection.
This structure holds all of the information about a single parameter, including its value (which is s...
Definition: param_data.hpp:53