IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
BaseBenchCase.h
1 // BaseBenchCase.h:
3 // ----------------
4 //
14 
15 #ifndef __BENCHMARKTOOLS_BASEBENCHCASE_H__
16 #define __BENCHMARKTOOLS_BASEBENCHCASE_H__
17 
18 // suppression warnings
19 // warning C4275: non dll-interface class 'boost::noncopyable_::noncopyable' used as base for dll-interface class 'ipsdk::bench::BaseBenchCase'
20 #pragma warning (push)
21 #pragma warning (disable : 4275)
22 
24 #include <Benchmark/IPSDKBenchmarkTools/BenchmarkTypes.h>
25 #include <Benchmark/IPSDKBenchmarkTools/BenchmarkDataItem.h>
26 #include <IPSDKUtil/Tools/ProcessingResult.h>
27 #include <IPSDKBaseData/ToolTip/BaseToolTip.h>
28 #include <boost/noncopyable.hpp>
29 
30 namespace ipsdk {
31 namespace bench {
32 
35 
36 class IPSDKBENCHMARKTOOLS_API BaseBenchCase : public boost::noncopyable,
37  public BaseToolTip
38 {
39 public:
42  BaseBenchCase();
43  virtual ~BaseBenchCase() = 0;
45 
46 // methods
47 public:
50  BoolResult run(BenchCaseResult& result);
51 
52 protected:
55  virtual BoolResult runDerived(BenchCaseResult& result) = 0;
56 
57 // attributes
58 private:
60 };
61 
64 
65 } // end of namespace bench
66 } // end of namespace ipsdk
67 
68 #pragma warning (pop)
69 
70 #endif // __BENCHMARKTOOLS_BASEBENCHCASE_H__
Base class for benchmark cases.
Definition: BaseBenchCase.h:36
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
#define IPSDKBENCHMARKTOOLS_API
Import/Export macro for library IPSDKBenchmarkTools.
Definition: IPSDKBenchmarkToolsExports.h:25
Base class for objects with name and tool tip informations.
Definition: BaseToolTip.h:27
Definition of import/export macro for library.
Definition: BenchmarkDataItem.h:125