Donner SVG 0.8.0
0.8.0 ยท ebf353960.8.0 main
SVG editor and embeddable C⁠+⁠+⁠20 engine.
Loading...
Searching...
No Matches
donner::svg::components::DecodedImageReservation Class Reference

Owns a decoded-raster reservation from a shared document-family budget. More...

#include "donner/svg/components/resources/ImageComponent.h"

Public Member Functions

 DecodedImageReservation (const DecodedImageReservation &)=delete
DecodedImageReservation & operator= (const DecodedImageReservation &)=delete
void shrinkTo (std::size_t bytes)
 Release unused decoder allowance after the actual pixel buffer is known.
std::shared_ptr< DecodedImageReservation > duplicate () const
 Reserve independent storage for a deep copy of the owned pixels.

Static Public Member Functions

static std::shared_ptr< DecodedImageReservation > Create (std::shared_ptr< DocumentResourceFamilyBudget > family, std::size_t bytes)
 Reserve bytes before decoding or copying pixels; null means admission was refused.

Detailed Description

Owns a decoded-raster reservation from a shared document-family budget.

Member Function Documentation

◆ Create()

std::shared_ptr< DecodedImageReservation > donner::svg::components::DecodedImageReservation::Create ( std::shared_ptr< DocumentResourceFamilyBudget > family,
std::size_t bytes )
inlinestatic

Reserve bytes before decoding or copying pixels; null means admission was refused.

Parameters
familyShared budget owning the reservation.
bytesMaximum decoded bytes to reserve.

◆ shrinkTo()

void donner::svg::components::DecodedImageReservation::shrinkTo ( std::size_t bytes)
inline

Release unused decoder allowance after the actual pixel buffer is known.

Parameters
bytesActual retained pixel count in bytes; must not exceed the reservation.

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