1 // Copyright (C) 2009 Davis E. King (davis@dlib.net) 2 // License: Boost Software License See LICENSE.txt for the full license. 3 #ifndef DLIB_NULL_TRAINERs_H_ 4 #define DLIB_NULL_TRAINERs_H_ 5 6 #include "null_trainer_abstract.h" 7 #include "../algs.h" 8 #include "function_abstract.h" 9 10 namespace dlib 11 { 12 13 // ---------------------------------------------------------------------------------------- 14 15 template < 16 typename dec_funct_type 17 > 18 class null_trainer_type 19 { 20 public: 21 typedef typename dec_funct_type::kernel_type kernel_type; 22 typedef typename dec_funct_type::scalar_type scalar_type; 23 typedef typename dec_funct_type::sample_type sample_type; 24 typedef typename dec_funct_type::mem_manager_type mem_manager_type; 25 typedef dec_funct_type trained_function_type; 26 null_trainer_type()27 null_trainer_type ( 28 ){} 29 null_trainer_type(const dec_funct_type & dec_funct_)30 null_trainer_type ( 31 const dec_funct_type& dec_funct_ 32 ) : dec_funct(dec_funct_) {} 33 34 template < 35 typename in_sample_vector_type, 36 typename in_scalar_vector_type 37 > train(const in_sample_vector_type &,const in_scalar_vector_type &)38 const dec_funct_type& train ( 39 const in_sample_vector_type& , 40 const in_scalar_vector_type& 41 ) const { return dec_funct; } 42 43 private: 44 dec_funct_type dec_funct; 45 }; 46 47 // ---------------------------------------------------------------------------------------- 48 49 template < 50 typename dec_funct_type 51 > null_trainer(const dec_funct_type & dec_funct)52 const null_trainer_type<dec_funct_type> null_trainer ( 53 const dec_funct_type& dec_funct 54 ) { return null_trainer_type<dec_funct_type>(dec_funct); } 55 56 // ---------------------------------------------------------------------------------------- 57 58 } 59 60 #endif // DLIB_NULL_TRAINERs_H_ 61 62