00001 #ifndef INDII_ML_AUX_DENSITYTREEMIXTUREPDF_HPP
00002 #define INDII_ML_AUX_DENSITYTREEMIXTUREPDF_HPP
00003
00004 #include "StandardMixturePdf.hpp"
00005 #include "DensityTreePdf.hpp"
00006
00007 namespace indii {
00008 namespace ml {
00009 namespace aux {
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 class DensityTreeMixturePdf : public StandardMixturePdf<DensityTreePdf> {
00021 public:
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 DensityTreeMixturePdf();
00032
00033
00034
00035
00036
00037
00038
00039 DensityTreeMixturePdf(const unsigned int N);
00040
00041
00042
00043
00044 virtual ~DensityTreeMixturePdf();
00045
00046
00047
00048
00049
00050
00051 virtual void setDimensions(const unsigned int N,
00052 const bool preserve = false);
00053
00054 private:
00055
00056
00057
00058 template<class Archive>
00059 void serialize(Archive& ar, const unsigned int version);
00060
00061
00062
00063
00064 friend class boost::serialization::access;
00065
00066 };
00067
00068 }
00069 }
00070 }
00071
00072 #include "boost/serialization/base_object.hpp"
00073
00074 template <class Archive>
00075 void indii::ml::aux::DensityTreeMixturePdf::serialize(Archive& ar,
00076 const unsigned int version) {
00077 ar & boost::serialization::base_object<
00078 indii::ml::aux::StandardMixturePdf<indii::ml::aux::DensityTreePdf> >(
00079 *this);
00080 }
00081
00082 #endif
00083