// Copyright (C) 2009-2012 CEA/DEN, EDF R&D // // 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. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // Lesser General Public License for more details. // // You should have received a copy of the GNU Lesser General Public // License along with this library; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // #ifndef __Elements_idl__ #define __Elements_idl__ /*! \defgroup EXAMPLES SALOME EXAMPLES components */ #include "SALOME_Exception.idl" #include "SALOME_GenericObj.idl" #include "Element.idl" #include "Vertex.idl" #include "Edge.idl" #include "Quad.idl" #include "Hexa.idl" /*! \ingroup EXAMPLES */ module HEXABLOCK_ORB { // enum EnumCoord { dir_x, dir_y, dir_z, DIM3 }; // enum EnumVertex { V_AMONT, V_AVAL, V_TWO }; // enum EnumQuad { E_A, E_B, E_C, E_D, QUAD4 }; // z=0 z=1 y=0 y=1 x=0 x=1 // enum EnumHQuad {Q_A, Q_B, Q_C, Q_D, Q_E, Q_F, HQ_MAXI}; // enum EnumHEdge {E_AC, E_AD, E_BC, E_BD, // E_AE, E_AF, E_BE, E_BF, // E_CE, E_CF, E_DE, E_DF, HE_MAXI }; // enum EnumHVertex {V_ACE, V_ACF, V_ADE, V_ADF, V_BCE, V_BCF, V_BDE, V_BDF, // HV_MAXI }; // enum EnumVCyl { V_E, V_NE, V_N, V_NW, V_W, V_SW, V_S, V_SE, CV_MAXI }; // enum EnumCyl { CYL_BIG, CYL_SMALL }; // enum EnumCyl { CYL_BIG, CYL_SMALL }; // EnumCoord const long DIR_X = 0; const long DIR_Y = 1; const long DIR_Z = 2; const long DIM3 = 3; // EnumVertex const long V_AMONT = 0; const long V_AVAL = 1; const long V_TWO = 2; // EnumQuad const long E_A = 0; const long E_B = 1; const long E_C = 2; const long E_D = 3; const long QUAD4 = 4; // EnumHQuad const long Q_A = 0; // z=0 const long Q_B = 1; // z=1 const long Q_C = 2; // y=0 const long Q_D = 3; // y=1 const long Q_E = 4; // x=0 const long Q_F = 5; // x=1 const long HQ_MAXI = 6; // EnumHEdge const long E_AC = 0; const long E_AD = 1; const long E_BC = 2; const long E_BD = 3; const long E_AE = 4; const long E_AF = 5; const long E_BE = 6; const long E_BF = 7; const long E_CE = 8; const long E_CF = 9; const long E_DE = 10; const long E_DF = 11; const long HE_MAXI = 12; // EnumHVertex const long V_ACE = 0; const long V_ACF = 1; const long V_ADE = 2; const long V_ADF = 3; const long V_BCE = 4; const long V_BCF = 5; const long V_BDE = 6; const long V_BDF = 7; const long HV_MAXI = 8; // EnumVCyl const long V_E = 0; const long V_NE = 1; const long V_N = 2; const long V_NW = 3; const long V_W = 4; const long V_SW = 5; const long V_S = 6; const long V_SE = 7; const long CV_MAXI = 8; const long CV_MAXI_EXT = 8; const long CV_MAXI_INT = 4; const long CYL_SMALL = 0; const long CYL_BIG = 1; const long CYL_BIG_SLICES = 4; const long CYL_SMALL_SLICES = 6; const long CYL_LAYERS = 2; interface Elements : Element { long countVertex() raises (SALOME::SALOME_Exception); long countEdge() raises (SALOME::SALOME_Exception); long countQuad() raises (SALOME::SALOME_Exception); long countHexa() raises (SALOME::SALOME_Exception); Vertex getVertex( in long n ) raises (SALOME::SALOME_Exception); Edge getEdge( in long n ) raises (SALOME::SALOME_Exception); Quad getQuad( in long n ) raises (SALOME::SALOME_Exception); Hexa getHexa( in long n ) raises (SALOME::SALOME_Exception); long findVertex( in Vertex p ) raises (SALOME::SALOME_Exception);//CS_NOT_SPEC Vertex getVertexIJK( in long x, in long y, in long z) raises (SALOME::SALOME_Exception); Edge getEdgeI( in long x, in long y, in long z) raises (SALOME::SALOME_Exception); Edge getEdgeJ( in long x, in long y, in long z) raises (SALOME::SALOME_Exception); Edge getEdgeK( in long x, in long y, in long z) raises (SALOME::SALOME_Exception); Quad getQuadIJ( in long x, in long y, in long z) raises (SALOME::SALOME_Exception); Quad getQuadIK( in long x, in long y, in long z) raises (SALOME::SALOME_Exception); Quad getQuadJK( in long x, in long y, in long z) raises (SALOME::SALOME_Exception); Hexa getHexaIJK( in long x, in long y, in long z) raises (SALOME::SALOME_Exception); // Quad getQuad1( in EnumCoord dir, in long nx, in long ny, in long nz) raises (SALOME::SALOME_Exception); //CS_NOT_SPEC // // Edge getEdge1( in EnumCoord dir, in long nx, in long ny, in long nz) raises (SALOME::SALOME_Exception); //CS_NOT_SPEC long saveVtk( in string fname ) raises (SALOME::SALOME_Exception);//CS_NOT_SPEC void clearAssociation () raises (SALOME::SALOME_Exception); }; }; #endif