| ## Public API Reference

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# iShadowIterator Struct Reference
[Lighting]

A shadow iterator allows someone to iterate over all shadows in a iShadowBlock or iShadowBlockList. More...

`#include <iengine/shadows.h>`

Inheritance diagram for iShadowIterator:

[legend]
List of all members.

## Public Member Functions
virtual void | DeleteCurrent ()=0
| Delete the last returned shadow.
virtual iShadowBlock * | GetCurrentShadowBlock ()=0
| Return the shadow list for the current element.
virtual iShadowBlock * | GetNextShadowBlock ()=0
| Return the shadow list for the next element.
virtual void * | GetUserData ()=0
| Get the user data for the last shadow.
virtual bool | HasNext ()=0
| Is there still an element in this iterator?
virtual bool | IsRelevant ()=0
| Return if the last shadow is relevant or not.
virtual void | MarkRelevant (bool rel)=0
| Mark the last shadow as relevant.
virtual csFrustum * | Next ()=0
| Get the next shadow.
virtual void | Reset ()=0
| Reset the iterator to start again.

## Detailed Description

A shadow iterator allows someone to iterate over all shadows in a iShadowBlock or iShadowBlockList.

Definition at line 45 of file shadows.h.

## Member Function Documentation

virtual void iShadowIterator::DeleteCurrent | ( |  | ) | `[pure virtual]`

Delete the last returned shadow.

virtual iShadowBlock* iShadowIterator::GetCurrentShadowBlock | ( |  | ) | `[pure virtual]`

Return the shadow list for the current element.

virtual iShadowBlock* iShadowIterator::GetNextShadowBlock | ( |  | ) | `[pure virtual]`

Return the shadow list for the next element.

virtual void* iShadowIterator::GetUserData | ( |  | ) | `[pure virtual]`

Get the user data for the last shadow.

virtual bool iShadowIterator::HasNext | ( |  | ) | `[pure virtual]`

Is there still an element in this iterator?

virtual bool iShadowIterator::IsRelevant | ( |  | ) | `[pure virtual]`

Return if the last shadow is relevant or not.

virtual void iShadowIterator::MarkRelevant | ( | bool | rel | ) | `[pure virtual]`

Mark the last shadow as relevant.

virtual csFrustum* iShadowIterator::Next | ( |  | ) | `[pure virtual]`

Get the next shadow.

virtual void iShadowIterator::Reset | ( |  | ) | `[pure virtual]`

Reset the iterator to start again.

The documentation for this struct was generated from the following file:

- iengine/shadows.h