Salome HOME
a2a52f634bc126e89a8a94ed73ee07be9cab41ba
[modules/geom.git] / src / STEPPlugin / STEPPlugin_IOperations.hxx
1 // Copyright (C) 2014-2023  CEA/DEN, EDF R&D, OPEN CASCADE
2 //
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either
6 // version 2.1 of the License, or (at your option) any later version.
7 //
8 // This library is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 // Lesser General Public License for more details.
12 //
13 // You should have received a copy of the GNU Lesser General Public
14 // License along with this library; if not, write to the Free Software
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 //
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 //
19 // File : STEPPlugin_IOperations.hxx
20
21 #ifndef _STEPPlugin_IOperations_HXX_
22 #define _STEPPlugin_IOperations_HXX_
23
24 // internal includes
25 #include "STEPPlugin_Engine.hxx"
26
27 // GEOM includes
28 #include "GEOMImpl_IBaseIEOperations.hxx"
29
30 class STEPPLUGINENGINE_EXPORT STEPPlugin_IOperations: public GEOMImpl_IBaseIEOperations
31 {
32
33 public:
34
35   /*!
36    *  \brief Units of length
37    */
38   enum LengthUnit
39   {
40     LengthUnit_Inch,
41     LengthUnit_Millimeter,
42     LengthUnit_Foot,
43     LengthUnit_Mile,
44     LengthUnit_Meter,
45     LengthUnit_Kilometer,
46     LengthUnit_Milliinch,
47     LengthUnit_Micrometer,
48     LengthUnit_Centimeter,
49     LengthUnit_Microinch
50   };
51
52
53 public:
54   STEPPlugin_IOperations( GEOM_Engine* );
55   ~STEPPlugin_IOperations();
56
57   void ExportSTEP( const Handle(GEOM_Object),
58                    const TCollection_AsciiString&, const LengthUnit );
59   
60   Handle(TColStd_HSequenceOfTransient) ImportSTEP(const TCollection_AsciiString&,
61                                                   const bool,
62                                                   const bool);
63   
64   TCollection_AsciiString ReadValue( const TCollection_AsciiString&,
65                                      const TCollection_AsciiString& );
66 };
67
68 #endif