Salome HOME
Initialisation de la base KERNEL avec la version operationnelle de KERNEL_SRC issue...
[modules/kernel.git] / src / SALOMEDS / Handle_SALOMEDS_PythonObjectAttribute.hxx
1 //  File      : Handle_SALOMEDS_PythonObjectAttribute.hxx
2 //  Created   : Tue Oct  8 10:13:30 2002
3 //  Author    : Michael Ponikarov
4 //  Project   : SALOME
5 //  Module    : SALOMEDS
6 //  Copyright : Open CASCADE
7 //  $Header$
8
9 #ifndef _Handle_SALOMEDS_PythonObjectAttribute_HeaderFile
10 #define _Handle_SALOMEDS_PythonObjectAttribute_HeaderFile
11
12 #ifndef _Standard_Macro_HeaderFile
13 #include <Standard_Macro.hxx>
14 #endif
15 #ifndef _Standard_HeaderFile
16 #include <Standard.hxx>
17 #endif
18
19 #ifndef _Handle_TDF_Attribute_HeaderFile
20 #include <Handle_TDF_Attribute.hxx>
21 #endif
22
23 class Standard_Transient;
24 class Handle_Standard_Type;
25 class Handle(TDF_Attribute);
26 class SALOMEDS_PythonObjectAttribute;
27 Standard_EXPORT Handle_Standard_Type& STANDARD_TYPE(SALOMEDS_PythonObjectAttribute);
28
29 class Handle(SALOMEDS_PythonObjectAttribute) : public Handle(TDF_Attribute) {
30   public:
31     inline void* operator new(size_t,void* anAddress) 
32       {
33         return anAddress;
34       }
35     inline void* operator new(size_t size) 
36       { 
37         return Standard::Allocate(size); 
38       }
39     inline void  operator delete(void *anAddress) 
40       { 
41         if (anAddress) Standard::Free((Standard_Address&)anAddress); 
42       }
43 //    inline void  operator delete(void *anAddress, size_t size) 
44 //      { 
45 //        if (anAddress) Standard::Free((Standard_Address&)anAddress,size); 
46 //      }
47     Handle(SALOMEDS_PythonObjectAttribute)():Handle(TDF_Attribute)() {} 
48     Handle(SALOMEDS_PythonObjectAttribute)(const Handle(SALOMEDS_PythonObjectAttribute)& aHandle) : Handle(TDF_Attribute)(aHandle) 
49      {
50      }
51
52     Handle(SALOMEDS_PythonObjectAttribute)(const SALOMEDS_PythonObjectAttribute* anItem) : Handle(TDF_Attribute)((TDF_Attribute *)anItem) 
53      {
54      }
55
56     Handle(SALOMEDS_PythonObjectAttribute)& operator=(const Handle(SALOMEDS_PythonObjectAttribute)& aHandle)
57      {
58       Assign(aHandle.Access());
59       return *this;
60      }
61
62     Handle(SALOMEDS_PythonObjectAttribute)& operator=(const SALOMEDS_PythonObjectAttribute* anItem)
63      {
64       Assign((Standard_Transient *)anItem);
65       return *this;
66      }
67
68     SALOMEDS_PythonObjectAttribute* operator->() 
69      {
70       return (SALOMEDS_PythonObjectAttribute *)ControlAccess();
71      }
72
73     SALOMEDS_PythonObjectAttribute* operator->() const 
74      {
75       return (SALOMEDS_PythonObjectAttribute *)ControlAccess();
76      }
77
78    Standard_EXPORT ~Handle(SALOMEDS_PythonObjectAttribute)();
79  
80    Standard_EXPORT static const Handle(SALOMEDS_PythonObjectAttribute) DownCast(const Handle(Standard_Transient)& AnObject);
81 };
82 #endif