Virtual Pixel Access Table. More...
#include <cvb/vpat.hpp>
Inherits ValueAccessBase< Vpat >.
Classes | |
class | Column |
A single column. More... | |
class | Entry |
One entry of the VPAT. More... | |
class | Row |
A single row. More... | |
Public Member Functions | |
Vpat () noexcept=default | |
Vpat (std::uint8_t *base, Entry *vpat, int width) | |
Construct Vpat from raw values. More... | |
Vpat (const Vpat &other) noexcept=default | |
Default copy ctor. More... | |
Vpat & | operator= (const Vpat &other) noexcept=default |
Default copy operator. More... | |
Vpat | NewMoved (const Cvb::Rect< int > newAoi) const noexcept |
Creates a new, moved linear access object. More... | |
std::uint8_t * | BasePtr () const noexcept |
VPAT base pointer. More... | |
Entry * | VpatPtr () const noexcept |
Pointer to the native VPAT structure. More... | |
Point2D< int > | Origin () const noexcept |
Gets the origin of the Vpat() for this access trait. More... | |
CVB_FORCE_INLINE int | Width () const noexcept |
Gets the pixel width of the underlying plane. More... | |
bool | Valid () const noexcept |
Gets whether this vpat access object is valid. More... | |
operator bool () const noexcept | |
Gets whether this vpat access object is valid. More... | |
CVB_FORCE_INLINE const void * | operator() (int x, int y) const noexcept |
Coordinate pixel access operator. More... | |
CVB_FORCE_INLINE void * | operator() (int x, int y) noexcept |
Coordinate pixel access operator. More... | |
CVB_FORCE_INLINE const void * | operator[] (int idx) const noexcept |
Index pixel access operator. More... | |
CVB_FORCE_INLINE void * | operator[] (int idx) noexcept |
Index pixel access operator. More... | |
Row | RowAt (int y) const noexcept |
Gets the Vpat::Row at y. More... | |
Column | ColumnAt (int x) const noexcept |
Gets the Vpat::Column at x. More... | |
Public Member Functions inherited from ValueAccessBase< Vpat > | |
const Type & | Value (int x, int y) const noexcept |
Gets a pixel value at a given position. More... | |
Type & | Value (int x, int y) noexcept |
Gets a settable pixel value at a given position. More... | |
const Type & | Value (Point2D< int > position) const noexcept |
Gets a pixel value at a given position. More... | |
Type & | Value (Point2D< int > position) noexcept |
Gets a settable pixel value at a given position. More... | |
Virtual Pixel Access Table.
|
inline |
|
inlinenoexcept |
VPAT base pointer.
Does | not throw any exception. |
The base pointer is not necessarily a pointer to the first pixel in the image or the first pixel in the last line of the image, but merely a base pointer for calculating the address of a pixel using the x- and y-offset tables.
|
inlinenoexcept |
Gets the Vpat::Column at x.
[in] | x | Pixel column. |
Creates a new, moved linear access object.
[in] | newAoi | Offset and new size in pixels to move this access to. |
|
inlineexplicitnoexcept |
Gets whether this vpat access object is valid.
|
inlinenoexcept |
Coordinate pixel access operator.
[in] | x | X coordinate coefficient in pixels. |
[in] | y | Y coordinate coefficient in pixels. |
|
inlinenoexcept |
Coordinate pixel access operator.
[in] | x | X coordinate coefficient in pixels. |
[in] | y | Y coordinate coefficient in pixels. |
|
inlinenoexcept |
Index pixel access operator.
[in] | idx | Pixel index. |
|
inlinenoexcept |
Index pixel access operator.
[in] | idx | Pixel index. |
|
inlinenoexcept |
Gets the origin of the Vpat() for this access trait.
This is necessary for sub-blocks to work.
|
inlinenoexcept |
|
inlinenoexcept |
Gets whether this vpat access object is valid.
|
inlinenoexcept |
Pointer to the native VPAT structure.
Does | not throw any exception. |
|
inlinenoexcept |
Gets the pixel width of the underlying plane.