X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESH_SWIG_WITHIHM%2FlibSMESH_Swig.h;h=fa564efa402ea2ba3e08771af5afe4f11eac62fb;hp=504eba84579172148c557fcc67279648c4e9c57b;hb=10191484fe88a27e962b8e4b57e09d390d8705c7;hpb=f5016d85b7b4b88623723027a1585c6414c4dc66 diff --git a/src/SMESH_SWIG_WITHIHM/libSMESH_Swig.h b/src/SMESH_SWIG_WITHIHM/libSMESH_Swig.h index 504eba845..fa564efa4 100644 --- a/src/SMESH_SWIG_WITHIHM/libSMESH_Swig.h +++ b/src/SMESH_SWIG_WITHIHM/libSMESH_Swig.h @@ -1,9 +1,9 @@ -// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE // // 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 @@ -24,7 +24,7 @@ #ifndef LIBSMESH_SWIG_H #define LIBSMESH_SWIG_H -#ifdef WNT +#ifdef WIN32 #if defined SMESH_SWIG_EXPORTS || defined _libSMESH_Swig_EXPORTS #define SMESH_SWIG_EXPORT __declspec( dllexport ) #else @@ -38,13 +38,66 @@ #include #include CORBA_SERVER_HEADER(SALOMEDS) +//std includes +#include +#include + +#include + +#include + +typedef enum + { + Undefined = -1, + Node = NodeSelection, + Cell = CellSelection, + EdgeOfCell = EdgeOfCellSelection, + Edge = EdgeSelection, + Face = FaceSelection, + Volume = VolumeSelection, + Actor = ActorSelection, + Elem0D = Elem0DSelection, + Ball = BallSelection + } SelectionMode; + +typedef struct +{ + double r, g, b; + int delta; +} surfaceColorStruct; + +typedef struct +{ + double r, g, b; + int delta; +} volumeColorStruct; + +typedef struct +{ + double r, g, b; +} edgeColorStruct; + +typedef struct +{ + double r, g, b; +} nodeColorStruct; + +struct actorAspect +{ + surfaceColorStruct surfaceColor; + volumeColorStruct volumeColor; + edgeColorStruct edgeColor; + nodeColorStruct nodeColor; + double opacity; +}; + class SMESH_SWIG_EXPORT SMESH_Swig { public: SMESH_Swig(); ~SMESH_Swig(); - void Init( int ); + void Init(); const char* AddNewMesh( const char* ); @@ -67,6 +120,8 @@ public: void EraseActor( const char*, const bool allViewers = false ); + void UpdateActor( const char* Mesh_Entry ); + /*! * \brief Set mesh icon according to compute status * \param Mesh_Entry - entry of a mesh @@ -74,8 +129,20 @@ public: */ void SetMeshIcon( const char*, const bool, const bool ); + actorAspect GetActorAspect(const char* Mesh_Entry, int viewId = 0 ); + void SetActorAspect( const actorAspect& actorPres, const char* Mesh_Entry, int viewId = 0 ); + + void setSelectionMode( SelectionMode selectionMode ); + std::vector getSelected( const char* Mesh_Entry ); + std::vector > getSelectedEdgeOfCell( const char* Mesh_Entry ); + + // --------------------- for the test purposes ----------------------- + SelectionMode getSelectionMode(); + void select( const char *id, std::vector ids, bool append = false ); + void select( const char *id, int id1, bool append = false ); + void select( const char *id, std::vector >, bool apend = false ); + private: - SALOMEDS::Study_var myStudy; SALOMEDS::StudyBuilder_var myStudyBuilder; SALOMEDS::SComponent_var mySComponentMesh; };