0023510: Integration of test grid "vis" into the new testing system
[occt.git] / src / CGM / cgmtypes.h
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
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  */