14 #ifndef MLPACK_METHODS_ANN_VISITOR_OUTPUT_HEIGHT_VISITOR_HPP 15 #define MLPACK_METHODS_ANN_VISITOR_OUTPUT_HEIGHT_VISITOR_HPP 20 #include <boost/variant.hpp> 32 template<
typename LayerType>
39 typename std::enable_if<
40 !HasInputHeight<T, size_t&(T::*)()>::value &&
41 !HasModelCheck<T, std::vector<LayerTypes>&(T::*)()>::value,
size_t>::type
47 typename std::enable_if<
48 HasInputHeight<T, size_t&(T::*)()>::value &&
49 !HasModelCheck<T, std::vector<LayerTypes>&(T::*)()>::value,
size_t>::type
54 typename std::enable_if<
55 !HasInputHeight<T, size_t&(T::*)()>::value &&
56 HasModelCheck<T, std::vector<LayerTypes>&(T::*)()>::value,
size_t>::type
62 typename std::enable_if<
63 HasInputHeight<T, size_t&(T::*)()>::value &&
64 HasModelCheck<T, std::vector<LayerTypes>&(T::*)()>::value,
size_t>::type
72 #include "output_height_visitor_impl.hpp" OutputWidthVisitor exposes the OutputHeight() method of the given module.
size_t operator()(LayerType *layer) const
Return the output height.
Linear algebra utility functions, generally performed on matrices or vectors.
std::enable_if< !HasInputHeight< T, size_t &(T::*)()>::value &&!HasModelCheck< T, std::vector< LayerTypes > &(T::*)()>::value, size_t >::type LayerOutputHeight(T *layer) const
Return 0 if the module doesn't implement the InputHeight() or Model() function.