e6f817ec66cf2ae7f41e80238a8d43d2d7a46b10
[occt.git] / src / PrsMgr / PrsMgr.cdl
1 -- Created on: 1995-01-25
2 -- Created by: Jean-Louis Frenkel
3 -- Copyright (c) 1995-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 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.
13 --
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
16
17 package PrsMgr
18         ---Purpose: The PrsMgr package provides low level services
19         -- and is only to be used when you do not want to use
20         -- the services provided by AIS.
21         -- PrsMgr manages display through the following services:
22         -- -   supplying a graphic structure for the object to be presented
23         -- -   recalculating presentations when required, e.g. by
24         --   moving the object or changing its color
25         -- -   defining the display mode of the object to be
26         --   presented; in the case of AIS_Shape, for example,
27         --   this determines whether the object is to be displayed in:
28         --   -   wireframe 0
29         --   -   shading 1.
30         -- Note that each new Interactive Object must have all its display modes defined.
31         
32 uses
33
34     MMgt,TCollection,
35     TopLoc,
36     Prs3d,Graphic3d,
37     Quantity,Geom,
38     V3d, 
39     TColStd, 
40     gp
41  
42 is
43
44     enumeration TypeOfPresentation3d is TOP_AllView, TOP_ProjectorDependant
45     end TypeOfPresentation3d;
46         ---Purpose: To declare the type of presentation as follows
47         -- -   AllView for display involving no recalculation for
48         --   new projectors (points of view)in hidden line removal mode
49         -- -   ProjectorDependant for display in hidden line
50         --   removal mode, where every new point of view
51         --   entails recalculation of the display.
52
53     class PresentationManager;
54     alias PresentationManager3d is PresentationManager;
55     class Presentation;
56     alias Presentation3d is Presentation;
57     deferred class PresentableObject;
58
59     imported ListOfPresentations;
60
61     class Prs;
62
63     class ModedPresentation;
64     class Presentations  instantiates Sequence from TCollection
65         (ModedPresentation from PrsMgr);
66     pointer PresentationPointer to Presentation from PrsMgr;
67     pointer PresentableObjectPointer to PresentableObject from PrsMgr;
68 end PrsMgr;