contrib/mul/pdf1d/pdf1d_epanech_kernel_pdf_builder.h
Go to the documentation of this file.
00001 // This is mul/pdf1d/pdf1d_epanech_kernel_pdf_builder.h
00002 #ifndef pdf1d_epanech_kernel_pdf_builder_h
00003 #define pdf1d_epanech_kernel_pdf_builder_h
00004 
00005 //:
00006 // \file
00007 // \author Tim Cootes
00008 // \brief Builds Epanechnikov kernel pdfs
00009 
00010 #include <pdf1d/pdf1d_kernel_pdf_builder.h>
00011 #include <vcl_iosfwd.h>
00012 
00013 //=======================================================================
00014 
00015 class pdf1d_epanech_kernel_pdf;
00016 
00017 //: Build Epanechnikov kernel pdf objects
00018 //  Build functions are implemented in the pdf1d_kernel_pdf_builder parent
00019 class pdf1d_epanech_kernel_pdf_builder : public pdf1d_kernel_pdf_builder
00020 {
00021   pdf1d_epanech_kernel_pdf& gkpdf(pdf1d_pdf& model) const;
00022  public:
00023 
00024   //: Dflt ctor
00025   pdf1d_epanech_kernel_pdf_builder();
00026 
00027   //: Destructor
00028   virtual ~pdf1d_epanech_kernel_pdf_builder();
00029 
00030   //: Create empty model
00031   virtual pdf1d_pdf* new_model() const;
00032 
00033   //: Name of the model class returned by new_model()
00034   virtual vcl_string new_model_type() const;
00035 
00036   //: Version number for I/O
00037   short version_no() const;
00038 
00039   //: Name of the class
00040   virtual vcl_string is_a() const;
00041 
00042   //: Does the name of the class match the argument?
00043   virtual bool is_class(vcl_string const& s) const;
00044 
00045   //: Create a copy on the heap and return base class pointer
00046   virtual pdf1d_builder* clone() const;
00047 
00048   //: Print class to os
00049   virtual void print_summary(vcl_ostream& os) const;
00050 };
00051 
00052 #endif // pdf1d_epanech_kernel_pdf_builder_h