X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FGEOM%2FGEOM_Engine.hxx;h=7842336a9d9768aeabd6cde56e958070c650ba3f;hb=14e1a694c4cf249fe205a39c099482bc5b28a6e5;hp=38d954a0e34c4c048d6298ed8033e16dc4b2218d;hpb=c5b6deb54b470e71d9673c2eab919afd029bdd15;p=modules%2Fgeom.git diff --git a/src/GEOM/GEOM_Engine.hxx b/src/GEOM/GEOM_Engine.hxx index 38d954a0e..7842336a9 100644 --- a/src/GEOM/GEOM_Engine.hxx +++ b/src/GEOM/GEOM_Engine.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2013 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 @@ -6,7 +6,7 @@ // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either -// version 2.1 of the License. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -27,18 +27,14 @@ #include "GEOM_Object.hxx" #include "GEOM_DataMapOfAsciiStringTransient.hxx" -#include - -#if OCC_VERSION_LARGE > 0x06040000 // Porting to OCCT6.5.1 #include -#else -#include -#endif #include #include #include +#include #include +#include #include #include @@ -57,12 +53,6 @@ struct TObjectData TCollection_AsciiString _pyName; bool _unpublished; }; - -#if OCC_VERSION_LARGE > 0x06040000 // Porting to OCCT6.5.1 -class Handle_TColStd_HArray1OfByte; -#else -class Handle_TDataStd_HArray1OfByte; -#endif struct TVariable{ TCollection_AsciiString myVariable; @@ -99,56 +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_Object defined by a document and the entry - Standard_EXPORT Handle(GEOM_Object) GetObject(int theDocID, char* theEntry, bool force=true); - + //Returns a pointer to GEOM_BaseObject defined by a document and the entry + 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_Object) AddObject(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 theType); //Removes the object from the OCAF document - Standard_EXPORT bool RemoveObject(Handle(GEOM_Object) theObject); + 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, 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, 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); + 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, @@ -158,47 +148,36 @@ class GEOM_Engine Standard_EXPORT Handle(TColStd_HSequenceOfAsciiString) GetAllDumpNames() const; - Standard_EXPORT int addTexture(int theDocID, int theWidth, int theHeight, -#if OCC_VERSION_LARGE > 0x06040000 // Porting to OCCT6.5.1 + Standard_EXPORT int addTexture(int theWidth, int theHeight, const Handle(TColStd_HArray1OfByte)& theTexture, -#else - const Handle(TDataStd_HArray1OfByte)& theTexture, -#endif const TCollection_AsciiString& theFileName = ""); -#if OCC_VERSION_LARGE > 0x06040000 // Porting to OCCT6.5.1 - Standard_EXPORT Handle(TColStd_HArray1OfByte) getTexture(int theDocID, int theTextureID, -#else - Standard_EXPORT Handle(TDataStd_HArray1OfByte) getTexture(int theDocID, int theTextureID, -#endif + 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(); Standard_EXPORT void healPyName( TCollection_AsciiString& pyName, - const TCollection_AsciiString& anEntry, - Resource_DataMapOfAsciiStringAsciiString& aNameToEntry); + const TCollection_AsciiString& anEntry, + Resource_DataMapOfAsciiStringAsciiString& aNameToEntry); - protected: +protected: Standard_EXPORT static void SetEngine(GEOM_Engine* theEngine); - private: +private: Handle(GEOM_Application) _OCAFApp; -#if OCC_VERSION_LARGE > 0x06040000 // Porting to OCCT6.5.1 - TColStd_DataMapOfIntegerTransient _mapIDDocument; -#else - Interface_DataMapOfIntegerTransient _mapIDDocument; -#endif + Handle(TDocStd_Document) _document; + int _UndoLimit; GEOM_DataMapOfAsciiStringTransient _objects; Resource_DataMapOfAsciiStringAsciiString _studyEntry2NameMap; - TFreeLabelsList _freeLabels; + std::list _freeLabels; }; #endif