crystalspace.jbind.interfaces.iengine.shadows
Interface iShadowBlockList

All Superinterfaces:
iBase, iPointer
All Known Implementing Classes:
csShadowBlockList

public interface iShadowBlockList
extends iBase

This is a list of shadow blocks. An iShadowReceiver will get such a list.

Author:
java wrapper - Quentin Anciaux, c++ version - http://crystal.sourceforge.net/docs/online/pubapi/structiShadowBlockList.php

Method Summary
 void deleteAllShadows()
          Destroy all shadow lists and shadows in the list.
 boolean fromCurrentRegion(iShadowBlock block)
          Returns true if the shadow block belongs to the current region.
 iShadowBlock getFirstShadowBlock()
          Get first shadow block in the list.
 iShadowBlock getLastShadowBlock()
          Get last shadow block in the list.
 iShadowBlock getNextShadowBlock(iShadowBlock s)
          Get next shadow block.
 iShadowBlock getPreviousShadowBlock(iShadowBlock s)
          Get previous shadow block.
 iShadowIterator getShadowIterator()
          Get an iterator to iterate over all shadows in this list.
 iShadowIterator getShadowIterator(boolean reverse)
          Get an iterator to iterate over all shadows in this list.
 iShadowIterator getShadowIterator(csBox3 bbox)
          Get an iterator to iterate over all shadows in this list.
 iShadowIterator getShadowIterator(csBox3 bbox, boolean reverse)
          Get an iterator to iterate over all shadows in this list.
 int markNewRegion()
          Mark a new region of shadow blocks.
 iShadowBlock newShadowBlock()
          Create a new shadow block and append to the list.
 iShadowBlock newShadowBlock(int num_shadows)
          Create a new shadow block and append to the list.
 void removeLastShadowBlock()
          Remove the last shadow block from this list.
 void restoreRegion(int prev)
          Restore a region (as parameter use the number returned by MarkNewRegion(););.
 
Methods inherited from interface crystalspace.jbind.interfaces.iutil.scf.iBase
decRef, getName, getRefCount, getVersion, incRef, queryInterface, queryInterfaceSafe
 
Methods inherited from interface crystalspace.jbind.interfaces.iPointer
changePointer, getPointer, isMemoryOwner, setMemoryOwner
 

Method Detail

deleteAllShadows

public void deleteAllShadows()
Destroy all shadow lists and shadows in the list.


fromCurrentRegion

public boolean fromCurrentRegion(iShadowBlock block)
Returns true if the shadow block belongs to the current region.

Parameters:
block -
Returns:

getFirstShadowBlock

public iShadowBlock getFirstShadowBlock()
Get first shadow block in the list.

Returns:

getLastShadowBlock

public iShadowBlock getLastShadowBlock()
Get last shadow block in the list.

Returns:

getNextShadowBlock

public iShadowBlock getNextShadowBlock(iShadowBlock s)
Get next shadow block.

Parameters:
s -
Returns:

getPreviousShadowBlock

public iShadowBlock getPreviousShadowBlock(iShadowBlock s)
Get previous shadow block.

Parameters:
s -
Returns:

getShadowIterator

public iShadowIterator getShadowIterator(csBox3 bbox)
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).

Parameters:
bbox -
Returns:

getShadowIterator

public iShadowIterator getShadowIterator(csBox3 bbox,
                                         boolean reverse)
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).

Parameters:
bbox -
reverse -
Returns:

getShadowIterator

public iShadowIterator getShadowIterator()
Get an iterator to iterate over all shadows in this list.

Returns:

getShadowIterator

public iShadowIterator getShadowIterator(boolean reverse)
Get an iterator to iterate over all shadows in this list.

Parameters:
reverse -
Returns:

markNewRegion

public int markNewRegion()
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.

Returns:

newShadowBlock

public iShadowBlock newShadowBlock()
Create a new shadow block and append to the list.

Returns:

newShadowBlock

public iShadowBlock newShadowBlock(int num_shadows)
Create a new shadow block and append to the list.

Parameters:
num_shadows -
Returns:

removeLastShadowBlock

public void removeLastShadowBlock()
Remove the last shadow block from this list.


restoreRegion

public void restoreRegion(int prev)
Restore a region (as parameter use the number returned by MarkNewRegion(););.

Parameters:
prev -