1 -- Created on: 1993-01-09
2 -- Created by: CKY / Contract Toubro-Larsen ( SIVA )
3 -- Copyright (c) 1993-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 BooleanTree from IGESSolid inherits IGESEntity
19 ---Purpose: defines BooleanTree, Type <180> Form Number <0>
20 -- in package IGESSolid
21 -- The Boolean tree describes a binary tree structure
22 -- composed of regularized Boolean operations and operands,
23 -- in post-order notation.
27 HArray1OfInteger from TColStd,
28 HArray1OfIGESEntity from IGESData
34 Create returns BooleanTree;
36 -- Specific Methods pertaining to the class
39 operands : HArray1OfIGESEntity;
40 operations : HArray1OfInteger);
41 ---Purpose : This method is used to set the fields of the class
43 -- - operands : Array containing pointer to DE of operands
44 -- - operations : Array containing integer type for operations
46 Length (me) returns Integer;
47 ---Purpose : returns the length of the post-order list
49 IsOperand (me; Index: Integer) returns Boolean
51 ---Purpose : returns True if Index'th value in the post-order list is an Operand;
52 -- else returns False if it is an Integer Operations
53 -- raises exception if Index < 1 or Index > Length()
55 Operand (me; Index : Integer) returns IGESEntity
57 ---Purpose : returns the Index'th value in the post-order list only if it is
58 -- an operand else returns NULL
59 -- raises exception if Index < 1 or Index > Length()
61 Operation (me; Index : Integer) returns Integer
63 ---Purpose : returns the Index'th value in the post-order list only if it is
64 -- an operation else returns 0
65 -- raises exception if Index < 1 or Index > Length()
70 -- Class : IGESSolid_BooleanTree
72 -- Purpose : Declaration of variables specific to the definition
73 -- of the Class BooleanTree.
75 -- Reminder : A BooleanTree instance is defined by :
76 -- - a list having operation codes (integers) or pointers to
77 -- - operands. A positive value in the data entry implies an
78 -- - operation code; a negative value implies the absolute value
79 -- - is to be taken as a pointer to an operand.
81 theOperands : HArray1OfIGESEntity;
83 theOperations : HArray1OfInteger;