CL_GraphicContextProvider Class Reference
[clanDisplay Display]

Interface for implementing a CL_GraphicContext target. More...

#include <graphic_context_provider.h>

List of all members.

Public Member Functions

Construction
virtual ~CL_GraphicContextProvider ()
Attributes
virtual int get_max_attributes ()=0
 Returns the maximum amount of attributes available.
virtual CL_Size get_max_texture_size () const =0
 Returns the maximum size of a texture this graphic context supports.
virtual int get_width () const =0
 Returns the current width of the context.
virtual int get_height () const =0
 Returns the current height of the context.
Operations
virtual void destroy ()=0
 Destroys graphic context provider.
virtual CL_GraphicContext create_worker_gc ()=0
 Creates a new additional graphic context for the window.
virtual CL_PixelBuffer get_pixeldata (const CL_Rect &rect) const =0
 Return the content of the draw buffer into a pixel buffer.
virtual CL_TextureProvideralloc_texture (CL_TextureDimensions texture_dimensions)=0
 Allocate texture provider for this gc.
virtual CL_OcclusionQueryProvideralloc_occlusion_query ()=0
 Allocate occlusion query provider of this gc.
virtual CL_ProgramObjectProvideralloc_program_object ()=0
 Allocate program object provider of this gc.
virtual CL_ShaderObjectProvideralloc_shader_object ()=0
 Allocate shader object provider of this gc.
virtual CL_FrameBufferProvideralloc_frame_buffer ()=0
 Allocate frame buffer provider for this gc.
virtual CL_RenderBufferProvideralloc_render_buffer ()=0
 Allocate render buffer provider for this gc.
virtual CL_VertexArrayBufferProvideralloc_vertex_array_buffer ()=0
 Allocate vertex array buffer provider for this gc.
virtual CL_ElementArrayBufferProvideralloc_element_array_buffer ()=0
 Allocate element array buffer provider for this gc.
virtual void set_program_object (CL_StandardProgram standard_program)=0
 Set active program object to the standard program specified.
virtual void set_program_object (const CL_ProgramObject &program)=0
 Set active program object.
virtual void reset_program_object ()=0
 Remove active program object.
virtual void set_texture (int unit_index, const CL_Texture &texture)=0
 Select texture into unit.
virtual void reset_texture (int unit_index)=0
 Remove texture from unit.
virtual void set_frame_buffer (const CL_FrameBuffer &buffer)=0
 Set a frame buffer for off-screen rendering.
virtual void reset_frame_buffer ()=0
 Set the rendering buffer back to the screen.
virtual void set_blend_mode (const CL_BlendMode &blendmode)=0
 Set blending modes.
virtual void set_buffer_control (const CL_BufferControl &buffer_control)=0
 Set buffer control states.
virtual void set_pen (const CL_Pen &pen)=0
 Select pen.
virtual void set_polygon_rasterizer (const CL_PolygonRasterizer &raster)=0
 Set polygon rasterizer settings.
virtual void draw_primitives (CL_PrimitivesType type, int num_vertices, const CL_PrimitivesArrayData *const prim_array)=0
 Draw primitives on gc.
virtual void set_primitives_array (const CL_PrimitivesArrayData *const prim_array)=0
 Set the primitives array on the gc.
virtual void draw_primitives_array (CL_PrimitivesType type, int offset, int num_vertices)=0
 Draws primitives from the current assigned primitives array.
virtual void draw_primitives_elements (CL_PrimitivesType type, int count, unsigned int *indices)=0
 Draw primitives elements.
virtual void draw_primitives_elements (CL_PrimitivesType type, int count, unsigned short *indices)=0
 Draw primitives elements.
virtual void draw_primitives_elements (CL_PrimitivesType type, int count, unsigned char *indices)=0
 Draw primitives elements.
virtual void draw_primitives_elements (CL_PrimitivesType type, int count, CL_ElementArrayBufferProvider *array_provider, CL_VertexAttributeDataType indices_type, void *offset)=0
 Draw primitives elements.
virtual void primitives_array_freed (const CL_PrimitivesArrayData *const prim_array)=0
 Called when a primitives array is being recycled.
virtual void reset_primitives_array ()=0
 Reset the primitives arrays.
virtual void draw_pixels (float x, float y, float zoom_x, float zoom_y, const CL_PixelBufferRef &pixel_buffer, const CL_Colorf &color)=0
 Draw pixel buffer on gc.
virtual void set_clip_rect (const CL_Rect &rect)=0
 Set clip rect.
