![]() |
Public API Reference |
#include <graph2d.h>
Inheritance diagram for iGraphics2D:
Public Methods | |
virtual bool | Open ()=0 |
Open the device. More... | |
virtual void | Close ()=0 |
Close the device. More... | |
virtual int | GetWidth ()=0 |
Return the width of the framebuffer. More... | |
virtual int | GetHeight ()=0 |
Return the height of the framebuffer. More... | |
virtual int | GetPage ()=0 |
Get active videopage number (starting from zero). More... | |
virtual bool | DoubleBuffer (bool Enable)=0 |
Enable or disable double buffering; returns success status. More... | |
virtual bool | GetDoubleBufferState ()=0 |
Get the double buffer state. More... | |
virtual csPixelFormat * | GetPixelFormat ()=0 |
Return information about the pixel format. More... | |
virtual int | GetPixelBytes ()=0 |
Return the number of bytes for every pixel. More... | |
virtual int | GetPalEntryCount ()=0 |
Return the number of palette entries that can be modified. More... | |
virtual csRGBpixel * | GetPalette ()=0 |
Get the palette (if there is one). More... | |
virtual void | SetRGB (int i, int r, int g, int b)=0 |
Set a color index to given R,G,B (0..255) values. More... | |
virtual int | FindRGB (int r, int g, int b)=0 |
Find an RGB color. More... | |
virtual void | SetClipRect (int nMinX, int nMinY, int nMaxX, int nMaxY)=0 |
Set clipping rectangle. More... | |
virtual void | GetClipRect (int &nMinX, int &nMinY, int &nMaxX, int &nMaxY)=0 |
Retrieve clipping rectangle. More... | |
virtual bool | BeginDraw ()=0 |
This routine should be called before any draw operations. More... | |
virtual void | FinishDraw ()=0 |
This routine should be called when you finished drawing. More... | |
virtual void | Print (csRect *pArea)=0 |
Flip video pages (or dump backbuffer into framebuffer). More... | |
virtual void | Clear (int color)=0 |
Clear backbuffer. More... | |
virtual void | ClearAll (int color)=0 |
Clear all video pages. More... | |
virtual void | DrawLine (float x1, float y1, float x2, float y2, int color)=0 |
Draw a line. More... | |
virtual void | DrawBox (int x, int y, int w, int h, int color)=0 |
Draw a box. More... | |
virtual bool | ClipLine (float &x1, float &y1, float &x2, float &y2, int xmin, int ymin, int xmax, int ymax)=0 |
Clip a line against given rectangle. More... | |
virtual void | DrawPixel (int x, int y, int color)=0 |
Draw a pixel. More... | |
virtual void | DrawPixels (csPixelCoord *pixels, int num_pixels, int color)=0 |
Draw an array of pixel coordinates with the given color. More... | |
virtual void | Blit (int x, int y, int width, int height, unsigned char *data)=0 |
Blit a memory block. The format of the image is RGBA in bytes. Row by row. More... | |
virtual unsigned char * | GetPixelAt (int x, int y)=0 |
Returns the address of the pixel at the specified (x, y) coordinates. More... | |
virtual void | GetPixel (int x, int y, uint8 &oR, uint8 &oG, uint8 &oB)=0 |
Query pixel R,G,B at given screen location. More... | |
virtual csImageArea * | SaveArea (int x, int y, int w, int h)=0 |
Save a subarea of screen and return a handle to saved buffer. More... | |
virtual void | RestoreArea (csImageArea *Area, bool Free)=0 |
Restore a subarea of screen saved with SaveArea(). More... | |
virtual void | FreeArea (csImageArea *Area)=0 |
Free storage allocated for a subarea of screen. More... | |
virtual void | Write (iFont *font, int x, int y, int fg, int bg, const char *str)=0 |
Write a text string into the back buffer. More... | |
virtual void | WriteBaseline (iFont *font, int x, int y, int fg, int bg, const char *str)=0 |
Write a text string into the back buffer. More... | |
virtual void | AllowResize (bool iAllow)=0 |
Enable/disable canvas resizing. More... | |
virtual bool | Resize (int w, int h)=0 |
Resize the canvas. More... | |
virtual iFontServer * | GetFontServer ()=0 |
Get the active font server (does not do IncRef()). More... | |
virtual bool | PerformExtension (char const *command,...)=0 |
Perform a system specific exension. More... | |
virtual bool | PerformExtensionV (char const *command, va_list)=0 |
Perform a system specific exension. More... | |
virtual csPtr< iImage > | ScreenShot ()=0 |
Do a screenshot: return a new iImage object. More... | |
virtual iNativeWindow * | GetNativeWindow ()=0 |
Get the native window corresponding with this canvas. More... | |
virtual bool | GetFullScreen ()=0 |
Returns 'true' if the program is being run full-screen. More... | |
virtual void | SetFullScreen (bool b)=0 |
Change the fullscreen state of the canvas. More... | |
virtual bool | SetMousePosition (int x, int y)=0 |
Set mouse position (relative to top-left of CS window). More... | |
virtual bool | SetMouseCursor (csMouseCursorID iShape)=0 |
Set mouse cursor to one of predefined shape classes (see csmcXXX enum above). More... | |
virtual bool | SetGamma (float gamma)=0 |
Set gamma value (if supported by canvas). More... | |
virtual float | GetGamma () const=0 |
Get gamma value. More... | |
virtual csPtr< iGraphics2D > | CreateOffscreenCanvas (void *memory, int width, int height, int depth, iOffscreenCanvasCallback *ofscb)=0 |
Create an off-screen canvas so you can render on a given memory area. More... |
The 2D renderer is responsible for all 2D operations such as creating the window, switching pages, returning pixel format and so on.
Definition at line 146 of file graph2d.h.
|
Enable/disable canvas resizing.
|
|
This routine should be called before any draw operations. It should return true if graphics context is ready. |
|
Blit a memory block. The format of the image is RGBA in bytes. Row by row.
|
|
Clear backbuffer.
|
|
Clear all video pages.
|
|
Clip a line against given rectangle. Function returns true if line is not visible. |
|
Close the device.
|
|
Create an off-screen canvas so you can render on a given memory area. If depth==8 then the canvas will use palette mode. In that case you can do SetRGB() to initialize the palette. The callback interface (if given) is used to communicate from the canvas back to the caller. You can use this to detect when the texture data has changed for example. |
|
Enable or disable double buffering; returns success status.
|
|
Draw a box.
|
|
Draw a line.
|
|
Draw a pixel.
|
|
Draw an array of pixel coordinates with the given color.
|
|
Find an RGB color.
|
|
This routine should be called when you finished drawing.
|
|
Free storage allocated for a subarea of screen.
|
|
Retrieve clipping rectangle.
|
|
Get the double buffer state.
|
|
Get the active font server (does not do IncRef()).
|
|
Returns 'true' if the program is being run full-screen.
|
|
Get gamma value.
|
|
Return the height of the framebuffer.
|
|
Get the native window corresponding with this canvas. If this is an off-screen canvas then this will return 0. |
|
Get active videopage number (starting from zero).
|
|
Return the number of palette entries that can be modified. This should return 0 if there is no palette (true color displays). This function is equivalent to the PalEntries field that you get from GetPixelFormat. It is just a little bit easier to obtain this way. |
|
Get the palette (if there is one).
|
|
Query pixel R,G,B at given screen location.
|
|
Returns the address of the pixel at the specified (x, y) coordinates.
|
|
Return the number of bytes for every pixel. This function is equivalent to the PixelBytes field that you get from GetPixelFormat. |
|
Return information about the pixel format.
|
|
Return the width of the framebuffer.
|
|
Open the device.
|
|
Perform a system specific exension.
The command is a string; any arguments may follow. There is no way to guarantee the uniquiness of commands, so please try to use descriptive command names rather than "a", "b" and so on... |
|
Perform a system specific exension.
Just like PerformExtension() except that the command arguments are passed as a `va_list'. |
|
Flip video pages (or dump backbuffer into framebuffer). The area parameter is only a hint to the canvas driver. Changes outside the rectangle may or may not be printed as well. |
|
Resize the canvas.
|
|
Restore a subarea of screen saved with SaveArea().
|
|
Save a subarea of screen and return a handle to saved buffer. Storage is allocated in this call, you should either FreeArea() the handle after usage or RestoreArea () it. |
|
Do a screenshot: return a new iImage object.
|
|
Set clipping rectangle. The clipping rectangle is inclusive the top and left edges and exclusive for the right and bottom borders. |
|
Change the fullscreen state of the canvas.
|
|
Set gamma value (if supported by canvas). By default this is 1. Smaller values are darker. If the canvas doesn't support gamma then this function will return false. |
|
Set mouse cursor to one of predefined shape classes (see csmcXXX enum above). If a specific mouse cursor shape is not supported, return 'false'; otherwise return 'true'. If system supports it the cursor should be set to its nearest system equivalent depending on iShape argument and the routine should return "true". |
|
Set mouse position (relative to top-left of CS window).
|
|
Set a color index to given R,G,B (0..255) values.
|
|
Write a text string into the back buffer. A negative value for bg color will not draw the background. |
|
Write a text string into the back buffer. A negative value for bg color will not draw the background. x and y are the pen position on a baseline. The actual font baseline is shifted up by the font's descent. |