Isis Developer Reference
Kernel.h
Go to the documentation of this file.
1#ifndef Kernel_h
2#define Kernel_h
3
10/* SPDX-License-Identifier: CC0-1.0 */
11
12
13#include <QString>
14#include <QStringList>
15
16namespace Isis {
36 class Kernel {
37 public:
41 enum Type {
42 Predicted = 1,
44 Nadir = 2,
45 Reconstructed = 4,
48 Smithed = 8
50 };
51
52 // constructors
53 Kernel();
54 Kernel(Type type, const QStringList &data);
55 ~Kernel();
56 // static kerneltype enum converters
57 static Type typeEnum(const QString &type);
58 static const char *typeEnum(const Type &type);
59 // accessors
61 Type type();
62 // mutators
63 void setKernels(QStringList data);
64 void setType(const Type &type);
65 // kernels vector operations
66 int size();
67 void push_back(const QString &str);
68 QString &operator[](const int index);
69 QString operator[](const int index) const;
70 // kernel type operations
71 bool operator<(const Kernel &other) const;
72
73 private:
74 QStringList m_kernels;
75 Type m_kernelType;
76 };
77
78
80};
81#endif
This class stores Kernel information, including Type and kernel file names.
Definition Kernel.h:36
void setType(const Type &type)
Sets the Kernel type.
Definition Kernel.cpp:117
~Kernel()
Destructs Kernel object.
Definition Kernel.cpp:27
void push_back(const QString &str)
Adds the string (file name) to the kernel data file list.
Definition Kernel.cpp:133
QStringList kernels()
Returns the list of kernel data file names.
Definition Kernel.cpp:93
static Type typeEnum(const QString &type)
Converts the given string to a character as follows.
Definition Kernel.cpp:57
int size()
Accessor method to determine the number of kernel files.
Definition Kernel.cpp:125
Kernel()
Constructs a Kernel object with "Unknown" Type.
Definition Kernel.cpp:19
QString & operator[](const int index)
Returns the value (file name) in the kernel data list at the given index value.
Definition Kernel.cpp:144
Type type()
Returns the stored Kernel::Type.
Definition Kernel.cpp:101
bool operator<(const Kernel &other) const
Compares which Kernel object has a higher quality Type, i.e.
Definition Kernel.cpp:168
void setKernels(QStringList data)
Sets the kernel data file names to the given list.
Definition Kernel.cpp:109
Type
Enumeration for type of kernel.
Definition Kernel.h:41
@ Predicted
Predicted Kernels are based on predicted location of the spacecraft.
Definition Kernel.h:42
@ Reconstructed
Reconstructed Kernels are supplemented with information on the actual position of targets and/or spac...
Definition Kernel.h:45
@ Smithed
Smithed Kernels are generally reconstructed kernels that have been corrected.
Definition Kernel.h:48
@ Nadir
Nadir Kernels mimic spacecraft pointing.
Definition Kernel.h:44
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16
Kernel::Type operator|(Kernel::Type a, Kernel::Type b)
Logical operator for combining Type flags.
Definition Kernel.cpp:181