24 #ifndef CUBE_CALCULATOR_H_ 25 #define CUBE_CALCULATOR_H_ 31 template<
class T>
class QVector;
103 void addMethodCall(
void (
Calculator::*method)(
void));
182 double m_constantValue;
238 void loadBuffers(
int currentLine,
int ns,
int currentBand);
QVector< double > * phacBuffer(int currentLine, int ns, int currentBand)
Definition: CubeCalculator.cpp:1140
Center phase camera data.
Definition: CubeCalculator.h:168
void enableEmalBuffer()
Enables the local emission angle buffer for use.
Definition: CubeCalculator.cpp:1057
void enableEmaBuffer()
Enables the emission angle buffer for use.
Definition: CubeCalculator.cpp:1015
QVector< double > * resBuffer(int currentLine, int ns, int currentBand)
Definition: CubeCalculator.cpp:1110
void enableResBuffer()
Enables the resolution buffer for use.
Definition: CubeCalculator.cpp:1033
This class is used to define what kind of data is being pushed onto the cube calculator.
Definition: CubeCalculator.h:147
void prepareCalculations(QString equation, QVector< Cube *> &inCubes, Cube *outCube)
This method builds a list of actions to perform based on the postfix expression.
Definition: CubeCalculator.cpp:264
DataValue()
Constructs a default DataValue.
Definition: CubeCalculator.cpp:855
Current line number.
Definition: CubeCalculator.h:153
void enableRadiusBuffer()
Enables the radius buffer for use.
Definition: CubeCalculator.cpp:1039
DEM radius.
Definition: CubeCalculator.h:162
This class is used to manage buffers for calculating camera related information, such as angles...
Definition: CubeCalculator.h:202
Local phase camera data.
Definition: CubeCalculator.h:165
Incidence camera data.
Definition: CubeCalculator.h:156
QVector< double > * inaBuffer(int currentLine, int ns, int currentBand)
Definition: CubeCalculator.cpp:1086
Pixel resolution camera data.
Definition: CubeCalculator.h:161
A single constant value.
Definition: CubeCalculator.h:151
Local emission camera data.
Definition: CubeCalculator.h:164
Center incidence camera data.
Definition: CubeCalculator.h:166
QVector< double > * emaBuffer(int currentLine, int ns, int currentBand)
Definition: CubeCalculator.cpp:1092
void enablePhaBuffer()
Enables the phase angle buffer for use.
Definition: CubeCalculator.cpp:1003
DataValueType type()
Accesses the type of the DataValue.
Definition: CubeCalculator.cpp:918
Current sample number.
Definition: CubeCalculator.h:152
QVector< double > * phalBuffer(int currentLine, int ns, int currentBand)
Definition: CubeCalculator.cpp:1122
DataValueType
This is used to tell what kind of data to push onto the RPN calculator.
Definition: CubeCalculator.h:150
QVector< double > * latBuffer(int currentLine, int ns, int currentBand)
Definition: CubeCalculator.cpp:1098
Longitude camera data.
Definition: CubeCalculator.h:160
QVector< double > runCalculations(QVector< Buffer *> &cubeData, int line, int band)
This method will execute the calculations built up when PrepareCalculations was called.
Definition: CubeCalculator.cpp:129
void enableInaBuffer()
Enables the incidence angle buffer for use.
Definition: CubeCalculator.cpp:1009
void enableInacBuffer()
Enables the center incidence angle buffer for use.
Definition: CubeCalculator.cpp:1069
void enablePhalBuffer()
Enables the local phase angle buffer for use.
Definition: CubeCalculator.cpp:1045
void enableEmacBuffer()
Enables the center emission angle buffer for use.
Definition: CubeCalculator.cpp:1075
void enablePhacBuffer()
Enables the center phase angle buffer for use.
Definition: CubeCalculator.cpp:1063
Local incidence camera data.
Definition: CubeCalculator.h:163
QVector< double > * lonBuffer(int currentLine, int ns, int currentBand)
Definition: CubeCalculator.cpp:1104
Calculator for arrays.
Definition: CubeCalculator.h:72
QVector< double > * phaBuffer(int currentLine, int ns, int currentBand)
Definition: CubeCalculator.cpp:1080
Definition: Calculator.h:33
int cubeIndex()
Accesses the cube index of the DataValue.
Definition: CubeCalculator.cpp:928
Current band number.
Definition: CubeCalculator.h:154
Center emission camera data.
Definition: CubeCalculator.h:167
QVector< double > * emacBuffer(int currentLine, int ns, int currentBand)
Definition: CubeCalculator.cpp:1152
CameraBuffers(Camera *camera)
Constructs a CameraBuffers object.
Definition: CubeCalculator.cpp:948
A brick of cube data.
Definition: CubeCalculator.h:155
void Clear()
This method completely resets the calculator.
Definition: CubeCalculator.cpp:79
Phase camera data.
Definition: CubeCalculator.h:158
~CubeCalculator()
Destroys the CubeCalculator object.
Definition: CubeCalculator.cpp:57
void enableLonBuffer()
Enables the longitude buffer for use.
Definition: CubeCalculator.cpp:1027
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
QVector< double > * inalBuffer(int currentLine, int ns, int currentBand)
Definition: CubeCalculator.cpp:1128
double constant()
Accesses the constant value of the DataValue.
Definition: CubeCalculator.cpp:938
QVector< double > * emalBuffer(int currentLine, int ns, int currentBand)
Definition: CubeCalculator.cpp:1134
Latitude camera data.
Definition: CubeCalculator.h:159
void enableLatBuffer()
Enables the latitude buffer for use.
Definition: CubeCalculator.cpp:1021
~CameraBuffers()
Destroys the CameraBuffers.
Definition: CubeCalculator.cpp:971
QVector< double > * inacBuffer(int currentLine, int ns, int currentBand)
Definition: CubeCalculator.cpp:1146
Emission camera data.
Definition: CubeCalculator.h:157
void enableInalBuffer()
Enables the local incidence angle buffer for use.
Definition: CubeCalculator.cpp:1051
Calculator for arrays.
Definition: Calculator.h:70
CubeCalculator()
Constructs a CubeCalculator.
Definition: CubeCalculator.cpp:37
QVector< double > * radiusBuffer(int currentLine, int ns, int currentBand)
Definition: CubeCalculator.cpp:1116
IO Handler for Isis Cubes.
Definition: Cube.h:170