0023510: Integration of test grid "vis" into the new testing system
[occt.git] / src / PlotMgt / PlotMgt.cdl
1 -- Created on: 1998-11-25
2 -- Created by: DCB
3 -- Copyright (c) 1998-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 package PlotMgt
23
24 uses
25   Aspect,
26   MFT,
27   Quantity,
28   TCollection,
29   TColStd,
30   TShort,
31   OSD,
32   MMgt
33
34 is
35   ------------------------------
36   -- Category: Pointers
37   ------------------------------
38   pointer PlotterDriverPtr to PlotterDriver from PlotMgt;
39
40   ------------------------------
41   -- Category: Exceptions
42   ------------------------------
43   exception PlotterDefinitionError inherits OutOfRange from Standard;
44   ---Category: The exceptions
45
46   exception PlotterAccessError     inherits OutOfRange from Standard;
47   ---Category: The exceptions
48              
49   --------------------
50   -- Category: Classes
51   --------------------
52   class ImageDriver;
53   ---Purpose:
54
55   class PlotterParameter;
56   ---Purpose: Defines any plotter parameter and determines its behavior.
57   ---Category: Classes
58
59   class Plotter;
60   ---Purpose: Defines a Plotter (sequence of plotter parameters and some
61   --          methods to operate with). This class must be used to access
62   --          plotter parameters.
63   ---Category: Classes
64
65   deferred class PlotterDriver;
66   ---Purpose:
67   
68   private class TextManager;
69   ---Purpose:
70
71   -------------------------
72   -- Category: Enumerations
73   -------------------------
74
75   enumeration TypeOfOrigin is
76     TOO_CENTER,
77     TOO_BOTTOMLEFT,
78     TOO_BOTTOMRIGHT,
79     TOO_TOPLEFT,
80     TOO_TOPRIGHT
81   end;
82
83   enumeration TypeOfQuality is
84     TOQ_DRAFT,
85     TOQ_NORMAL,
86     TOQ_HIGH,
87     TOQ_BEST
88   end;
89
90   enumeration ImageFormat is
91     IF_DISABLE,
92     IF_ENABLE,
93     IF_XWD,
94     IF_BMP,
95     IF_GIF
96   end;
97
98   enumeration TypeOfPlotterParameter is
99     TOPP_Undefined,
100     TOPP_Boolean,
101     TOPP_Integer,
102     TOPP_Real,
103     TOPP_String,
104     TOPP_ListString
105   end;
106
107   enumeration PlottingType is
108     PT_RASTER,
109     PT_PENEMULATOR
110   end;
111
112   enumeration PaperFormat is
113     PF_USERDEFINED,  -- (00.00 x 00.00)
114     PF_A0,           -- (84.10 x 118.9)
115     PF_A1,           -- (59.40 x 84.10)
116     PF_A2,           -- (42.00 x 59.40)
117     PF_A3,           -- (29.70 x 42.00)
118     PF_A4,           -- (21.00 x 29.70)
119     PF_A5,           -- (14.80 x 21.00)
120     PF_LETTER,       -- (21.59 x 27.94)
121     PF_LEGAL,        -- (21.59 x 35.56)
122     PF_STATEMENT,    -- (13.97 x 21.59)
123     PF_EXCLUSIVE,    -- (18.41 x 26.67)
124     PF_FOLIO,        -- (21.59 x 33.02)
125     PF_QUARTO,       -- (21.50 x 27.50)
126     PF_ENVELOPE,     -- (11.00 x 23.00)
127     PF_MONARCH       -- (09.84 x 19.04)
128   end;
129
130   ---------------------------------
131   -- Category: Instantiated classes
132   ---------------------------------
133   private class ListOfPlotterParameter instantiates
134     Sequence from TCollection (PlotterParameter from PlotMgt);
135
136   private class HListOfPlotterParameter instantiates
137     HSequence from TCollection (PlotterParameter from PlotMgt,
138                                 ListOfPlotterParameter from PlotMgt);
139
140   class ListOfMFTFonts instantiates
141     Array1 from TCollection (FontManager from MFT);
142
143   class HListOfMFTFonts instantiates
144     HArray1 from TCollection (FontManager from MFT, ListOfMFTFonts);
145
146   ---------------------------------
147   -- Category: Package methods
148   ---------------------------------
149   DeviceList
150   returns HSequenceOfAsciiString from TColStd;
151   ---Purpose:
152
153   TypeFromString (
154     aTypeString : in out AsciiString from TCollection
155   ) returns TypeOfPlotterParameter from PlotMgt;
156   ---Purpose:
157
158   StringFromType (
159     aType : TypeOfPlotterParameter from PlotMgt
160   ) returns AsciiString from TCollection;
161   ---Purpose:
162
163   OriginFromString (
164     anOriginString : in out AsciiString from TCollection
165   ) returns TypeOfOrigin from PlotMgt;
166   ---Purpose:
167
168   StringFromOrigin (
169     anOrigin : TypeOfOrigin from PlotMgt
170   ) returns AsciiString from TCollection;
171   ---Purpose:
172
173   QualityFromString (
174     aQualityString : in out AsciiString from TCollection
175   ) returns TypeOfQuality from PlotMgt;
176   ---Purpose:
177
178   StringFromQuality (
179     aQuality : TypeOfQuality from PlotMgt
180   ) returns AsciiString from TCollection;
181   ---Purpose:
182
183   ImageFormatFromString (
184     anImageFormatString : in out AsciiString from TCollection
185   ) returns ImageFormat from PlotMgt;
186   ---Purpose:
187
188   StringFromImageFormat (
189     anImageFormat : ImageFormat from PlotMgt
190   ) returns AsciiString from TCollection;
191   ---Purpose:
192
193   PlottingTypeFromString (
194     aPlottingTypeString : in out AsciiString from TCollection
195   ) returns PlottingType from PlotMgt;
196   ---Purpose:
197
198   StringFromPlottingType (
199     aPlottingType : PlottingType from PlotMgt
200   ) returns AsciiString from TCollection;
201   ---Purpose:
202
203   PaperFormatFromString (
204     aPaperFormatString : in out AsciiString from TCollection
205   ) returns PaperFormat from PlotMgt;
206   ---Purpose:
207
208   StringFromPaperFormat (
209     aPaperFormat : PaperFormat from PlotMgt
210   ) returns AsciiString from TCollection;
211   ---Purpose:
212
213   PaperSize (
214     aFormat : in out AsciiString from TCollection;
215     aWidth  :    out Real from Standard;
216     aLength :    out Real from Standard
217   );
218   ---Purpose:
219
220 end PlotMgt;