0023510: Integration of test grid "vis" into the new testing system
[occt.git] / src / CGM / cgmout.h
CommitLineData
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 CGMOUT_H
22#define CGMOUT_H
23
24/* Include all files on which this is dependent. */
25
26#include "cgmmach.h"
27#include "cgmtypes.h"
28#include "cgmstruc.h"
29
30/* Include file that all modules using this file will use. */
31
32#include "cgmatt.h"
33#include "cgmerr.h"
34
35/* external structures needed by driver */
36
37 extern const struct char_defaults chardef;
38 extern struct char_defaults mfchar, curchar, oldchar;
39 extern const struct text_defaults textdef;
40 extern struct text_defaults mftext, curtext;
41 extern const struct bin_defaults bindef;
42 extern struct bin_defaults mfbin, curbin;
43 extern struct defaults cur, old;
44 extern struct attributes curatt, oldatt;
45
46 extern struct flags att;
47
48 extern Enum cgmdriver;
49 extern Enum cgmstate;
50
51 extern long *null;
52
53 extern Code st_start, st_term;
54
55/* Global variable set as arguments for output control */
56
57 extern Logical cgmralgks, cgmverbose, cgmquiet, cgmEOF, cgmfinished;
58
59/* Variables for random frame access */
60
61 extern long cgmnext, cgmpresent, cgmabort;
62
63/* Structures for font list and character set list */
64
65 extern struct cgmfont cgmfonts;
66 extern struct cgmcset cgmcsets;
67
68/* Macros for common Maths functions */
69
70#define REQUAL(x,y) ( FABS((x)-(y)) <= cur.realmin )
71#define VEQUAL(x,y) ( FABS((x)-(y)) <= cur.vdcmin )
72#define PEQUAL(p,q) ( VEQUAL((p)->x, (q)->x) && VEQUAL((p)->y, (q)->y) )
73#define XPROD(a,b,c,d) ( (b->x - a->x)*(d->y - c->y)\
74 - (d->x - c->x)*(b->y - a->y) )
75#endif /* end of cgmout.h */