49 #ifndef ___C_FIB_LIMB_H__
50 #define ___C_FIB_LIMB_H__
85 #ifdef FEATURE_SIMPLE_CONSTRUCTOR
98 #else //FEATURE_SIMPLE_CONSTRUCTOR
114 #endif //FEATURE_SIMPLE_CONSTRUCTOR
140 virtual bool isValidFibElement()
const;
142 #ifdef FEATURE_FAST_UPDATE
161 virtual cFibElement * getNextFibElement(
char cType );
174 bool bAbsolute=
false )
const;
189 bool bAbsolute=
false )
const;
205 virtual bool isUsedVariable(
const cFibVariable *variable ,
238 virtual bool replaceVariable(
cFibVariable *variableOld,
241 #ifdef FEATURE_FAST_UPDATE
256 virtual unsignedIntFib getNumberOfElement(
bool bOfType=
false )
const;
267 #endif //FEATURE_FAST_UPDATE
280 virtual unsignedIntFib getNumberOfElements(
char cType=
'u' )
const;
314 uiObjectPoint,
bool bAbsolute=
false )
const;
338 virtual bool insertElement(
cFibElement *fibElement,
const char cType=
'u',
340 bool bCheckVariables=
true );
364 virtual bool insertObjectInElement(
cFibElement *fibObject,
const char cType=
'u',
366 bool bAbsolute=
false );
389 virtual bool overwriteObjectWithObject(
cFibElement *fibObject,
const char cType=
'u',
391 bool bAbsolute=
false );
408 bool bDeleteOld=
true,
bool bAbsolute=
false );
417 virtual bool hasUnderAllObjects()
const;
439 elementPoint=0,
bool bAbsolute=
false,
bool bCheckVariables=
true );
441 #ifdef FEATURE_FAST_UPDATE
447 virtual void deleteObject();
448 #endif //FEATURE_FAST_UPDATE
454 virtual bool isMovable()
const;
483 elementPoint=0,
const intFib iHowfar=1,
bool bAbsolute=
false );
486 #ifndef FEATURE_EQUAL_FIB_OBJECT
498 virtual bool equal(
const cFibElement & fibObject )
const;
499 #endif //FEATURE_EQUAL_FIB_OBJECT
505 virtual bool isLimb()
const;
510 #ifdef FEATURE_FAST_UPDATE
527 const char cType )
const;
605 char cType,
longFib lNumber )
const;
607 #endif //FEATURE_FAST_UPDATE
609 #ifndef FEATURE_NO_REGISTER_NEW_FIB_
623 virtual bool registerNewFibElement(
cFibElement *newFibElement,
642 virtual bool registerNewFibObject(
cFibElement *newFibObject,
645 #endif //FEATURE_NO_REGISTER_NEW_FIB_
647 #ifdef FEATURE_FAST_UPDATE
655 virtual void cutConnectionsTo(
const cFibElement * pFibElement );
657 #else //FEATURE_FAST_UPDATE
688 #endif //FEATURE_FAST_UPDATE
719 virtual list<cFibElement*> getAllFibElementsFromPosition(
char cType,
737 virtual bool isDefinedVariableInternal(
const cFibVariable * pVariable,
739 const cFibElement * pCallingFibElement = NULL )
const;
757 virtual list< cFibVariable* > getDefinedVariablesInternal(
761 #ifdef FEATURE_EQUAL_FIB_OBJECT
791 virtual bool equalInternal(
const cFibElement & fibObject,
792 map< const cRoot *, const cRoot * > & mapEqualRootObjects,
793 map< const cFibElement *, const cFibElement * > & mapEqualDefinedVariables,
794 const bool bCheckExternalObjects )
const;
796 #endif //FEATURE_EQUAL_FIB_OBJECT