JUCE: ImagePixelData Class Reference

JUCE

Classes | Public Types | Public Member Functions | Public Attributes | List of all members
ImagePixelData Class Referenceabstract

This is a base class for holding image data in implementation-specific ways. More...

Inheritance diagram for ImagePixelData:

## Classes
struct | Listener
| Used to receive callbacks for image data changes. More...

## Public Types
using | Ptr = ReferenceCountedObjectPtr< ImagePixelData >

## Public Member Functions
| ImagePixelData (Image::PixelFormat, int width, int height)
| ~ImagePixelData () override
virtual std::unique_ptr< LowLevelGraphicsContext > | createLowLevelContext ()=0
| Creates a context that will draw into this image. More...
virtual Ptr | clone ()=0
| Creates a copy of this image. More...
virtual std::unique_ptr< ImageType > | createType () const =0
| Creates an instance of the type of this image. More...
virtual void | initialiseBitmapData (Image::BitmapData &, int x, int y, Image::BitmapData::ReadWriteMode)=0
| Initialises a BitmapData object. More...
virtual int | getSharedCount () const noexcept
| Returns the number of Image objects which are currently referring to the same internal shared image data. More...
void | sendDataChangeMessage ()
Public Member Functions inherited from ReferenceCountedObject
void | incReferenceCount () noexcept
| Increments the object's reference count. More...
void | decReferenceCount () noexcept
| Decreases the object's reference count. More...
bool | decReferenceCountWithoutDeleting () noexcept
| Decreases the object's reference count. More...
int | getReferenceCount () const noexcept
| Returns the object's current reference count. More...

## Public Attributes
const Image::PixelFormat | pixelFormat
| The pixel format of the image data. More...
const int | width
const int | height
NamedValueSet | userData
| User-defined settings that are attached to this image. More...
ListenerList< Listener > | listeners

## Additional Inherited Members
Protected Member Functions inherited from ReferenceCountedObject
| ReferenceCountedObject ()=default
| Creates the reference-counted object (with an initial ref count of zero). More...
| ReferenceCountedObject (const ReferenceCountedObject &) noexcept
| Copying from another object does not affect this one's reference-count. More...
| ReferenceCountedObject (ReferenceCountedObject &&) noexcept
| Copying from another object does not affect this one's reference-count. More...
ReferenceCountedObject & | operator= (const ReferenceCountedObject &) noexcept
| Copying from another object does not affect this one's reference-count. More...
ReferenceCountedObject & | operator= (ReferenceCountedObject &&) noexcept
| Copying from another object does not affect this one's reference-count. More...
virtual | ~ReferenceCountedObject ()
| Destructor. More...
void | resetReferenceCount () noexcept
| Resets the reference count to zero without deleting the object. More...

## Detailed Description

This is a base class for holding image data in implementation-specific ways.

You may never need to use this class directly - it's used internally by the Image class to store the actual image data. To access pixel data directly, you should use Image::BitmapData rather than this class.

ImagePixelData objects are created indirectly, by subclasses of ImageType.

See also
  Image, ImageType

## Member Typedef Documentation

## ◆ Ptr

using ImagePixelData::Ptr = ReferenceCountedObjectPtr<ImagePixelData>

## Constructor & Destructor Documentation

## ◆ ImagePixelData()

ImagePixelData::ImagePixelData | ( | Image::PixelFormat | ,
|  | int | width,
|  | int | height
| ) |  |

## ◆ ~ImagePixelData()

ImagePixelData::~ImagePixelData | ( |  | ) |
| override

## Member Function Documentation

## ◆ createLowLevelContext()

virtual std::unique_ptr<LowLevelGraphicsContext> ImagePixelData::createLowLevelContext | ( |  | ) |
| pure virtual

Creates a context that will draw into this image.

## ◆ clone()

virtual Ptr ImagePixelData::clone | ( |  | ) |
| pure virtual

Creates a copy of this image.

## ◆ createType()

virtual std::unique_ptr<ImageType> ImagePixelData::createType | ( |  | ) | const
| pure virtual

Creates an instance of the type of this image.

## ◆ initialiseBitmapData()

virtual void ImagePixelData::initialiseBitmapData | ( | Image::BitmapData & | ,
|  | int | x,
|  | int | y,
|  | Image::BitmapData::ReadWriteMode |
| ) |  |
| pure virtual

Initialises a BitmapData object.

## ◆ getSharedCount()

virtual int ImagePixelData::getSharedCount | ( |  | ) | const
| virtualnoexcept

Returns the number of Image objects which are currently referring to the same internal shared image data.

This is different to the reference count as an instance of ImagePixelData can internally depend on another ImagePixelData via it's member variables.

## ◆ sendDataChangeMessage()

void ImagePixelData::sendDataChangeMessage | ( |  | ) |

## Member Data Documentation

## ◆ pixelFormat

const Image::PixelFormat ImagePixelData::pixelFormat

The pixel format of the image data.

## ◆ width

const int ImagePixelData::width

## ◆ height

const int ImagePixelData::height

## ◆ userData

NamedValueSet ImagePixelData::userData

User-defined settings that are attached to this image.

See also
  Image::getProperties().

## ◆ listeners

ListenerList<Listener> ImagePixelData::listeners

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

- juce_Image.h