class csCBuffer The CBuffer
| | csCBuffer (int sx, int ex, int n_lines) Create a new c-buffer with the given dimensions. |
| | DumpLine (int y) Dump debug information for a scanline. |
| | Initialize () Initialize the c-buffer to empty. |
| | InsertPolygon (csVector2* verts, int num_verts, bool negative = false) Take a polygon and insert all spans in the c-buffer |
| | IsFull () Return true if the screen (c-buffer) is full. |
| | TestPolygon (csVector2* verts, int num_verts) Take a polygon and test if it would have changed the c-buffer |
| | ~csCBuffer () Destroy the c-buffer. |
| | first_unused List of all unused spans on screen. |
| | full A value for every line indicating if it is full or not. |
| | lines The lines of this c-buffer. |
| | num_lines Number of vertical lines. |
| | startx Horizontal start and end (inclusive). |
| | vert_line A vertical c-buffer line which is used to indicate which horizontal lines of the c-buffer are full |
| | AllocSpan () Allocate a span (possible from the unused list). |
| | FreeSpan (csCBufferSpan* span) Free a span (put in the unused list). |
| | InsertSpan (int s_spanx, int e_spanx, int y) Take a full span and insert it into the c-buffer line |
| | IsFull (int y) Test if a line is full. |
| | TestSpan (int s_spanx, int e_spanx, int y) Take a full span and test if it would have changed the c-buffer line on insertion |
The CBuffer. Note that all ranges specified in this class are inclusive.
int num_lines
bool* full
int startx
csCBufferSpan* first_unused
csCBufferLine vert_line
csCBufferSpan* AllocSpan()
void FreeSpan(csCBufferSpan* span)
bool TestSpan(int s_spanx, int e_spanx, int y)
bool InsertSpan(int s_spanx, int e_spanx, int y)
bool IsFull(int y)
csCBuffer(int sx, int ex, int n_lines)
~csCBuffer()
void Initialize()
bool IsFull()
bool TestPolygon(csVector2* verts, int num_verts)
bool InsertPolygon(csVector2* verts, int num_verts, bool negative = false)
this page has been generated automatically by doc++
(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de