Isis Developer Reference
DawnVirCamera.h
Go to the documentation of this file.
1#ifndef DawnVirCamera_h
2#define DawnVirCamera_h
3
10/* SPDX-License-Identifier: CC0-1.0 */
11
12#include "LineScanCamera.h"
13
14#include <QString>
15
16#include <tnt/tnt_array2d.h>
17
19
20namespace Isis {
77 public:
78 typedef TNT::Array2D<SpiceDouble> SMatrix;
79
80 DawnVirCamera(Cube &cube);
81
83
85 virtual int CkFrameId() const;
86
88 virtual int CkReferenceId() const;
89
91 virtual int SpkReferenceId() const;
92
93 private:
94 void readHouseKeeping(const QString &filename, double lineRate);
95 QString scrub(const QString &text) const;
96 double exposureTime() const;
97 double scanLineTime() const;
98 int pixelSumming() const;
99
100 int hkLineCount() const;
101 double lineStartTime(const double midExpTime) const;
102 double lineEndTime(const double midExpTime) const;
103
104 double startTime() const;
105 double endTime() const;
106
107 Table getPointingTable(const QString &channelId,
108 const int zeroFrame);
109 SMatrix getStateRotation(const QString &frame1,
110 const QString &frame2,
111 const double &et) const;
112
113 bool hasArticulationKernel(Pvl &label) const;
114
121 struct ScanMirrorInfo {
122 int m_lineNum;
123 double m_scanLineEt;
124 double m_mirrorCos;
125 double m_mirrorSin;
126 double m_opticalAngle;
127 bool m_isDarkCurrent;
128 };
129
130
131 bool m_is1BCalibrated;
132 char m_slitMode;
133 double m_exposureTime;
134 int m_summing;
135 double m_scanRate;
136
137 std::vector<LineRateChange> m_lineRates;
138 std::vector<ScanMirrorInfo> m_mirrorData;
139
140 };
141};
142
143#endif
IO Handler for Isis Cubes.
Definition Cube.h:168
Camera model for both Danw VIR VIS and IR instruments.
Definition DawnVirCamera.h:76
virtual int CkFrameId() const
CK Frame ID - Instrument Code from spacit run on CK.
Definition DawnVirCamera.cpp:167
TNT::Array2D< SpiceDouble > SMatrix
2-D buffer
Definition DawnVirCamera.h:78
~DawnVirCamera()
Destructor.
Definition DawnVirCamera.cpp:159
virtual int SpkReferenceId() const
SPK Reference ID - J2000.
Definition DawnVirCamera.cpp:187
DawnVirCamera(Cube &cube)
Creates a camera for a Dawn VIR cube.
Definition DawnVirCamera.cpp:45
virtual int CkReferenceId() const
CK Reference ID - J2000.
Definition DawnVirCamera.cpp:177
Generic class for Line Scan Cameras.
Definition LineScanCamera.h:36
Container for cube-like labels.
Definition Pvl.h:119
Class for storing Table blobs information.
Definition Table.h:61
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16