CrystalSpace

Public API Reference

Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

csShadowBlockList Class Reference

A list of shadow blocks. More...

#include <lview.h>

Inheritance diagram for csShadowBlockList:

iShadowBlockList iBase List of all members.

Public Methods

 csShadowBlockList ()
 Create a new empty list. More...

virtual ~csShadowBlockList ()
 Destroy the list and all shadow blocks in it. More...

virtual iShadowBlockNewShadowBlock (int num_shadows=30)
 Create a new shadow block and append to the list. More...

void AppendShadowBlock (csShadowBlock *slist)
 Append a shadow block to this list. More...

virtual void RemoveLastShadowBlock ()
 Remove the last shadow block from this list. More...

void Clear ()
 Clear first and last pointers without deleting anything! More...

virtual void DeleteAllShadows ()
 Destroy all shadow lists and shadows in the list. More...

virtual iShadowBlockGetFirstShadowBlock ()
 Get first shadow block in the list. More...

virtual iShadowBlockGetLastShadowBlock ()
 Get last shadow block in the list. More...

virtual iShadowBlockGetNextShadowBlock (iShadowBlock *s)
 Get next shadow block. More...

virtual iShadowBlockGetPreviousShadowBlock (iShadowBlock *s)
 Get previous shadow block. More...

csShadowIteratorGetCsShadowIterator (bool reverse=false)
 Return an iterator to iterate over all shadows in this list. More...

virtual iShadowIteratorGetShadowIterator (bool reverse=false)
 Return an iterator to iterate over all shadows in this list. More...

virtual iShadowIteratorGetShadowIterator (const csBox3 &bbox, bool reverse=false)
 Get an iterator to iterate over all shadows in this list. More...

virtual uint32 MarkNewRegion ()
 Mark a new region of shadow blocks. More...

virtual void RestoreRegion (uint32 prev)
 Restore a region (as parameter use the number returned by MarkNewRegion()). More...

virtual bool FromCurrentRegion (iShadowBlock *block)
 Returns true if the shadow block belongs to the current region. More...


Detailed Description

A list of shadow blocks.

Definition at line 284 of file lview.h.


Constructor & Destructor Documentation

csShadowBlockList::csShadowBlockList  
 

Create a new empty list.

virtual csShadowBlockList::~csShadowBlockList   [inline, virtual]
 

Destroy the list and all shadow blocks in it.

Definition at line 295 of file lview.h.

References DeleteAllShadows.


Member Function Documentation

void csShadowBlockList::AppendShadowBlock csShadowBlock   slist [inline]
 

Append a shadow block to this list.

Definition at line 304 of file lview.h.

References csShadowBlock::next, and csShadowBlock::prev.

void csShadowBlockList::Clear   [inline]
 

Clear first and last pointers without deleting anything!

Definition at line 339 of file lview.h.

References csShadowBlock::next, and csShadowBlock::prev.

virtual void csShadowBlockList::DeleteAllShadows   [inline, virtual]
 

Destroy all shadow lists and shadows in the list.

Implements iShadowBlockList.

Definition at line 356 of file lview.h.

References csShadowBlock::DeleteShadows, and csShadowBlock::next.

Referenced by ~csShadowBlockList.

virtual bool csShadowBlockList::FromCurrentRegion iShadowBlock   block [inline, virtual]
 

Returns true if the shadow block belongs to the current region.

Implements iShadowBlockList.

Definition at line 414 of file lview.h.

csShadowIterator* csShadowBlockList::GetCsShadowIterator bool    reverse = false [inline]
 

Return an iterator to iterate over all shadows in this list.

Definition at line 383 of file lview.h.

virtual iShadowBlock* csShadowBlockList::GetFirstShadowBlock   [inline, virtual]
 

Get first shadow block in the list.

Implements iShadowBlockList.

Definition at line 369 of file lview.h.

virtual iShadowBlock* csShadowBlockList::GetLastShadowBlock   [inline, virtual]
 

Get last shadow block in the list.

Implements iShadowBlockList.

Definition at line 370 of file lview.h.

virtual iShadowBlock* csShadowBlockList::GetNextShadowBlock iShadowBlock   s [inline, virtual]
 

Get next shadow block.

Implements iShadowBlockList.

Definition at line 371 of file lview.h.

virtual iShadowBlock* csShadowBlockList::GetPreviousShadowBlock iShadowBlock   s [inline, virtual]
 

Get previous shadow block.

Implements iShadowBlockList.

Definition at line 375 of file lview.h.

virtual iShadowIterator* csShadowBlockList::GetShadowIterator const csBox3   bbox,
bool    reverse = false
[inline, virtual]
 

Get an iterator to iterate over all shadows in this list.

This version will test the bounding boxes of all shadow blocks and only iterate over the shadow blocks that are potentially relevant (i.e. that potentially shadow the given bounding box).

Implements iShadowBlockList.

Definition at line 396 of file lview.h.

virtual iShadowIterator* csShadowBlockList::GetShadowIterator bool    reverse = false [inline, virtual]
 

Return an iterator to iterate over all shadows in this list.

Implements iShadowBlockList.

Definition at line 391 of file lview.h.

virtual uint32 csShadowBlockList::MarkNewRegion   [inline, virtual]
 

Mark a new region of shadow blocks.

This is usually called after entering a portal and it allows us to easily restore the shadow list upto the point of the last portal traversal. Returns the original region.

Implements iShadowBlockList.

Definition at line 403 of file lview.h.

References uint32.

virtual iShadowBlock* csShadowBlockList::NewShadowBlock int    num_shadows = 30 [virtual]
 

Create a new shadow block and append to the list.

Implements iShadowBlockList.

virtual void csShadowBlockList::RemoveLastShadowBlock   [inline, virtual]
 

Remove the last shadow block from this list.

Implements iShadowBlockList.

Definition at line 323 of file lview.h.

References csShadowBlock::next, and csShadowBlock::prev.

virtual void csShadowBlockList::RestoreRegion uint32    prev [inline, virtual]
 

Restore a region (as parameter use the number returned by MarkNewRegion()).

Implements iShadowBlockList.

Definition at line 409 of file lview.h.

References uint32.


The documentation for this class was generated from the following file:
Generated for Crystal Space by doxygen 1.2.14