GTXclient C++ API  GTXserver-17.0.3
GTXDoubleArray.hpp
1 #ifndef __GTXDoubleArray_hpp__
2 #define __GTXDoubleArray_hpp__
3 
4 #define __USING_GTXSERVER_CPP_API__
5 
6 #ifdef DOXYGEN
7 #define SWIG_OR_DOXYGEN
8 #endif //DOXYGEN
9 
10 #ifdef SWIG
11 #define GLOBAL_CLASS
12 #define SWIG_OR_DOXYGEN
13 #else //SWIG
14 #include <GTXClient.h>
15 #endif //SWIG
16 
20 class GLOBAL_CLASS GTXDoubleArray
21 {
22 public:
26  GTXDoubleArray(gtx_long count, double values[]);
28  ~GTXDoubleArray();
30  GTXDoubleArray(const GTXDoubleArray &in_dbldata);
31 #ifndef SWIG
32 
33  GTXDoubleArray &operator=(const GTXDoubleArray &in_dbldata);
34 #endif
35 
37  gtx_long GetCount(void) const;
39  void Resize(gtx_long count);
40 
41 
43  double GetValue(gtx_long rank) const;
45  const double *GetValues() const;
47  void SetValue(gtx_long rank, double value);
48 
50  void SetValues(double values[]);
51 
52 private:
53  gtx_long _count;
54  double *_values;
55  int *_ref;
56 
58  void StorePointer(double *values, gtx_long count);
60  void Unref();
61 
62  friend class GTXClient;
63 };
64 
65 #endif //__GTXDoubleArray_hpp__