0024428: Implementation of LGPL license
[occt.git] / src / Aspect / Aspect_FontMap.cdl
1 -- Created on: 1993-09-07
2 -- Created by: GG
3 -- Copyright (c) 1993-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
5 --
6 -- This file is part of Open CASCADE Technology software library.
7 --
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.
13 --
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
16
17 class FontMap from Aspect inherits TShared from MMgt
18
19         ---Version: 0.0
20
21         ---Purpose: This class defines a FontMap object.
22         ---Keywords:
23         ---Warning:
24         ---References:
25 uses
26         FontStyle               from Aspect,
27         FontMapEntry            from Aspect,
28         SequenceOfFontMapEntry  from Aspect
29
30 raises
31         BadAccess       from Aspect
32
33 is
34
35         Create returns mutable FontMap from Aspect;
36
37         AddEntry (me : mutable; AnEntry : FontMapEntry from Aspect)
38         ---Level: Public
39         ---Purpose: Adds an entry in the font map <me>.
40         --  Warning: Raises BadAccess if FontMap size is exceeded.
41         raises BadAccess from Aspect;
42
43         AddEntry (me : mutable; aStyle : FontStyle from Aspect)
44                                         returns Integer from Standard;
45         ---Level: Public
46         ---Purpose: Search an identical font style entry in the font map <me>
47         -- and returns the FontMapEntry Index if exist.
48         -- Or add a new entry and returns the computed FontMapEntry index used.
49
50         Size( me ) returns Integer from Standard is static;
51         ---Level: Public
52         ---Purpose: Returns the Allocated fontmap Size
53  
54         Index( me ; aFontmapIndex : Integer ) returns Integer from Standard
55         ---Level: Public
56         ---Purpose: Returns the FontMapEntry.Index of the FontMap
57         --          at rank <aFontmapIndex> .
58         raises BadAccess from Aspect is static;
59         ---Trigger: Raises BadAccess if the index less than 1 or
60         --          greater than Size.
61
62         Dump( me ) ;
63
64         Entry ( me ;
65                 AnIndex : Integer from Standard )
66         returns FontMapEntry from Aspect
67         ---Level: Public
68         ---Purpose: Returns the Font map entry with the index <AnIndex>.
69         --  Warning: Raises BadAccess if the index less than 1
70         --          or greater than Size.
71         raises BadAccess from Aspect is static;
72
73 fields
74
75         mydata      :   SequenceOfFontMapEntry from Aspect is protected;
76
77 end FontMap ;