GTXclient C++ API  GTXserver-17.0.3
GTXFileInfo.hpp
1 /*****************************************************************************
2 
3  Copyright (c)2007 Geovariances, Avon, France.
4 
5  In consideration of payment of the license fee, which is a part of
6  the price you paid for this product, Geovariances (GV) as licensor,
7  grants you, the licensee, a non-exclusive right to use this copy of a
8  GV software product.
9  GV reserves all rights not expressly granted to licensee. GV retains
10  titleship and ownership of software. This license is not a sale of
11  the original software or any copy. GV also retains titleship and
12  ownership of any modifications or derivations of this software. Any
13  modifications of this software must be clearly marked as such. This
14  copyright message must appear in its entirety in this software, or
15  any modifications or derivations thereof.
16 
17  Geovariances welcomes any comments, suggestions, bug reports, etc. At
18  the discretion of Geovariances, any customer supplied bug fixes,
19  enhancements, or utility codes will be distributed in future software
20  releases (the contributor will of course be credited).
21 
22  Geovariances
23  49bis, Avenue Franklin Roosevelt
24  77210 Avon, FRANCE
25 
26  Phone: +33-(0)-160.749.100
27  Fax: +33-(0)-164.228.728
28  e-mail: support@geovariances.fr
29 
30  All Rights Reserved
31 
32 *****************************************************************************/
33 
34 #ifndef __GTXFileInfo_hpp__
35 #define __GTXFileInfo_hpp__
36 
37 #define __USING_GTXSERVER_CPP_API__
38 
39 #ifdef DOXYGEN
40 #define SWIG_OR_DOXYGEN
41 #endif //DOXYGEN
42 
43 #ifdef SWIG
44 #define GLOBAL_CLASS
45 #define SWIG_OR_DOXYGEN
46 #else //SWIG
47 #include <GTXClient.h>
48 
49 class GTXFaultInfo;
50 #endif //SWIG
51 
55 class GLOBAL_CLASS GTXFileInfo
56 {
57 public:
59  GTXFileInfo();
61  GTXFileInfo(const GTXFileInfo &in_finfo);
62 
68  enum FileType
69  {
70  FILE_TYPE_ANY = -1,
75  FILE_TYPE_INVALID
76  };
77 
79  FileType GetFileType();
81  const char *GetLinkedFileName();
83  bool GetFaultedFlag();
85  bool GetPolygonFlag();
87  int GetDimension();
89  gtx_long GetSampleNumber();
91  int GetItemNumber();
93  double GetGridX0();
95  double GetGridY0();
97  double GetGridZ0();
99  double GetGridDX();
101  double GetGridDY();
103  double GetGridDZ();
105  int GetGridNX();
107  int GetGridNY();
109  int GetGridNZ();
111  bool GetGridRotatedFlag();
113  double GetGridAngleAroundZ();
115  double GetGridAngleAroundY();
117  double GetGridAngleAroundX();
118 
120  const char *GetSampleNumberVariableName();
122  const char *GetLineNameVariableName();
124  const char *GetLineNumberVariableName();
126  const char *GetRelativeNumberVariableName();
128  const char *GetXCoordinateVariableName();
130  const char *GetYCoordinateVariableName();
132  const char *GetZCoordinateVariableName();
133 
135  const char *GetXCoreBeginVariableName();
137  const char *GetYCoreBeginVariableName();
139  const char *GetZCoreBeginVariableName();
141  const char *GetXCoreEndVariableName();
143  const char *GetYCoreEndVariableName();
145  const char *GetZCoreEndVariableName();
146 
148  GTXFaultInfo GetFaultInfo();
149 
150 private:
151  GTXFileInfo_C _cinfo;
152  friend class GTXClient;
153 };
154 
157 {
158 }
159 
161 inline GTXFileInfo::GTXFileInfo(const GTXFileInfo &in_finfo)
162 {
163  _cinfo = in_finfo._cinfo;
164 }
165 
167 {
168  return (GTXFileInfo::FileType)_cinfo.type;
169 }
170 
171 inline const char *GTXFileInfo::GetLinkedFileName()
172 {
173  return _cinfo.linked_file;
174 }
175 
177 {
178  return _cinfo.faulted != 0;
179 }
180 
182 {
183  return _cinfo.polygon_file != 0;
184 }
185 
187 {
188  return _cinfo.dimension;
189 }
190 
192 {
193  return _cinfo.s_number;
194 }
195 
197 {
198  return _cinfo.item_number;
199 }
200 
201 inline double GTXFileInfo::GetGridX0()
202 {
203  return _cinfo.X0;
204 }
205 
206 inline double GTXFileInfo::GetGridY0()
207 {
208  return _cinfo.Y0;
209 }
210 
211 inline double GTXFileInfo::GetGridZ0()
212 {
213  return _cinfo.Z0;
214 }
215 
216 inline double GTXFileInfo::GetGridDX()
217 {
218  return _cinfo.DX;
219 }
220 
221 inline double GTXFileInfo::GetGridDY()
222 {
223  return _cinfo.DY;
224 }
225 
226 inline double GTXFileInfo::GetGridDZ()
227 {
228  return _cinfo.DZ;
229 }
230 
232 {
233  return _cinfo.NX;
234 }
235 
237 {
238  return _cinfo.NY;
239 }
240 
242 {
243  return _cinfo.NZ;
244 }
245 
247 {
248  return _cinfo.rotation != 0;
249 }
250 
252 {
253  return _cinfo.angle_z;
254 }
255 
257 {
258  return _cinfo.angle_y;
259 }
260 
262 {
263  return _cinfo.angle_x;
264 }
265 
267 {
268  return _cinfo.sn_var_name;
269 }
270 
272 {
273  return _cinfo.lname_var_name;
274 }
275 
277 {
278  return _cinfo.ln_var_name;
279 }
280 
282 {
283  return _cinfo.rn_var_name;
284 }
285 
287 {
288  return _cinfo.xg_var_name;
289 }
290 
292 {
293  return _cinfo.yg_var_name;
294 }
295 
297 {
298  return _cinfo.zg_var_name;
299 }
300 
302 {
303  return _cinfo.xb_var_name;
304 }
306 {
307  return _cinfo.yb_var_name;
308 }
310 {
311  return _cinfo.zb_var_name;
312 }
314 {
315  return _cinfo.xe_var_name;
316 }
318 {
319  return _cinfo.ye_var_name;
320 }
322 {
323  return _cinfo.ze_var_name;
324 }
325 
326 #endif // __GTXFileInfo_hpp__