PageRenderTime 33ms CodeModel.GetById 13ms app.highlight 16ms RepoModel.GetById 1ms app.codeStats 0ms

/src/contrib/geom-5.1.2.7/inc/GEOMImpl_PositionDriver.hxx

http://pythonocc.googlecode.com/
C++ Header | 158 lines | 105 code | 28 blank | 25 comment | 4 complexity | ea45c154c257a49ed9b4fbd27715b79d MD5 | raw file
  1// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
  2// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
  3// 
  4// This library is free software; you can redistribute it and/or
  5// modify it under the terms of the GNU Lesser General Public
  6// License as published by the Free Software Foundation; either 
  7// version 2.1 of the License.
  8// 
  9// This library is distributed in the hope that it will be useful 
 10// but WITHOUT ANY WARRANTY; without even the implied warranty of 
 11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
 12// Lesser General Public License for more details.
 13//
 14// You should have received a copy of the GNU Lesser General Public  
 15// License along with this library; if not, write to the Free Software 
 16// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 17//
 18// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 19//
 20//  File   : GEOMImpl_PositionDriver.ixx
 21//  Module : GEOMImpl
 22
 23#ifndef _GEOMImpl_PositionDriver_HeaderFile
 24#define _GEOMImpl_PositionDriver_HeaderFile
 25
 26#ifndef _TColStd_SequenceOfExtendedString_HeaderFile
 27#include <TColStd_SequenceOfExtendedString.hxx>
 28#endif
 29#ifndef _Standard_TypeMismatch_HeaderFile
 30#include <Standard_TypeMismatch.hxx>
 31#endif
 32
 33#ifndef _Standard_HeaderFile
 34#include <Standard.hxx>
 35#endif
 36
 37#ifndef _Standard_Macro_HeaderFile
 38#include <Standard_Macro.hxx>
 39#endif
 40#ifndef _Standard_HeaderFile
 41#include <Standard.hxx>
 42#endif
 43#ifndef _Standard_GUID_HeaderFile
 44#include <Standard_GUID.hxx>
 45#endif 
 46
 47#ifndef _Handle_TFunction_Driver_HeaderFile
 48#include <Handle_TFunction_Driver.hxx>
 49#endif
 50
 51class Standard_Transient;
 52class Handle_Standard_Type;
 53class Handle(TFunction_Driver);
 54class GEOMImpl_PositionDriver;
 55
 56Standard_EXPORT Handle_Standard_Type& STANDARD_TYPE(GEOMImpl_PositionDriver);
 57
 58class Handle(GEOMImpl_PositionDriver) : public Handle(TFunction_Driver) {
 59  public:
 60    inline void* operator new(size_t,void* anAddress) 
 61      {
 62        return anAddress;
 63      }
 64    inline void* operator new(size_t size) 
 65      { 
 66        return Standard::Allocate(size); 
 67      }
 68    inline void  operator delete(void *anAddress) 
 69      { 
 70        if (anAddress) Standard::Free((Standard_Address&)anAddress); 
 71      }
 72
 73    Handle(GEOMImpl_PositionDriver)():Handle(TFunction_Driver)() {} 
 74    Handle(GEOMImpl_PositionDriver)(const Handle(GEOMImpl_PositionDriver)& aHandle) : Handle(TFunction_Driver)(aHandle) 
 75     {
 76     }
 77
 78    Handle(GEOMImpl_PositionDriver)(const GEOMImpl_PositionDriver* anItem) : Handle(TFunction_Driver)((TFunction_Driver *)anItem) 
 79     {
 80     }
 81
 82    Handle(GEOMImpl_PositionDriver)& operator=(const Handle(GEOMImpl_PositionDriver)& aHandle)
 83     {
 84      Assign(aHandle.Access());
 85      return *this;
 86     }
 87
 88    Handle(GEOMImpl_PositionDriver)& operator=(const GEOMImpl_PositionDriver* anItem)
 89     {
 90      Assign((Standard_Transient *)anItem);
 91      return *this;
 92     }
 93
 94    GEOMImpl_PositionDriver* operator->() 
 95     {
 96      return (GEOMImpl_PositionDriver *)ControlAccess();
 97     }
 98
 99    GEOMImpl_PositionDriver* operator->() const 
100     {
101      return (GEOMImpl_PositionDriver *)ControlAccess();
102     }
103
104   Standard_EXPORT ~Handle(GEOMImpl_PositionDriver)() {};
105 
106   Standard_EXPORT static const Handle(GEOMImpl_PositionDriver) DownCast(const Handle(Standard_Transient)& AnObject);
107};
108
109#ifndef _TFunction_Driver_HeaderFile
110#include <TFunction_Driver.hxx>
111#endif
112#ifndef _TFunction_Logbook_HeaderFile
113#include <TFunction_Logbook.hxx>
114#endif
115#ifndef _Standard_CString_HeaderFile
116#include <Standard_CString.hxx>
117#endif
118
119class TColStd_SequenceOfExtendedString;
120
121
122class GEOMImpl_PositionDriver : public TFunction_Driver {
123
124public:
125
126    inline void* operator new(size_t,void* anAddress) 
127      {
128        return anAddress;
129      }
130    inline void* operator new(size_t size) 
131      { 
132        return Standard::Allocate(size); 
133      }
134    inline void  operator delete(void *anAddress) 
135      { 
136        if (anAddress) Standard::Free((Standard_Address&)anAddress); 
137      }
138
139 // Methods PUBLIC
140 // 
141Standard_EXPORT GEOMImpl_PositionDriver();
142Standard_EXPORT virtual  Standard_Integer Execute(TFunction_Logbook& log) const; 
143Standard_EXPORT virtual void Validate(TFunction_Logbook&) const {}
144Standard_EXPORT Standard_Boolean MustExecute(const TFunction_Logbook&) const { return Standard_True; }
145Standard_EXPORT static const Standard_GUID& GetID();
146Standard_EXPORT ~GEOMImpl_PositionDriver() {};
147
148
149 // Type management
150 //
151Standard_EXPORT friend Handle_Standard_Type& GEOMImpl_PositionDriver_Type_();
152Standard_EXPORT const Handle(Standard_Type)& DynamicType() const  { return STANDARD_TYPE(GEOMImpl_PositionDriver) ; }
153Standard_EXPORT Standard_Boolean IsKind(const Handle(Standard_Type)& AType) const { return (STANDARD_TYPE(GEOMImpl_PositionDriver) == AType || TFunction_Driver::IsKind(AType)); } 
154
155
156};
157
158#endif