b311480e |
1 | /* |
2 | Copyright (c) 1999-2012 OPEN CASCADE SAS |
3 | |
4 | The content of this file is subject to the Open CASCADE Technology Public |
5 | License Version 6.5 (the "License"). You may not use the content of this file |
6 | except in compliance with the License. Please obtain a copy of the License |
7 | at http://www.opencascade.org and read it completely before using this file. |
8 | |
9 | The Initial Developer of the Original Code is Open CASCADE S.A.S., having its |
10 | main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France. |
11 | |
12 | The Original Code and all software distributed under the License is |
13 | distributed on an "AS IS" basis, without warranty of any kind, and the |
14 | Initial Developer hereby disclaims all such warranties, including without |
15 | limitation, any warranties of merchantability, fitness for a particular |
16 | purpose or non-infringement. Please see the License for the specific terms |
17 | and conditions governing the rights and limitations under the License. |
18 | |
19 | */ |
20 | |
7fd59977 |
21 | #ifndef CGMTYPES_H |
22 | #define CGMTYPES_H |
23 | |
24 | /* Include the only file on which this is dependent. */ |
25 | |
26 | #include "cgmmach.h" |
27 | |
28 | /* CGM Typedefs */ |
29 | |
30 | typedef short Logical; |
31 | typedef long Index; |
32 | typedef unsigned short Enum; |
33 | typedef Int16 Code; |
34 | typedef long Prec; |
35 | typedef unsigned long Posint; |
36 | typedef float Ptype; |
37 | typedef double Mtype; |
38 | |
39 | /* Structures used by CGM user interface */ |
40 | |
41 | typedef struct { float x, y; } Point; |
42 | typedef struct { float x, y; } Vector; |
43 | typedef struct { Posint red, green, blue; } RGBcolour; |
44 | struct colour { |
45 | Index index; |
46 | Posint red, green, blue; |
47 | }; |
48 | typedef struct colour Colour; |
49 | |
50 | typedef Index Indexcolour; |
51 | |
52 | /* Useful Structures for CGM routines */ |
53 | |
54 | struct vdc { |
55 | long intr; |
56 | float real; |
57 | }; |
58 | typedef struct vdc Vdc; |
59 | |
60 | struct colourentry { |
61 | float red, green, blue; |
62 | }; |
63 | typedef struct colourentry Colourentry; |
64 | |
65 | typedef double Tmatrix[3][2]; |
66 | |
67 | struct point { |
68 | struct vdc x, y; |
69 | }; |
70 | typedef struct point Cpoint; |
71 | |
72 | struct rect { |
73 | struct point a, b; |
74 | }; |
75 | |
76 | typedef struct { float left, right, top, bot; } Rect; |
77 | |
78 | |
79 | #ifndef TRUE |
80 | #define TRUE ((Logical) 1) |
81 | #endif |
82 | |
83 | #ifndef FALSE |
84 | #define FALSE ((Logical) 0) |
85 | #endif |
86 | |
87 | #endif /* end of cgmtypes.h */ |