virtual void reset_clip_rect ()=0
 Reset clip rect.
virtual void clear (const CL_Colorf &color)=0
 Clears the whole context using the specified color.
virtual void clear_depth (float value)=0
 Clear the depth buffer.
virtual void clear_stencil (int value)=0
 Clear the stencil buffer.
virtual void set_map_mode (CL_MapMode mode)=0
 Set the projection mapping mode.
virtual void set_viewport (const CL_Rectf &viewport)=0
 Set the viewport to be used in user projection map mode.
virtual void set_projection (const CL_Mat4f &matrix)=0
 Set the projection matrix to be used in user projection map mode.
virtual void set_modelview (const CL_Mat4f &matrix)=0
 Sets the model view matrix to a new matrix.


Detailed Description

Interface for implementing a CL_GraphicContext target.


Constructor & Destructor Documentation

virtual CL_GraphicContextProvider::~CL_GraphicContextProvider  )  [inline, virtual]
 


Member Function Documentation

virtual CL_ElementArrayBufferProvider* CL_GraphicContextProvider::alloc_element_array_buffer  )  [pure virtual]
 

Allocate element array buffer provider for this gc.

virtual CL_FrameBufferProvider* CL_GraphicContextProvider::alloc_frame_buffer  )  [pure virtual]
 

Allocate frame buffer provider for this gc.

virtual CL_OcclusionQueryProvider* CL_GraphicContextProvider::alloc_occlusion_query  )  [pure virtual]
 

Allocate occlusion query provider of this gc.

virtual CL_ProgramObjectProvider* CL_GraphicContextProvider::alloc_program_object  )  [pure virtual]
 

Allocate program object provider of this gc.

virtual CL_RenderBufferProvider* CL_GraphicContextProvider::alloc_render_buffer  )  [pure virtual]
 

Allocate render buffer provider for this gc.

virtual CL_ShaderObjectProvider* CL_GraphicContextProvider::alloc_shader_object  )  [pure virtual]
 

Allocate shader object provider of this gc.

virtual CL_TextureProvider* CL_GraphicContextProvider::alloc_texture CL_TextureDimensions  texture_dimensions  )  [pure virtual]
 

Allocate texture provider for this gc.

virtual CL_VertexArrayBufferProvider* CL_GraphicContextProvider::alloc_vertex_array_buffer  )  [pure virtual]
 

Allocate vertex array buffer provider for this gc.

virtual void CL_GraphicContextProvider::clear const CL_Colorf color  )  [pure virtual]
 

Clears the whole context using the specified color.

virtual void CL_GraphicContextProvider::clear_depth float  value  )  [pure virtual]
 

Clear the depth buffer.

Parameters:
value,: value to clear to. Range 0.0 - 1.0.

virtual void CL_GraphicContextProvider::clear_stencil int  value  )  [pure virtual]
 

Clear the stencil buffer.

Parameters:
value value to clear to.

virtual CL_GraphicContext CL_GraphicContextProvider::create_worker_gc  )  [pure virtual]
 

Creates a new additional graphic context for the window.

virtual void CL_GraphicContextProvider::destroy  )  [pure virtual]
 

Destroys graphic context provider.

virtual void CL_GraphicContextProvider::draw_pixels float  x,
float  y,
float  zoom_x,
float  zoom_y,
const CL_PixelBufferRef pixel_buffer,
const CL_Colorf color
[pure virtual]
 

Draw pixel buffer on gc.

virtual void CL_GraphicContextProvider::draw_primitives CL_PrimitivesType  type,
int  num_vertices,
const CL_PrimitivesArrayData *const   prim_array
[pure virtual]
 

Draw primitives on gc.

virtual void CL_GraphicContextProvider::draw_primitives_array CL_PrimitivesType  type,
int  offset,
int  num_vertices
[pure virtual]
 

Draws primitives from the current assigned primitives array.

virtual void CL_GraphicContextProvider::draw_primitives_elements CL_PrimitivesType  type,
int  count,
CL_ElementArrayBufferProvider array_provider,
CL_VertexAttributeDataType  indices_type,
void *  offset
[pure virtual]
 

Draw primitives elements.

Parameters:
type = Primitives Type
count = value
array_provider = Element Array Buffer Provider
indices_type = Vertex Attribute Data Type
offset = void

virtual void CL_GraphicContextProvider::draw_primitives_elements CL_PrimitivesType  type,
int  count,
unsigned char *  indices
[pure virtual]
 

