/*! \file \brief Support for testing descendants of mpdf. \author Vaclav Barta. ----------------------------------- BDM++ - C++ library for Bayesian Decision Making under Uncertainty Using IT++ for numerical operations ----------------------------------- */ #ifndef MPDF_HARNESS_H #define MPDF_HARNESS_H #define BDMLIB // not an ideal way to prevent double registration of UI factories... #include "bdmroot.h" #include "itpp_ext.h" #include "shared_ptr.h" #include "base/bdmbase.h" #include "base/user_info.h" namespace bdm { class mpdf_harness : public root { private: shared_ptr hmpdf; vec cond; vec mean; int nsamples; mat R; double tolerance; public: static void test_config(const char *config_file_name); mpdf_harness():nsamples(1000), tolerance(0.1) { } virtual void test(const char *config_name, int idx); void from_setting(const Setting &set); protected: mpdf *get_mpdf() { return hmpdf.get(); } }; } #endif