Graphics::BitmapObject Class Reference

A BMP format image. More...

#include <Object.h>

Inheritance diagram for Graphics::BitmapObject:
Collaboration diagram for Graphics::BitmapObject:

Public Member Functions

 BitmapObject (const Resource::ImageResource &image)
 
void write (MetaWriter &meta) const override
 
bool init () override
 Initialise the object, e.g. parse header content and obtain dimensions. More...
 
PixelFormat getPixelFormat () const override
 Get native pixel format. More...
 
size_t readPixels (const Location &loc, PixelFormat format, void *buffer, uint16_t width) const override
 Read pixels in requested format. More...
 
 StreamImageObject (IDataSourceStream *source, Size size)
 
 StreamImageObject (const FSTR::String &image)
 
- Public Member Functions inherited from Graphics::StreamImageObject
 StreamImageObject (IDataSourceStream *source, Size size)
 
 StreamImageObject (const FSTR::String &image)
 
- Public Member Functions inherited from Graphics::ImageObject
 ImageObject (Size size)
 
RenderercreateRenderer (const Location &location) const override
 Create a software renderer for this object. More...
 
Size getSize () const
 
uint16_t width () const
 
uint16_t height () const
 
- Public Member Functions inherited from Graphics::ObjectTemplate< Object::Kind::Image >
Kind kind () const override
 
- Public Member Functions inherited from Graphics::Object
bool operator== (const Object &other) const
 
virtual String getTypeStr () const
 
- Public Member Functions inherited from LinkedObjectTemplate< Object >
Object * getNext () const
 
bool insertAfter (Object *object)
 
Iterator begin () const
 
Iterator end () const
 
Iterator cbegin () const
 
Iterator cend () const
 
- Public Member Functions inherited from LinkedObject
virtual ~LinkedObject ()
 
virtual LinkedObjectnext () const
 
bool insertAfter (LinkedObject *object)
 
bool operator== (const LinkedObject &other) const
 
bool operator!= (const LinkedObject &other) const
 

Additional Inherited Members

- Public Types inherited from Graphics::Object
enum class  Kind { XX }
 
using List = LinkedObjectListTemplate< Object >
 
using OwnedList = OwnedLinkedObjectListTemplate< Object >
 
- Public Types inherited from LinkedObjectTemplate< Object >
using Iterator = IteratorTemplate< Object, Object *, Object & >
 
using ConstIterator = IteratorTemplate< const Object, const Object *, const Object & >
 
- Protected Member Functions inherited from Graphics::StreamImageObject
void seek (uint32_t offset) const
 
void read (void *buffer, size_t length) const
 
- Protected Attributes inherited from Graphics::StreamImageObject
std::unique_ptr< IDataSourceStreamstream
 
uint32_t streamPos {}
 
- Protected Attributes inherited from Graphics::ImageObject
Size imageSize {}
 

Detailed Description

A BMP format image.

Code based on https://github.com/adafruit/Adafruit-GFX-Library

Constructor & Destructor Documentation

◆ BitmapObject()

Graphics::BitmapObject::BitmapObject ( const Resource::ImageResource image)
inline

Member Function Documentation

◆ getPixelFormat()

PixelFormat Graphics::BitmapObject::getPixelFormat ( ) const
inlineoverridevirtual

Get native pixel format.

Return values
PixelFormatReturn None if ambivalent about format (e.g. calculated pixel data)

Implements Graphics::ImageObject.

◆ init()

bool Graphics::BitmapObject::init ( )
overridevirtual

Initialise the object, e.g. parse header content and obtain dimensions.

Implements Graphics::ImageObject.

◆ readPixels()

size_t Graphics::BitmapObject::readPixels ( const Location loc,
PixelFormat  format,
void *  buffer,
uint16_t  width 
) const
overridevirtual

Read pixels in requested format.

Parameters
locStart position
formatRequired pixel format
bufferBuffer for pixels
widthNumber of pixels to read
Return values
size_tNumber of bytes written

Implements Graphics::ImageObject.

◆ StreamImageObject() [1/2]

Graphics::StreamImageObject::StreamImageObject
inline

◆ StreamImageObject() [2/2]

Graphics::StreamImageObject::StreamImageObject
inline

◆ write()

void Graphics::BitmapObject::write ( MetaWriter meta) const
inlineoverridevirtual

Reimplemented from Graphics::StreamImageObject.


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