Isis 3 Programmer Reference
NaifDskApi.h
1#ifndef NaifDskApi_h
2#define NaifDskApi_h
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
24namespace 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
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16
QString toString(bool boolToConvert)
Global function to convert a boolean to a string.
Definition IString.cpp:211
TNT::Array1D< SpiceDouble > NaifVector
Namespace to contain type definitions of NAIF DSK fundamentals.
Definition NaifDskApi.h:46
TNT::Array2D< SpiceDouble > NaifTriangle
3-D triangle[3][3]
Definition NaifDskApi.h:48
TNT::Array1D< SpiceDouble > NaifVertex
1-D Buffer[3]
Definition NaifDskApi.h:47
bool validate(const NaifVertex &v)
Verifies that the given NaifVector or NaifVertex is 3 dimensional.
QDebug operator<<(QDebug debug, const Hillshade &hillshade)
Print this class out to a QDebug object.