00001
00002
00003
00004
00005 #ifndef NullModel_h
00006 #define NullModel_h
00007
00008 #include <Model.h>
00009
00010 #include "Serializable.h"
00011
00012
00013 namespace BIE {
00014
00015
00020 class NullModel : public Model
00021 {
00022 public:
00023
00024
00026 NullModel() {}
00027
00029 void Initialize(State&) {}
00030
00032 double NormEval(double x, double y, SampleDistribution *d) { return 0.0; }
00033
00035 string ParameterDescription(int i)
00036 { ostringstream sout; sout << "Param #" << i; return sout.str(); }
00037
00039 int DataDimension() { return 0; }
00040
00041
00042 private:
00043 friend class boost::serialization::access;
00044 template<class Archive>
00045 void serialize(Archive & ar, const unsigned int version) {
00046 this->pre_serialize(ar, version);
00047 try {
00048 ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(Model);
00049 BIE_CATCH_BOOST_SERIALIZATION_EXCEPTION;
00050 }
00051 this->post_serialize(ar, version);
00052 }
00053
00054 };
00055 }
00056
00057 BIE_CLASS_TYPE_INFO(BIE::NullModel)
00058 BIE_CLASS_EXPORT_KEY(BIE::NullModel)
00059 #endif