hwy::Image3< ComponentType > Class Template Reference

`#include <image.h>`

## Public Types

using | T = ComponentType
using | ImageT = Image< T >

## Public Member Functions

| Image3 ()
| Image3 (const size_t xsize, const size_t ysize)
| Image3 (Image3 &&other) noexcept
| Image3 (ImageT &&plane0, ImageT &&plane1, ImageT &&plane2)
| Image3 (const Image3 &other)=delete
Image3 & | operator= (const Image3 &other)=delete
Image3 & | operator= (Image3 &&other) noexcept
HWY_INLINE const T * | ConstPlaneRow (const size_t c, const size_t y) const
HWY_INLINE const T * | ConstPlaneRow (const size_t c, const size_t y)
HWY_INLINE T * | MutablePlaneRow (const size_t c, const size_t y) const
HWY_INLINE T * | MutablePlaneRow (const size_t c, const size_t y)
HWY_INLINE const ImageT & | Plane (size_t idx) const
void | Swap (Image3 &other)
void | ShrinkTo (const size_t xsize, const size_t ysize)
HWY_INLINE size_t | xsize () const
HWY_INLINE size_t | ysize () const
HWY_INLINE size_t | bytes_per_row () const
HWY_INLINE intptr_t | PixelsPerRow () const

## Static Public Attributes

static constexpr size_t | kNumPlanes = 3

## Private Member Functions

HWY_INLINE void * | VoidPlaneRow (const size_t c, const size_t y) const

## Private Attributes

ImageT | planes_ [kNumPlanes]

## Member Typedef Documentation

## ImageT

template<typename ComponentType >

using hwy::Image3< ComponentType >::ImageT = Image<T>

## T

template<typename ComponentType >

using hwy::Image3< ComponentType >::T = ComponentType

## Constructor & Destructor Documentation

## Image3() [1/5]

template<typename ComponentType >

hwy::Image3< ComponentType >::Image3 | ( |  | ) |

inline

## Image3() [2/5]

template<typename ComponentType >

hwy::Image3< ComponentType >::Image3 | ( | const size_t | xsize,
|  | const size_t | ysize
| ) |  |

inline

## Image3() [3/5]

template<typename ComponentType >

hwy::Image3< ComponentType >::Image3 | ( | Image3< ComponentType > && | other | ) |

inline noexcept

References hwy::Image3< ComponentType >::kNumPlanes, and hwy::Image3< ComponentType >::planes_.

## Image3() [4/5]

template<typename ComponentType >

hwy::Image3< ComponentType >::Image3 | ( | ImageT && | plane0,
|  | ImageT && | plane1,
|  | ImageT && | plane2
| ) |  |

inline

References HWY_ABORT, hwy::Image3< ComponentType >::planes_, and hwy::SameSize().

## Image3() [5/5]

template<typename ComponentType >

hwy::Image3< ComponentType >::Image3 | ( | const Image3< ComponentType > & | other | ) |

delete

## Member Function Documentation

## bytes_per_row()

template<typename ComponentType >

HWY_INLINE size_t hwy::Image3< ComponentType >::bytes_per_row | ( |  | ) | const

inline

References hwy::ImageBase::bytes_per_row(), and hwy::Image3< ComponentType >::planes_.

## ConstPlaneRow() [1/2]

template<typename ComponentType >

HWY_INLINE const T * hwy::Image3< ComponentType >::ConstPlaneRow | ( | const size_t | c,
|  | const size_t | y
| ) |  |

inline

References hwy::Image3< ComponentType >::VoidPlaneRow().

## ConstPlaneRow() [2/2]

template<typename ComponentType >

HWY_INLINE const T * hwy::Image3< ComponentType >::ConstPlaneRow | ( | const size_t | c,
|  | const size_t | y
| ) |  | const

inline

References hwy::Image3< ComponentType >::VoidPlaneRow().

Referenced by hwy::Rect::ConstPlaneRow().

## MutablePlaneRow() [1/2]

template<typename ComponentType >

HWY_INLINE T * hwy::Image3< ComponentType >::MutablePlaneRow | ( | const size_t | c,
|  | const size_t | y
| ) |  |

inline

References hwy::Image3< ComponentType >::VoidPlaneRow().

## MutablePlaneRow() [2/2]

template<typename ComponentType >

HWY_INLINE T * hwy::Image3< ComponentType >::MutablePlaneRow | ( | const size_t | c,
|  | const size_t | y
| ) |  | const

