Isis Developer Reference
NaifDskApi.h
Go to the documentation of this file.
1 #ifndef NaifDskApi_h
2 #define NaifDskApi_h
3 
8 /* SPDX-License-Identifier: CC0-1.0 */
9 
10 // These are the current set of NAIF DSK include files. Note that the
11 // extern "C" wrapper is required as those files are not yet C++ ready.
12 
13 #include <QDebug>
14 
15 #include <SpiceUsr.h>
16 #include <SpiceZfc.h>
17 
18 // Specs for convenient NAIF vectors and matrices
19 #include <tnt/tnt_array1d.h>
20 #include <tnt/tnt_array1d_utils.h>
21 #include <tnt/tnt_array2d.h>
22 #include <tnt/tnt_array2d_utils.h>
23 
24 namespace Isis {
25 
45  // Basic type definitions
46  typedef TNT::Array1D<SpiceDouble> NaifVector;
47  typedef TNT::Array1D<SpiceDouble> NaifVertex;
48  typedef TNT::Array2D<SpiceDouble> NaifTriangle;
49 
50  // Provide (dimensionality) validation routines
51  bool validate(const NaifVertex &v);
52  bool validate(const NaifTriangle &t);
53 
54  QDebug operator<<(QDebug dbg, const TNT::Array1D<SpiceDouble> &tntArray);
55  QDebug operator<<(QDebug dbg, const TNT::Array2D<SpiceDouble> &tntMatrix);
56 
57  QString toString(const TNT::Array1D<SpiceDouble> &tntArray, int precision=15);
58 
59 }; // namespace Isis
60 
61 #endif
Isis::operator<<
QDebug operator<<(QDebug debug, const Hillshade &hillshade)
Print this class out to a QDebug object.
Definition: Hillshade.cpp:314
Isis::NaifVertex
TNT::Array1D< SpiceDouble > NaifVertex
1-D Buffer[3]
Definition: NaifDskApi.h:47
NaifDskApi.h
Isis::toString
QString toString(bool boolToConvert)
Global function to convert a boolean to a string.
Definition: IString.cpp:211
IString.h
Isis::NaifTriangle
TNT::Array2D< SpiceDouble > NaifTriangle
3-D triangle[3][3]
Definition: NaifDskApi.h:48
Isis::NaifVector
TNT::Array1D< SpiceDouble > NaifVector
Namespace to contain type definitions of NAIF DSK fundamentals.
Definition: NaifDskApi.h:46
Isis::validate
bool validate(const NaifVertex &v)
Verifies that the given NaifVector or NaifVertex is 3 dimensional.
Definition: NaifDskApi.cpp:28
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16