32#include "../Render/element_array_buffer.h"
33#include "../Image/pixel_buffer.h"
Interface to drawing graphics.
Definition: graphic_context.h:257
Element Array Buffer provider.
Definition: pixel_buffer_provider.h:42
virtual int get_pitch() const =0
Retrieves the pitch of the mapped buffer. Use this after get_data()
virtual void lock(GraphicContext &gc, BufferAccess access)=0
Maps buffer into system memory.
virtual void unlock()=0
Unmaps element buffer.
virtual ~PixelBufferProvider()
Definition: pixel_buffer_provider.h:44
virtual void upload_data(GraphicContext &gc, const Rect &dest_rect, const void *data)=0
Uploads data to buffer.
virtual TextureFormat get_format() const =0
Returns the pixel format.
virtual void create(const void *data, const Size &new_size, PixelBufferDirection direction, TextureFormat new_format, BufferUsage usage)=0
Create.
virtual Size get_size() const =0
virtual void * get_data()=0
Retrieves a pointer to the mapped buffer.
virtual bool is_gpu() const =0
Returns true if this pixel buffer is a GPU based one.
2D (left,top,right,bottom) rectangle structure - Integer
Definition: rect.h:489
2D (width,height) size structure - Integer
Definition: size.h:171
TextureFormat
Texture format.
Definition: texture_format.h:39
BufferAccess
Array Buffer access enum.
Definition: buffer_usage.h:53
PixelBufferDirection
Pixel buffer prefered direction.
Definition: pixel_buffer.h:58
BufferUsage
Array Buffer usage enum.
Definition: buffer_usage.h:39