Index

Package: general (generic)

Description

generic
   type base_Object is new GL.Buffer.Object with private;

   type Index         is mod <>;
   type Element       is private;
   type Element_Array is array (Index range <>) of aliased Element;

package GL.Buffer.general is
----------------------------------------------------------------------- GL.Buffer.general - a generic for producing the various types of openGL vertex buffer objects. Copyright (c) Rod Kay 2007 AUSTRALIA Permission granted to use this software, without any warranty, for any purpose, provided this copyright note remains attached and unmodified if sources are distributed further. -----------------------------------------------------------------------

Packages

Element_Pointers (private) (new Pointers)

package Element_Pointers is new interfaces.C.Pointers (Index, Element, Element_Array, default_Terminator);

Classes

read_only_Map

type read_only_Map  is new memory_Map with private;

Ancestors:

Immediate Children:

Primitive operations:

Release (Inherited)

write_only_Map

type write_only_Map is new memory_Map with private;

Ancestors:

Immediate Children:

Primitive operations:

Release (Inherited)

Types

base_Object

type base_Object is new GL.Buffer.Object with private;

Constants & Global variables

Corrupt_Buffer

Corrupt_Buffer  : exception;

References:

gl-buffer-general.ads:47:4 (declaration)
gl-buffer-general.adb:84:16 (reference)
'release' must be called to release the buffers data back to the GL server. May raise Corrupt_Buffer if the Buffer has become corrupt since the data was initially mapped. This can occur for system - specific reasons that affect the availability of graphics memory, such as screen mode changes. In such situations, the data store contents are undefined, and an application reinitialize the data store.

default_Terminator (private) (Element)

default_Terminator : Element;

References:

gl-buffer-general.ads:77:4 (declaration)
gl-buffer-general.ads:80:90 (reference)

Subprograms & Entries

Set

procedure Set 
(Self: in out General_Object;
Set_Position: Positive := 1;
-- tbd : make this raise 'constraint_Error' instead of openGL_Error, when bounds are violated. To: Element_Array);

Release

procedure Release 
(Self: memory_Map);

Called by:

Get defined at gl-buffer-general.ads:31:14

Calls:

GL.UnmapBuffer defined at gl.ads:3852:13
'release' must be called to release the buffers data back to the GL server. May raise Corrupt_Buffer if the Buffer has become corrupt since the data was initially mapped. This can occur for system - specific reasons that affect the availability of graphics memory, such as screen mode changes. In such situations, the data store contents are undefined, and an application reinitialize the data store.

Get

function  Get 
(Self: read_only_Map;
Get_Position: Index) return Element;

Get

function  Get 
(Self: read_only_Map;
Get_Position: Index;
Count: Positive) return Element_Array;

References:

gl-buffer-general.ads:54:14 (declaration)
gl-buffer-general.adb:68:48 (dispatching call)
gl-buffer-general.adb:155:13 (body)

Called by:

Get defined at gl-buffer-general.ads:31:14

Get

function  Get 
(Self: read_write_Map;
Get_Position: Index) return Element;

Get

function  Get 
(Self: read_write_Map;
Get_Position: Index;
Count: Positive) return Element_Array;