Isis 3 Developer Reference
RosettaVirtisCamera.h
Go to the documentation of this file.
1 #ifndef RosettaVirtisCamera_h
2 #define RosettaVirtisCamera_h
3 
4 #include "LineScanCamera.h"
5 
6 #include <QString>
7 
8 #include <tnt/tnt_array2d.h>
9 
11 
12 namespace Isis {
25  public:
26  typedef TNT::Array2D<SpiceDouble> SMatrix;
27 
29 
31 
33  virtual int CkFrameId() const;
34 
36  virtual int CkReferenceId() const;
37 
39  virtual int SpkReferenceId() const;
40 
41  private:
42  void readHouseKeeping(const QString &filename, double lineRate);
43  void readSCET(const QString &filename);
44 
45  QString scrub(const QString &text) const;
46  double exposureTime() const;
47  double scanLineTime() const;
48  int pixelSumming() const;
49 
50  int hkLineCount() const;
51  double lineStartTime(const double midExpTime) const;
52  double lineEndTime(const double midExpTime) const;
53 
54  double startTime() const;
55  double endTime() const;
56 
57  Table getPointingTable(const QString &channelId,
58  const int zeroFrame);
59  SMatrix getStateRotation(const QString &frame1,
60  const QString &frame2,
61  const double &et) const;
62 
63  bool hasArticulationKernel(Pvl &label) const;
64 
71  struct ScanMirrorInfo {
72  int m_lineNum;
73  double m_scanLineEt;
74  double m_mirrorCos;
75  double m_mirrorSin;
76  double m_opticalAngle;
77  bool m_isDarkCurrent;
78  };
79 
80 
81  bool m_is1BCalibrated;
82  char m_slitMode;
83  double m_exposureTime;
84  int m_summing;
85  double m_scanRate;
86 
87  std::vector<LineRateChange> m_lineRates;
88  std::vector<ScanMirrorInfo> m_mirrorData;
89 
90  };
91 };
92 
93 #endif
virtual int SpkReferenceId() const
SPK Reference ID - J2000.
Definition: RosettaVirtisCamera.cpp:199
Camera model for both Rosetta VIRTIS-M instruments.
Definition: RosettaVirtisCamera.h:24
virtual int CkFrameId() const
CK Frame ID - Instrument Code from spacit run on CK.
Definition: RosettaVirtisCamera.cpp:179
Generic class for Line Scan Cameras.
Definition: LineScanCamera.h:52
RosettaVirtisCamera(Cube &cube)
Creates a camera for a Rosetta VIRTIS-M cube.
Definition: RosettaVirtisCamera.cpp:37
Container for cube-like labels.
Definition: Pvl.h:135
TNT::Array2D< SpiceDouble > SMatrix
2-D buffer
Definition: RosettaVirtisCamera.h:26
Class for storing Table blobs information.
Definition: Table.h:77
virtual int CkReferenceId() const
CK Reference ID - J2000.
Definition: RosettaVirtisCamera.cpp:189
~RosettaVirtisCamera()
Destructor.
Definition: RosettaVirtisCamera.cpp:171
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
IO Handler for Isis Cubes.
Definition: Cube.h:170