Salome HOME
IMPs 21044, 21057, 21067
[modules/geom.git] / src / NMTDS / NMTDS_IteratorCheckerSI.hxx
1 //  Copyright (C) 2007-2010  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.
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
20 #ifndef _NMTDS_IteratorCheckerSI_HeaderFile
21 #define _NMTDS_IteratorCheckerSI_HeaderFile
22
23 #ifndef _NMTDS_Iterator_HeaderFile
24 #include <NMTDS_Iterator.hxx>
25 #endif
26
27
28 #ifndef _Standard_HeaderFile
29 #include <Standard.hxx>
30 #endif
31 #ifndef _Standard_Macro_HeaderFile
32 #include <Standard_Macro.hxx>
33 #endif
34
35
36 class NMTDS_IteratorCheckerSI  : public NMTDS_Iterator {
37
38 public:
39
40     void* operator new(size_t,void* anAddress) 
41       {
42         return anAddress;
43       }
44     void* operator new(size_t size) 
45       { 
46         return Standard::Allocate(size); 
47       }
48     void  operator delete(void *anAddress) 
49       { 
50         if (anAddress) Standard::Free((Standard_Address&)anAddress); 
51       }
52  // Methods PUBLIC
53  // 
54
55
56 Standard_EXPORT NMTDS_IteratorCheckerSI();
57 Standard_EXPORT virtual ~NMTDS_IteratorCheckerSI();
58
59
60
61
62
63 protected:
64
65  // Methods PROTECTED
66  // 
67
68
69 Standard_EXPORT virtual  void Intersect() ;
70
71
72  // Fields PROTECTED
73  //
74
75
76 private: 
77
78  // Methods PRIVATE
79  // 
80
81
82  // Fields PRIVATE
83  //
84
85
86 };
87
88
89
90
91
92 // other Inline functions and methods (like "C++: function call" methods)
93 //
94
95
96 #endif