X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FGEOM%2FGEOM_Engine.hxx;h=7842336a9d9768aeabd6cde56e958070c650ba3f;hb=14e1a694c4cf249fe205a39c099482bc5b28a6e5;hp=9b2fea81a33c98638bbe59bad2ad37795b57a835;hpb=8370b4a1c488f6ef18d8944869d6a8cd3a2d18d2;p=modules%2Fgeom.git diff --git a/src/GEOM/GEOM_Engine.hxx b/src/GEOM/GEOM_Engine.hxx index 9b2fea81a..7842336a9 100644 --- a/src/GEOM/GEOM_Engine.hxx +++ b/src/GEOM/GEOM_Engine.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2024 CEA, EDF, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -27,13 +27,12 @@ #include "GEOM_Object.hxx" #include "GEOM_DataMapOfAsciiStringTransient.hxx" -#include - #include #include #include #include +#include #include #include #include @@ -54,8 +53,6 @@ struct TObjectData TCollection_AsciiString _pyName; bool _unpublished; }; - -class Handle_TColStd_HArray1OfByte; struct TVariable{ TCollection_AsciiString myVariable; @@ -92,61 +89,56 @@ typedef std::map > TFreeLabelsList; class GEOM_Engine { - public: +public: Standard_EXPORT GEOM_Engine(); Standard_EXPORT virtual ~GEOM_Engine(); - //Retuns the engine + //Returns the engine Standard_EXPORT static GEOM_Engine* GetEngine(); //Returns the OCAF document by its ID, if document doesn't exists it will be created - Standard_EXPORT Handle(TDocStd_Document) GetDocument(int theDocID, bool force=true); - - //Returns the ID of the given OCAF document - Standard_EXPORT int GetDocID(Handle(TDocStd_Document) theDocument); + Standard_EXPORT Handle(TDocStd_Document) GetDocument(bool force=true); - //Returns the OCAF appliaction + //Returns the OCAF application Standard_EXPORT Handle(TDocStd_Application) GetApplication() { return _OCAFApp; } //Returns a pointer to GEOM_BaseObject defined by a document and the entry - Standard_EXPORT Handle(GEOM_BaseObject) GetObject(int theDocID, - const char* theEntry, + Standard_EXPORT Handle(GEOM_BaseObject) GetObject(const char* theEntry, bool force=true); //Adds a new object of the type theType in the OCAF document - Standard_EXPORT Handle(GEOM_BaseObject) AddBaseObject(int theDocID, int theType); + Standard_EXPORT Handle(GEOM_BaseObject) AddBaseObject(int theType); //Adds a new object of the type theType in the OCAF document - Standard_EXPORT Handle(GEOM_Object) AddObject(int theDocID, int theType); + Standard_EXPORT Handle(GEOM_Object) AddObject(int theType); //Removes the object from the OCAF document Standard_EXPORT bool RemoveObject(Handle(GEOM_BaseObject)& theObject); - //Saves the OCAF document with ID = theDocID with file with name theFileName - Standard_EXPORT bool Save(int theDocID, const char* theFileName); + //Saves the OCAF document with file with name theFileName + Standard_EXPORT bool Save(const char* theFileName); - //Loads the OCAF document into the application and assigns to it an ID = theDocID - Standard_EXPORT bool Load(int theDocID, const char* theFileName); + //Loads the OCAF document into the application + Standard_EXPORT bool Load(const char* theFileName); - //Closes the document with ID = theDocID - Standard_EXPORT void Close(int theDocID); + //Closes the document + Standard_EXPORT void Close(); //Sets the number of Undos (default value = 10) Standard_EXPORT void SetUndoLimit(int theLimit) { _UndoLimit = theLimit; } - //Applies an Undo to document with ID = theDocID - Standard_EXPORT void Undo(int theDocID); + //Applies an Undo to document + Standard_EXPORT void Undo(); - //Applies an Redo to document with ID = theDocID - Standard_EXPORT void Redo(int theDocID); + //Applies an Redo to document + Standard_EXPORT void Redo(); //Adds a new sub-shape object of the MainShape object Standard_EXPORT Handle(GEOM_Object) AddSubShape(Handle(GEOM_Object) theMainShape, Handle(TColStd_HArray1OfInteger) theIndices, bool isStandaloneOperation = false); - Standard_EXPORT TCollection_AsciiString DumpPython(int theDocID, - std::vector& theObjectData, + Standard_EXPORT TCollection_AsciiString DumpPython(std::vector& theObjectData, TVariablesList theVariables, bool isPublished, bool isMultiFile, @@ -156,15 +148,15 @@ class GEOM_Engine Standard_EXPORT Handle(TColStd_HSequenceOfAsciiString) GetAllDumpNames() const; - Standard_EXPORT int addTexture(int theDocID, int theWidth, int theHeight, + Standard_EXPORT int addTexture(int theWidth, int theHeight, const Handle(TColStd_HArray1OfByte)& theTexture, const TCollection_AsciiString& theFileName = ""); - Standard_EXPORT Handle(TColStd_HArray1OfByte) getTexture(int theDocID, int theTextureID, + Standard_EXPORT Handle(TColStd_HArray1OfByte) getTexture(int theTextureID, int& theWidth, int& theHeight, TCollection_AsciiString& theFileName); - Standard_EXPORT std::list getAllTextures(int theDocID); + Standard_EXPORT std::list getAllTextures(); static const Standard_GUID& GetTextureGUID(); @@ -172,25 +164,20 @@ class GEOM_Engine const TCollection_AsciiString& anEntry, Resource_DataMapOfAsciiStringAsciiString& aNameToEntry); - Standard_EXPORT void DocumentModified(const int theDocId, const bool isModified); - - Standard_EXPORT bool DocumentModified(const int theDocId); - - protected: +protected: Standard_EXPORT static void SetEngine(GEOM_Engine* theEngine); - private: +private: Handle(GEOM_Application) _OCAFApp; - TColStd_DataMapOfIntegerTransient _mapIDDocument; - TColStd_MapOfInteger _mapModifiedDocs; // keeps the identifiers of the modified document ids + Handle(TDocStd_Document) _document; int _UndoLimit; GEOM_DataMapOfAsciiStringTransient _objects; Resource_DataMapOfAsciiStringAsciiString _studyEntry2NameMap; - TFreeLabelsList _freeLabels; + std::list _freeLabels; }; #endif