Isis 3 Programmer Reference
Isis::ProcessByBrick::ProcessCubeFunctor< T > Class Template Reference

Create an output cube given one input cube. More...

Inheritance diagram for Isis::ProcessByBrick::ProcessCubeFunctor< T >:
Inheritance graph
Collaboration diagram for Isis::ProcessByBrick::ProcessCubeFunctor< T >:
Collaboration graph

Public Member Functions

 ProcessCubeFunctor (Cube *inputCube, const Brick *inputTemplateBrick, Cube *outputCube, const Brick *outputTemplateBrick, const T &processingFunctor)
 Construct a ProcessCubeFunctor.
 
 ProcessCubeFunctor (const ProcessCubeFunctor &other)
 Copy construction of these objects is fully supported.
 
virtual ~ProcessCubeFunctor ()
 Destructor.
 
void * operator() (const int &brickPosition) const
 Do the work for one position in a cube.
 
ProcessCubeFunctoroperator= (const ProcessCubeFunctor &rhs)
 Assignment of these objects is fully supported.
 

Private Attributes

Cubem_inputCube
 The cube to read from for the input brick data.
 
const Brickm_inputTemplateBrick
 An example brick for the input parameter to m_processingFunctor.
 
Cubem_outputCube
 The cube to write to with the output of m_processingFunctor.
 
const Brickm_outputTemplateBrick
 An example brick for the output parameter to m_processingFunctor.
 
const T & m_processingFunctor
 The functor which does the work/arbitrary calculations.
 

Detailed Description

template<typename T>
class Isis::ProcessByBrick::ProcessCubeFunctor< T >

Create an output cube given one input cube.

Given a ProcessIterator position, this runs the functor passed into ProcessCube with the appropriate data.

This functor is a helper for the ProcessCube() public method. This is designed to be passed into QtConcurrent::mapped to operate over a cube.

Author
2012-02-22 Steven Lambright

Definition at line 447 of file ProcessByBrick.h.

Constructor & Destructor Documentation

◆ ProcessCubeFunctor() [1/2]

template<typename T >
Isis::ProcessByBrick::ProcessCubeFunctor< T >::ProcessCubeFunctor ( Cube * inputCube,
const Brick * inputTemplateBrick,
Cube * outputCube,
const Brick * outputTemplateBrick,
const T & processingFunctor )
inline

Construct a ProcessCubeFunctor.

This doesn't take ownership of the passed in pointers but expects them to not be deleted.

Parameters
inputCubeThe cube to read from for input data
inputTemplateBrickA brick initialized for use with the processingFunctor's input parameter
outputCubeThe cube to write to after running the processingFunctor
outputTemplateBrickA brick initialized for use with the processingFunctor's output parameter
processingFunctorThe functor supplied to ProcessCube() which actually does the work/ calculations.

Definition at line 465 of file ProcessByBrick.h.

◆ ProcessCubeFunctor() [2/2]

template<typename T >
Isis::ProcessByBrick::ProcessCubeFunctor< T >::ProcessCubeFunctor ( const ProcessCubeFunctor< T > & other)
inline

Copy construction of these objects is fully supported.

Parameters
otherThe functor to copy

Definition at line 483 of file ProcessByBrick.h.

◆ ~ProcessCubeFunctor()

Member Function Documentation

◆ operator()()

◆ operator=()

Member Data Documentation

◆ m_inputCube

template<typename T >
Cube* Isis::ProcessByBrick::ProcessCubeFunctor< T >::m_inputCube
private

The cube to read from for the input brick data.

Definition at line 545 of file ProcessByBrick.h.

Referenced by Isis::ProcessByBrick::ProcessCubeFunctor< T >::operator()(), and Isis::ProcessByBrick::ProcessCubeFunctor< T >::operator=().

◆ m_inputTemplateBrick

template<typename T >
const Brick* Isis::ProcessByBrick::ProcessCubeFunctor< T >::m_inputTemplateBrick
private

◆ m_outputCube

template<typename T >
Cube* Isis::ProcessByBrick::ProcessCubeFunctor< T >::m_outputCube
private

The cube to write to with the output of m_processingFunctor.

Definition at line 550 of file ProcessByBrick.h.

Referenced by Isis::ProcessByBrick::ProcessCubeFunctor< T >::operator()(), and Isis::ProcessByBrick::ProcessCubeFunctor< T >::operator=().

◆ m_outputTemplateBrick

template<typename T >
const Brick* Isis::ProcessByBrick::ProcessCubeFunctor< T >::m_outputTemplateBrick
private

◆ m_processingFunctor

template<typename T >
const T& Isis::ProcessByBrick::ProcessCubeFunctor< T >::m_processingFunctor
private

The functor which does the work/arbitrary calculations.

Definition at line 555 of file ProcessByBrick.h.

Referenced by Isis::ProcessByBrick::ProcessCubeFunctor< T >::operator()(), and Isis::ProcessByBrick::ProcessCubeFunctor< T >::operator=().


The documentation for this class was generated from the following file: