USGS

Isis 3.0 Object Programmers' Reference

Home

CameraDetectorMap.h
Go to the documentation of this file.
1 
24 #ifndef CameraDetectorMap_h
25 #define CameraDetectorMap_h
26 
27 #include "Camera.h"
28 
29 namespace Isis {
59  public:
60  CameraDetectorMap(Camera *parent = 0);
61 
63  virtual ~CameraDetectorMap() {};
64 
65  virtual bool SetParent(const double sample, const double line);
66 
67  virtual bool SetDetector(const double sample, const double line);
68 
69  double AdjustedStartingSample() const;
70 
71  double AdjustedStartingLine() const;
72 
74  inline double ParentSample() const {
75  return p_parentSample;
76  }
77 
79  inline double ParentLine() const {
80  return p_parentLine;
81  }
82 
84  inline double DetectorSample() const {
85  return p_detectorSample;
86  }
87 
89  inline double DetectorLine() const {
90  return p_detectorLine;
91  }
92 
101  inline void SetStartingDetectorSample(const double sample) {
102  p_startingDetectorSample = sample;
103  Compute();
104  }
105 
114  inline void SetStartingDetectorLine(const double line) {
115  p_startingDetectorLine = line;
116  Compute();
117  }
118 
128  inline void SetDetectorSampleSumming(const double summing) {
129  p_detectorSampleSumming = summing;
130  Compute();
131  }
132 
142  inline void SetDetectorLineSumming(const double summing) {
143  p_detectorLineSumming = summing;
144  Compute();
145  }
146 
148  virtual double SampleScaleFactor() const {
149  return p_detectorSampleSumming;
150  }
151 
153  virtual double LineScaleFactor() const {
154  return p_detectorLineSumming;
155  }
156 
158  virtual double LineRate() const {
159  return 0.0;
160  }
161 
162  protected:
163  Camera *p_camera;
164 
165  double p_parentSample;
166  double p_parentLine;
167  double p_detectorLine;
168  double p_detectorSample;
169 
170  double p_detectorSampleSumming;
171  double p_detectorLineSumming;
172  double p_startingDetectorSample;
173  double p_startingDetectorLine;
174 
175  double p_ss;
176  double p_sl;
177 
178  private:
179  void Compute();
180  };
181 };
182 #endif