Isis 3.0 Programmer Reference
Back | Home
BundleObservation.h
Go to the documentation of this file.
1 #ifndef BundleObservation_h
2 #define BundleObservation_h
3 
26 #include <QStringList>
27 #include <QVector>
28 
29 #include "BundleImage.h"
31 #include "BundleTargetBody.h"
32 #include "LinearAlgebra.h"
33 
34 namespace Isis {
35  class BundleObservationSolveSettings;
36  class SpicePosition;
37  class SpiceRotation;
38 
81  class BundleObservation : public QVector<BundleImageQsp> {
82 
83  public:
84  // default constructor
86 
87  // constructor
88  BundleObservation(BundleImageQsp image, QString observationNumber, QString instrumentId,
89  BundleTargetBodyQsp bundleTargetBody);
90 
91  // copy constructor
93 
94  // destructor
96 
97  // equals operator
99 
100  // copy method
101  void copy(const BundleObservation &src);
102 
103  void append(const BundleImageQsp &value);
104 
105  BundleImageQsp imageByCubeSerialNumber(QString cubeSerialNumber);
106 
108 
109  void setIndex(int n);
110  int index();
111 
114  int numberParameters();
115 
116  QString instrumentId();
117 
120 
123 // LinearAlgebra::Vector &parameterSolution();
126 
128 
129 // QStringList serialNumbers();
130 
133  void initializeBodyRotation();
134  void updateBodyRotation();
135 
136  QString formatBundleOutputString(bool errorPropagation, bool imageCSV=false);
139 
140  private:
141  bool initParameterWeights();
142 
143  private:
150  int m_index;
151 
154 
158 
159  QString m_instrumentId;
160 
162 
165 // SpiceRotation *m_bodyRotation; //!< Instrument body rotation (in primary image).
166 
168 
169  // TODO??? change these to LinearAlgebra vectors...
171  LinearAlgebra::Vector m_corrections;
173  //LinearAlgebra::Vector m_solution; //!< parameter solution vector.
178  };
179 
181  typedef QSharedPointer<BundleObservation> BundleObservationQsp;
182 }
183 
184 #endif // BundleObservation_h
LinearAlgebra::Vector m_weights
Parameter weights. Cumulative parameter correction vector...
LinearAlgebra::Vector & parameterWeights()
Accesses the solve parameter weights.
QString m_observationNumber
This is typically equivalent to serial number except in the case of &quot;observation mode&quot; (e...
LinearAlgebra::Vector & adjustedSigmas()
Accesses the adjusted sigmas.
int numberPointingParameters()
Returns the number of pointing parameters being solved for.
BundleTargetBodyQsp m_bundleTargetBody
QShared pointer to BundleTargetBody.
void append(const BundleImageQsp &value)
Appends a BundleImage shared pointer to the BundleObservation.
bool initializeExteriorOrientation()
Initializes the exterior orientation.
BundleImageQsp imageByCubeSerialNumber(QString cubeSerialNumber)
Returns the BundleImage shared pointer associated with the given serial number.
QSharedPointer< BundleObservationSolveSettings > BundleObservationSolveSettingsQsp
Definition for BundleObservationSolveSettingsQsp, a QSharedPointer to a &lt; BundleObservationSolveSet...
QMap< QString, BundleImageQsp > m_cubeSerialNumberToBundleImageMap
Map between cube serial number and BundleImage pointers.
QSharedPointer< BundleTargetBody > BundleTargetBodyQsp
Definition for BundleTargetBodyQsp, a QSharedPointer to a BundleTargetBody.
Class for bundle observations.
bool initParameterWeights()
Initializes the paramater weights for solving.
LinearAlgebra::Vector m_adjustedSigmas
A posteriori (adjusted) parameter sigmas.
bool setSolveSettings(BundleObservationSolveSettings solveSettings)
Set solve parameters.
QSharedPointer< BundleObservation > BundleObservationQsp
Typdef for BundleObservation QSharedPointer.
QString instrumentId()
Accesses the instrument id.
BundleObservationSolveSettingsQsp m_solveSettings
Solve settings for this observation.
SpiceRotation * spiceRotation()
Accesses the instrument&#39;s spice rotation.
boost::numeric::ublas::vector< double > Vector
Definition for an Isis::LinearAlgebra::Vector of doubles.
LinearAlgebra::Vector & aprioriSigmas()
Accesses the a priori sigmas.
BundleObservation & operator=(const BundleObservation &src)
Assignment operator.
int numberPositionParameters()
Returns the number of position parameters there are.
QString formatBundleOutputString(bool errorPropagation, bool imageCSV=false)
Creates and returns a formatted QString representing the bundle coefficients and parameters.
void setIndex(int n)
Sets the index for the observation.
void initializeBodyRotation()
Intializes the body rotation.
SpiceRotation * m_instrumentRotation
Instrument spice rotation (in primary image).
QStringList imageNames()
Access to image names for CorrelationMatrix to use.
QStringList m_serialNumbers
List of all cube serial numbers in observation.
Obtain SPICE rotation information for a body.
QStringList parameterList()
Access to parameters for CorrelationMatrix to use.
This class is used to modify and manage solve settings for 1 to many BundleObservations.
QStringList m_parameterNamesList
List of all cube parameters.
int index()
Accesses the observation&#39;s index.
QString m_instrumentId
Spacecraft instrument id.
bool applyParameterCorrections(LinearAlgebra::Vector corrections)
Applies the parameter corrections.
LinearAlgebra::Vector m_aprioriSigmas
A posteriori (adjusted) parameter sigmas.
Obtain SPICE position information for a body.
LinearAlgebra::Vector & parameterCorrections()
Accesses the parameter corrections.
int numberParameters()
Returns the number of total parameters there are for solving.
SpicePosition * m_instrumentPosition
Instrument spice position (in primary image).
void updateBodyRotation()
Updates the body rotation.
const BundleObservationSolveSettingsQsp solveSettings()
Accesses the solve settings.
int m_index
Index of this observation.
QStringList m_imageNames
List of all cube names.
BundleObservation()
Constructs a BundleObservation initialized to a default state.
SpicePosition * spicePosition()
Accesses the instrument&#39;s spice position.

U.S. Department of the Interior | U.S. Geological Survey
ISIS | Privacy & Disclaimers | Astrogeology Research Program
To contact us, please post comments and questions on the ISIS Support Center
File Modified: 07/12/2023 23:15:07