0023024: Update headers of OCCT files
[occt.git] / src / Standard / Standard_Transient.cdl
1 -- Created on: 1992-08-24
2 -- Created by: Ramin BARRETO
3 -- Copyright (c) 1992-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
5 --
6 -- The content of this file is subject to the Open CASCADE Technology Public
7 -- License Version 6.5 (the "License"). You may not use the content of this file
8 -- except in compliance with the License. Please obtain a copy of the License
9 -- at http://www.opencascade.org and read it completely before using this file.
10 --
11 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13 --
14 -- The Original Code and all software distributed under the License is
15 -- distributed on an "AS IS" basis, without warranty of any kind, and the
16 -- Initial Developer hereby disclaims all such warranties, including without
17 -- limitation, any warranties of merchantability, fitness for a particular
18 -- purpose or non-infringement. Please see the License for the specific terms
19 -- and conditions governing the rights and limitations under the License.
20
21
22 deferred class Transient from Standard 
23
24     ---Purpose: Abstract class which forms the root of the entire 
25     --          Transient class hierarchy.
26     ---Warning: This CDL file is actually a stub, even if it attempts to be correct. 
27     --          See actual header in Standard_Transient_proto.hxx
28
29 uses
30     Type from Standard,
31     Boolean from Standard,
32     Integer from Standard
33     
34 is
35
36         Initialize;
37             ---Purpose: Empty constructor
38             ---Warning: Copy constructor and assignment operators cannot be 
39             --          declared cleanly in CDL, so we use "C++ alias" for that
40             ---C++: alias "Standard_Transient(const Standard_Transient&) : count(0) {}"
41             ---C++: alias "Standard_Transient& operator= (const Standard_Transient&) { return *this; }"
42
43         HashCode (me; Upper : Integer ) returns Integer is virtual;
44             ---Purpose: Returns a hashed value denoting <me>. This value is in
45             --         the range 1..<Upper>.
46             ---C++:  function call
47             ---Level: Advanced
48
49         Delete(me) is  virtual;
50             ---Purpose: Memory deallocator for transient classes
51             ---Level: Advanced
52             ---C++: alias "Standard_EXPORT virtual ~Standard_Transient();"
53             
54         DynamicType (me) returns Type is virtual;
55             ---Purpose: Returns a type information object about this object.
56             ---Level: Advanced
57             
58         IsInstance (me; TheType : Type) returns Boolean is static;
59             ---Purpose: Returns a true value if this is an instance of Type.
60             ---Level: Advanced
61             
62         IsInstance (me; TheTypeName : CString) returns Boolean is static;
63             ---Purpose: Returns a true value if this is an instance of TypeName.
64             ---Level: Advanced
65             
66         IsKind (me; TheType : Type) returns Boolean is static;
67             ---Purpose: Returns true if this is an instance of Type or an
68             --          instance of any class that inherits from Type.
69             --          Note that multiple inheritance is not supported by OCCT RTTI mechanism.
70             ---Level: Advanced
71             
72         IsKind (me; TheTypeName : CString) returns Boolean is static;
73             ---Purpose: Returns true if this is an instance of TypeName or an
74             --         instance of any class that inherits from TypeName.
75             --          Note that multiple inheritance is not supported by OCCT RTTI mechanism.
76             ---Level: Advanced
77             
78         This (me) returns mutable Transient
79             ---Purpose: Returns a Handle which references this object.
80             ---Warning: Must never be called to objects created in stack.
81             ---Level: Advanced
82         is virtual protected;
83  
84  ---Level: Advanced 
85
86         GetRefCount(me) 
87             ---Purpose: get the reference counter
88             --          of this object.
89             returns  Integer  from  Standard; 
90
91      fields
92         count : Integer from Standard;
93         
94 end Transient from Standard;
95
96
97