UNIVERS  15.3
UNIVERS base processing software API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
zd_trace.hpp
1 /* zd_trace.hpp */
2 /* $Id: zd_trace.hpp 20080 2009-12-15 15:57:52Z vlad $ */
3 #ifndef __zd_trace_hpp
4 #define __zd_trace_hpp
5 
6 #include "zd_function.hpp"
7 #include "zqb_real_trace.hpp"
8 
9 
16 class ZdTrace : public ZdFunction
17 {
18 public:
19 
21  ZdTrace (const char* szFuncName = NULL);
22 
24  ZdTrace (const ZqbRealTrace& rtr, const char* szFuncName = NULL);
25 
26 
27  /*
28  * Trace operations.
29  */
30 
32  virtual const ZqbRealTrace& trace () const;
33 
36  virtual ZqbRealTrace& trace ();
37 
38 
39  /*
40  * Run-time type identification facility
41  */
42 
44  virtual bool compatibleType (const char* szType) const;
45 
46 
47  /*
48  * Basic functionality
49  */
50 
52  virtual int count ();
53 
55  virtual double arg (int i);
56 
58  virtual double func (int i);
59 
60 
61  /*
62  * Extended functionality with default implementation
63  */
64 
67  virtual bool isNullFunc (int i);
68 
70  virtual double argStep ();
71 
73  virtual void getArgBounds (double b[2]);
74 
76  virtual int argIndex (double a);
77 
79  virtual double funcInterp (double a);
80 
81 protected:
82 
85 
86 private:
87 
89  static int s_iNameCounter;
90 
92  static const char *s_szOwnType;
93 
94 };
95 
96 
97 #endif /* zd_trace.hpp */
virtual double func(int i)
virtual double funcInterp(double a)
ZdTrace(const char *szFuncName=NULL)
Definition: zd_trace.hpp:16
virtual bool isNullFunc(int i)
virtual int count()
virtual double argStep()
Definition: zd_function.hpp:27
virtual double arg(int i)
Definition: zqb_real_trace.hpp:19
virtual const ZqbRealTrace & trace() const
virtual int argIndex(double a)
virtual void getArgBounds(double b[2])
ZqbRealTrace m_Trace
Definition: zd_trace.hpp:84
virtual bool compatibleType(const char *szType) const