00001 #include "mfpf_vec_cost.h" 00002 //: 00003 // \file 00004 // \brief Cost functions to evaluate vector of pixel samples 00005 // \author Tim Cootes 00006 00007 #include <vsl/vsl_indent.h> 00008 #include <vsl/vsl_binary_loader.h> 00009 00010 //======================================================================= 00011 // Dflt ctor 00012 //======================================================================= 00013 00014 mfpf_vec_cost::mfpf_vec_cost() 00015 { 00016 } 00017 00018 //======================================================================= 00019 // Destructor 00020 //======================================================================= 00021 00022 mfpf_vec_cost::~mfpf_vec_cost() 00023 { 00024 } 00025 00026 //======================================================================= 00027 // Method: version_no 00028 //======================================================================= 00029 00030 short mfpf_vec_cost::version_no() const 00031 { 00032 return 1; 00033 } 00034 00035 //======================================================================= 00036 // Method: is_a 00037 //======================================================================= 00038 00039 vcl_string mfpf_vec_cost::is_a() const 00040 { 00041 return vcl_string("mfpf_vec_cost"); 00042 } 00043 00044 //: Allows derived class to be loaded by base-class pointer 00045 void vsl_add_to_binary_loader(const mfpf_vec_cost& b) 00046 { 00047 vsl_binary_loader<mfpf_vec_cost>::instance().add(b); 00048 } 00049 00050 //======================================================================= 00051 // Associated function: operator<< 00052 //======================================================================= 00053 00054 void vsl_b_write(vsl_b_ostream& bfs, const mfpf_vec_cost& b) 00055 { 00056 b.b_write(bfs); 00057 } 00058 00059 //======================================================================= 00060 // Associated function: operator>> 00061 //======================================================================= 00062 00063 void vsl_b_read(vsl_b_istream& bfs, mfpf_vec_cost& b) 00064 { 00065 b.b_read(bfs); 00066 } 00067 00068 //======================================================================= 00069 // Associated function: operator<< 00070 //======================================================================= 00071 00072 vcl_ostream& operator<<(vcl_ostream& os,const mfpf_vec_cost& b) 00073 { 00074 os << b.is_a() << ": "; 00075 vsl_indent_inc(os); 00076 b.print_summary(os); 00077 vsl_indent_dec(os); 00078 return os; 00079 } 00080 00081 //======================================================================= 00082 // Associated function: operator<< 00083 //======================================================================= 00084 00085 vcl_ostream& operator<<(vcl_ostream& os,const mfpf_vec_cost* b) 00086 { 00087 if (b) 00088 return os << *b; 00089 else 00090 return os << "No mfpf_vec_cost defined."; 00091 }