The Fib multimedia system
Fib is a system for storing multimedia data (like images or films).
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
fib::cConditionNot Class Reference

#include <cConditionNot.h>

Inheritance diagram for fib::cConditionNot:
Collaboration diagram for fib::cConditionNot:

List of all members.

Public Member Functions

 cConditionNot (cCondition *pInSubCondition, cCondition *pInSuperiorCondition=NULL, cFibElement *pInDefiningFibElement=NULL)
 cConditionNot (const cCondition &pInSubCondition, cCondition *pInSuperiorCondition=NULL, cFibElement *pInDefiningFibElement=NULL)
 cConditionNot (const cConditionNot &condition, cCondition *pInSuperiorCondition=NULL, cFibElement *pInDefiningFibElement=NULL)
virtual ~cConditionNot ()
virtual bool isValid () const
virtual bool isUsedVariable (const cFibVariable *variable) const
virtual set< cFibVariable * > getUsedVariables ()
virtual bool replaceVariable (cFibVariable *variableOld, cFibVariable *variableNew)
virtual bool getValue () const
virtual unsignedIntFib getNumberOfConditions () const
virtual unsignedIntFib getNumberOfUnderFunctions () const
virtual void setDefiningFibElement (cFibElement *pDefiningFibElement=NULL, bool bCheckDomains=true)
virtual unsignedLongFib getTimeNeed (unsignedLongFib lMaxTime=0) const
virtual unsignedLongFib getCompressedSize () const
virtual bool store (ostream &stream, char &cRestBits, unsigned char &uiRestBitPosition) const
virtual bool storeXml (ostream &stream) const
virtual unsignedIntFib getType () const
virtual string getConditionName () const
virtual bool equal (const cCondition &condition) const
virtual cConditionNotclone (cCondition *pInSuperiorCondition=NULL, cFibElement *pInDefiningFibElement=NULL) const
cConditiongetSubCondition ()
const cConditiongetSubCondition () const
bool setSubCondition (cCondition *pInSubCondition, bool bDeleteOld=true)
bool setSubCondition (const cCondition &pInSubCondition, bool bDeleteOld=true)
- Public Member Functions inherited from fib::cCondition
virtual ~cCondition ()
cFibElementgetDefiningFibElement () const
cConditiongetSuperiorCondition () const
virtual bool operator== (const cCondition &condition) const
bool operator!= (const cCondition &condition) const

Protected Attributes

cConditionpSubCondition
- Protected Attributes inherited from fib::cCondition
cConditionpSuperiorCondition
cFibElementpDefiningFibElement

Additional Inherited Members

- Static Public Member Functions inherited from fib::cCondition
static cConditionrestoreXml (const TiXmlElement *pXmlElement, intFib &outStatus, list< cFibVariable * > &liDefinedVariables, cCondition *pInSuperiorCondition=NULL, cFibElement *pInDefiningFibElement=NULL)
static cConditionrestore (cReadBits &iBitStream, intFib &outStatus, list< cFibVariable * > &liDefinedVariables, const cDomainSingle *pInValueDomain, const cDomainSingle *pInDomainVariable, cCondition *pInSuperiorCondition=NULL, cFibElement *pInDefiningFibElement=NULL)
- Static Public Attributes inherited from fib::cCondition
static const unsignedIntFib CONDITION_FALSE = 0
static const unsignedIntFib CONDITION_TRUE = 1
static const unsignedIntFib CONDITION_NOT = 10
static const unsignedIntFib CONDITION_OR = 20
static const unsignedIntFib CONDITION_AND = 21
static const unsignedIntFib CONDITION_XOR = 23
static const unsignedIntFib CONDITION_EQUAL_INTEGER = 25
static const unsignedIntFib CONDITION_LOWER = 26
static const unsignedIntFib CONDITION_GREATER = 27
- Protected Member Functions inherited from fib::cCondition
 cCondition (cCondition *pInSuperiorCondition=NULL, cFibElement *pInDefiningFibElement=NULL)
 cCondition (const cCondition &condition, cCondition *pInSuperiorCondition=NULL, cFibElement *pInDefiningFibElement=NULL)

Detailed Description

Definition at line 53 of file cConditionNot.h.


