1#ifndef ProcessBySpectra_h
2#define ProcessBySpectra_h
9#include "ProcessByBrick.h"
61 const int requirements = 0);
64 const int requirements = 0);
85 void StartProcess(
void funct(std::vector<Isis::Buffer *> &in,
86 std::vector<Isis::Buffer *> &out));
94 template <
typename Functor>
107 template <
typename Functor>
111 SetBricks(InputOutput);
120 template <
typename Functor>
123 SetBricks(InputOutputList);
134 void SetBricks(IOCubes cn);
135 void SetBrickSizesForProcessCubeInPlace();
136 void SetBrickSizesForProcessCube();
137 void SetBrickSizesForProcessCubes();
Buffer for reading and writing cube data.
IO Handler for Isis Cubes.
void ProcessCubeInPlace(const Functor &functor, bool threaded=true)
Operate over a single cube (either input or output).
void ProcessCubes(const Functor &functor, bool threaded=true)
Operate over an arbitrary number of input cubes given an arbitrary number of output cubes.
void VerifyCubes(IOCubes cn)
Verifies the dimensions of the input/output cubes.
Cube * SetInputCube(const QString ¶meter, int requirements=0)
Opens an input cube specified by the user and verifies requirements are met.
void ProcessCube(const Functor &functor, bool threaded=true)
Operate over a single input cube creating a separate output cube.
Process cubes by spectra.
static const int PerPixel
PerPixel spectra type (equal to 0)
static const int BySample
BySample spectra type (equal to 2)
Isis::Cube * SetInputCube(const QString ¶meter, const int requirements=0)
Opens an input cube specified by the user and verifies requirements are met.
static const int ByLine
ByLine spectra type (equal to 1)
void StartProcess(void funct(Isis::Buffer &in))
This method invokes the process by spectra operation over a single input or output cube.
void ProcessCubeInPlace(const Functor &funct, bool threaded=true)
void SetType(const int type)
Sets the spectra type to one of the following:
int p_spectraType
Spectra type: valid values are 0 (PerPixel), 1 (ByLine), or 2 (BySample)
ProcessBySpectra(const int type=PerPixel)
Constructs ProcessBySpectra object using specified spectra type.
void ProcessCubes(const Functor &funct, bool threaded=true)
int Type()
Returns the spectra type:
void ProcessCube(const Functor &funct, bool threaded=true)
This is free and unencumbered software released into the public domain.