00001 // This is mul/pdf1d/pdf1d_epanech_kernel_pdf_builder.cxx 00002 #include "pdf1d_epanech_kernel_pdf_builder.h" 00003 //: 00004 // \file 00005 // \author Tim Cootes 00006 // \brief Builds Epanechnikov kernel pdfs 00007 00008 #include <vcl_cassert.h> 00009 #include <vcl_string.h> 00010 #include <pdf1d/pdf1d_epanech_kernel_pdf.h> 00011 00012 //======================================================================= 00013 // Dflt ctor 00014 //======================================================================= 00015 00016 pdf1d_epanech_kernel_pdf_builder::pdf1d_epanech_kernel_pdf_builder() 00017 { 00018 } 00019 00020 //======================================================================= 00021 // Destructor 00022 //======================================================================= 00023 00024 pdf1d_epanech_kernel_pdf_builder::~pdf1d_epanech_kernel_pdf_builder() 00025 { 00026 } 00027 00028 //======================================================================= 00029 00030 pdf1d_epanech_kernel_pdf& pdf1d_epanech_kernel_pdf_builder::gkpdf(pdf1d_pdf& model) const 00031 { 00032 // require a pdf1d_epanech_kernel_pdf 00033 assert(model.is_class("pdf1d_epanech_kernel_pdf")); 00034 return static_cast<pdf1d_epanech_kernel_pdf&>( model); 00035 } 00036 00037 pdf1d_pdf* pdf1d_epanech_kernel_pdf_builder::new_model() const 00038 { 00039 return new pdf1d_epanech_kernel_pdf; 00040 } 00041 00042 00043 vcl_string pdf1d_epanech_kernel_pdf_builder::new_model_type() const 00044 { 00045 return vcl_string("pdf1d_epanech_kernel_pdf"); 00046 } 00047 00048 //======================================================================= 00049 // Method: is_a 00050 //======================================================================= 00051 00052 vcl_string pdf1d_epanech_kernel_pdf_builder::is_a() const 00053 { 00054 return vcl_string("pdf1d_epanech_kernel_pdf_builder"); 00055 } 00056 00057 //======================================================================= 00058 // Method: is_class 00059 //======================================================================= 00060 00061 bool pdf1d_epanech_kernel_pdf_builder::is_class(vcl_string const& s) const 00062 { 00063 return pdf1d_kernel_pdf_builder::is_class(s) || s==pdf1d_epanech_kernel_pdf_builder::is_a(); 00064 } 00065 00066 //======================================================================= 00067 // Method: version_no 00068 //======================================================================= 00069 00070 short pdf1d_epanech_kernel_pdf_builder::version_no() const 00071 { 00072 return 1; 00073 } 00074 00075 //======================================================================= 00076 // Method: clone 00077 //======================================================================= 00078 00079 pdf1d_builder* pdf1d_epanech_kernel_pdf_builder::clone() const 00080 { 00081 return new pdf1d_epanech_kernel_pdf_builder(*this); 00082 } 00083 00084 //======================================================================= 00085 // Method: print 00086 //======================================================================= 00087 00088 void pdf1d_epanech_kernel_pdf_builder::print_summary(vcl_ostream& /*os*/) const 00089 { 00090 vcl_cerr << "pdf1d_epanech_kernel_pdf_builder::print_summary() NYI\n"; 00091 } 00092 00093