0022819: Redesign of OpenGl driver
[occt.git] / src / Graphic3d / Graphic3d_GraphicDriver.cdl
1 --
2 -- File:    Graphic3d_GraphicDriver.cdl
3 -- Created: Mardi 28 janvier 1997
4 -- Author:  CAL
5 -- Modified:    01/08/97 ; PCT : ajout texture mapping
6 --              07/08/97 ; PCT : ajout texture environnante
7 --              27/08/97 ; PCT : ajout coordonnee texture
8 --              00/11/97 ; CAL : retrait de la dependance avec math
9 --              00/11/97 ; CAL : ajout polyline par 2 points
10 --      16-09-98 ; BGN : Points d'entree du Triedre (S3819, Phase 1)
11 --              22-09-98 ; BGN : S3989 (anciennement S3819)
12 --                               TypeOfTriedron* from Aspect(et pas Graphic3d)
13 --              03-11-98 ; CAL : Introduction de Visual3d_LayerManager.
14 --              07-10-99 : EUG : Degeneration support (G003)
15 --               Add DegenerateStructure() and
16 --                   SetBackFacingModel() methods.
17 --      10-11-99 ; GG  : PRO19603 Change Redraw( ) method
18 --      16-06-2000 : ATS,GG : G005 - method PrimitiveArray, which are interface of OpenGl
19 --                            package, and used to initialize internal fields
20 --                            of primitives (Convert high level data to internal presentation).
21 --      17/08/00 ; THA ; Thomas HARTL <t-hartl@muenchen.matra-dtv.fr>
22 --              -> Add Print methods (works only under Windows).
23 --      27/03/02 ; GG  ; RIC120302 Add new method Begin(Aspect_Display)
24 --              28/05/02 ; VSV : New trihedron
25 --      23/12/02 ; SAV : Added methods to set background image and its
26 --                       appearence style
27 --              20/01/09 ; ABD : Integration support of system fonts (using FTGL and FreeType)
28 --
29 --              Copyright:  MatraDatavision 1997
30 --
31
32 deferred class GraphicDriver from Graphic3d inherits GraphicDriver from Aspect
33
34     ---Version:
35
36     ---Purpose: This class allows the definition of a graphic driver
37     --      (currently only OpenGl driver is used).
38
39     ---Keywords: OpenGl
40
41     ---Warning:
42     ---References:
43
44 uses
45
46     SharedLibrary       from OSD,
47
48     Array1OfInteger     from TColStd,
49     Array1OfReal        from TColStd,
50     Array2OfReal        from TColStd,
51
52     ExtendedString      from TCollection,
53
54     NameOfColor         from Quantity,
55     Color               from Quantity,
56
57     PlaneAngle          from Quantity,
58
59     AlienImage          from AlienImage,
60
61     Array1OfEdge        from Aspect,
62     CLayer2d            from Aspect,
63     GraphicDriver       from Aspect,
64     TypeOfTriedronEcho  from Aspect,
65     TypeOfTriedronPosition  from Aspect,
66     Handle              from Aspect,
67     Display             from Aspect,
68     PrintAlgo           from Aspect,
69
70     AspectLine3d        from Graphic3d,
71     AspectMarker3d      from Graphic3d,
72     AspectText3d        from Graphic3d,
73     AspectFillArea3d    from Graphic3d,
74     HorizontalTextAlignment from Graphic3d,
75     CBitFields20        from Graphic3d,
76     CGroup              from Graphic3d,
77     CLight              from Graphic3d,
78     CPick               from Graphic3d,
79     CPlane              from Graphic3d,
80     CStructure          from Graphic3d,
81     CView               from Graphic3d,
82     CRawBufferData      from Image,
83     Structure           from Graphic3d,
84     TextPath            from Graphic3d,
85     TypeOfComposition   from Graphic3d,
86     TypeOfPolygon       from Graphic3d,
87     TypeOfPrimitive     from Graphic3d,
88     Vector              from Graphic3d,
89     Array1OfVertex      from Graphic3d,
90     Array2OfVertex      from Graphic3d,
91     Vertex              from Graphic3d,
92     Array1OfVertexC     from Graphic3d,
93     Array2OfVertexC     from Graphic3d,
94     VertexC             from Graphic3d,
95     Array1OfVertexN     from Graphic3d,
96     Array2OfVertexN     from Graphic3d,
97     VertexN             from Graphic3d,
98     Array1OfVertexNC    from Graphic3d,
99     Array2OfVertexNC    from Graphic3d,
100     VertexNC            from Graphic3d,
101     VerticalTextAlignment   from Graphic3d,
102     CInitTexture        from Graphic3d,
103     TypeOfTexture       from Graphic3d,
104     VertexNT            from Graphic3d,
105     Array1OfVertexNT    from Graphic3d,
106     Array2OfVertexNT    from Graphic3d,
107     PrimitiveArray      from Graphic3d,
108     PtrFrameBuffer      from Graphic3d,
109     HArray1OfByte       from TColStd,
110     FillMethod          from Aspect,
111     GradientFillMethod  from Aspect,
112     ExportFormat        from Graphic3d,
113     SortType            from Graphic3d,
114     HArray1OfReal       from TColStd,
115     CUserDraw           from Graphic3d,
116     NListOfHAsciiString from Graphic3d,
117     FontAspect          from OSD,
118     CGraduatedTrihedron from Graphic3d
119
120 raises
121
122     TransformError      from Graphic3d
123
124 is
125         Initialize ( AShrName       : CString from Standard )
126                 returns mutable GraphicDriver from Graphic3d;
127         ---Level: Public
128         ---Purpose: Initialises the Driver
129
130     -------------------------
131     -- Category: Init methods
132     -------------------------
133
134     Begin ( me          : mutable;
135             ADisplay    : CString from Standard )
136         returns Boolean from Standard
137         is deferred;
138     ---Purpose: call_togl_begin
139
140         Begin ( me              : mutable;
141                 ADisplay        : Display from Aspect )
142                 returns Boolean from Standard
143                 is deferred;
144         ---Purpose: call_togl_begin_display
145
146     End ( me    : mutable )
147         is deferred;
148     ---Purpose: call_togl_end
149
150     ----------------------------
151     -- Category: Inquire methods
152     ----------------------------
153
154     InquireLightLimit ( me  : mutable )
155         returns Integer from Standard
156         is deferred;
157     ---Purpose: call_togl_inquirelight
158
159     InquireMat ( me     : mutable;
160                  ACView : CView from Graphic3d;
161                  AMatO  : out Array2OfReal from TColStd;
162                  AMatM  : out Array2OfReal from TColStd )
163         is deferred;
164     ---Purpose: call_togl_inquiremat
165
166     InquirePlaneLimit ( me  : mutable )
167         returns Integer from Standard
168         is deferred;
169     ---Purpose: call_togl_inquireplane
170
171     InquireViewLimit ( me   : mutable )
172         returns Integer from Standard
173         is deferred;
174     ---Purpose: call_togl_inquireview
175
176     InquireTextureAvailable ( me    : mutable )
177         returns Boolean from Standard
178         is deferred;
179     ---Purpose: Returns Standard_True if texture is
180     --      supported by the graphic driver
181
182     ------------------------------
183     -- Category: Highlight methods
184     ------------------------------
185
186     Blink ( me          : mutable;
187             ACStructure : CStructure from Graphic3d;
188             Create      : Boolean from Standard )
189         is deferred;
190     ---Purpose: call_togl_blink
191
192     BoundaryBox ( me            : mutable;
193                   ACStructure   : CStructure from Graphic3d;
194                   Create        : Boolean from Standard )
195         is deferred;
196     ---Purpose: call_togl_boundarybox
197
198     HighlightColor ( me             : mutable;
199                      ACStructure    : CStructure from Graphic3d;
200                      R              : ShortReal from Standard;
201                      G              : ShortReal from Standard;
202                      B              : ShortReal from Standard;
203                      Create         : Boolean from Standard )
204         is deferred;
205     ---Purpose: call_togl_highlightcolor
206
207     NameSetStructure ( me       : mutable;
208                ACStructure  : CStructure from Graphic3d )
209         is deferred;
210     ---Purpose: call_togl_namesetstructure
211
212     -------------------------------------
213     -- Category: Group management methods
214     -------------------------------------
215
216     ClearGroup ( me     : mutable;
217              ACGroup    : CGroup from Graphic3d )
218         is deferred;
219     ---Purpose: call_togl_cleargroup
220
221     CloseGroup ( me     : mutable;
222              ACGroup    : CGroup from Graphic3d )
223         is deferred;
224     ---Purpose: call_togl_closegroup
225
226     FaceContextGroup ( me       : mutable;
227                        ACGroup  : CGroup from Graphic3d;
228                        NoInsert : Integer from Standard )
229         is deferred;
230     ---Purpose: call_togl_facecontextgroup
231
232     Group ( me  : mutable;
233         ACGroup : in out CGroup from Graphic3d )
234         is deferred;
235     ---Purpose: call_togl_group
236
237     LineContextGroup ( me       : mutable;
238                        ACGroup  : CGroup from Graphic3d;
239                        NoInsert : Integer from Standard )
240         is deferred;
241     ---Purpose: call_togl_linecontextgroup
242
243     MarkerContextGroup ( me         : mutable;
244                          ACGroup    : CGroup from Graphic3d;
245                          NoInsert   : Integer from Standard )
246         is deferred;
247     ---Purpose: call_togl_markercontextgroup
248
249     MarkerContextGroup ( me         : mutable;
250                          ACGroup    : CGroup from Graphic3d;
251                          NoInsert   : Integer from Standard;
252                          AMarkWidth : Integer from Standard;
253                          AMarkHeight: Integer from Standard;
254                          ATexture   : HArray1OfByte from TColStd )
255                 is deferred;
256     ---Purpose: call_togl_markercontextgroup
257
258     OpenGroup ( me      : mutable;
259                 ACGroup : CGroup from Graphic3d )
260         is deferred;
261     ---Purpose: call_togl_opengroup
262
263     RemoveGroup ( me        : mutable;
264                   ACGroup   : CGroup from Graphic3d )
265         is deferred;
266     ---Purpose: call_togl_removegroup
267
268     TextContextGroup ( me       : mutable;
269                        ACGroup  : CGroup from Graphic3d;
270                        NoInsert : Integer from Standard )
271         is deferred;
272     ---Purpose: call_togl_textcontextgroup
273
274     -----------------------------------------
275     -- Category: Structure management methods
276     -----------------------------------------
277
278     ClearStructure ( me             : mutable;
279                      ACStructure    : CStructure from Graphic3d )
280         is deferred;
281     ---Purpose: call_togl_clearstructure
282
283     Connect ( me        : mutable;
284               AFather   : CStructure from Graphic3d;
285               ASon      : CStructure from Graphic3d )
286         is deferred;
287     ---Purpose: call_togl_connect
288
289     ContextStructure ( me           : mutable;
290                        ACStructure  : CStructure from Graphic3d )
291         is deferred;
292     ---Purpose: call_togl_contextstructure
293
294     Disconnect ( me         : mutable;
295                  AFather    : CStructure from Graphic3d;
296                  ASon       : CStructure from Graphic3d )
297         is deferred;
298     ---Purpose: call_togl_disconnect
299
300     DisplayStructure ( me           : mutable;
301                        ACView       : CView from Graphic3d;
302                        ACStructure  : CStructure from Graphic3d;
303                        APriority    : Integer from Standard )
304         is deferred;
305     ---Purpose: call_togl_displaystructure
306
307     EraseStructure ( me             : mutable;
308                      ACView         : CView from Graphic3d;
309                      ACStructure    : CStructure from Graphic3d )
310         is deferred;
311     ---Purpose: call_togl_erasestructure
312
313     RemoveStructure ( me            : mutable;
314                       ACStructure   : CStructure from Graphic3d )
315         is deferred;
316     ---Purpose: call_togl_removestructure
317
318     Structure ( me          : mutable;
319                 ACStructure : in out CStructure from Graphic3d )
320         is deferred;
321     ---Purpose: call_togl_structure
322
323     --------------------------------
324     -- Category: Exploration methods
325     --------------------------------
326
327     DumpGroup ( me      : mutable;
328                 ACGroup : CGroup from Graphic3d )
329         is deferred;
330     ---Purpose: call_togl_structure_exploration
331
332     DumpStructure ( me          : mutable;
333                     ACStructure : CStructure from Graphic3d )
334         is deferred;
335     ---Purpose: call_togl_structure_exploration
336
337     DumpView ( me       : mutable;
338                ACView   : CView from Graphic3d )
339         is deferred;
340     ---Purpose: call_togl_view_exploration
341
342     ElementExploration ( me             : mutable;
343                          ACStructure    : CStructure from Graphic3d;
344                          ElementNumber  : Integer from Standard;
345                          AVertex        : out VertexNC from Graphic3d;
346                          AVector        : out Vector from Graphic3d )
347         returns Boolean from Standard
348         is deferred;
349     ---Purpose: call_togl_element_exploration
350
351     ElementType ( me            : mutable;
352                   ACStructure   : CStructure from Graphic3d;
353                   ElementNumber : Integer from Standard )
354         returns TypeOfPrimitive from Graphic3d
355         is deferred;
356     ---Purpose: call_togl_element_type
357
358     ------------------------------------
359     -- Category: Pick management methods
360     ------------------------------------
361
362     InitPick ( me   : mutable )
363         is deferred;
364     ---Purpose: call_togl_init_pick
365
366     Pick ( me   : mutable;
367            ACPick   : out CPick from Graphic3d )
368         is deferred;
369     ---Purpose: call_togl_pick
370
371     PickId ( me         : mutable;
372              ACGroup    : CGroup from Graphic3d )
373         is deferred;
374     ---Purpose: call_togl_pickid
375
376     ------------------------------------
377     -- Category: Structured mode methods
378     ------------------------------------
379
380     ActivateView ( me       : mutable;
381                    ACView   : CView from Graphic3d )
382         is deferred;
383     ---Purpose: call_togl_activateview
384
385     AntiAliasing ( me       : mutable;
386                    ACView   : CView from Graphic3d;
387                    AFlag    : Boolean from Standard )
388         is deferred;
389     ---Purpose: call_togl_antialiasing
390
391     Background ( me     : mutable;
392                  ACView : CView from Graphic3d )
393         is deferred;
394     ---Purpose: call_togl_background
395
396     GradientBackground ( me     : mutable;
397                          ACView : CView from Graphic3d;
398                          AColor1: Color from Quantity;
399                          AColor2: Color from Quantity;
400                          FillStyle : GradientFillMethod from Aspect
401                        )
402     is deferred;
403     ---Purpose: call_togl_gradient_background
404
405
406     BackgroundImage( me           : mutable;
407                      FileName     : CString from Standard;
408                      ACView       : CView from Graphic3d;
409                      FillStyle    : FillMethod from Aspect )
410     is deferred;
411
412     SetBgImageStyle( me        : mutable;
413                      ACView    : CView from Graphic3d;
414                      FillStyle : FillMethod from Aspect )
415     is deferred;
416
417     SetBgGradientStyle( me        : mutable;
418                         ACView    : CView from Graphic3d;
419                         FillStyle : GradientFillMethod from Aspect )
420     is deferred;
421
422     ClipLimit ( me      : mutable;
423                 ACView  : CView from Graphic3d;
424                 AWait   : Boolean from Standard )
425         is deferred;
426     ---Purpose: call_togl_cliplimit
427
428     DeactivateView ( me     : mutable;
429                      ACView : CView from Graphic3d )
430         is deferred;
431     ---Purpose: call_togl_deactivateview
432
433     DepthCueing ( me        : mutable;
434                   ACView    : CView from Graphic3d;
435                   AFlag     : Boolean from Standard )
436         is deferred;
437     ---Purpose: call_togl_cliplimit
438
439     ProjectRaster ( me      : mutable;
440                     ACView  : CView from Graphic3d;
441                     AX      : ShortReal from Standard;
442                     AY      : ShortReal from Standard;
443                     AZ      : ShortReal from Standard;
444                     AU      : out Integer from Standard;
445                     AV      : out Integer from Standard )
446         returns Boolean from Standard
447         is deferred;
448     ---Purpose: call_togl_unproject_raster
449
450     UnProjectRaster ( me        : mutable;
451                       ACView    : CView from Graphic3d;
452                       Axm       : Integer from Standard;
453                       Aym       : Integer from Standard;
454                       AXM       : Integer from Standard;
455                       AYM       : Integer from Standard;
456                       AU        : Integer from Standard;
457                       AV        : Integer from Standard;
458                       AX        : out ShortReal from Standard;
459                       AY        : out ShortReal from Standard;
460                       AZ        : out ShortReal from Standard )
461         returns Boolean from Standard
462         is deferred;
463     ---Purpose: call_togl_unproject_raster
464
465     UnProjectRasterWithRay ( me        : mutable;
466                              ACView    : CView from Graphic3d;
467                              Axm       : Integer from Standard;
468                              Aym       : Integer from Standard;
469                              AXM       : Integer from Standard;
470                              AYM       : Integer from Standard;
471                              AU        : Integer from Standard;
472                              AV        : Integer from Standard;
473                              AX        : out ShortReal from Standard;
474                              AY        : out ShortReal from Standard;
475                              AZ        : out ShortReal from Standard;
476                              DX        : out ShortReal from Standard;
477                              DY        : out ShortReal from Standard;
478                              DZ        : out ShortReal from Standard )
479         returns Boolean from Standard
480         is deferred;
481     ---Purpose: call_togl_unproject_raster_with_ray
482
483     RatioWindow ( me        : mutable;
484                   ACView    : CView from Graphic3d )
485         is deferred;
486     ---Purpose: call_togl_ratio_window
487
488     Redraw ( me             : mutable;
489              ACView         : CView from Graphic3d;
490              ACUnderLayer   : CLayer2d from Aspect;
491              ACOverLayer    : CLayer2d from Aspect;
492              x              : Integer = 0;
493              y              : Integer = 0;
494              width              : Integer = 0;
495              height     : Integer = 0 )
496         is deferred;
497     ---Purpose: call_togl_redraw
498     --  Warning: when the redraw area has a null size, the full view is redrawn
499
500     RemoveView ( me     : mutable;
501                 ACView  : CView from Graphic3d )
502         is deferred;
503     ---Purpose: call_togl_removeview
504
505     SetLight ( me       : mutable;
506            ACView   : CView from Graphic3d )
507         is deferred;
508     ---Purpose: call_togl_setlight
509
510     SetPlane ( me       : mutable;
511                ACView   : CView from Graphic3d )
512         is deferred;
513     ---Purpose: call_togl_setplane
514
515     SetVisualisation ( me       : mutable;
516                        ACView   : CView from Graphic3d )
517         is deferred;
518     ---Purpose: call_togl_setvisualisation
519
520     TransformStructure ( me             : mutable;
521                          ACStructure    : CStructure from Graphic3d )
522         is deferred;
523     ---Purpose: call_togl_transformstructure
524
525         DegenerateStructure ( me                        : mutable;
526                               ACStructure       : CStructure from Graphic3d )
527                 is deferred;
528         ---Purpose: call_togl_degeneratestructure
529
530     Transparency ( me       : mutable;
531                    ACView   : CView from Graphic3d;
532                    AFlag    : Boolean from Standard )
533         is deferred;
534     ---Purpose: call_togl_transparency
535
536     Update ( me             : mutable;
537              ACView         : CView from Graphic3d;
538              ACUnderLayer   : CLayer2d from Aspect;
539              ACOverLayer    : CLayer2d from Aspect )
540             is deferred;
541     ---Purpose: call_togl_update
542
543     View ( me   : mutable;
544            ACView   : in out CView from Graphic3d )
545         returns Boolean from Standard
546         is deferred;
547     ---Purpose: call_togl_view
548
549     ViewMapping ( me        : mutable;
550                   ACView    : CView from Graphic3d;
551                   AWait : Boolean from Standard )
552         is deferred;
553     ---Purpose: call_togl_viewmapping
554
555     ViewOrientation ( me        : mutable;
556                       ACView    : CView from Graphic3d;
557                       AWait     : Boolean from Standard )
558         is deferred;
559     ---Purpose: call_togl_vieworientation
560
561         Environment ( me        : mutable;
562                       ACView    : CView from Graphic3d )
563         is deferred;
564     ---Purpose:
565
566     ----------------------------------------
567     -- Category: Methods to create Marker
568     -- for Purpose : see Graphic3d_Group.cdl
569     ----------------------------------------
570
571     Marker ( me         : mutable;
572              ACGroup    : CGroup from Graphic3d;
573              APoint     : Vertex from Graphic3d;
574              EvalMinMax : Boolean from Standard = Standard_True )
575         is deferred;
576
577     MarkerSet ( me          : mutable;
578                 ACGroup     : CGroup from Graphic3d;
579                 ListVertex  : Array1OfVertex from Graphic3d;
580                 EvalMinMax  : Boolean from Standard = Standard_True )
581         is deferred;
582
583     ----------------------------------------
584     -- Category: Methods to create Polygon
585     -- for Purpose : see Graphic3d_Group.cdl
586     ----------------------------------------
587
588     Polygon ( me            : mutable;
589               ACGroup       : CGroup from Graphic3d;
590               ListVertex    : Array1OfVertex from Graphic3d;
591               AType         : TypeOfPolygon from Graphic3d = Graphic3d_TOP_CONVEX;
592               EvalMinMax    : Boolean from Standard = Standard_True )
593         is deferred;
594     ---Purpose: call_togl_polygon
595
596     Polygon ( me            : mutable;
597               ACGroup       : CGroup from Graphic3d;
598               ListVertex    : Array1OfVertex from Graphic3d;
599               Normal        : Vector from Graphic3d;
600               AType         : TypeOfPolygon from Graphic3d = Graphic3d_TOP_CONVEX;
601               EvalMinMax    : Boolean from Standard = Standard_True )
602         is deferred;
603     ---Purpose: call_togl_polygon
604
605     Polygon ( me            : mutable;
606               ACGroup       : CGroup from Graphic3d;
607               ListVertex    : Array1OfVertexN from Graphic3d;
608               AType         : TypeOfPolygon from Graphic3d = Graphic3d_TOP_CONVEX;
609               EvalMinMax    : Boolean from Standard = Standard_True )
610         is deferred;
611     ---Purpose: call_togl_polygon
612
613     Polygon ( me            : mutable;
614               ACGroup       : CGroup from Graphic3d;
615               ListVertex    : Array1OfVertexN from Graphic3d;
616               Normal        : Vector from Graphic3d;
617               AType         : TypeOfPolygon from Graphic3d = Graphic3d_TOP_CONVEX;
618               EvalMinMax    : Boolean from Standard = Standard_True )
619         is deferred;
620     ---Purpose: call_togl_polygon
621
622     Polygon ( me            : mutable;
623               ACGroup       : CGroup from Graphic3d;
624               ListVertex    : Array1OfVertexNT from Graphic3d;
625               AType         : TypeOfPolygon from Graphic3d = Graphic3d_TOP_CONVEX;
626               EvalMinMax    : Boolean from Standard = Standard_True )
627         is deferred;
628     ---Purpose: call_togl_polygon
629
630     PolygonHoles ( me          : mutable;
631                    ACGroup     : CGroup from Graphic3d;
632                    Bounds      : Array1OfInteger from TColStd;
633                    ListVertex  : Array1OfVertex from Graphic3d;
634                    EvalMinMax  : Boolean from Standard = Standard_True )
635         is deferred;
636     ---Purpose: call_togl_polygon_holes
637
638     PolygonHoles ( me          : mutable;
639                    ACGroup     : CGroup from Graphic3d;
640                    Bounds      : Array1OfInteger from TColStd;
641                    ListVertex  : Array1OfVertex from Graphic3d;
642                    Normal      : Vector from Graphic3d;
643                    EvalMinMax  : Boolean from Standard = Standard_True )
644                    is deferred;
645     ---Purpose: call_togl_polygon_holes
646
647     PolygonHoles ( me          : mutable;
648                    ACGroup     : CGroup from Graphic3d;
649                    Bounds      : Array1OfInteger from TColStd;
650                    ListVertex  : Array1OfVertexN from Graphic3d;
651                    EvalMinMax  : Boolean from Standard = Standard_True )
652         is deferred;
653     ---Purpose: call_togl_polygon_holes
654
655     PolygonHoles ( me          : mutable;
656                    ACGroup     : CGroup from Graphic3d;
657                    Bounds      : Array1OfInteger from TColStd;
658                    ListVertex  : Array1OfVertexN from Graphic3d;
659                    Normal      : Vector from Graphic3d;
660                    EvalMinMax  : Boolean from Standard = Standard_True )
661         is deferred;
662     ---Purpose: call_togl_polygon_holes
663
664     ----------------------------------------
665     -- Category: Methods to create Polyline
666     -- for Purpose : see Graphic3d_Group.cdl
667     ----------------------------------------
668
669     Polyline ( me                       : mutable;
670                ACGroup                  : CGroup from Graphic3d;
671                X1, Y1, Z1, X2, Y2, Z2   : Real from Standard;
672                EvalMinMax               : Boolean from Standard = Standard_True )
673         is deferred;
674     ---Purpose: call_togl_polyline
675
676     Polyline ( me           : mutable;
677                ACGroup      : CGroup from Graphic3d;
678                ListVertex   : Array1OfVertex from Graphic3d;
679                EvalMinMax   : Boolean from Standard = Standard_True )
680         is deferred;
681     ---Purpose: call_togl_polyline
682
683     Polyline ( me           : mutable;
684                ACGroup      : CGroup from Graphic3d;
685                ListVertex   : Array1OfVertexC from Graphic3d;
686                EvalMinMax   : Boolean from Standard = Standard_True )
687         is deferred;
688     ---Purpose: call_togl_polyline
689
690     -----------------------------------------
691     -- Category: Methods to create Quadrangle
692     -- for Purpose : see Graphic3d_Group.cdl
693     -----------------------------------------
694
695     QuadrangleMesh ( me         : mutable;
696                      ACGroup    : CGroup from Graphic3d;
697                      ListVertex : Array2OfVertex from Graphic3d;
698                      EvalMinMax : Boolean from Standard = Standard_True )
699         is deferred;
700     ---Purpose: call_togl_quadrangle
701
702     QuadrangleMesh ( me         : mutable;
703                      ACGroup    : CGroup from Graphic3d;
704                      ListVertex : Array2OfVertexN from Graphic3d;
705                      EvalMinMax : Boolean from Standard = Standard_True )
706         is deferred;
707     ---Purpose: call_togl_quadrangle
708
709     QuadrangleMesh ( me         : mutable;
710                      ACGroup    : CGroup from Graphic3d;
711                      ListVertex : Array2OfVertexNT from Graphic3d;
712                      EvalMinMax : Boolean from Standard = Standard_True )
713         is deferred;
714     ---Purpose: call_togl_quadrangle
715
716     ----------------------------------------
717     -- Category: Methods to create Text
718     -- for Purpose : see Graphic3d_Group.cdl
719     ----------------------------------------
720
721     Text ( me   : mutable;
722            ACGroup  : CGroup from Graphic3d;
723            AText    : CString from Standard;
724            APoint   : Vertex from Graphic3d;
725            AHeight  : Real from Standard;
726            AAngle   : PlaneAngle from Quantity;
727            ATp  : TextPath from Graphic3d;
728            AHta : HorizontalTextAlignment from Graphic3d;
729            AVta : VerticalTextAlignment from Graphic3d;
730            EvalMinMax   : Boolean from Standard = Standard_True )
731         is deferred;
732     ---Purpose: call_togl_text
733
734     Text ( me   : mutable;
735            ACGroup  : CGroup from Graphic3d;
736            AText    : CString from Standard;
737            APoint   : Vertex from Graphic3d;
738            AHeight  : Real from Standard;
739            EvalMinMax   : Boolean from Standard = Standard_True )
740         is deferred;
741     ---Purpose: call_togl_text
742
743     Text ( me   : mutable;
744            ACGroup  : CGroup from Graphic3d;
745            AText    : ExtendedString from TCollection;
746            APoint   : Vertex from Graphic3d;
747            AHeight  : Real from Standard;
748            AAngle   : PlaneAngle from Quantity;
749            ATp  : TextPath from Graphic3d;
750            AHta : HorizontalTextAlignment from Graphic3d;
751            AVta : VerticalTextAlignment from Graphic3d;
752            EvalMinMax   : Boolean from Standard = Standard_True )
753         is deferred;
754     ---Purpose: call_togl_text
755
756     Text ( me   : mutable;
757            ACGroup  : CGroup from Graphic3d;
758            AText    : ExtendedString from TCollection;
759            APoint   : Vertex from Graphic3d;
760            AHeight  : Real from Standard;
761            EvalMinMax   : Boolean from Standard = Standard_True )
762         is deferred;
763     ---Purpose: call_togl_text
764
765     ----------------------------------------
766     ---Category: Methods to create Triangle
767     -- for Purpose : see Graphic3d_Group.cdl
768     ----------------------------------------
769
770     TriangleMesh ( me           : mutable;
771                    ACGroup      : CGroup from Graphic3d;
772                    ListVertex   : Array1OfVertex from Graphic3d;
773                    EvalMinMax   : Boolean from Standard = Standard_True )
774         is deferred;
775     ---Purpose: call_togl_triangle
776
777     TriangleMesh ( me           : mutable;
778                    ACGroup      : CGroup from Graphic3d;
779                    ListVertex   : Array1OfVertexN from Graphic3d;
780                    EvalMinMax   : Boolean from Standard = Standard_True )
781         is deferred;
782     ---Purpose: call_togl_triangle
783
784     TriangleMesh ( me           : mutable;
785                    ACGroup      : CGroup from Graphic3d;
786                    ListVertex   : Array1OfVertexNT from Graphic3d;
787                    EvalMinMax   : Boolean from Standard = Standard_True )
788         is deferred;
789     ---Purpose: call_togl_triangle
790
791     TriangleSet ( me            : mutable;
792                   ACGroup       : CGroup from Graphic3d;
793                   ListVertex    : Array1OfVertex from Graphic3d;
794                   ListEdge      : Array1OfEdge from Aspect;
795                   EvalMinMax    : Boolean from Standard = Standard_True )
796         is deferred;
797     ---Purpose: call_togl_polygon_indices
798
799     TriangleSet ( me            : mutable;
800                   ACGroup       : CGroup from Graphic3d;
801                   ListVertex    : Array1OfVertexN from Graphic3d;
802                   ListEdge      : Array1OfEdge from Aspect;
803                   EvalMinMax    : Boolean from Standard = Standard_True )
804         is deferred;
805     ---Purpose: call_togl_polygon_indices
806
807     TriangleSet ( me            : mutable;
808                   ACGroup       : CGroup from Graphic3d;
809                   ListVertex    : Array1OfVertexNT from Graphic3d;
810                   ListEdge      : Array1OfEdge from Aspect;
811                   EvalMinMax    : Boolean from Standard = Standard_True )
812         is deferred;
813     ---Purpose: call_togl_polygon_indices
814
815     TriangleSet ( me            : mutable;
816                   ACGroup       : CGroup from Graphic3d;
817                   ListVertex    : Array1OfVertexC from Graphic3d;
818                   ListEdge      : Array1OfEdge from Aspect;
819                   EvalMinMax    : Boolean from Standard = Standard_True )
820         is deferred;
821     ---Purpose: call_togl_polygon_indices
822
823     TriangleSet ( me            : mutable;
824                   ACGroup       : CGroup from Graphic3d;
825                   ListVertex    : Array1OfVertexNC from Graphic3d;
826                   ListEdge      : Array1OfEdge from Aspect;
827                   EvalMinMax    : Boolean from Standard = Standard_True )
828         is deferred;
829     ---Purpose: call_togl_polygon_indices
830
831     PrimitiveArray( me          : mutable;
832                     ACGroup     : CGroup from Graphic3d;
833                     parray      : PrimitiveArray from Graphic3d;
834                     EvalMinMax  : Boolean from Standard = Standard_True )
835         is deferred;
836         ---Purpose: call_togl_parray
837
838     UserDraw( me          : mutable;
839               ACGroup     : CGroup from Graphic3d;
840               AUserDraw   : CUserDraw from Graphic3d )
841         is deferred;
842         ---Purpose: call_togl_userdraw
843
844     EnableVBO( me       : mutable;
845                status   : Boolean from Standard )
846                is deferred;
847     ---Purpose: enables/disables usage of OpenGL vertex buffer arrays while drawing primitiev arrays
848
849     ----------------------------------------
850     ---Category: Methods to create Triedron
851     -- for Purpose : see Graphic3d_Group.cdl
852     ----------------------------------------
853
854     ZBufferTriedronSetup ( me          : mutable;
855                            XColor      : NameOfColor from Quantity = Quantity_NOC_RED;
856                            YColor      : NameOfColor from Quantity = Quantity_NOC_GREEN;
857                            ZColor      : NameOfColor from Quantity = Quantity_NOC_BLUE1;
858                            SizeRatio   : Real from Standard = 0.8;
859                            AxisDiametr : Real from Standard = 0.05;
860                            NbFacettes  : Integer from Standard = 12)
861          is deferred;
862         ---Purpose: call_togl_ztriedron_setup
863
864     TriedronDisplay ( me            : mutable;
865                       ACView        : CView from Graphic3d;
866                       APosition     : TypeOfTriedronPosition from Aspect  = Aspect_TOTP_CENTER;
867                       AColor        : NameOfColor from Quantity = Quantity_NOC_WHITE ;
868                       AScale        : Real from Standard  =  0.02;
869                       AsWireframe   : Boolean from Standard = Standard_True )
870         is deferred;
871     ---Purpose: call_togl_triedron_display
872
873
874     TriedronErase ( me      : mutable;
875                   ACView    : CView from Graphic3d)
876         is deferred;
877     ---Purpose: call_togl_triedron_erase
878
879
880     TriedronEcho ( me       : mutable;
881                    ACView   : CView from Graphic3d;
882                    AType    : TypeOfTriedronEcho from Aspect  = Aspect_TOTE_NONE )
883         is deferred;
884     ---Purpose: call_togl_triedron_echo
885
886     ---------------------------------
887     ---Category: Graduated  trihedron
888     ---------------------------------
889
890     GraduatedTrihedronDisplay(me : mutable;
891                               view : CView from Graphic3d;
892                               cubic : CGraduatedTrihedron from Graphic3d)
893     ---Purpose: call_togl_graduatedtrihedron_display
894     is deferred;
895
896     GraduatedTrihedronErase(me : mutable;
897                             view : CView from Graphic3d)
898     ---Purpose: call_togl_graduatedtrihedron_erase
899     is deferred;
900
901     GraduatedTrihedronMinMaxValues(me : mutable;
902                                    xmin : ShortReal from Standard;
903                                    ymin : ShortReal from Standard;
904                                    zmin : ShortReal from Standard;
905                                    xmax : ShortReal from Standard;
906                                    ymax : ShortReal from Standard;
907                                    zmax : ShortReal from Standard)
908     ---Purpose: call_togl_graduatedtrihedron_minmaxvalues
909     is deferred;
910
911     ---------------------------
912     -- Category: Animation mode
913     ---------------------------
914
915     BeginAnimation ( me : mutable;
916              ACView : CView from Graphic3d)
917         is deferred;
918     ---Purpose: call_togl_begin_animation
919
920     EndAnimation ( me   : mutable;
921                ACView   : CView from Graphic3d)
922         is deferred;
923     ---Purpose: call_togl_end_animation
924
925     ----------------------------------
926     -- Category: Ajout mode methods
927     ----------------------------------
928
929     BeginAddMode ( me   : mutable;
930                 ACView      : CView from Graphic3d)
931         returns Boolean from Standard
932         is deferred;
933     ---Purpose: call_togl_begin_ajout_mode
934
935     EndAddMode ( me     : mutable)
936         is deferred;
937     ---Purpose: call_togl_end_ajout_mode
938
939     ----------------------------------
940     -- Category: Immediat mode methods
941     ----------------------------------
942
943     BeginImmediatMode ( me              : mutable;
944                         ACView          : CView from Graphic3d;
945                         ACUnderLayer    : CLayer2d from Aspect;
946                         ACOverLayer     : CLayer2d from Aspect;
947                         DoubleBuffer    : Boolean from Standard;
948                         RetainMode      : Boolean from Standard)
949         returns Boolean from Standard
950         is deferred;
951     ---Purpose: call_togl_begin_immediat_mode
952
953     BeginPolyline ( me  : mutable )
954         is deferred;
955     ---Purpose: call_togl_begin_polyline
956
957     ClearImmediatMode ( me  : mutable; ACView       : CView from Graphic3d;
958                   aFlush        : Boolean from Standard = Standard_True)
959         is deferred;
960     ---Purpose: call_togl_clear_immediat_mode
961
962     Draw ( me   : mutable;
963            X    : ShortReal from Standard;
964            Y    : ShortReal from Standard;
965            Z    : ShortReal from Standard )
966         is deferred;
967     ---Purpose: call_togl_draw
968
969     DrawStructure ( me          : mutable;
970                     ACStructure : CStructure from Graphic3d )
971         is deferred;
972     ---Purpose: call_togl_draw_structure
973
974     EndImmediatMode ( me            : mutable;
975                       Synchronize   : Integer from Standard )
976         is deferred;
977     ---Purpose: call_togl_end_immediat_mode
978
979     EndPolyline ( me    : mutable )
980         is deferred;
981     ---Purpose: call_togl_end_polyline
982
983     Move ( me   : mutable;
984            X    : ShortReal from Standard;
985            Y    : ShortReal from Standard;
986            Z    : ShortReal from Standard )
987         is deferred;
988     ---Purpose: call_togl_move
989
990     SetLineColor ( me   : mutable;
991                    R    : ShortReal from Standard;
992                    G    : ShortReal from Standard;
993                    B    : ShortReal from Standard )
994         is deferred;
995     ---Purpose: call_togl_set_linecolor
996
997     SetLineType ( me    : mutable;
998                   Type  : Integer from Standard )
999         is deferred;
1000     ---Purpose: call_togl_set_linetype
1001
1002     SetLineWidth ( me   : mutable;
1003                Width    : ShortReal from Standard )
1004         is deferred;
1005     ---Purpose: call_togl_set_linewidth
1006
1007     SetMinMax ( me  : mutable;
1008                 X1  : ShortReal from Standard;
1009                 Y1  : ShortReal from Standard;
1010                 Z1  : ShortReal from Standard;
1011                 X2  : ShortReal from Standard;
1012                 Y2  : ShortReal from Standard;
1013                 Z2  : ShortReal from Standard )
1014         is deferred;
1015     ---Purpose: call_togl_set_minmax
1016
1017     Transform ( me      : mutable;
1018                 AMatrix : Array2OfReal from TColStd;
1019                 AType   : TypeOfComposition from Graphic3d )
1020         is deferred;
1021     ---Purpose: call_togl_transform
1022
1023     -----------------------------
1024     -- Category: Textures methods
1025     -----------------------------
1026
1027         CreateTexture ( me;
1028                         Type            : TypeOfTexture from Graphic3d;
1029                         Image           : AlienImage from AlienImage;
1030                         FileName        : CString from Standard;
1031                         TexUpperBounds  : HArray1OfReal from TColStd )
1032         returns Integer from Standard
1033         is deferred;
1034     ---Purpose:
1035
1036     DestroyTexture ( me;
1037                      TexId  : Integer from Standard )
1038         is deferred;
1039     ---Purpose:
1040
1041     ModifyTexture ( me;
1042                     TexId   : Integer from Standard;
1043                     AValue  : CInitTexture from Graphic3d )
1044         is deferred;
1045     ---Purpose:
1046
1047     -------------------------------
1048     -- Category: Layer mode methods
1049     -------------------------------
1050
1051     Layer ( me      : mutable;
1052             ACLayer : in out CLayer2d from Aspect )
1053         is deferred;
1054     ---Purpose: call_togl_layer2d
1055
1056     RemoveLayer ( me        : mutable;
1057                   ACLayer   : CLayer2d from Aspect )
1058         is deferred;
1059     ---Purpose: call_togl_removelayer2d
1060
1061     BeginLayer ( me         : mutable;
1062                  ACLayer    : CLayer2d from Aspect )
1063         is deferred;
1064     ---Purpose: call_togl_begin_layer2d
1065
1066     BeginPolygon2d ( me : mutable )
1067         is deferred;
1068     ---Purpose: call_togl_begin_polygon2d
1069
1070     BeginPolyline2d ( me    : mutable )
1071         is deferred;
1072     ---Purpose: call_togl_begin_polyline2d
1073
1074     ClearLayer ( me         : mutable;
1075                  ACLayer    : CLayer2d from Aspect )
1076         is deferred;
1077     ---Purpose: call_togl_clear_layer2d
1078
1079     Draw ( me   : mutable;
1080            X    : ShortReal from Standard;
1081            Y    : ShortReal from Standard )
1082         is deferred;
1083     ---Purpose: call_togl_draw2d
1084
1085     Edge ( me   : mutable;
1086            X    : ShortReal from Standard;
1087            Y    : ShortReal from Standard )
1088         is deferred;
1089     ---Purpose: call_togl_edge2d
1090
1091     EndLayer ( me       : mutable )
1092         is deferred;
1093     ---Purpose: call_togl_end_layer2d
1094
1095     EndPolygon2d ( me   : mutable )
1096         is deferred;
1097     ---Purpose: call_togl_end_polygon2d
1098
1099     EndPolyline2d ( me  : mutable )
1100         is deferred;
1101     ---Purpose: call_togl_end_polyline2d
1102
1103     Move ( me   : mutable;
1104            X    : ShortReal from Standard;
1105            Y    : ShortReal from Standard )
1106         is deferred;
1107     ---Purpose: call_togl_move2d
1108
1109     Rectangle ( me              : mutable;
1110                 X, Y            : ShortReal from Standard;
1111                 Width, Height   : ShortReal from Standard )
1112         is deferred;
1113     ---Purpose: call_togl_rectangle2d
1114
1115     SetColor ( me   : mutable;
1116                R    : ShortReal from Standard;
1117                G    : ShortReal from Standard;
1118                B    : ShortReal from Standard )
1119         is deferred;
1120     ---Purpose: call_togl_set_color
1121
1122     SetTransparency ( me    : mutable;
1123            ATransparency    : ShortReal from Standard )
1124         is deferred;
1125     ---Purpose: call_togl_set_transparency
1126
1127     UnsetTransparency ( me  : mutable )
1128         is deferred;
1129     ---Purpose: call_togl_unset_transparency
1130
1131     SetLineAttributes ( me      : mutable;
1132                         Type    : Integer from Standard;
1133                         Width   : ShortReal from Standard )
1134         is deferred;
1135     ---Purpose: call_togl_set_line_attributes
1136
1137
1138     SetTextAttributes ( me      : mutable;
1139                         Font    : CString from Standard;
1140                         Type    : Integer from Standard;
1141                         R       : ShortReal from Standard;
1142                         G       : ShortReal from Standard;
1143                         B       : ShortReal from Standard )
1144         is deferred;
1145     ---Purpose: call_togl_set_text_attributes
1146
1147     Text ( me       : mutable;
1148            AText    : CString from Standard;
1149            X, Y     : ShortReal from Standard;
1150            AHeight  : ShortReal from Standard )
1151         is deferred;
1152     ---Purpose: call_togl_text2d
1153     -- If AHeight < 0 default text height is used by driver (DefaultTextHeight method)
1154
1155     DefaultTextHeight( me )
1156         returns ShortReal from Standard
1157         is deferred;
1158
1159
1160     TextSize( me;
1161               AText    : CString from Standard;
1162               AHeight  : ShortReal from Standard;
1163               AWidth   : in out ShortReal from Standard;
1164               AnAscent : in out ShortReal from Standard;
1165               ADescent : in out ShortReal from Standard )
1166             is deferred;
1167     ---Purpose: call_togl_textsize2d
1168
1169         SetBackFacingModel ( me    : mutable;
1170                              aView : CView from Graphic3d )
1171             is deferred;
1172         ---Purpose: call_togl_backfacing
1173
1174         SetDepthTestEnabled( me; view : CView from Graphic3d;
1175                                  isEnabled : Boolean from Standard )
1176     is deferred;
1177     ---Purpose: call_togl_depthtest
1178
1179         IsDepthTestEnabled( me; view : CView from Graphic3d )
1180     returns Boolean from Standard is deferred;
1181     ---Purpose: call_togl_isdepthtest
1182
1183         ReadDepths( me;
1184                     view          : CView from Graphic3d;
1185                     x, y          : Integer;
1186                     width, height : Integer;
1187                     buffer        : Address )
1188     is deferred;
1189     ---Purpose: Reads depths of shown pixels of the given
1190     --          rectangle (glReadPixels with GL_DEPTH_COMPONENT)
1191
1192         FBOCreate( me            : mutable;
1193                    view          : CView from Graphic3d;
1194                    width, height : Integer from Standard )
1195                   returns PtrFrameBuffer from Graphic3d
1196     is deferred;
1197     ---Purpose: Generate offscreen FBO in the graphic library.
1198     --          If not supported on hardware returns NULL.
1199
1200         FBORelease( me            : mutable;
1201                     view          : CView from Graphic3d;
1202                     fboPtr        : in out PtrFrameBuffer from Graphic3d )
1203     is deferred;
1204     ---Purpose: Remove offscreen FBO from the graphic library
1205
1206         FBOGetDimensions( me                  : mutable;
1207                           view                : CView from Graphic3d;
1208                           fboPtr              : PtrFrameBuffer from Graphic3d;
1209                           width, height       : out Integer from Standard;
1210                           widthMax, heightMax : out Integer from Standard )
1211     is deferred;
1212     ---Purpose: Read offscreen FBO configuration.
1213
1214         FBOChangeViewport( me                  : mutable;
1215                            view                : CView from Graphic3d;
1216                            fboPtr              : in out PtrFrameBuffer from Graphic3d;
1217                            width, height       : Integer from Standard )
1218     is deferred;
1219     ---Purpose: Change offscreen FBO viewport.
1220
1221         BufferDump( me            : mutable;
1222                     view          : CView from Graphic3d;
1223                     buffer        : in out CRawBufferData from Image )
1224                    returns Boolean from Standard
1225     is deferred;
1226     ---Purpose: Dump active rendering buffer into specified memory buffer.
1227
1228         SetGLLightEnabled( me; view : CView from Graphic3d;
1229                                isEnabled : Boolean from Standard )
1230     is deferred;
1231     ---Purpose: call_togl_gllight
1232
1233         IsGLLightEnabled( me; view : CView from Graphic3d )
1234     returns Boolean from Standard is deferred;
1235     ---Purpose: call_togl_isgllight
1236
1237     Print (me;
1238            ACView          : CView from Graphic3d;
1239            ACUnderLayer    : CLayer2d from Aspect;
1240            ACOverLayer     : CLayer2d from Aspect;
1241            hPrnDC          : Handle from Aspect;
1242            showBackground  : Boolean;
1243            filename        : CString;
1244            printAlgorithm  : PrintAlgo from Aspect = Aspect_PA_STRETCH;
1245            theScaleFactor  : Real from Standard = 1.0 )
1246         returns Boolean from Standard is deferred;
1247       ---Level: Internal
1248       ---Purpose: print the contents of all layers of the view to the printer.
1249     -- <hPrnDC> : Pass the PrinterDeviceContext (HDC),
1250     -- <showBackground> : When set to FALSE then print the view without background color
1251     -- (background is white)
1252       -- else set to TRUE for printing with current background color.
1253     -- <filename>: If != NULL, then the view will be printed to a file.
1254     -- <printAlgorithm>: Select print algorithm: stretch, tile.   
1255     -- <theScaleFactor>: Scaling coefficient, used internally to scale the
1256     -- printings accordingly to the scale factor selected in the printer 
1257     -- properties dialog.
1258     -- Returns Standard_True if the data is passed to the printer, otherwise
1259     -- Standard_False if the print operation failed due to the printer errors, 
1260     -- or insufficient system memory available.
1261     ---Warning: Works only under Windows.
1262
1263         Export( me: mutable;
1264                 theFileName         : CString from Standard;
1265                 theFormat           : ExportFormat from Graphic3d;
1266                 theSortType         : SortType from Graphic3d;
1267                 theWidth, theHeight : Integer from Standard;
1268                 theView             : CView from Graphic3d;
1269                 theLayerUnder       : CLayer2d from Aspect;
1270                 theLayerOver        : CLayer2d from Aspect;
1271                 thePrecision        : Real from Standard = 0.005;
1272                 theProgressBarFunc  : Address from Standard = NULL;
1273                 theProgressObject   : Address from Standard = NULL )
1274         returns Boolean from Standard
1275         is deferred;
1276     ---Purpose:
1277     -- Export scene into the one of the Vector graphics formats (SVG, PS, PDF...).
1278     -- In contrast to Bitmaps, Vector graphics is scalable (so you may got quality benefits on printing to laser printer).
1279     -- Notice however that results may differ a lot and do not contain some elements.
1280
1281     RemovePrimitiveArray( me        : mutable;
1282                           theCGroup : CGroup from Graphic3d;
1283                           thePArray : PrimitiveArray from Graphic3d )
1284         is deferred;
1285         ---Purpose: Clear visualization data in graphical driver and
1286         -- stop displaying the primitives array of the graphical group
1287         -- <theCGroup>. This method is internal and should be used
1288         -- by Graphic3d_Group only.
1289
1290     --------------------------
1291     -- Category: Class methods
1292     --------------------------
1293
1294     Light ( myclass;
1295         ACLight : CLight from Graphic3d;
1296         Update  : Boolean from Standard )
1297         returns Integer from Standard;
1298     ---Purpose: call_togl_light
1299
1300     Plane ( myclass;
1301         ACPlane : CPlane from Graphic3d;
1302         Update  : Boolean from Standard )
1303         returns Integer from Standard;
1304     ---Purpose: call_togl_plane
1305
1306     -----------------------------
1307     -- Category: Internal methods
1308     -----------------------------
1309
1310     PrintBoolean ( me;
1311                    AComment : CString from Standard;
1312                    AValue   : Boolean from Standard );
1313
1314     PrintCGroup ( me;
1315                   ACGroup   : CGroup from Graphic3d;
1316                   AField    : Integer from Standard );
1317
1318     PrintCLight ( me;
1319                   ACLight   : CLight from Graphic3d;
1320                   AField    : Integer from Standard );
1321
1322     PrintCPick ( me;
1323                  ACPick    : CPick from Graphic3d;
1324                  AField    : Integer from Standard );
1325
1326     PrintCPlane ( me;
1327                   ACPlane   : CPlane from Graphic3d;
1328                   AField    : Integer from Standard );
1329
1330     PrintCStructure ( me;
1331                       ACStructure   : CStructure from Graphic3d;
1332                       AField    : Integer from Standard );
1333
1334     PrintCView ( me;
1335                  ACView : CView from Graphic3d;
1336                  AField : Integer from Standard );
1337
1338     PrintFunction ( me;
1339                     AFunc   : CString from Standard );
1340
1341     PrintInteger ( me;
1342                    AComment  : CString from Standard;
1343                    AValue    : Integer from Standard );
1344
1345     PrintIResult ( me;
1346                    AFunc    : CString from Standard;
1347                    AResult  : Integer from Standard );
1348
1349     PrintShortReal ( me;
1350                      AComment   : CString from Standard;
1351                      AValue     : ShortReal from Standard );
1352
1353     PrintMatrix ( me;
1354                   AComment  : CString from Standard;
1355                   AMatrix   : Array2OfReal from TColStd )
1356         raises TransformError from Graphic3d;
1357
1358     PrintString ( me;
1359                   AComment  : CString from Standard;
1360                   AString   : CString from Standard );
1361
1362     SetTrace ( me       : mutable;
1363                ALevel   : Integer from Standard )
1364         is static;
1365
1366     Trace ( me )
1367         returns Integer from Standard
1368         is static;
1369
1370     --ListOfAvalableFontNames( me;
1371     --           lst: out NListOfHAsciiString from Graphic3d )
1372     --           returns Boolean from Standard
1373     --           is deferred;
1374     --  Purpose:  Initialize list of names of avalable system fonts
1375     --            returns Standard_False if fails
1376     --  ABD Integration support of system fonts (using FTGL and FreeType)
1377
1378 fields
1379
1380     MyTraceLevel    : Integer from Standard is protected;
1381     MySharedLibrary : SharedLibrary from OSD is protected;
1382
1383 end GraphicDriver from Graphic3d;