root/library/tests/epdf_harness.h @ 458

Revision 458, 1.1 kB (checked in by vbarta, 15 years ago)

removed configurable integral value (constantly 1)

Line 
1/*!
2  \file
3  \brief Support for testing descendants of epdf.
4  \author Vaclav Barta.
5
6  -----------------------------------
7  BDM++ - C++ library for Bayesian Decision Making under Uncertainty
8
9  Using IT++ for numerical operations
10  -----------------------------------
11*/
12
13#ifndef EPDF_HARNESS_H
14#define EPDF_HARNESS_H
15
16#define BDMLIB // not an ideal way to prevent double registration of UI factories...
17
18#include "bdmroot.h"
19#include "itpp_ext.h"
20#include "shared_ptr.h"
21#include "base/bdmbase.h"
22#include "base/user_info.h"
23
24namespace bdm
25{
26
27class epdf_harness : public root
28{
29private:
30    shared_ptr<epdf> hepdf;
31    vec mean;
32    vec variance;
33    mat support;
34    vec nbins;
35    int nsamples;
36    mat R;
37    double tolerance;
38
39public:
40    static void test_config(const char *config_file_name);
41
42    epdf_harness():nsamples(1000), tolerance(0.1) { }
43
44    virtual void test(const char *config_name, int idx);
45
46    void from_setting(const Setting &set);
47
48protected:
49    epdf *get_epdf() { return hepdf.get(); }
50
51    double get_tolerance() const { return tolerance; }
52};
53
54}
55
56#endif
Note: See TracBrowser for help on using the browser.