Isis 3 Developer Reference
NaifDskApi.h
Go to the documentation of this file.
1 #ifndef NaifDskApi_h
2 #define NaifDskApi_h
3 
25 // These are the current set of NAIF DSK include files. Note that the
26 // extern "C" wrapper is required as those files are not yet C++ ready.
27 
28 #include <QDebug>
29 
30 #include <SpiceUsr.h>
31 #include <SpiceZfc.h>
32 
33 // Specs for convenient NAIF vectors and matrices
34 #include <tnt/tnt_array1d.h>
35 #include <tnt/tnt_array1d_utils.h>
36 #include <tnt/tnt_array2d.h>
37 #include <tnt/tnt_array2d_utils.h>
38 
39 namespace Isis {
40 
60  // Basic type definitions
61  typedef TNT::Array1D<SpiceDouble> NaifVector;
62  typedef TNT::Array1D<SpiceDouble> NaifVertex;
63  typedef TNT::Array2D<SpiceDouble> NaifTriangle;
64 
65  // Provide (dimensionality) validation routines
66  bool validate(const NaifVertex &v);
67  bool validate(const NaifTriangle &t);
68 
69  QDebug operator<<(QDebug dbg, const TNT::Array1D<SpiceDouble> &tntArray);
70  QDebug operator<<(QDebug dbg, const TNT::Array2D<SpiceDouble> &tntMatrix);
71 
72  QString toString(const TNT::Array1D<SpiceDouble> &tntArray, int precision=15);
73 
74 }; // namespace Isis
75 
76 #endif
QString toString(bool boolToConvert)
Global function to convert a boolean to a string.
Definition: IString.cpp:226
TNT::Array1D< SpiceDouble > NaifVector
Namespace to contain type definitions of NAIF DSK fundamentals.
Definition: NaifDskApi.h:61
TNT::Array1D< SpiceDouble > NaifVertex
1-D Buffer[3]
Definition: NaifDskApi.h:62
bool validate(const NaifVertex &v)
Verifies that the given NaifVector or NaifVertex is 3 dimensional.
Definition: NaifDskApi.cpp:45
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
TNT::Array2D< SpiceDouble > NaifTriangle
3-D triangle[3][3]
Definition: NaifDskApi.h:63