1 -- Created on: 1992-02-17
2 -- Created by: Christian CAILLET
3 -- Copyright (c) 1992-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
6 -- This file is part of Open CASCADE Technology software library.
8 -- This library is free software; you can redistribute it and/or modify it under
9 -- the terms of the GNU Lesser General Public License version 2.1 as published
10 -- by the Free Software Foundation, with special exception defined in the file
11 -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12 -- distribution for complete text of the license and disclaimer of any warranty.
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
17 class BinderOfShape from TransferBRep inherits Binder from Transfer
19 ---Purpose : Allows direct binding between a starting Object and the Result
20 -- of its transfer when it is Unique.
21 -- The Result itself is defined as a formal parameter <Shape from TopoDS>
22 -- Warning : While it is possible to instantiate BinderOfShape with any Type
23 -- for the Result, it is not advisable to instantiate it with
24 -- Transient Classes, because such Results are directly known and
25 -- managed by TransferProcess & Co, through
26 -- SimpleBinderOfTransient : this class looks like instantiation
27 -- of BinderOfShape, but its method ResultType
28 -- is adapted (reads DynamicType of the Result)
33 ShapeInfo from TransferBRep
35 raises TransferFailure
39 Create returns mutable BinderOfShape;
40 ---Purpose : normal standard constructor, creates an empty BinderOfShape
42 Create (res : any Shape from TopoDS) returns mutable BinderOfShape;
43 ---Purpose : constructor which in the same time defines the result
45 -- IsMultiple (me) returns Boolean;
46 ---Purpose : Returns True if a starting object is bound with SEVERAL
47 -- results : Here, returns allways False
48 -- But it can have next results
50 ResultType (me) returns Type;
51 ---Purpose : Returns the Type permitted for the Result, i.e. the Type
52 -- of the Parameter Class <Shape from TopoDS> (statically defined)
54 ResultTypeName (me) returns CString;
55 ---Purpose : Returns the Type Name computed for the Result (dynamic)
57 SetResult (me : mutable; res : any Shape from TopoDS)
58 ---Purpose : Defines the Result
59 raises TransferFailure;
60 -- Error if the Result is already used (see class Binder)
62 Result (me) returns any Shape from TopoDS
63 ---Purpose : Returns the defined Result, if there is one
64 raises TransferFailure;
65 -- Error if the Result is not defined (see class Binder)
66 ---C++ : return const &
68 CResult (me : mutable) returns any Shape from TopoDS;
69 ---Purpose : Returns the defined Result, if there is one, and allows to
70 -- change it (avoids Result + SetResult).
71 -- Admits that Result can be not yet defined
72 -- Warning : a call to CResult causes Result to be known as defined
77 theres : Shape from TopoDS;