BIMHome v1.0.0
BIMHome接口文档说明
Public 成员函数 | 静态 Public 成员函数 | 所有成员列表
IDocument类 参考abstract

文档接口类 更多...

#include <IDocument.h>

Public 成员函数

virtual void _removeObject (IDocumentObject *pcObject)=0
 删除对象
 
virtual void abortTransaction ()=0
 中止实际运行的事务
 
virtual App::IDocumentaddChildDocument (std::string name, DocType type, std::string path, std::string id, std::string afterId, bool usePartLink=true, bool doFinishRestore=true, void *pAppDocDelegate=nullptr, void *pGuiDocDelegate=nullptr)=0
 添加子文档
 
virtual App::IDocumentObjectaddObject (const char *sType, const char *pObjectName=nullptr, bool isNew=true, const char *viewType=nullptr, bool isPartial=false, long id=0, void *pDocObjDelegate=nullptr, void *pViewProviderDelegate=nullptr)=0
 添加对象
 
virtual void addObject (IDocumentObject *pIObj, const char *pObjectName=nullptr)=0
 添加对象
 
virtual bool afterRestore (bool checkPartial=false)=0
 恢复文档之后做的一些处理
 
virtual bool afterRestore (const std::vector< App::IDocumentObject * > &docVec, bool checkPartial=false)=0
 在文档对象恢复之后执行一些清理或验证工作
 
virtual void commitTransaction ()=0
 提交当前正在进行的事务
 
virtual void deleteIDocument (App::IDocument *doc)
 彻底删除IDocument
 
virtual void deleteSubPartOrProduct (App::IDocument *pDocument)=0
 删除子零件活子装配
 
virtual void exportGraphviz (std::ostream &os) const =0
 导出图
 
virtual void exportObjects (const std::vector< App::IDocumentObject * > &iObjVec, std::ostream &os)=0
 导出对象
 
virtual void getAllDocument (std::set< App::IDocument * > &docSet)=0
 返回所有子孙文档列表
 
virtual std::vector< std::string > getAvailableRedoNames () const =0
 返回重做名称的列表
 
virtual int getAvailableRedos (int id=0) const =0
 返回存储的Redo数
 
virtual int getAvailableUndos (int id=0) const =0
 返回存储的Undo数
 
virtual void getDependentDocuments (std::vector< App::IDocument * > &, bool sort=true)=0
 获取当前文档的依赖文档,并将这些依赖文档存储在一个向量中
 
virtual std::string getDocCategory ()=0
 获取文档分类
 
virtual void getDocumentByDocCategory (std::vector< App::IDocument * > &iDocVec, std::string category)=0
 根据分类返回子文档列表
 
virtual App::IDocumentgetDocumentById (std::string uuid)=0
 根据id获取对应子孙文档
 
virtual App::IDocumentgetDocumentByName (std::string name)=0
 根据名称获取对应子孙文档
 
virtual std::string getDocumentId ()=0
 获取文档 ID
 
virtual void getDocumentObjects (std::vector< IDocumentObject * > &iObjVec) const =0
 获取文档对象
 
virtual void getDocumentObjectsHasName (std::vector< App::IDocumentObject * > &iObjVec, const std::string &name) const =0
 获取具有特定名称的文档对象
 
virtual void getDocumentType (DocType &type)=0
 获取当前文档的类型,并将类型信息赋值给传入的 DocType 变量
 
virtual const char * getErrorDescription (const App::IDocumentObject *pIObject) const =0
 获取一个文档对象的错误描述
 
virtual const char * getFileName () const =0
 返回文档路径
 
virtual std::string getId ()=0
 获取文档id
 
virtual void getLinksTo (std::set< IDocumentObject * > &links, const IDocumentObject *obj, int options, int maxCount=0, const std::vector< IDocumentObject * > &objs={}) const =0
 返回所给对象的全部链接
 
virtual Base::Placement getLocalPlacement () const =0
 文档局部位置获取
 
virtual const char * getName () const =0
 返回文档的内部名称
 
virtual IDocumentObjectgetObject (const char *Name, bool findInLinkedPart=false) const =0
 根据名称得到对应的对象
 
virtual IDocumentObjectgetObjectById (long id, bool findInLinkedPart=false) const =0
 根据id获取对象
 
virtual const AppDocObserverDelegategetObserverDelegate ()=0
 获取文档观察者代理
 
virtual App::IDocumentgetParentDocument ()=0
 返回文档的父文档
 
virtual App::IDocumentgetParentDocumentByType (const std::string &parentClassTypeId)=0
 根据传入类型返回文档的父文档
 
virtual std::vector< IDocument * > getPartMaps ()=0
 获取子文档对象数组
 
virtual Base::Placement getPlacement () const =0
 文档位置获取
 
