STIR
6.2.0
|
A class for operations on n-dimensional Arrays. More...
#include "stir/ArrayFunctionObject.h"
Public Member Functions | |
virtual void | operator() (Array< num_dimensions, elemT > &array) const =0 |
in-place modification More... | |
virtual void | operator() (Array< num_dimensions, elemT > &out_array, const Array< num_dimensions, elemT > &in_array) const =0 |
result stored in another array More... | |
virtual bool | is_trivial () const =0 |
Should return true when the operations won't modify the object at all. More... | |
virtual Succeeded | get_influencing_indices (IndexRange< num_dimensions > &influencing_indices, const IndexRange< num_dimensions > &output_indices) const |
sets the range of indices that influences the result in a set of coordinates output_indices More... | |
virtual Succeeded | get_influenced_indices (IndexRange< num_dimensions > &influenced_indices, const IndexRange< num_dimensions > &input_indices) const |
sets the range of indices that gets influenced by a set of coordinate input_indices More... | |
A class for operations on n-dimensional Arrays.
|
pure virtual |
in-place modification
Implemented in stir::ArrayFunctionObject_1ArgumentImplementation< num_dimensions, elemT >, stir::ArrayFunctionObject_2ArgumentImplementation< num_dimensions, elemT >, stir::ArrayFunctionObject_2ArgumentImplementation< 2, elemT >, stir::ArrayFunctionObject_2ArgumentImplementation< num_dimensions, float >, stir::ArrayFunctionObject_2ArgumentImplementation< 1, elemT >, stir::ArrayFunctionObject_2ArgumentImplementation< 3, float >, and stir::ArrayFunctionObject_2ArgumentImplementation< 3, elemT >.
|
pure virtual |
result stored in another array
Implemented in stir::ArrayFunctionObject_2ArgumentImplementation< num_dimensions, elemT >, stir::ArrayFunctionObject_2ArgumentImplementation< 2, elemT >, stir::ArrayFunctionObject_2ArgumentImplementation< num_dimensions, float >, stir::ArrayFunctionObject_2ArgumentImplementation< 1, elemT >, stir::ArrayFunctionObject_2ArgumentImplementation< 3, float >, stir::ArrayFunctionObject_2ArgumentImplementation< 3, elemT >, and stir::ArrayFunctionObject_1ArgumentImplementation< num_dimensions, elemT >.
|
pure virtual |
Should return true when the operations won't modify the object at all.
For the 2 argument version, elements in out_array will be set to corresponding elements in in_array. Elements in out_array that do not occur in in_array will be set to 0.
Implemented in stir::ArrayFilterUsingRealDFTWithPadding< num_dimensions, elemT >, stir::ArrayFilterUsingRealDFTWithPadding< 1, float >, stir::ArrayFilterUsingRealDFTWithPadding< 2, float >, stir::ArrayFilter1DUsingConvolution< elemT >, stir::ArrayFilter1DUsingConvolutionSymmetricKernel< elemT >, stir::MedianArrayFilter3D< elemT >, stir::MinimalArrayFilter3D< elemT >, stir::MaximalArrayFilter3D< elemT >, stir::SeparableArrayFunctionObject< num_dimensions, elemT >, and stir::SeparableArrayFunctionObject2< num_dimensions, elemT >.
|
inlinevirtual |
sets the range of indices that influences the result in a set of coordinates output_indices
For linear filters, these are the indices such that the support of their PSF overlaps with output_indices.
|
inlinevirtual |
sets the range of indices that gets influenced by a set of coordinate input_indices
For linear filters, this is the union of the supports of the PSF for all output_indices.