CrystalSpace

Public API Reference

iShadowBlockList Struct Reference
[Lighting]

This is a list of shadow blocks. More...

#include <iengine/shadows.h>

Inheritance diagram for iShadowBlockList:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual void DeleteAllShadows ()=0
 Destroy all shadow lists and shadows in the list.
virtual bool FromCurrentRegion (iShadowBlock *block)=0
 Returns true if the shadow block belongs to the current region.
virtual iShadowBlockGetFirstShadowBlock ()=0
 Get first shadow block in the list.
virtual iShadowBlockGetLastShadowBlock ()=0
 Get last shadow block in the list.
virtual iShadowBlockGetNextShadowBlock (iShadowBlock *s)=0
 Get next shadow block.
virtual iShadowBlockGetPreviousShadowBlock (iShadowBlock *s)=0
 Get previous shadow block.
virtual iShadowIteratorGetShadowIterator (const csBox3 &bbox, bool reverse=false)=0
 Get an iterator to iterate over all shadows in this list.
virtual iShadowIteratorGetShadowIterator (bool reverse=false)=0
 Get an iterator to iterate over all shadows in this list.
virtual uint32 MarkNewRegion ()=0
 Mark a new region of shadow blocks.
virtual iShadowBlockNewShadowBlock (int num_shadows=30)=0
 Create a new shadow block and append to the list.
virtual void RemoveLastShadowBlock ()=0
 Remove the last shadow block from this list.
virtual void RestoreRegion (uint32 prev)=0
 Restore a region (as parameter use the number returned by MarkNewRegion()).

Detailed Description

This is a list of shadow blocks.

An iShadowReceiver will get such a list.

Definition at line 140 of file shadows.h.


Member Function Documentation

virtual void iShadowBlockList::DeleteAllShadows (  )  [pure virtual]

Destroy all shadow lists and shadows in the list.

virtual bool iShadowBlockList::FromCurrentRegion ( iShadowBlock block  )  [pure virtual]

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

virtual iShadowBlock* iShadowBlockList::GetFirstShadowBlock (  )  [pure virtual]

Get first shadow block in the list.

virtual iShadowBlock* iShadowBlockList::GetLastShadowBlock (  )  [pure virtual]

Get last shadow block in the list.

virtual iShadowBlock* iShadowBlockList::GetNextShadowBlock ( iShadowBlock s  )  [pure virtual]

Get next shadow block.

virtual iShadowBlock* iShadowBlockList::GetPreviousShadowBlock ( iShadowBlock s  )  [pure virtual]

Get previous shadow block.

virtual iShadowIterator* iShadowBlockList::GetShadowIterator ( const csBox3 bbox,
bool  reverse = false 
) [pure 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).

virtual iShadowIterator* iShadowBlockList::GetShadowIterator ( bool  reverse = false  )  [pure virtual]

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

virtual uint32 iShadowBlockList::MarkNewRegion (  )  [pure 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.

virtual iShadowBlock* iShadowBlockList::NewShadowBlock ( int  num_shadows = 30  )  [pure virtual]

Create a new shadow block and append to the list.

virtual void iShadowBlockList::RemoveLastShadowBlock (  )  [pure virtual]

Remove the last shadow block from this list.

virtual void iShadowBlockList::RestoreRegion ( uint32  prev  )  [pure virtual]

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


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