Draw primitives elements.

Parameters:
type = Primitives Type
count = value
indices = char

virtual void CL_GraphicContextProvider::draw_primitives_elements CL_PrimitivesType  type,
int  count,
unsigned short *  indices
[pure virtual]
 

Draw primitives elements.

Parameters:
type = Primitives Type
count = value
indices = short

virtual void CL_GraphicContextProvider::draw_primitives_elements CL_PrimitivesType  type,
int  count,
unsigned int *  indices
[pure virtual]
 

Draw primitives elements.

Parameters:
type = Primitives Type
count = value
indices = value

virtual int CL_GraphicContextProvider::get_height  )  const [pure virtual]
 

Returns the current height of the context.

virtual int CL_GraphicContextProvider::get_max_attributes  )  [pure virtual]
 

Returns the maximum amount of attributes available.

virtual CL_Size CL_GraphicContextProvider::get_max_texture_size  )  const [pure virtual]
 

Returns the maximum size of a texture this graphic context supports.

It returns CL_Size(0,0) if there is no known limitation to the max texture size.

virtual CL_PixelBuffer CL_GraphicContextProvider::get_pixeldata const CL_Rect rect  )  const [pure virtual]
 

Return the content of the draw buffer into a pixel buffer.

virtual int CL_GraphicContextProvider::get_width  )  const [pure virtual]
 

Returns the current width of the context.

virtual void CL_GraphicContextProvider::primitives_array_freed const CL_PrimitivesArrayData *const   prim_array  )  [pure virtual]
 

Called when a primitives array is being recycled.

virtual void CL_GraphicContextProvider::reset_clip_rect  )  [pure virtual]
 

Reset clip rect.

virtual void CL_GraphicContextProvider::reset_frame_buffer  )  [pure virtual]
 

Set the rendering buffer back to the screen.

virtual void CL_GraphicContextProvider::reset_primitives_array  )  [pure virtual]
 

Reset the primitives arrays.

virtual void CL_GraphicContextProvider::reset_program_object  )  [pure virtual]
 

Remove active program object.

virtual void CL_GraphicContextProvider::reset_texture int  unit_index  )  [pure virtual]
 

Remove texture from unit.

virtual void CL_GraphicContextProvider::set_blend_mode const CL_BlendMode blendmode  )  [pure virtual]
 

Set blending modes.

virtual void CL_GraphicContextProvider::set_buffer_control const CL_BufferControl buffer_control  )  [pure virtual]
 

Set buffer control states.

virtual void CL_GraphicContextProvider::set_clip_rect const CL_Rect rect  )  [pure virtual]
 

Set clip rect.

virtual void CL_GraphicContextProvider::set_frame_buffer const CL_FrameBuffer buffer  )  [pure virtual]
 

Set a frame buffer for off-screen rendering.

virtual void CL_GraphicContextProvider::set_map_mode CL_MapMode  mode  )  [pure virtual]
 

Set the projection mapping mode.

virtual void CL_GraphicContextProvider::set_modelview const CL_Mat4f matrix  )  [pure virtual]
 

Sets the model view matrix to a new matrix.

virtual void CL_GraphicContextProvider::set_pen const CL_Pen pen  )  [pure virtual]
 

Select pen.

virtual void CL_GraphicContextProvider::set_polygon_rasterizer const CL_PolygonRasterizer raster  )  [pure virtual]
 

Set polygon rasterizer settings.

virtual void CL_GraphicContextProvider::set_primitives_array const CL_PrimitivesArrayData *const   prim_array  )  [pure virtual]
 

Set the primitives array on the gc.

virtual void CL_GraphicContextProvider::set_program_object const CL_ProgramObject program  )  [pure virtual]
 

Set active program object.

virtual void CL_GraphicContextProvider::set_program_object CL_StandardProgram  standard_program  )  [pure virtual]
 

Set active program object to the standard program specified.

virtual void CL_GraphicContextProvider::set_projection const CL_Mat4f matrix  )  [pure virtual]
 

Set the projection matrix to be used in user projection map mode.

virtual void CL_GraphicContextProvider::set_texture int  unit_index,
const CL_Texture texture
[pure virtual]
 

Select texture into unit.

virtual void CL_GraphicContextProvider::set_viewport const CL_Rectf viewport  )  [pure virtual]
 

Set the viewport to be used in user projection map mode.


The documentation for this class was generated from the following file:
Generated on Thu Dec 3 02:39:37 2009 for ClanLib by  doxygen 1.4.6