Constructor & Destructor Documentation

fib::cConditionNot::cConditionNot ( cCondition pInSubCondition,
cCondition pInSuperiorCondition = NULL,
cFibElement pInDefiningFibElement = NULL 
)

The constructor of the true condition.

Parameters:
pInSubConditiona pointer to the condition, this condition contains; Beware: It (pSubCondition) won't be copied.
See also:
pSubCondition
Parameters:
pInSuperiorConditionthe condition which contains the new condition
pInDefiningFibElementthe Fib-element which defines/ uses the new condition
fib::cConditionNot::cConditionNot ( const cCondition pInSubCondition,
cCondition pInSuperiorCondition = NULL,
cFibElement pInDefiningFibElement = NULL 
)

The constructor of the true condition.

Parameters:
inSubConditionthe condition, this condition contains
See also:
pSubCondition
Parameters:
pInSuperiorConditionthe condition which contains the new condition
pInDefiningFibElementthe Fib-element which defines/ uses the new condition
fib::cConditionNot::cConditionNot ( const cConditionNot condition,
cCondition pInSuperiorCondition = NULL,
cFibElement pInDefiningFibElement = NULL 
)

The copy constructor of the condition. This constructor will also copy the subconditions of the given condition.

Parameters:
conditionthe condition which to copy
pInSuperiorConditionthe condition which contains the new condition
pInDefiningFibElementthe Fib-element which defines/ uses the new condition
virtual fib::cConditionNot::~cConditionNot ( )
virtual

The destructor of the condition.


Member Function Documentation

virtual cConditionNot* fib::cConditionNot::clone ( cCondition pInSuperiorCondition = NULL,
cFibElement pInDefiningFibElement = NULL 
) const
virtual

This method duplicates this whole condition. subcondition of this condition are also cloned.

Parameters:
pSuperiorConditionthe condition which contains the cloned condition
pInDefiningFibElementthe Fib-element which defines/ uses the cloned condition
Returns:
the cloned/ duplicated condition

Implements fib::cCondition.

virtual bool fib::cConditionNot::equal ( const cCondition condition) const
virtual

This Method checks if the given condition is equal to this condition.

Parameters:
conditionthe condition to compare with this condition
Returns:
true if the given condition is equal to this condition, else false

Implements fib::cCondition.

virtual unsignedLongFib fib::cConditionNot::getCompressedSize ( ) const
virtual

This method evaluades the size of the Fib-object in bits in the compressed file form. The optionalpart field of point -elements will be ignored.

See also:
store()
Returns:
the size of the Fib-object in bits in the compressed form

Implements fib::cCondition.

virtual string fib::cConditionNot::getConditionName ( ) const
virtual
Returns:
the name for the condition

Implements fib::cCondition.

virtual unsignedIntFib fib::cConditionNot::getNumberOfConditions ( ) const
virtual
Returns:
the number of conditions, a condition of this type has

Implements fib::cCondition.

virtual unsignedIntFib fib::cConditionNot::getNumberOfUnderFunctions ( ) const
virtual
Returns:
the number of underfunctions, a condition of this type has

Implements fib::cCondition.

cCondition* fib::cConditionNot::getSubCondition ( )
See also:
pSubCondition
setSubCondition()
Returns:
a pointer to the condition this condition contains (
See also:
pSubCondition)
const cCondition* fib::cConditionNot::getSubCondition ( ) const
See also:
pSubCondition
setSubCondition()
Returns:
a pointer to the condition this condition contains (
See also:
pSubCondition)
virtual unsignedLongFib fib::cConditionNot::getTimeNeed ( unsignedLongFib  lMaxTime = 0) const
virtual

This method evaluades a value for the time needed to evalue the condition. This value should not exceed lMaxTime, if the value for the time is greater than lMaxTime the evaluation will be stopt and lMaxTime returned. If lMaxTime is 0 (for infinity) the evaluation won't be stoped, this is the standard case.

See also:
cFibElement::evalueObject()
Parameters:
lMaxTimethe maximum time for the evaluation, the returned exceed this value; the value 0 stands for infinity, so the evaluation won't be stoped
Returns:
a value for the time needed to evalue this condition

