Struct CImage::Impl

Nested Relationships

This struct is a nested type of Class CImage.

Struct Documentation

struct Impl

PIMPL actual struct holding the image data

Public Functions

Impl() = default
~Impl()
Impl(const Impl&) = delete
Impl &operator=(const Impl&) = delete
Impl(Impl&&) noexcept = default
Impl &operator=(Impl&&) noexcept = default
inline bool empty() const
void clear()

Clears the image data, external image data, etc. To clear just the image data, use clear_image_data()

void clear_image_data()
inline void deep_copy(const Impl &o)
inline std::size_t image_buffer_size_bytes() const

Returns the image buffer size according to width, height, channels, and pixel depth. This function just computes the size of the image buffer in bytes from the properties filled in in the structure.

inline std::size_t row_stride_in_bytes() const
inline std::size_t pixel_size_in_bytes() const

Public Members

int32_t width = 0
int32_t height = 0
TImageChannels channels = TImageChannels::CH_GRAY
PixelDepth depth = PixelDepth::D8U
uint8_t *image_data = nullptr

Pointer to the loaded image data.

mutable bool imgIsExternalStorage = {false}

Set to true only when using setExternalStorage.

mutable std::string externalFile

The file name of a external storage image.