STIR
6.2.0
|
A convenience class for children of ArrayFunctionObject. It implements the 2 argument operator() in terms of the in-place version. More...
#include "stir/ArrayFunctionObject_1ArgumentImplementation.h"
Public Member Functions | |
void | operator() (Array< num_dimensions, elemT > &array) const override |
in-place modification More... | |
void | operator() (Array< num_dimensions, elemT > &out_array, const Array< num_dimensions, elemT > &in_array) const override |
result stored in another array, implemented inline | |
Public Member Functions inherited from stir::ArrayFunctionObject< num_dimensions, elemT > | |
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... | |
Protected Member Functions | |
virtual void | do_it (Array< num_dimensions, elemT > &array) const =0 |
A convenience class for children of ArrayFunctionObject. It implements the 2 argument operator() in terms of the in-place version.
Sadly, we need to introduce another virtual function for this, as redefining an overloaded function in a derived class, hides all other overladed versions. So, we cannot simply leave the 1 arg operator() undefined here. Similarly, we could not only define the 1 arg operator() in a derived class.
|
inlineoverridevirtual |
in-place modification
Implements stir::ArrayFunctionObject< num_dimensions, elemT >.