contrib/mul/vpdfl/vpdfl_pc_gaussian_sampler.h

Go to the documentation of this file.
00001 // This is mul/vpdfl/vpdfl_pc_gaussian_sampler.h
00002 #ifndef vpdfl_pc_gaussian_sampler_h
00003 #define vpdfl_pc_gaussian_sampler_h
00004 #ifdef VCL_NEEDS_PRAGMA_INTERFACE
00005 #pragma interface
00006 #endif
00007 //:
00008 // \file
00009 // \author Ian Scott
00010 // \date 21-Jul-2000
00011 // \brief Interface for Multi-variate principal Component gaussian PDF sampler.
00012 //
00013 // \verbatim
00014 //  Modifications
00015 //   23 April 2001 IMS - Ported to VXL
00016 // \endverbatim
00017 
00018 
00019 //=======================================================================
00020 // inclusions
00021 #include "vpdfl_gaussian_sampler.h"
00022 
00023 
00024 //=======================================================================
00025 
00026 class vpdfl_gaussian;
00027 
00028 //: Multi-Variate Axis-Aligned principal component Gaussian PDF
00029 class vpdfl_pc_gaussian_sampler : public vpdfl_gaussian_sampler
00030 {
00031   //: workspace;
00032   vnl_vector<double> dx_;
00033   //: workspace;
00034   vnl_vector<double> b_;
00035  public:
00036 
00037   //: Calculate the log probability density at position x.
00038   double log_p(const vnl_vector<double>& x);
00039 
00040 
00041   //: Version number for I/O
00042   short version_no() const;
00043 
00044   //: Name of the class
00045   virtual vcl_string is_a() const;
00046 
00047   //: Does the name of the class match the argument?
00048   virtual bool is_class(vcl_string const& s) const;
00049 
00050   //: Create a copy on the heap and return base class pointer
00051   virtual vpdfl_sampler_base* clone() const;
00052 };
00053 //=======================================================================
00054 
00055 #endif // vpdfl_pc_gaussian_sampler_h

Generated on Tue Dec 2 05:11:22 2008 for contrib/mul/vpdfl by  doxygen 1.5.1