|
User Documentation |
|
Centre for Vision, Speech & Signal Processing |
|
PUBLIC |
VLMinTerm::VLMinTerm(void)
VLMinTerm::VLMinTerm(VLSymbSet &,VLSymbSet &)
VLMinTerm::VLMinTerm(VLSymbSet &)
VLMinTerm::VLMinTerm(const VLMinTerm &)
VLMinTerm::VLMinTerm(const VLSymb &)
VLMinTerm::VLMinTerm(BooleanT,const VLSymb &)
VLMinTerm::VLMinTerm(BooleanT,const VLSymbC &)
VLMinTerm::SymbCopy(void) const
VLMinTerm::operator=(const VLMinTerm &)
VLMinTerm::operator==(const VLMinTerm &) const
VLMinTerm::operator!=(const VLMinTerm &) const
VLMinTerm::IsSimple(void) const
VLMinTerm::Invert(void)
VLMinTerm::Inverse(void) const
VLMinTerm::Empty(void)
VLMinTerm::GetPos(void)
VLMinTerm::GetNeg(void)
VLMinTerm::GetPos(void) const
VLMinTerm::GetNeg(void) const
VLMinTerm::AddPosCond(const VLSymb &)
VLMinTerm::AddNegCond(const VLSymb &)
VLMinTerm::AddPosCond(const VLSymbC &)
VLMinTerm::AddNegCond(const VLSymbC &)
VLMinTerm::AndAdd(const VLMinTerm &)
VLMinTerm::Covers(const VLMinTerm &) const
VLMinTerm::Covers(const VLMinTerm &,VLBindLst &) const
VLMinTerm::Covers(const VLSymb &) const
VLMinTerm::CoveredBy(const VLSymb &) const
VLMinTerm::Intersect(const VLMinTerm &,VLMinTerm &) const
VLMinTerm::Size(void) const
VLMinTerm::IsEqual(const VLSymb &) const
VLMinTerm::Unify(const VLSymb &,VLBindLst &,BooleanT) const
VLMinTerm::Unify(const VLSymb &,VLBindLst &) const
VLMinTerm::Unify(const VLMinTerm &,VLBindLst &) const
VLMinTerm::Test(const VLSpace &,VLBindLst &,VLSymbIterC &) const
VLMinTerm::Subst(const VLBindLst &) const
VLMinTerm::Subst(const VLSubstBaseC &) const
VLMinTerm::NewVarDupD(VLSubstBaseC &) const
VLMinTerm::GetName(StringC) const
VLMinTerm::Dump(void) const
VLMinTerm::Hash(void) const
VLSymb::SetVar(BooleanT)
VLSymb::IsVar(void) const
VLSymb::IsSimple(void) const
VLSymb::IsEqual(const VLSymb &) const
VLSymb::operator==(const VLSymb &) const
VLSymb::Subst(const VLBindLst &) const
VLSymb::Subst(const VLSubstBaseC &) const
VLSymb::NewVarDup(VLSubstBaseC &) const
VLSymb::Hash(void) const
VLSymb::Unify(const VLSymb &,VLBindLst &) const
VLSymb::Unify2(const VLSymb &,VLBindLst &) const
VLSymb::Unify(const VLSymb &) const
VLSymb::GetName(StringC) const
VLSymb::Name(void) const
VLSymb::Dump(void) const
VLSymb::Test(const VLSpace &,VLBindLst &,VLSymbIterC &) const
VLSymb::Test(const VLSpace &,VLBindLst &) const
VLSymb::Test(const VLSpace &) const
VLSymb::SymbCopy(void) const
BodyRefCounterVC::Copy(void) const
BodyRefCounterVC::operator==(const BodyRefCounterVC &) const
BodyRefCounterVC::operator!=(const BodyRefCounterVC &) const
BodyRefCounterVC::Save(ostream &) const
BodyRefCounterC::AddReference(void)
BodyRefCounterC::RemoveReference(void)
BodyRefCounterC::SetConst(void) const
BodyRefCounterC::SetConst(void)
BodyRefCounterC::IsConst(void) const
BodyRefCounterC::IsNotConst(void) const
BodyRefCounterC::ToBeDeleted(void) const
BodyRefCounterC::ToBeDeletedRemoveIgnoreNoRemove(void)
BodyRefCounterC::ToBeDeletedRemove(void)
BodyRefCounterC::BodyMightBeDeleted(void) const
BodyRefCounterC::IsCountZero(void) const
BodyRefCounterC::BRCPtrCanDeleteObject(void) const
BodyRefCounterC::Count(void) const
BodyRefCounterC::operator=(const BodyRefCounterC &)
BodyRefCounterC::IsValidObject(void) const
BodyRefCounterC::UserBitTest(IntT) const
BodyRefCounterC::UserBitSet(IntT,BooleanT)
BodyRefCounterC::UserBitZero(IntT)
BodyRefCounterC::ReportBRCError(char *)
BodyRefCounterC::Hash(void) const
RefCounterBaseC::Label(void) const
|
Comments:
this contains two sets of symbols.
this first set must be all true, and the second all false.
Parent Classes:
Variables:
Methods:
- VLMinTerm()
-
Constuctor, default.
- VLMinTerm(VLSymbSet & PC,VLSymbSet & NC)
-
Constuctor from sets.
- VLMinTerm(VLSymbSet & PC)
-
Constuctor from positive set only.
- VLMinTerm(const VLMinTerm & Oth)
-
Copy constructor.
- VLMinTerm(const VLSymb & PosSymb)
-
VLSymb -> VLMinTerm conversion.
- VLMinTerm(BooleanT Negate,const VLSymb & ASymb)
-
Constructor.
- VLMinTerm(BooleanT Negate,const VLSymbC & ASymb)
-
Constructor.
- VLSymbC SymbCopy(void) const
-
Make a copy of this object on the heap.
- VLMinTerm & operator=(const VLMinTerm & Oth)
-
Assigment to another minterm.
- BooleanT operator==(const VLMinTerm & Oth) const
-
Comparison to another VLMinTerm.
- BooleanT operator!=(const VLMinTerm & Oth) const
-
Comparison to another VLMinTerm.
- BooleanT IsSimple(void) const
-
Does this minterm contain any Variables ? (True == No).
- void Invert(void)
-
Invert condition in-place. Swap Neg & Pos.
- DListC<VLMinTermC> Inverse(void) const
-
Get inverse of min term, put it in result.
- void Empty(void)
-
Clear all contents.
- VLSymbSetC & GetPos(void)
-
Get set of positive Symbols.
- VLSymbSetC & GetNeg(void)
-
Get set of negative Symbols.
- const VLSymbSetC & GetPos(void) const
-
Get set of positive Symbols.
- const VLSymbSetC & GetNeg(void) const
-
Get set of negative Symbols.
- BooleanT AddPosCond(const VLSymb & Symb)
-
False if contradiction.
- BooleanT AddNegCond(const VLSymb & Symb)
-
False if contradiction.
- BooleanT AddPosCond(const VLSymbC & Symb)
-
False if contradiction.
- BooleanT AddNegCond(const VLSymbC & Symb)
-
False if contradiction.
- BooleanT AndAdd(const VLMinTerm & Oth)
-
False if causes contradiction.
- BooleanT Covers(const VLMinTerm & Oth) const
-
Check if '*this' is true in all states that 'Oth' is.
Setwise only.
- BooleanT Covers(const VLMinTerm & Oth,VLBindLst & Bnds) const
-
Check if '*this' is true in all states that 'Oth' is.
Unifying version.
- BooleanT Covers(const VLSymb & Oth) const
-
Check if '*this' is true in all states that 'Oth' is.
- BooleanT CoveredBy(const VLSymb & Oth) const
-
Check if Oth->Covers(*this);
- void Intersect(const VLMinTerm & Oth,VLMinTerm & Result) const
-
Get intersection of *this & Oth.
- int Size(void) const
-
Get number of terms in condition.
- BooleanT IsEqual(const VLSymb & Other) const
-
Is this equal to another Symbol ?
- BooleanT Unify(const VLSymb & Other,VLBindLst & SF,BooleanT NegateSymb) const
-
Unify this with another Symbol.
This will succeed as long as there's no direct contradiction.
If there are more than one way to create a successfull binding,
the first found will be used.
- BooleanT Unify(const VLSymb & Other,VLBindLst & SF) const
-
Unify this with another Symbol.
This will succeed as long as there's no direct contradiction.
If there are more than one way to create a successfull binding,
the first found will be used.
- BooleanT Unify(const VLMinTerm & Other,VLBindLst & SF) const
-
Unify with another, MinTerm.
- BooleanT Test(const VLSpace & State,VLBindLst & Bnd,VLSymbIterC & Iter) const
-
Test if this MinTerm is true in 'State' with binding 'Bnd', if there are
more than one set of matching bindings use 'Iter' to iterate through them.
See VLSymb::Test(...) for more info.
- VLSymbC Subst(const VLBindLst & Bnds) const
-
Substitue binds.
Allocates a new body.
- VLSymbC Subst(const VLSubstBaseC & Subs) const
-
Substitute one set of symbols for another.
- VLMinTermC NewVarDupD(VLSubstBaseC & Subst) const
-
Create subsitutions for variables as needed.
- StringC GetName(StringC Buff = StringC()) const
-
Get name of MinTerm. (Name of its contents.)
- void Dump(void) const
-
Dump it to stdout.
- unsigned int Hash() const
-
Calculate hash value.
- void SetVar(BooleanT Val)
-
Make this Symb a variable.
- BooleanT IsVar(void) const
-
Is this symb a variable ?
- BooleanT IsSimple(void) const
-
Does this symb contain any variables, (in Expressions or MinTerms.)
- BooleanT IsEqual(const VLSymb & Other) const
-
Is this equal to another Symb ?
- BooleanT operator==(const VLSymb & Oth) const
-
Is this equal to another Symb ?
- VLSymbC Subst(const VLBindLst & Bnds) const
-
Substitute binds.
- VLSymbC Subst(const VLSubstBaseC & Subs) const
-
Substitute one set of symbols for another.
- VLSymbC NewVarDup(VLSubstBaseC & Subst) const
-
Create subsitutions for variables as needed.
- unsigned int Hash(void) const
-
Get ID usefull for hashing.
- BooleanT Unify(const VLSymb & other,VLBindLst & sF) const
-
Unify, with binds.
- BooleanT Unify2(const VLSymb & other,VLBindLst & sF) const
-
Second stage of unification.
use to make sure both Symbols have a chance to override the default
unification process. There is no need to overide this method
unless doing something special like implementing contraints.
All variable subsitutions should be done by the time this is called.
- BooleanT Unify(const VLSymb & other) const
-
Unify, with hidden binds.
- StringC GetName(StringC Buff = StringC()) const
-
Get the name of this Symbol, if an unamed object one will be generated.
Obsolete use Name().
- StringC Name() const
-
Get name of object.
This get a short text description of the symbol.
- void Dump(void) const
-
Dump info about this object to stdout.
- BooleanT Test(const VLSpace & State,VLBindLst & Bnd,VLSymbIterC & iter) const
-
Test if this symbol is true in a given state.
If there are several bindings
which make it true make Iter point to an iterator which will change the passed
Bnd's appropriatly. NB. any changes made to 'Bnd' after an 'Iter' is generated
will be undone when the 'Iter.Next()' or 'Iter.First()' is called. Deleting the
'Iter' should NOT effect the bindings.
- BooleanT Test(const VLSpace & State,VLBindLst & Bnd) const
-
If you only wish to use the first solution found use this function.
- BooleanT Test(const VLSpace & state) const
-
Is a solution possible ?
- VLSymbC SymbCopy(void) const
-
Make a copy of this object on the heap.
- BodyRefCounterVC & Copy() const
-
Creat a copy of this object.
- BooleanT operator==(const BodyRefCounterVC & oth) const
-
Compair identitys.
- BooleanT operator!=(const BodyRefCounterVC & oth) const
-
Compair identitys.
- BooleanT Save(ostream & out) const
-
Save to ostream.
- void AddReference()
-
Another reference to the object has been created.
- void RemoveReference()
-
One reference to the object was deleted.
Locking scheme
--------------
The object is possible to lock (to make constant). The scheme
assumes that the object is created, it can be locked, after that
it can only be destroyed. The locked object cannot be unlocked.
This locking scheme is very useful
during debugging, using assert() function,
when it is necassary to check that object
is treated as constant and the constancy is not violated by
any casting or passing through the copy constructor of shared
objects.
- void SetConst(void) const
-
This locks the object.
Often objects you wish to lock are already const.
- void SetConst(void)
-
This locks the object.
- BooleanT IsConst(void) const
-
Returns TRUE if the object is locked, ie. it is assumed to be constant.
- BooleanT IsNotConst(void) const
-
Returns TRUE if the object is unlocked.
ie. there is no special
information if the object is constant or not.
Counter state information
-------------------------
- BooleanT ToBeDeleted() const
-
Returns TRUE if there is only one reference to the object and the whole object or its reference counting part can be deleted.
- BooleanT ToBeDeletedRemoveIgnoreNoRemove()
-
Decrement refrence by 1 return true if this leaves no refrences to the object.
- BooleanT ToBeDeletedRemove()
-
Decrement refrence by 1 return true if this leaves no refrences to the object. This also checks the NoRemove flag.
- BooleanT BodyMightBeDeleted() const
-
Returns TRUE if the reference counted part of the object can be deleted, ie. flag NOREMOVE is false .
- BooleanT IsCountZero() const
-
Are there any refrences left ?
- BooleanT BRCPtrCanDeleteObject() const
-
Used by BRRCPtrC to establish if an object has ZERO refrences and can be deleted.
- IntT Count() const
-
Returns the current state of the counter, ie. how many references to this object exist.
- const BodyRefCounterC & operator=(const BodyRefCounterC & b)
-
It has not meaning to assign object 'b' to this object because it would destroy a history of the object which is counted. So this is a dummy function.
- BooleanT IsValidObject() const
-
Test if object is valid.
When amma check is disabled this always returns true.
- BooleanT UserBitTest(IntT x) const
-
Test user flag.
- void UserBitSet(IntT x,BooleanT setit = TRUE)
-
Test user flag.
- void UserBitZero(IntT x)
-
Set bit to zero.
- void ReportBRCError(char * Msg)
-
Report error, used in BRCPtrC.
- UIntT Hash() const
-
Hash on address of object.
- LabelT Label() const
-
Returns the label of this reference counter.
The member function
is useful mainly to recognize objects during debugging.
The value of the label is uniquely defined pointer.
|
Programmer:Charles Galambos, Documentation by CxxDoc: Tue Mar 20 10:48:08 2001
|