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