Isis 3 Programmer Reference
ProcessMapMosaic.h
1#ifndef ProcessMapMosaic_h
2#define ProcessMapMosaic_h
8/* SPDX-License-Identifier: CC0-1.0 */
9#include "ProcessMosaic.h"
10#include "Buffer.h"
11#include "FileList.h"
12
13namespace Isis {
98
99 public:
100
102
103 virtual ~ProcessMapMosaic();
104
105 // SetOutputCube() is not virtual in the Process class nor in the
106 // ProcessMosaic class, so the following definitions for this method are
107 // the only ones that are allowed for ProcessMapMosaic objects and child
108 // objects
109 virtual Isis::Cube *SetOutputCube(FileList &propagationCubes, CubeAttributeOutput &oAtt,
110 const QString &mosaicFile);
111
113 const QString &mosaicFile);
114
115 virtual Isis::Cube *SetOutputCube(FileList &propagationCubes,
116 double slat, double elat, double slon, double elon,
117 CubeAttributeOutput &oAtt, const QString &mosaicFile);
118
119 Isis::Cube *RingsSetOutputCube(FileList &propagationCubes,
120 double srad, double erad, double saz, double eaz,
121 CubeAttributeOutput &oAtt, const QString &mosaicFile);
122
123 virtual Isis::Cube *SetOutputCube(const QString &inputFile,
124 double xmin, double xmax, double ymin, double ymax,
125 double slat, double elat, double slon, double elon, int nbands,
126 CubeAttributeOutput &oAtt, const QString &mosaicFile,
127 bool latlonflag=true);
128
129 Isis::Cube *RingsSetOutputCube(const QString &inputFile,
130 double xmin, double xmax, double ymin, double ymax,
131 double srad, double erad, double saz, double eaz, int nbands,
132 CubeAttributeOutput &oAtt, const QString &mosaicFile);
133
134 virtual Isis::Cube *SetOutputCube(const QString &inputFile, PvlGroup mapping,
135 CubeAttributeOutput &oAtt, const QString &mosaicFile);
136
137 Isis::Cube *RingsSetOutputCube(const QString &inputFile, PvlGroup mapping,
138 CubeAttributeOutput &oAtt, const QString &mosaicFile);
139
140 Isis::Cube *SetOutputCube(const QString &mosaicFile);
141
142 Isis::Cube *RingsSetOutputCube(const QString &mosaicFile);
143
145 virtual Isis::Cube *SetInputCube();
146
148 virtual bool StartProcess(QString inputFile);
149
150 private:
151 static void FillNull(Buffer &data);
152
158 };
159};
160
161#endif
Buffer for reading and writing cube data.
Definition Buffer.h:53
Manipulate and parse attributes of output cube filenames.
IO Handler for Isis Cubes.
Definition Cube.h:168
Internalizes a list of files.
Definition FileList.h:54
Mosaic two cubs together.
virtual Isis::Cube * SetOutputCube(FileList &propagationCubes, CubeAttributeOutput &oAtt, const QString &mosaicFile)
Set the output cube to specified file name and specified input images and output attributes.
Isis::Cube * RingsSetOutputCube(FileList &propagationCubes, CubeAttributeOutput &oAtt, const QString &mosaicFile)
Set the output cube to specified file name and specified input images and output attributes.
virtual Isis::Cube * SetInputCube()
Input cube cannot be set here.
virtual bool StartProcess(QString inputFile)
Mosaic Processing method, returns false if the cube is not inside the mosaic.
static void FillNull(Buffer &data)
Reset the buffer with NULL pixels.
ProcessMapMosaic()
Constructs a Mosaic object.
bool p_createMosaic
Internal use; SetOutputMosaic (const QString &) sets to false to not attempt creation when using SetO...
virtual ~ProcessMapMosaic()
Destructor.
Mosaic two cubes together.
virtual void StartProcess(const int &piOutSample, const int &piOutLine, const int &piOutBand)
This method invokes the process by mosaic operation over a single input cube and single output cube.
virtual Isis::Cube * SetInputCube(const QString &parameter, const int ss, const int sl, const int sb, const int ns, const int nl, const int nb)
Opens an input cube specified by the user.
Contains multiple PvlContainers.
Definition PvlGroup.h:41
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16