1 #if !defined( GRF_INCLUDED ) /* Include this file only once */ 2 #define GRF_INCLUDED 3 /* 4 *+ 5 * Name: 6 * grf.h 7 8 * Type: 9 * C include file. 10 11 * Purpose: 12 * Define the interface to the grf module 13 14 * Invocation: 15 * #include "grf.h" 16 17 * Description: 18 * This include file defines the interface to the grf module and 19 * provides the type definitions, function prototypes and macros, etc. 20 * needed to use this module. 21 22 * Inheritance: 23 * The grf module is not a class and does not inherit. 24 25 * Copyright: 26 * Copyright (C) 1997-2006 Council for the Central Laboratory of the 27 * Research Councils 28 29 * Licence: 30 * This program is free software; you can redistribute it and/or 31 * modify it under the terms of the GNU General Public Licence as 32 * published by the Free Software Foundation; either version 2 of 33 * the Licence, or (at your option) any later version. 34 * 35 * This program is distributed in the hope that it will be 36 * useful,but WITHOUT ANY WARRANTY; without even the implied 37 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 38 * PURPOSE. See the GNU General Public Licence for more details. 39 * 40 * You should have received a copy of the GNU General Public Licence 41 * along with this program; if not, write to the Free Software 42 * Foundation, Inc., 51 Franklin Street,Fifth Floor, Boston, MA 43 * 02110-1301, USA 44 45 * Authors: 46 * DSB: David S. Berry (Starlink) 47 48 * History: 49 * 27-JUN-1996 (DSB): 50 * Original version. 51 * 25-OCT-1996 (DSB): 52 * Primatives macros defined, extra parameter added to astGAttr. 53 * 17-FEB-2006 (DSB): 54 * Added GRF__ESH and GRF__ESG. 55 *- 56 */ 57 58 /* Constant Values. */ 59 /* ================ */ 60 /* Values identifying different graphics attributes. */ 61 #define GRF__STYLE 0 62 #define GRF__WIDTH 1 63 #define GRF__SIZE 2 64 #define GRF__FONT 3 65 #define GRF__COLOUR 4 66 67 /* Values identifying different graphics primatives. */ 68 #define GRF__TEXT 0 69 #define GRF__LINE 1 70 #define GRF__MARK 2 71 72 /* The number of different graphics attributes */ 73 #define GRF__NATTR 5 74 75 /* Values identifying capabilities */ 76 #define GRF__ESC 0 77 #define GRF__MJUST 1 78 #define GRF__SCALES 2 79 80 /* Values identifying types of graphics escape sequence */ 81 #define GRF__ESPER 1 82 #define GRF__ESSUP 2 83 #define GRF__ESSUB 3 84 #define GRF__ESGAP 4 85 #define GRF__ESBAC 5 86 #define GRF__ESSIZ 6 87 #define GRF__ESWID 7 88 #define GRF__ESFON 8 89 #define GRF__ESCOL 9 90 #define GRF__ESSTY 10 91 #define GRF__ESPOP 11 92 #define GRF__ESPSH 12 93 #define GRF__ESH 13 94 #define GRF__ESG 14 95 96 /* Function prototypes. */ 97 /* ==================== */ 98 int astGAttr( int, double, double *, int ); 99 int astGScales( float *, float * ); 100 int astGBBuf( void ); 101 int astGEBuf( void ); 102 int astGFlush( void ); 103 int astGLine( int, const float *, const float * ); 104 int astGMark( int, const float *, const float *, int ); 105 int astGQch( float *, float * ); 106 int astGText( const char *, float, float, const char *, float, float ); 107 int astGTxExt( const char *, float, float, const char *, float, float, float *, float * ); 108 int astGCap( int, int ); 109 110 /* internal prototypes required for module */ 111 void Perl_storeGrfObject ( SV * plotobject ); 112 void Perl_clearGrfObject( void ); 113 114 #endif 115