Developer Documentation
RAVL, Recognition And Vision Library
USER HOME PAGE CLASS LIST CONTENTS
Ravl - Logic - StateOrIterBodyC
 

  PUBLIC
StateOrIterBodyC::StateOrIterBodyC(const StateC &,const OrC &,const BindSetC &)
StateOrIterBodyC::Next(void)
StateOrIterBodyC::First(void)
StateOrIterBodyC::IsElm(void) const
StateOrIterBodyC::Data(void)
StateOrIterBodyC::Binds(void)
StateOrIterBodyC::Binds(void) const
StateOrIterBodyC::NextValid(void)
LiteralIterBodyC::Next(void)
LiteralIterBodyC::First(void)
LiteralIterBodyC::IsElm(void) const
LiteralIterBodyC::Data(void)
LiteralIterBodyC::Binds(void)
LiteralIterBodyC::Binds(void) const
RCBodyVC::Save(ostream &) const
RCBodyVC::Save(BinOStreamC &) const
RCBodyVC::Copy(void) const
RCBodyVC::DeepCopy(UIntT) const
RCBodyC::References(void) const
RCBodyC::Copy(void) const
RCBodyC::DeepCopy(UIntT) const
RCBodyC::IncRefCounter(void)
RCBodyC::DecRefCounter(void)

   StateOrIterBodyC   
 
Iterate through possible solutions in a state for a 'or' condition.
 
include "Ravl/Logic/StateOrIter.hh"
Source file:Ravl/Logic/Base/StateOrIter.hh
User Level:Develop
Library:RavlLogic
In Scope:RavlLogicN

Comments:
NB. Solutions may be repeated if two or more terms in the or condtion unify with the same literal..

Parent Classes: Variables:
StateC state;

SArray1dC lOr;

BindSetC binds;

SArray1dIterC it;

LiteralIterC solIt;
Solutions within the state.

Methods:
StateOrIterBodyC(const StateC & nstate,const OrC & nor,const BindSetC & bs)
Constructor.

bool Next()
Goto next data element.
returns true if next element is valid.

bool First()
Goto first data element.
returns true if next element is valid.

bool IsElm() const
At a valid element ?
returns true if iterator is at a valid element.

LiteralC Data()
Get current literal.

BindSetC & Binds()
Access binds associated with solution.

const BindSetC & Binds() const
Access binds associated with solution.

bool NextValid()
Goto next valid solution.

#include "Ravl/Logic/LiteralIter.hh"
bool Next()
Goto next data element.
returns true if next element is valid.

bool First()
Goto first data element.
returns true if next element is valid.

bool IsElm() const
At a valid element ?
returns true if iterator is at a valid element.

LiteralC Data()
Get current literal.

BindSetC & Binds()
Access binds associated with solution.

const BindSetC & Binds() const
Access binds associated with solution.

#include "Ravl/RCHandleV.hh"
bool Save(ostream & out) const
Save to stream 'out'.

bool Save(BinOStreamC & out) const
Save to binary stream 'out'.

RCBodyVC & Copy() const
Make copy of body.
This should be provided in derived classes. this funtion will issue an assertion failure if called.

RCBodyC & DeepCopy(UIntT levels = ((UIntT))) const
Make a deep copy of body.
This should be provided in derived classes. this funtion will issue an assertion failure if called.

#include "Ravl/RefCounter.hh"
UIntT References() const
Access count of handles open to this object.

RCBodyC & Copy() const
Make copy of body.
This should be provided in derived classes. this funtion will issue an assertion failure if called.

RCBodyC & DeepCopy(UIntT levels = ((UIntT))) const
Make a deep copy of body.
This should be provided in derived classes. this funtion will issue an assertion failure if called.

void IncRefCounter()
Increment reference counter.

bool DecRefCounter()
Decrement reference counter.


Maintainer:Charles Galambos, Documentation by CxxDoc: Tue Aug 13 09:59:30 2002