b311480e |
1 | -- Created on: 1993-01-07 |
2 | -- Created by: Christian CAILLET |
3 | -- Copyright (c) 1993-1999 Matra Datavision |
973c2be1 |
4 | -- Copyright (c) 1999-2014 OPEN CASCADE SAS |
b311480e |
5 | -- |
973c2be1 |
6 | -- This file is part of Open CASCADE Technology software library. |
b311480e |
7 | -- |
973c2be1 |
8 | -- This library is free software; you can redistribute it and / or modify it |
9 | -- under the terms of the GNU Lesser General Public 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. |
b311480e |
13 | -- |
973c2be1 |
14 | -- Alternatively, this file may be used under the terms of Open CASCADE |
15 | -- commercial license or contractual agreement. |
7fd59977 |
16 | |
17 | deferred class SelectInList from IFSelect inherits SelectAnyList |
18 | |
19 | ---Purpose : A SelectInList kind Selection selects a List of an Entity, |
20 | -- which is composed of single Entities |
21 | -- To know the list on which to work, SelectInList has two |
22 | -- deferred methods : NbItems (inherited from SelectAnyList) and |
23 | -- ListedEntity (which gives an item as an Entity) which must be |
24 | -- defined to get a List in an Entity of the required Type (and |
25 | -- consider that list is empty if Entity has not required Type) |
26 | -- |
27 | -- As for SelectAnyList, if a type of Entity defines several |
28 | -- lists, a given sub-class of SelectInList is attached on one |
29 | |
30 | uses AsciiString from TCollection, Transient, EntityIterator, Graph, IntParam |
31 | |
32 | raises OutOfRange |
33 | |
34 | is |
35 | |
36 | -- NbItems (me; ent : Transient) returns Integer is deferred; |
37 | -- KeepInputEntity (me; iter : in out EntityIterator) is deferred; |
38 | -- these method are inherited as deferred and remain to be defined |
39 | |
40 | ListedEntity (me; num : Integer; ent : Transient) |
41 | returns Transient raises OutOfRange is deferred; |
42 | ---Purpose : Returns an Entity, given its rank in the list |
43 | |
44 | FillResult (me; n1,n2 : Integer; ent : Transient; |
45 | result : in out EntityIterator); |
46 | ---Purpose : Puts into the result, the sub-entities of the list, from n1 to |
47 | -- n2 included. Remark that adequation with Entity's type and |
48 | -- length of list has already been made at this stage |
49 | -- Called by RootResult; calls ListedEntity (see below) |
50 | |
51 | end SelectInList; |