Implements fib::cCondition.

virtual unsignedIntFib fib::cConditionNot::getType ( ) const
virtual
Returns:
the type for the condition

Implements fib::cCondition.

virtual set<cFibVariable*> fib::cConditionNot::getUsedVariables ( )
virtual

This method returns all variables used in this condition.

See also:
cFibVariable
Returns:
all variables used in this condition

Implements fib::cCondition.

virtual bool fib::cConditionNot::getValue ( ) const
virtual

Returns the value true of the condition.

Returns:
true

Implements fib::cCondition.

virtual bool fib::cConditionNot::isUsedVariable ( const cFibVariable variable) const
virtual

This method checks if the given variable is used in this condition.

See also:
cFibVariable
Parameters:
variablethe variable to check if it is used
Returns:
true if the variable is used, else false

Implements fib::cCondition.

virtual bool fib::cConditionNot::isValid ( ) const
virtual

This method returns if this condition is valid, else false. All subcondition and underfunctions must be valid. No condition should contain itself or should be contained in one of its condition (no cycles allowed).

Returns:
true if this condition is valid, else false

Implements fib::cCondition.

virtual bool fib::cConditionNot::replaceVariable ( cFibVariable variableOld,
cFibVariable variableNew 
)
virtual

This method replace the variable variableOld with the variable variableNew in the condition.

See also:
cFibVariable
isVariable()
isUsedVariable()
Parameters:
variableOldthe variable to replace
variableNewthe variable with which the variable variableOld is to replace
Returns:
true if the variable variableOld is replaced with variableNew, else false

Implements fib::cCondition.

virtual void fib::cConditionNot::setDefiningFibElement ( cFibElement pDefiningFibElement = NULL,
bool  bCheckDomains = true 
)
virtual

Sets the Fib-element which defines/ uses this condition. If the given pointer is the nullpointer (standardvalue), no Fib-element defines this condition.

Parameters:
pDefiningFibElementa pointer to the Fib-element which defines/ uses this condition
bCheckDomainsget the domains of the defining element and check the underfunctionelements with it

Reimplemented from fib::cCondition.

bool fib::cConditionNot::setSubCondition ( cCondition pInSubCondition,
bool  bDeleteOld = true 
)

This method sets the contained condition (

See also:
pSubCondition) to the given condition pInSubCondition. Beware: It (pInSubCondition) won't be copied.
pSubCondition
getSubCondition()
Parameters:
pInSubConditiona pointer to the subcondition to set
bDeleteOldif true, delete the old subcondition from the memory
Returns:
true if pInSubCondition condition was set, else false
bool fib::cConditionNot::setSubCondition ( const cCondition pInSubCondition,
bool  bDeleteOld = true 
)

This method sets the contained condition (

See also:
pSubCondition) to the given condition pInSubCondition.
pSubCondition
getSubCondition()
Parameters:
pInSubConditionthe subcondition to set
bDeleteOldif true, delete the old subcondition from the memory
Returns:
true if pInSubCondition condition was set, else false
virtual bool fib::cConditionNot::store ( ostream &  stream,
char &  cRestBits,
unsigned char &  uiRestBitPosition 
) const
virtual

This method stores this Fib-object in the compressed Fib-format into the given stream. It is needed becouse the stream can yust store byts but the size of Fib-elements can be any number of bits. Because of that ther have to be a possibility to exchange the missing bits betwean the Fib-elements.

See also:
store
Parameters:
streamthe stream where this Fib-object should be stored to
cRestBitsthe not yet writen bits which should be stored
uiRestBitPositionthe number of bits in the cRestBits which should be writen respectively containing valid information
Returns:
true if this Fib-object is stored, else false

Implements fib::cCondition.

virtual bool fib::cConditionNot::storeXml ( ostream &  stream) const
virtual

This method stores this condition in the XML-format into the given stream. Variables should have ther number as ther value.

Parameters:
streamthe stream where this conditionshould be stored to
Returns:
true if this condition is stored, else false

Implements fib::cCondition.


Member Data Documentation

cCondition* fib::cConditionNot::pSubCondition
protected

The condition this condition contains.

Definition at line 58 of file cConditionNot.h.


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