// Copyright (C) 2009 Davis E. King (davis@dlib.net) // License: Boost Software License See LICENSE.txt for the full license. #ifndef DLIB_NULL_TRAINERs_H_ #define DLIB_NULL_TRAINERs_H_ #include "null_trainer_abstract.h" #include "../algs.h" #include "function_abstract.h" namespace dlib { // ---------------------------------------------------------------------------------------- template < typename dec_funct_type > class null_trainer_type { public: typedef typename dec_funct_type::kernel_type kernel_type; typedef typename dec_funct_type::scalar_type scalar_type; typedef typename dec_funct_type::sample_type sample_type; typedef typename dec_funct_type::mem_manager_type mem_manager_type; typedef dec_funct_type trained_function_type; null_trainer_type ( ){} null_trainer_type ( const dec_funct_type& dec_funct_ ) : dec_funct(dec_funct_) {} template < typename in_sample_vector_type, typename in_scalar_vector_type > const dec_funct_type& train ( const in_sample_vector_type& , const in_scalar_vector_type& ) const { return dec_funct; } private: dec_funct_type dec_funct; }; // ---------------------------------------------------------------------------------------- template < typename dec_funct_type > const null_trainer_type<dec_funct_type> null_trainer ( const dec_funct_type& dec_funct ) { return null_trainer_type<dec_funct_type>(dec_funct); } // ---------------------------------------------------------------------------------------- } #endif // DLIB_NULL_TRAINERs_H_