The BoundaryTreatment class provides the interface to all specific BoundaryTreatment subclasses.
More...
#include "libArrayToolbox/BoundaryTreatment.hh"
|
| BoundaryTreatment () |
| Constructor. More...
|
|
| BoundaryTreatment (BoundaryTreatment< DataT, Dim > const &bt) |
| Copy Constructor. More...
|
|
virtual | ~BoundaryTreatment () |
| Destructor. More...
|
|
virtual BoundaryTreatment< DataT, Dim > * | clone () const =0 |
| Get a deep copy of this BoundaryTreatment object. More...
|
|
virtual DataT | get (blitz::Array< DataT, Dim > const &data, blitz::TinyVector< ptrdiff_t, Dim > pos) const =0 |
| Get the Array value at the given position. More...
|
|
virtual DataT | get (DataT const *data, ptrdiff_t pos, ptrdiff_t length) const =0 |
| Get the C-array value at the given position. More...
|
|
virtual blitz::TinyVector< ptrdiff_t, Dim > | getIndex (blitz::TinyVector< ptrdiff_t, Dim > pos, blitz::TinyVector< ptrdiff_t, Dim > const &shape) const =0 |
| Get the in-Array-Index to the given position. More...
|
|
virtual ptrdiff_t | getIndex (ptrdiff_t pos, ptrdiff_t length) const =0 |
| Get the in-array-index to the given position. More...
|
|
BoundaryTreatment< DataT, Dim > & | operator= (BoundaryTreatment< DataT, Dim > const &bt) |
| Copy assignment operator. More...
|
|
virtual bool | providesIndices () const =0 |
| The returned boolean indicates, whether the boundary treatment is able to transform the incoming coordinates into valid Array coordinates and therefore it indicates, whether the function getIndex() returns valid in-Array-positions. More...
|
|
virtual BoundaryTreatmentType | type () const =0 |
| Get the corresponding enumeration value for the boundary treatment type. More...
|
|
template<typename DataT, int Dim>
class atb::BoundaryTreatment< DataT, Dim >
The BoundaryTreatment class provides the interface to all specific BoundaryTreatment subclasses.
Definition at line 84 of file BoundaryTreatment.hh.
◆ BoundaryTreatment() [1/2]
template<typename DataT, int Dim>
◆ BoundaryTreatment() [2/2]
template<typename DataT, int Dim>
Copy Constructor.
- Parameters
-
◆ ~BoundaryTreatment()
template<typename DataT, int Dim>
◆ operator=()
template<typename DataT, int Dim>
Copy assignment operator.
- Parameters
-
- Returns
- A reference to this BoundaryTreatment object for operator chaining
◆ clone()
template<typename DataT, int Dim>
◆ type()
template<typename DataT, int Dim>
◆ providesIndices()
template<typename DataT, int Dim>
The returned boolean indicates, whether the boundary treatment is able to transform the incoming coordinates into valid Array coordinates and therefore it indicates, whether the function getIndex() returns valid in-Array-positions.
- Returns
true
if the BoundaryTreatment can transform out-of-bounds indices into in-Array-indices, false
otherwise
Implemented in atb::CropBoundaryTreatment< DataT, Dim >, atb::MirrorBoundaryTreatment< DataT, Dim >, atb::RepeatBoundaryTreatment< DataT, Dim >, atb::CyclicBoundaryTreatment< DataT, Dim >, and atb::ValueBoundaryTreatment< DataT, Dim >.
◆ get() [1/2]
template<typename DataT, int Dim>
virtual DataT atb::BoundaryTreatment< DataT, Dim >::get |
( |
blitz::Array< DataT, Dim > const & |
data, |
|
|
blitz::TinyVector< ptrdiff_t, Dim > |
pos |
|
) |
| const |
|
pure virtual |
◆ getIndex() [1/2]
template<typename DataT, int Dim>
virtual blitz::TinyVector<ptrdiff_t,Dim> atb::BoundaryTreatment< DataT, Dim >::getIndex |
( |
blitz::TinyVector< ptrdiff_t, Dim > |
pos, |
|
|
blitz::TinyVector< ptrdiff_t, Dim > const & |
shape |
|
) |
| const |
|
pure virtual |
Get the in-Array-Index to the given position.
This function throws a RuntimeError if the BoundaryTreatment cannot return valid out-of-Array indices. This can be checked using the providesIndices flag
- Parameters
-
pos | The position to transform to in-Array-coordinates |
shape | The Array shape |
- Returns
- The in-Array position corresponding to the position that was passed to the function according to the used boundary treatment
- Exceptions
-
RuntimeError | This exception is thrown if the BoundaryTreatment cannot generate in-Array positions from given out-of-Array positions, and an out-of-Array position is passed. |
Implemented in atb::CropBoundaryTreatment< DataT, Dim >, atb::MirrorBoundaryTreatment< DataT, Dim >, atb::RepeatBoundaryTreatment< DataT, Dim >, atb::CyclicBoundaryTreatment< DataT, Dim >, and atb::ValueBoundaryTreatment< DataT, Dim >.
◆ get() [2/2]
template<typename DataT, int Dim>
virtual DataT atb::BoundaryTreatment< DataT, Dim >::get |
( |
DataT const * |
data, |
|
|
ptrdiff_t |
pos, |
|
|
ptrdiff_t |
length |
|
) |
| const |
|
pure virtual |
◆ getIndex() [2/2]
template<typename DataT, int Dim>
Get the in-array-index to the given position.
This function throws a RuntimeError if the BoundaryTreatment cannot return valid out-of-array indices. This can be checked using the providesIndices flag
- Parameters
-
pos | The position to transform to in-Array-coordinates |
length | The array length |
- Returns
- The in-Array position corresponding to the position that was passed to the function according to the used boundary treatment
- Exceptions
-
RuntimeError | This exception is thrown if the BoundaryTreatment cannot generate in-Array positions from given out-of-Array positions, and an out-of-Array position is passed. |
Implemented in atb::CropBoundaryTreatment< DataT, Dim >, atb::MirrorBoundaryTreatment< DataT, Dim >, atb::RepeatBoundaryTreatment< DataT, Dim >, atb::CyclicBoundaryTreatment< DataT, Dim >, and atb::ValueBoundaryTreatment< DataT, Dim >.
The documentation for this class was generated from the following file: