Public Member Functions | |
| void | addRecomputeLog (const char *why, App::DocumentObject *obj) |
| void | addRecomputeLog (const std::string &why, App::DocumentObject *obj) |
| void | addRecomputeLog (DocumentObjectExecReturn *returnCode) |
| void | clearRecomputeLog (const App::DocumentObject *obj=0) |
| DocumentP () | |
| const char * | findRecomputeLog (const App::DocumentObject *obj) |
| std::vector< App::DocumentObject * > | topologicalSort (const std::vector< App::DocumentObject * > &objects) const |
Static Public Member Functions | |
| static void | findAllPathsAt (const std::vector< Node > &all_nodes, size_t id, std::vector< Path > &all_paths, Path tmp) |
| static std::vector< App::DocumentObject * > | partialTopologicalSort (const std::vector< App::DocumentObject * > &objects) |
Public Attributes | |
| DocumentObject * | activeObject |
| Transaction * | activeUndoTransaction |
| bool | committing |
| int | iTransactionMode |
| int | iUndoMode |
| long | lastObjectId |
| std::vector< DocumentObject * > | objectArray |
| std::unordered_map< long, DocumentObject * > | objectIdMap |
| std::unordered_map< std::string, DocumentObject * > | objectMap |
| std::unordered_map< std::string, bool > | partialLoadObjects |
| bool | rollback |
| std::bitset< 32 > | StatusBits |
| std::unordered_set< App::DocumentObject * > | touchedObjs |
| bool | undoing |
| document in the middle of undo or redo More... | |
| unsigned int | UndoMaxStackSize |
| unsigned int | UndoMemSize |
Constructor & Destructor Documentation
◆ DocumentP()
| App::DocumentP::DocumentP | ( | ) |
Member Function Documentation
◆ addRecomputeLog() [1/3]
| void App::DocumentP::addRecomputeLog | ( | const char * | why, |
| App::DocumentObject * | obj | ||
| ) |
Referenced by addRecomputeLog(), App::Document::afterRestore(), and App::Document::readObjects().
◆ addRecomputeLog() [2/3]
| void App::DocumentP::addRecomputeLog | ( | const std::string & | why, |
| App::DocumentObject * | obj | ||
| ) |
References addRecomputeLog().
◆ addRecomputeLog() [3/3]
| void App::DocumentP::addRecomputeLog | ( | DocumentObjectExecReturn * | returnCode | ) |
References App::DocumentObject::setStatus(), and App::DocumentObjectExecReturn::Which.
◆ clearRecomputeLog()
| void App::DocumentP::clearRecomputeLog | ( | const App::DocumentObject * | obj = 0 | ) |
◆ findAllPathsAt()
|
static |
References DraftVecUtils::find().
Referenced by App::Document::getPathsByOutList().
◆ findRecomputeLog()
| const char* App::DocumentP::findRecomputeLog | ( | const App::DocumentObject * | obj | ) |
Referenced by App::Document::getErrorDescription().
◆ partialTopologicalSort()
|
static |
Does almost the same as topologicalSort() until no object with an input degree of zero can be found. It then searches for objects with an output degree of zero until neither an object with input or output degree can be found. The remaining objects form one or multiple cycles. An alternative to this method might be: https://en.wikipedia.org/wiki/Tarjan%E2%80%99s_strongly_connected_components_algorithm
Referenced by App::Document::getDependencyList(), and App::Document::recompute().
◆ topologicalSort()
| std::vector< App::DocumentObject * > DocumentP::topologicalSort | ( | const std::vector< App::DocumentObject * > & | objects | ) | const |
Referenced by App::Document::topologicalSort().
Member Data Documentation
◆ activeObject
| DocumentObject* App::DocumentP::activeObject |
◆ activeUndoTransaction
| Transaction* App::DocumentP::activeUndoTransaction |
Referenced by App::Document::abortTransaction(), App::Document::addObject(), App::Document::addObjects(), App::Document::addOrRemovePropertyOfObject(), App::Document::clearUndos(), App::Document::commitTransaction(), DocumentP(), App::Document::getAvailableUndoNames(), App::Document::getAvailableUndos(), App::Document::getTransactionID(), App::Document::hasPendingTransaction(), App::Document::isTransactionEmpty(), App::Document::onBeforeChangeProperty(), App::Document::redo(), App::Document::removeObject(), App::Document::renameTransaction(), and App::Document::undo().
◆ committing
| bool App::DocumentP::committing |
◆ iTransactionMode
| int App::DocumentP::iTransactionMode |
Referenced by DocumentP(), and App::Document::setTransactionMode().
◆ iUndoMode
| int App::DocumentP::iUndoMode |
◆ lastObjectId
| long App::DocumentP::lastObjectId |
◆ objectArray
| std::vector<DocumentObject*> App::DocumentP::objectArray |
Referenced by App::Document::addObject(), App::Document::addObjects(), App::Document::afterRestore(), App::Document::breakDependency(), App::Document::clearDocument(), App::Document::countObjects(), App::Document::findObjects(), App::Document::getDependingObjects(), App::Document::getLinksTo(), App::Document::getMemSize(), App::Document::getObjects(), App::Document::getObjectsOfType(), App::Document::getObjectsWithExtension(), App::Document::getPathsByOutList(), App::Document::getRootObjects(), App::Document::getTouched(), App::Document::isTouched(), App::Document::mustExecute(), App::Document::purgeTouched(), App::Document::recompute(), App::Document::removeObject(), App::Document::renameObjectIdentifiers(), App::Document::restore(), App::Document::Save(), App::Document::topologicalSort(), and App::Document::~Document().
◆ objectIdMap
| std::unordered_map<long,DocumentObject*> App::DocumentP::objectIdMap |
◆ objectMap
| std::unordered_map<std::string,DocumentObject*> App::DocumentP::objectMap |
Referenced by App::Document::addObject(), App::Document::addObjects(), App::Document::clearDocument(), App::Document::countObjectsOfType(), App::Document::getInList(), App::Document::getObject(), App::Document::getObjectName(), App::Document::getUniqueObjectName(), App::Document::isIn(), App::Document::removeObject(), App::Document::restore(), App::Document::writeDependencyGraphViz(), and App::Document::~Document().
◆ partialLoadObjects
| std::unordered_map<std::string, bool> App::DocumentP::partialLoadObjects |
Referenced by App::Document::readObjects(), and App::Document::restore().
◆ rollback
| bool App::DocumentP::rollback |
◆ StatusBits
| std::bitset<32> App::DocumentP::StatusBits |
Referenced by App::Document::addObject(), DocumentP(), and App::Document::setStatus().
◆ touchedObjs
| std::unordered_set<App::DocumentObject*> App::DocumentP::touchedObjs |
◆ undoing
| bool App::DocumentP::undoing |
document in the middle of undo or redo
Referenced by App::Document::addObject(), App::Document::addObjects(), DocumentP(), App::Document::isPerformingTransaction(), App::Document::recompute(), App::Document::redo(), App::Document::removeObject(), and App::Document::undo().
◆ UndoMaxStackSize
| unsigned int App::DocumentP::UndoMaxStackSize |
Referenced by DocumentP(), App::Document::getMaxUndoStackSize(), and App::Document::setMaxUndoStackSize().
◆ UndoMemSize
| unsigned int App::DocumentP::UndoMemSize |
Referenced by DocumentP(), App::Document::getUndoMemSize(), and App::Document::setUndoLimit().
The documentation for this struct was generated from the following file:
- src/App/Document.cpp
1.8.17