LMMS
Loading...
Searching...
No Matches
juce::XBitmapImage Class Reference
Inheritance diagram for juce::XBitmapImage:
juce::ImagePixelData juce::ReferenceCountedObject

Classes

struct  Deleter

Public Member Functions

 XBitmapImage (XImage *image)
 XBitmapImage (Image::PixelFormat format, int w, int h, bool clearImage, unsigned int imageDepth_, Visual *visual)
 ~XBitmapImage () override
std::unique_ptr< LowLevelGraphicsContextcreateLowLevelContext () override
void initialiseBitmapData (Image::BitmapData &bitmap, int x, int y, Image::BitmapData::ReadWriteMode mode) override
ImagePixelData::Ptr clone () override
std::unique_ptr< ImageTypecreateType () const override
void blitToWindow (::Window window, int dx, int dy, unsigned int dw, unsigned int dh, int sx, int sy)
Public Member Functions inherited from juce::ImagePixelData
 ImagePixelData (Image::PixelFormat, int width, int height)
 ~ImagePixelData () override
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

Static Private Member Functions

static int getShiftNeeded (const uint32 mask) noexcept

Private Attributes

std::unique_ptr< XImage, DeleterxImage
const unsigned int imageDepth
HeapBlock< uint8imageDataAllocated
HeapBlock< char > imageData16Bit
int pixelStride
int lineStride
uint8imageData = nullptr
GC gc = None
::Display * display = XWindowSystem::getInstance()->getDisplay()

Additional Inherited Members

Public Types inherited from juce::ImagePixelData
using Ptr = ReferenceCountedObjectPtr<ImagePixelData>
Public Attributes inherited from juce::ImagePixelData
const Image::PixelFormat pixelFormat
const int width
const int height
NamedValueSet userData
ListenerList< Listenerlisteners
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

Constructor & Destructor Documentation

◆ XBitmapImage() [1/2]

juce::XBitmapImage::XBitmapImage ( XImage * image)
inlineexplicit

◆ XBitmapImage() [2/2]

juce::XBitmapImage::XBitmapImage ( Image::PixelFormat format,
int w,
int h,
bool clearImage,
unsigned int imageDepth_,
Visual * visual )
inline

◆ ~XBitmapImage()

juce::XBitmapImage::~XBitmapImage ( )
inlineoverride

Member Function Documentation

◆ blitToWindow()

void juce::XBitmapImage::blitToWindow ( ::Window window,
int dx,
int dy,
unsigned int dw,
unsigned int dh,
int sx,
int sy )
inline

◆ clone()

ImagePixelData::Ptr juce::XBitmapImage::clone ( )
inlineoverridevirtual

Creates a copy of this image.

Implements juce::ImagePixelData.

◆ createLowLevelContext()

std::unique_ptr< LowLevelGraphicsContext > juce::XBitmapImage::createLowLevelContext ( )
inlineoverridevirtual

Creates a context that will draw into this image.

Implements juce::ImagePixelData.

◆ createType()

std::unique_ptr< ImageType > juce::XBitmapImage::createType ( ) const
inlineoverridevirtual

Creates an instance of the type of this image.

Implements juce::ImagePixelData.

◆ getShiftNeeded()

int juce::XBitmapImage::getShiftNeeded ( const uint32 mask)
inlinestaticprivatenoexcept

◆ initialiseBitmapData()

void juce::XBitmapImage::initialiseBitmapData ( Image::BitmapData & ,
int x,
int y,
Image::BitmapData::ReadWriteMode  )
inlineoverridevirtual

Initialises a BitmapData object.

Implements juce::ImagePixelData.

Member Data Documentation

◆ display

::Display* juce::XBitmapImage::display = XWindowSystem::getInstance()->getDisplay()
private

◆ gc

GC juce::XBitmapImage::gc = None
private

◆ imageData

uint8* juce::XBitmapImage::imageData = nullptr
private

◆ imageData16Bit

HeapBlock<char> juce::XBitmapImage::imageData16Bit
private

◆ imageDataAllocated

HeapBlock<uint8> juce::XBitmapImage::imageDataAllocated
private

◆ imageDepth

const unsigned int juce::XBitmapImage::imageDepth
private

◆ lineStride

int juce::XBitmapImage::lineStride
private

◆ pixelStride

int juce::XBitmapImage::pixelStride
private

◆ xImage

std::unique_ptr<XImage, Deleter> juce::XBitmapImage::xImage
private

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