inline

References hwy::Image3< ComponentType >::VoidPlaneRow().

Referenced by hwy::Rect::MutablePlaneRow().

## operator=() [1/2]

template<typename ComponentType >

Image3 & hwy::Image3< ComponentType >::operator= | ( | const Image3< ComponentType > & | other | ) |

delete

## operator=() [2/2]

template<typename ComponentType >

Image3 & hwy::Image3< ComponentType >::operator= | ( | Image3< ComponentType > && | other | ) |

inline noexcept

References hwy::Image3< ComponentType >::kNumPlanes, and hwy::Image3< ComponentType >::planes_.

## PixelsPerRow()

template<typename ComponentType >

HWY_INLINE intptr_t hwy::Image3< ComponentType >::PixelsPerRow | ( |  | ) | const

inline

References hwy::Image< ComponentType >::PixelsPerRow(), and hwy::Image3< ComponentType >::planes_.

## Plane()

template<typename ComponentType >

HWY_INLINE const ImageT & hwy::Image3< ComponentType >::Plane | ( | size_t | idx | ) | const

inline

References hwy::Image3< ComponentType >::planes_.

## ShrinkTo()

template<typename ComponentType >

void hwy::Image3< ComponentType >::ShrinkTo | ( | const size_t | xsize,
|  | const size_t | ysize
| ) |  |

inline

References hwy::Image3< ComponentType >::planes_, hwy::Image3< ComponentType >::xsize(), and hwy::Image3< ComponentType >::ysize().

## Swap()

template<typename ComponentType >

void hwy::Image3< ComponentType >::Swap | ( | Image3< ComponentType > & | other | ) |

inline

References hwy::Image3< ComponentType >::planes_, and hwy::ImageBase::Swap().

## VoidPlaneRow()

template<typename ComponentType >

HWY_INLINE void * hwy::Image3< ComponentType >::VoidPlaneRow | ( | const size_t | c,
|  | const size_t | y
| ) |  | const

inline private

References hwy::ImageBase::bytes(), hwy::ImageBase::bytes_per_row(), HWY_ABORT, HWY_ALIGNMENT, HWY_ASSUME_ALIGNED, HWY_RESTRICT, hwy::Image3< ComponentType >::kNumPlanes, hwy::Image3< ComponentType >::planes_, and hwy::Image3< ComponentType >::ysize().

Referenced by hwy::Image3< ComponentType >::ConstPlaneRow(), hwy::Image3< ComponentType >::ConstPlaneRow(), hwy::Image3< ComponentType >::MutablePlaneRow(), and hwy::Image3< ComponentType >::MutablePlaneRow().

## xsize()

template<typename ComponentType >

HWY_INLINE size_t hwy::Image3< ComponentType >::xsize | ( |  | ) | const

inline

References hwy::Image3< ComponentType >::planes_, and hwy::ImageBase::xsize().

Referenced by hwy::Image3< ComponentType >::ShrinkTo().

## ysize()

template<typename ComponentType >

HWY_INLINE size_t hwy::Image3< ComponentType >::ysize | ( |  | ) | const

inline

References hwy::Image3< ComponentType >::planes_, and hwy::ImageBase::ysize().

Referenced by hwy::Image3< ComponentType >::ShrinkTo(), and hwy::Image3< ComponentType >::VoidPlaneRow().

## Member Data Documentation

## kNumPlanes

template<typename ComponentType >

constexpr size_t hwy::Image3< ComponentType >::kNumPlanes = 3

static constexpr

Referenced by hwy::Image3< ComponentType >::Image3(), hwy::Image3< ComponentType >::operator=(), and hwy::Image3< ComponentType >::VoidPlaneRow().

## planes_

template<typename ComponentType >

ImageT hwy::Image3< ComponentType >::planes_[kNumPlanes]

private

Referenced by hwy::Image3< ComponentType >::bytes_per_row(), hwy::Image3< ComponentType >::Image3(), hwy::Image3< ComponentType >::Image3(), hwy::Image3< ComponentType >::operator=(), hwy::Image3< ComponentType >::PixelsPerRow(), hwy::Image3< ComponentType >::Plane(), hwy::Image3< ComponentType >::ShrinkTo(), hwy::Image3< ComponentType >::Swap(), hwy::Image3< ComponentType >::VoidPlaneRow(), hwy::Image3< ComponentType >::xsize(), and hwy::Image3< ComponentType >::ysize().

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

- image.h