Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes

Strat::UnitRefIter Class Reference

Iterator on Ref Nodes. More...

List of all members.

Public Types

enum  Pol {
  All, Leaves, AllNodes, LeavedNodes,
  NodesOnly
}

Public Member Functions

 UnitRefIter (const NodeUnitRef &, Pol p=All)
void reset ()
bool next ()
UnitRefunit ()
const UnitRefunit () const

Static Public Member Functions

static Pol polOf (UnitRef::Type)
static Pol polOf (const UnitRef *)

Protected Member Functions

UnitRefgtUnit () const
bool toNext ()

Protected Attributes

Pol pol_
NodeUnitRefitnode_
NodeUnitRefcurnode_
int curidx_

Detailed Description

Iterator on Ref Nodes.

When constructed, returns unit itself (regardless of Pol). First next() goes to first (valid) unit.


Member Enumeration Documentation

Enumerator:
All 
Leaves 
AllNodes 
LeavedNodes 
NodesOnly 

Constructor & Destructor Documentation

Strat::UnitRefIter::UnitRefIter ( const NodeUnitRef ,
Pol  p = All 
)

Member Function Documentation

UnitRef* Strat::UnitRefIter::gtUnit (  )  const [protected]
bool Strat::UnitRefIter::next (  ) 
static Pol Strat::UnitRefIter::polOf ( UnitRef::Type   )  [static]
static Pol Strat::UnitRefIter::polOf ( const UnitRef  )  [static]
void Strat::UnitRefIter::reset (  ) 
bool Strat::UnitRefIter::toNext (  )  [protected]
UnitRef* Strat::UnitRefIter::unit (  )  [inline]
const UnitRef* Strat::UnitRefIter::unit (  )  const [inline]

Member Data Documentation

int Strat::UnitRefIter::curidx_ [protected]