|
Isis Developer Reference
|
Go to the documentation of this file. 1 #ifndef BundleObservationSolveSettings_h
2 #define BundleObservationSolveSettings_h
15 #include <QStringList>
25 class QXmlStreamWriter;
31 class XmlStackedHandlerReader;
143 bool solvePolynomialOverExisting =
false,
144 double anglesAprioriSigma = -1.0,
145 double angularVelocityAprioriSigma = -1.0,
146 double angularAccelerationAprioriSigma = -1.0,
175 bool positionOverHermite =
false,
176 double positionAprioriSigma = -1.0,
177 double velocityAprioriSigma = -1.0,
178 double accelerationAprioriSigma = -1.0,
189 void save(QXmlStreamWriter &stream,
const Project *project)
const;
206 virtual bool startElement(
const QString &namespaceURI,
const QString &localName,
207 const QString &qName,
const QXmlAttributes &atts);
208 virtual bool characters(
const QString &ch);
209 virtual bool endElement(
const QString &namespaceURI,
const QString &localName,
210 const QString &qName);
213 Q_DISABLE_COPY(XmlHandler);
217 QString m_xmlHandlerCharacters;
226 QString m_instrumentId;
231 csm::param::Set m_csmSolveSet;
233 csm::param::Type m_csmSolveType;
241 int m_numberCamAngleCoefSolved;
248 bool m_solvePointingPolynomialOverExisting;
255 m_pointingInterpolationType;
267 int m_numberCamPosCoefSolved;
271 int m_spkSolveDegree;
273 bool m_solvePositionOverHermiteSpline;
280 m_positionInterpolationType;
296 #endif // BundleObservationSolveSettings_h
static QString csmSolveSetToString(csm::param::Set set)
Convert a CSM parameter set enumeration value to a string.
Definition: BundleObservationSolveSettings.cpp:551
@ Type
Solve for all CSM parameters of a specific type.
Definition: BundleObservationSolveSettings.h:107
static QString instrumentPositionSolveOptionToString(InstrumentPositionSolveOption option)
Translates an enumerated InstrumentPositionSolveOption to its string representation.
Definition: BundleObservationSolveSettings.cpp:1025
@ PositionVelocityAcceleration
Solve for instrument positions, velocities, and accelerations.
Definition: BundleObservationSolveSettings.h:164
InstrumentPositionSolveOption instrumentPositionSolveOption() const
Accesses the instrument position solve option.
Definition: BundleObservationSolveSettings.cpp:1133
bool removeObservationNumber(QString observationNumber)
Removes an observation number from this solve settings.
Definition: BundleObservationSolveSettings.cpp:442
int spkDegree() const
Accesses the degree of the polynomial fit to the original camera position (spkDegree).
Definition: BundleObservationSolveSettings.cpp:1143
@ NoPositionFactors
Solve for none of the position factors.
Definition: BundleObservationSolveSettings.h:161
A single keyword-value pair.
Definition: PvlKeyword.h:82
QList< double > aprioriPointingSigmas() const
Accesses the a priori pointing sigmas.
Definition: BundleObservationSolveSettings.cpp:945
@ Set
Solve for all CSM parameters belonging to a specific set.
Definition: BundleObservationSolveSettings.h:106
void setCSMSolveSet(csm::param::Set set)
Set the set of CSM parameters to solve for.
Definition: BundleObservationSolveSettings.cpp:631
static csm::param::Set stringToCSMSolveSet(QString set)
Convert a string to its CSM parameter set enumeration value.
Definition: BundleObservationSolveSettings.cpp:526
File name manipulation and expansion.
Definition: FileName.h:100
Source
The rotation can come from one of 3 places for an Isis cube.
Definition: SpiceRotation.h:245
@ Unknown
A type of error that cannot be classified as any of the other error types.
Definition: IException.h:118
@ AllPointingCoefficients
Solve for all coefficients in the polynomials fit to the pointing angles.
Definition: BundleObservationSolveSettings.h:133
virtual void pushContentHandler(XmlStackedHandler *newHandler)
Push a contentHandler and maybe continue parsing...
Definition: XmlStackedHandlerReader.cpp:55
QStringList csmParameterList() const
Get the list of CSM parameters to solve for.
Definition: BundleObservationSolveSettings.cpp:695
static CSMSolveOption stringToCSMSolveOption(QString option)
Convert a string to a CSM solve option enumeration value.
Definition: BundleObservationSolveSettings.cpp:470
void setCSMSolveParameterList(QStringList list)
Set an explicit list of CSM parameters to solve for.
Definition: BundleObservationSolveSettings.cpp:653
csm::param::Type csmParameterType() const
Get the type of CSM parameters to solve for.
Definition: BundleObservationSolveSettings.cpp:685
bool hasKeyword(const QString &name) const
Check to see if a keyword exists.
Definition: PvlContainer.cpp:159
virtual bool startElement(const QString &namespaceURI, const QString &localName, const QString &qName, const QXmlAttributes &atts)
Definition: XmlStackedHandler.cpp:44
int ckDegree() const
Accesses the degree of polynomial fit to original camera angles (ckDegree).
Definition: BundleObservationSolveSettings.cpp:903
void setInstrumentId(QString instrumentId)
Sets the instrument id for this observation.
Definition: BundleObservationSolveSettings.cpp:407
@ AnglesOnly
Solve for pointing angles: right ascension, declination and, optionally, twist.
Definition: BundleObservationSolveSettings.h:128
PvlKeyword & nameKeyword()
Definition: PvlContainer.h:273
csm::param::Set csmParameterSet() const
Get the set of CSM parameters to solve for.
Definition: BundleObservationSolveSettings.cpp:675
SpicePosition::Source positionInterpolationType() const
Accesses the SpicePosition interpolation type for the spacecraft position.
Definition: BundleObservationSolveSettings.cpp:1195
void addObservationNumber(QString observationNumber)
Associates an observation number with these solve settings.
Definition: BundleObservationSolveSettings.cpp:429
@ AnglesVelocity
Solve for pointing angles and their angular velocities.
Definition: BundleObservationSolveSettings.h:130
QString toString(bool boolToConvert)
Global function to convert a boolean to a string.
Definition: IString.cpp:211
Manage a stack of content handlers for reading XML files.
Definition: XmlStackedHandlerReader.h:30
bool IsSpecial(const double d)
Returns if the input pixel is special.
Definition: SpecialPixel.h:197
The main project for ipce.
Definition: Project.h:289
QSharedPointer< BundleObservationSolveSettings > BundleObservationSolveSettingsQsp
Definition for BundleObservationSolveSettingsQsp, a QSharedPointer to a BundleObservationSolveSetting...
Definition: BundleObservationSolveSettings.h:293
@ PolyFunctionOverHermiteConstant
Object is reading from splined.
Definition: SpicePosition.h:184
static QString instrumentPointingSolveOptionToString(InstrumentPointingSolveOption option)
Tranlsates an enumerated InstrumentPointingSolveOption value to its string representation.
Definition: BundleObservationSolveSettings.cpp:765
void initialize()
Initializes the default state of this BundleObservationSolveSettings.
Definition: BundleObservationSolveSettings.cpp:359
QSet< QString > observationNumbers() const
Returns a list of observation numbers associated with these solve settings.
Definition: BundleObservationSolveSettings.cpp:452
InstrumentPointingSolveOption instrumentPointingSolveOption() const
Accesses the instrument pointing solve option.
Definition: BundleObservationSolveSettings.cpp:883
@ PolyFunction
Object is calculated from nth degree polynomial.
Definition: SpicePosition.h:183
Contains multiple PvlContainers.
Definition: PvlGroup.h:41
#define _FILEINFO_
Macro for the filename and line number.
Definition: IException.h:24
QList< double > aprioriPositionSigmas() const
Accesses the a priori position sigmas.
Definition: BundleObservationSolveSettings.cpp:1185
InstrumentPointingSolveOption
Options for how to solve for instrument pointing.
Definition: BundleObservationSolveSettings.h:126
@ PositionOnly
Solve for instrument positions only.
Definition: BundleObservationSolveSettings.h:162
int toInt(const QString &string)
Global function to convert from a string to an integer.
Definition: IString.cpp:93
BundleObservationSolveSettings()
Constructor with default parameter initializations.
Definition: BundleObservationSolveSettings.cpp:37
@ AnglesVelocityAcceleration
Solve for pointing angles, their velocities and their accelerations.
Definition: BundleObservationSolveSettings.h:131
@ NoPointingFactors
Solve for none of the pointing factors.
Definition: BundleObservationSolveSettings.h:127
bool solvePositionOverHermite() const
Whether or not the polynomial for solving will be fit over an existing Hermite spline.
Definition: BundleObservationSolveSettings.cpp:1175
@ PolyFunction
From nth degree polynomial.
Definition: SpiceRotation.h:249
~BundleObservationSolveSettings()
Destructor.
Definition: BundleObservationSolveSettings.cpp:298
int spkSolveDegree() const
Accesses the degree of thecamera position polynomial being fit to in the bundle adjustment (spkSolveD...
Definition: BundleObservationSolveSettings.cpp:1154
Source
This enum indicates the status of the object.
Definition: SpicePosition.h:180
virtual bool endElement(const QString &namespaceURI, const QString &localName, const QString &qName)
Definition: XmlStackedHandler.cpp:55
int numberCameraAngleCoefficientsSolved() const
Accesses the number of camera angle coefficients in the solution.
Definition: BundleObservationSolveSettings.cpp:924
Isis exception class.
Definition: IException.h:91
CSMSolveOption csmSolveOption() const
Get how the CSM parameters to solve for are specified for this observation.
Definition: BundleObservationSolveSettings.cpp:665
static InstrumentPositionSolveOption stringToInstrumentPositionSolveOption(QString option)
Translates a QString InstrumentPositionSolveOption to its enumerated value.
Definition: BundleObservationSolveSettings.cpp:976
BundleObservationSolveSettings & operator=(const BundleObservationSolveSettings &src)
Assigns the state of another BundleObservationSolveSettings to this one.
Definition: BundleObservationSolveSettings.cpp:315
void setInstrumentPositionSettings(InstrumentPositionSolveOption option, int spkDegree=2, int spkSolveDegree=2, bool positionOverHermite=false, double positionAprioriSigma=-1.0, double velocityAprioriSigma=-1.0, double accelerationAprioriSigma=-1.0, QList< double > *additionalPositionSigmas=nullptr)
Sets the instrument pointing settings.
Definition: BundleObservationSolveSettings.cpp:1050
BundleObservationSolveSettings(FileName xmlFile, Project *project, XmlStackedHandlerReader *xmlReader)
@ AllPositionCoefficients
Solve for all coefficients in the polynomials fit to the instrument positions.
Definition: BundleObservationSolveSettings.h:166
const double Null
Value for an Isis Null pixel.
Definition: SpecialPixel.h:95
static InstrumentPointingSolveOption stringToInstrumentPointingSolveOption(QString option)
Translates a QString InstrumentPointingSolveOption to its enumerated value.
Definition: BundleObservationSolveSettings.cpp:716
void save(QXmlStreamWriter &stream, const Project *project) const
Saves this BundleObservationSolveSettings to an xml stream.
Definition: BundleObservationSolveSettings.cpp:1214
double toDouble(const QString &string)
Global function to convert from a string to a double.
Definition: IString.cpp:149
@ Programmer
This error is for when a programmer made an API call that was illegal.
Definition: IException.h:146
static QString csmSolveOptionToString(CSMSolveOption option)
Convert a CSM solve option enumeration value to a string.
Definition: BundleObservationSolveSettings.cpp:498
static csm::param::Type stringToCSMSolveType(QString type)
Convert a string to its CSM parameter type enumeration value.
Definition: BundleObservationSolveSettings.cpp:576
@ PositionVelocity
Solve for instrument positions and velocities.
Definition: BundleObservationSolveSettings.h:163
bool toBool(const QString &string)
Global function to convert from a string to a boolean.
Definition: IString.cpp:38
int ckSolveDegree() const
Accesses the degree of the camera angles polynomial being fit to in the bundle adjustment (ckSolveDeg...
Definition: BundleObservationSolveSettings.cpp:914
void setCSMSolveType(csm::param::Type type)
Set the type of CSM parameters to solve for.
Definition: BundleObservationSolveSettings.cpp:642
int size() const
Returns the number of values stored in this keyword.
Definition: PvlKeyword.h:125
XML Handler that parses XMLs in a stack-oriented way.
Definition: XmlStackedHandler.h:118
@ List
Solve for an explicit list of CSM parameters.
Definition: BundleObservationSolveSettings.h:108
@ NoCSMParameters
Do not solve for CSM parameters.
Definition: BundleObservationSolveSettings.h:105
static QString csmSolveTypeToString(csm::param::Type type)
Convert a CSM parameter type enumeration value to a string.
Definition: BundleObservationSolveSettings.cpp:604
This class is used to modify and manage solve settings for 1 to many BundleObservations.
Definition: BundleObservationSolveSettings.h:82
@ PolyFunctionOverSpice
Kernels plus nth degree polynomial.
Definition: SpiceRotation.h:250
SpiceRotation::Source pointingInterpolationType() const
Accesses the SpiceRotation interpolation type for the instrument pointing.
Definition: BundleObservationSolveSettings.cpp:955
PvlKeyword & findKeyword(const QString &name)
Find a keyword with a specified name.
Definition: PvlContainer.cpp:62
void setInstrumentPointingSettings(InstrumentPointingSolveOption option, bool solveTwist, int ckDegree=2, int ckSolveDegree=2, bool solvePolynomialOverExisting=false, double anglesAprioriSigma=-1.0, double angularVelocityAprioriSigma=-1.0, double angularAccelerationAprioriSigma=-1.0, QList< double > *additionalPointingSigmas=nullptr)
Sets the instrument pointing settings.
Definition: BundleObservationSolveSettings.cpp:791
bool solveTwist() const
Accesses the flag for solving for twist.
Definition: BundleObservationSolveSettings.cpp:893
QString instrumentId() const
Accesses the instrument id for this observation.
Definition: BundleObservationSolveSettings.cpp:417
bool solvePolyOverPointing() const
Whether or not the solve polynomial will be fit over the existing pointing polynomial.
Definition: BundleObservationSolveSettings.cpp:935
InstrumentPositionSolveOption
Options for how to solve for instrument position.
Definition: BundleObservationSolveSettings.h:160
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
@ User
A type of error that could only have occurred due to a mistake on the user's part (e....
Definition: IException.h:126
CSMSolveOption
Options for how to solve for CSM parameters.
Definition: BundleObservationSolveSettings.h:104
int numberCameraPositionCoefficientsSolved() const
Accesses the number of camera position coefficients in the solution.
Definition: BundleObservationSolveSettings.cpp:1164