Isis 3 Programmer Reference
VariableLineScanCameraDetectorMap.h
1 #ifndef VariableLineScanCameraDetectorMap_h
2 #define VariableLineScanCameraDetectorMap_h
3 
8 /* SPDX-License-Identifier: CC0-1.0 */
9 
10 #include "LineScanCameraDetectorMap.h"
11 
12 namespace Isis {
13  class LineRateChange;
14 
50  public:
51  VariableLineScanCameraDetectorMap(Camera *parent, std::vector< LineRateChange > &lineRates);
52 
54 
55  virtual bool SetParent(const double sample,
56  const double line);
57  virtual bool SetParent(const double sample,
58  const double line,
59  const double deltaT);
60 
61  virtual bool SetDetector(const double sample,
62  const double line);
63 
64  virtual double exposureDuration(const double sample,
65  const double line,
66  const int band) const;
67  LineRateChange &lineRate(const double line) const;
68 
69  private:
70  std::vector< LineRateChange > &p_lineRates;
72  };
73 
74 
84  public:
85  LineRateChange(int line, double stime, double rate) {
86  p_line = line;
87  p_stime = stime;
88  p_rate = rate;
89  };
90 
91  int GetStartLine() {
92  return p_line;
93  }
94  double GetStartEt() {
95  return p_stime;
96  }
97  double GetLineScanRate() {
98  return p_rate;
99  }
100 
101  private:
102  int p_line;
103  double p_stime;
104  double p_rate;
105  };
106 };
107 #endif
Isis::VariableLineScanCameraDetectorMap::lineRate
LineRateChange & lineRate(const double line) const
Get the line rate information for a given line.
Definition: VariableLineScanCameraDetectorMap.cpp:191
Isis::LineRateChange::p_line
int p_line
The first line in the section.
Definition: VariableLineScanCameraDetectorMap.h:102
Isis::VariableLineScanCameraDetectorMap::SetParent
virtual bool SetParent(const double sample, const double line)
Compute detector position from a parent image coordinate.
Definition: VariableLineScanCameraDetectorMap.cpp:96
Isis::VariableLineScanCameraDetectorMap
Convert between parent image coordinates and detector coordinates.
Definition: VariableLineScanCameraDetectorMap.h:49
Isis::VariableLineScanCameraDetectorMap::SetDetector
virtual bool SetDetector(const double sample, const double line)
Compute parent position from a detector coordinate.
Definition: VariableLineScanCameraDetectorMap.cpp:51
Isis::Camera
Definition: Camera.h:236
Isis::VariableLineScanCameraDetectorMap::VariableLineScanCameraDetectorMap
VariableLineScanCameraDetectorMap(Camera *parent, std::vector< LineRateChange > &lineRates)
Constructs a VariableLineScanCameraDetectorMap.
Definition: VariableLineScanCameraDetectorMap.cpp:23
Isis::VariableLineScanCameraDetectorMap::~VariableLineScanCameraDetectorMap
virtual ~VariableLineScanCameraDetectorMap()
Destructor.
Definition: VariableLineScanCameraDetectorMap.cpp:36
Isis::LineRateChange::p_stime
double p_stime
The time at the beginning of exposure of the first line.
Definition: VariableLineScanCameraDetectorMap.h:103
Isis::LineRateChange::p_rate
double p_rate
The time between lines in the section.
Definition: VariableLineScanCameraDetectorMap.h:104
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
Isis::LineScanCameraDetectorMap
Convert between parent image coordinates and detector coordinates.
Definition: LineScanCameraDetectorMap.h:37
Isis::VariableLineScanCameraDetectorMap::exposureDuration
virtual double exposureDuration(const double sample, const double line, const int band) const
This virtual method is for returning the exposure duration of a given pixel.
Definition: VariableLineScanCameraDetectorMap.cpp:174
Isis::LineRateChange
Container class for storing timing information for a section of an image.
Definition: VariableLineScanCameraDetectorMap.h:83