Version: 9.16.0
UNV2412_Structure.hxx
Go to the documentation of this file.
1// Copyright (C) 2007-2026 CEA, EDF, OPEN CASCADE
2//
3// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5//
6// This library is free software; you can redistribute it and/or
7// modify it under the terms of the GNU Lesser General Public
8// License as published by the Free Software Foundation; either
9// version 2.1 of the License, or (at your option) any later version.
10//
11// This library is distributed in the hope that it will be useful,
12// but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14// Lesser General Public License for more details.
15//
16// You should have received a copy of the GNU Lesser General Public
17// License along with this library; if not, write to the Free Software
18// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19//
20// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21//
22
23#ifndef UNV2412_Structure_HeaderFile
24#define UNV2412_Structure_HeaderFile
25
26#include "SMESH_DriverUNV.hxx"
27
28#include <vector>
29#include <fstream>
30
31namespace UNV2412{
32
33 typedef std::vector<int> TNodeLabels; // Nodal connectivities
34 typedef int TElementLab; // type of element label
35
37 {
38 TRecord();
39
41 int fe_descriptor_id; // FE descriptor id
42 int phys_prop_tab_num; // physical property table number
43 int mat_prop_tab_num; // material property table number
44 int color; // color
45 TNodeLabels node_labels; // node labels defining element
46
47 //FOR BEAM ELEMENTS ONLY
48 int beam_orientation; // beam orientation node number
49 int beam_fore_end; // beam fore-end cross section number
50 int beam_aft_end; // beam aft-end cross section number
51 };
52
53 typedef std::vector<TRecord> TDataSet;
54
56 Read(std::ifstream& in_stream, TDataSet& theDataSet);
57
59 Write(std::ofstream& out_stream, const TDataSet& theDataSet);
60
62 IsBeam(int theFeDescriptorId);
64 IsFace(int theFeDescriptorId);
66 IsVolume(int theFeDescriptorId);
67
68}
69
70
71#endif
#define MESHDRIVERUNV_EXPORT
Definition: SMESH_DriverUNV.hxx:37
Definition: UNV2412_Structure.hxx:31
void Read(std::ifstream &in_stream, TDataSet &theDataSet)
Definition: UNV2412_Structure.cxx:197
bool IsVolume(int theFeDescriptorId)
Definition: UNV2412_Structure.cxx:338
int TElementLab
Definition: UNV2412_Structure.hxx:34
bool IsBeam(int theFeDescriptorId)
Definition: UNV2412_Structure.cxx:292
void Write(std::ofstream &out_stream, const TDataSet &theDataSet)
Definition: UNV2412_Structure.cxx:241
std::vector< TRecord > TDataSet
Definition: UNV2412_Structure.hxx:53
std::vector< int > TNodeLabels
Definition: UNV2412_Structure.hxx:33
bool IsFace(int theFeDescriptorId)
Definition: UNV2412_Structure.cxx:306
Definition: UNV2412_Structure.hxx:37
TElementLab label
Definition: UNV2412_Structure.hxx:40
int fe_descriptor_id
Definition: UNV2412_Structure.hxx:41
int beam_orientation
Definition: UNV2412_Structure.hxx:48
int mat_prop_tab_num
Definition: UNV2412_Structure.hxx:43
int beam_aft_end
Definition: UNV2412_Structure.hxx:50
TNodeLabels node_labels
Definition: UNV2412_Structure.hxx:45
int beam_fore_end
Definition: UNV2412_Structure.hxx:49
int color
Definition: UNV2412_Structure.hxx:44
int phys_prop_tab_num
Definition: UNV2412_Structure.hxx:42