virtual const char * getProgramVersion () const =0
 获取创建文档时使用的程序版本
 
virtual IPropertyAccessorgetPropertyAccessor ()=0
 获取属性访问器
 
virtual int getRefCount ()=0
 返回引用计数
 
virtual App::IDocumentgetRootDocument ()=0
 返回文档的父文档
 
virtual void getRootObjects (std::vector< App::IDocumentObject * > &iObjVec) const =0
 获取文档中的根对象并将它们存储在一个向量中
 
virtual void getSubDocument (std::set< App::IDocument * > &docSet)=0
 返回子文档列表
 
virtual std::string getTemplateDirName (const std::string &uuid)=0
 创建目录名称
 
virtual int getTransactionID (bool undo, unsigned pos=0) const =0
 返回从后面开始的撤消/重做事务ID
 
virtual std::string getTransientDirectoryName (const std::string &uuid, const std::string &filename) const =0
 创建临时目录名称
 
virtual std::string getUniqueObjectName (const char *Name) const =0
 根据输入名字获取唯一的名称
 
virtual bool hasPendingTransaction () const =0
 检查事务是否打开
 
virtual void importFile (const char *partFileName, bool dofinishRestore=true)=0
 导入文档
 
virtual std::vector< App::IDocumentObject * > importLinks (const std::vector< App::IDocumentObject * > &objs={})=0
 导入链接
 
virtual bool isClosable () const =0
 检查文档是否可以关闭
 
virtual bool isPerformingTransaction () const =0
 检查文档是否处于事务阶段
 
virtual bool isSaved () const =0
 文档是不是已经保存了
 
virtual bool isTransactionEmpty () const =0
 检查事务是否打开且其列表为空
 
virtual void locateObjs ()=0
 更新App::IDocument位置
 
virtual IDocumentObjectmoveObject (IDocumentObject *obj, bool recursive=false)=0
 负责移动一个文档对象,并返回移动后的对象
 
virtual void openTransaction (const char *name=nullptr)=0
 提交Command事务。
 
virtual void paramterNewObject (const std::map< std::string, boost::any > &data)
 通过参数列表创建新对象
 
virtual void purgeTouched ()=0
 删除所有修改。调用后,文档再次变为有效。
 
virtual int recomputeDocument (const std::vector< App::IDocumentObject * > &objs={}, bool force=false, bool *hasError=nullptr, int options=0)=0
 重新计算文档
 
virtual void removeAllObjects ()=0
 删除所有对象
 
virtual void removeChildDocument (IDocument *pChildDoc)=0
 删除子文档
 
virtual void removeObject (const char *sName)=0
 删除对象
 
virtual bool save (bool saveSub=true)=0
 保存文档
 
virtual bool saveAs (const char *file, bool saveSub=true)=0
 另存为文档
 
virtual void setActiveIDocument (App::IDocument *pObj)
 设置活动的零件
 
virtual void setDocCategory (std::string category)=0
 设置文档分类
 
virtual void setDocumentLabel (const std::string &labelName)=0
 设置文档标签
 
virtual void setDocumentName (const char *name)=0
 设置文档名称
 
virtual void setFileName (std::string filename)=0
 设置文档名称
 
virtual void setId (std::string id)=0
 设置文档id
 
virtual void setLocalPlacement (Base::Placement placement)=0
 文档局部位置设置
 
virtual void setObserverDelegate (AppDocObserverDelegate *pObsDelegate)=0
 设置文档观察者代理
 
virtual void setPlacement (Base::Placement placement)=0
 文档位置设置
 
virtual void setRootIDocument (App::IDocument *doc)=0
 将一个给定的文档设置为当前文档的根文档
 
virtual void setUndoMode (int iMode)=0
 设置切换“撤消/重做”级别
 
virtual void topologicalSort (std::vector< App::IDocumentObject * > &docVec) const =0
 对文档中的对象进行拓扑排序,并将排序后的对象存储在一个 std::vector 中
 
virtual ~IDocument ()
 

静态 Public 成员函数

static IDocumentcreate (const char *pName, IDocument *pProduct=nullptr, const char *pAppDocDelegateName=nullptr, const char *pUserName=nullptr, DocType type=DocType::Component, bool createView=true, bool tempDoc=false)
 创建一个新文档
 
static IDocumentcreate (const char *pName, IDocument *pProduct=nullptr, const char *pUserName=nullptr, bool createView=true, bool tempDoc=false, DocType type=DocType::Component)
 创建一个新文档
 
static IDocumentloadFile (const char *pPath, IDocument *pProduct=nullptr, const char *pAppDocDelegateName=nullptr, DocType type=DocType::Component, bool createView=true, bool tempDoc=false)
 加载一个文档
 

详细描述

文档接口类

提供文档的创建、加载、保存、对象管理等功能。


该类的文档由以下文件生成: