LMMS
Loading...
Searching...
No Matches
juce::ImagePixelData Class Referenceabstract

#include <juce_Image.h>

Inheritance diagram for juce::ImagePixelData:
juce::ReferenceCountedObject juce::SoftwarePixelData juce::SubsectionPixelData juce::WindowsBitmapImage juce::XBitmapImage

Classes

struct  Listener

Public Types

using Ptr = ReferenceCountedObjectPtr<ImagePixelData>

Public Member Functions

 ImagePixelData (Image::PixelFormat, int width, int height)
 ~ImagePixelData () override
virtual std::unique_ptr< LowLevelGraphicsContextcreateLowLevelContext ()=0
virtual Ptr clone ()=0
virtual std::unique_ptr< ImageTypecreateType () const =0
virtual void initialiseBitmapData (Image::BitmapData &, int x, int y, Image::BitmapData::ReadWriteMode)=0
virtual int getSharedCount () const noexcept
void sendDataChangeMessage ()
Public Member Functions inherited from juce::ReferenceCountedObject
void incReferenceCount () noexcept
void decReferenceCount () noexcept
bool decReferenceCountWithoutDeleting () noexcept
int getReferenceCount () const noexcept

Public Attributes

const Image::PixelFormat pixelFormat
const int width
const int height
NamedValueSet userData
ListenerList< Listenerlisteners

Additional Inherited Members

Protected Member Functions inherited from juce::ReferenceCountedObject
 ReferenceCountedObject ()=default
 ReferenceCountedObject (const ReferenceCountedObject &) noexcept
 ReferenceCountedObject (ReferenceCountedObject &&) noexcept
ReferenceCountedObjectoperator= (const ReferenceCountedObject &) noexcept
ReferenceCountedObjectoperator= (ReferenceCountedObject &&) noexcept
virtual ~ReferenceCountedObject ()
void resetReferenceCount () noexcept

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

@tags{Graphics}

Member Typedef Documentation

◆ Ptr

using juce::ImagePixelData::Ptr = ReferenceCountedObjectPtr<ImagePixelData>

Constructor & Destructor Documentation

◆ ImagePixelData()

juce::ImagePixelData::ImagePixelData ( Image::PixelFormat format,
int width,
int height )

◆ ~ImagePixelData()

juce::ImagePixelData::~ImagePixelData ( )
override

Member Function Documentation

◆ clone()

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

◆ createLowLevelContext()

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

Creates a context that will draw into this image.

Implemented in juce::SoftwarePixelData, juce::SubsectionPixelData, juce::WindowsBitmapImage, and juce::XBitmapImage.

◆ createType()

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

Creates an instance of the type of this image.

Implemented in juce::SoftwarePixelData, juce::SubsectionPixelData, juce::WindowsBitmapImage, and juce::XBitmapImage.

◆ getSharedCount()

int juce::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.

Reimplemented in juce::SubsectionPixelData.

◆ initialiseBitmapData()

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

Initialises a BitmapData object.

Implemented in juce::SoftwarePixelData, juce::SubsectionPixelData, juce::WindowsBitmapImage, and juce::XBitmapImage.

◆ sendDataChangeMessage()

void juce::ImagePixelData::sendDataChangeMessage ( )

Member Data Documentation

◆ height

const int juce::ImagePixelData::height

◆ listeners

ListenerList<Listener> juce::ImagePixelData::listeners

◆ pixelFormat

const Image::PixelFormat juce::ImagePixelData::pixelFormat

The pixel format of the image data.

◆ userData

NamedValueSet juce::ImagePixelData::userData

User-defined settings that are attached to this image.

See also
Image::getProperties().

◆ width

const int juce::ImagePixelData::width

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