/* * inc/gks_func.h * Include file with high level function declarations for GKS * Microsoft C 5.0 - Turbo C 2.0 - VAX C 3.0 * Grupo de Tecnologia em Computacao Grafica - PUC/RIO * 23 Ago 91 */ #ifndef _GKS_FUNC_ #define _GKS_FUNC_ #if defined(Stdio) || defined(__VAXC__) #include Stdio /* FILE */ #else #include #endif #ifndef _GKS_TYPE_ #if defined(Gks_type) || defined(__VAXC__) #include Gks_type #else #include #endif #endif /**** ****/ /* GKS Function Names */ /**** ****/ /********************** Control Functions *****************************/ /* Open GKS - LEVEL ma */ Gerror gopengks( FILE *perrfile, /* error file pointer */ Glong memory); /* bytes of memory available for buffer space */ /* Close GKS - LEVEL ma */ Gerror gclosegks( void ); /* Open Workstation - LEVEL ma */ Gerror gopenws( Gws ws, /* workstation identifier */ Gchar *conid, /* connection identifier string */ Gchar *type); /* workstation type string */ /* Close Workstation - LEVEL ma */ Gerror gclosews( Gws ws); /* workstation identifier */ /* Activate workstation - LEVEL ma */ Gerror gactivatews( Gws ws); /* workstation identifier */ /* Deactivate workstation - LEVEL ma */ Gerror gdeactivatews( Gws ws); /* workstation identifier */ /* Clear Workstation - LEVEL ma */ Gerror gclearws( Gws ws, /* workstation identifier */ Gclrflag clearflag); /* control flag */ /* Redraw All Segments on Workstation - LEVEL 1a */ Gerror gredrawsegws( Gws ws); /* workstation identifier */ /* Update Workstation - LEVEL ma */ Gerror gupdatews( Gws ws, /* workstation identifier */ Gregen regen); /* update regeneration flag */ /* Set deferral State - LEVEL 1a */ Gerror gsetdeferral( Gws ws, /* workstation identifier */ Gdefmode defmode, /* deferral mode */ Girgmode irgmode); /* implicit regeneration mode */ /* Message - LEVEL 1a */ Gerror gmessage( Gws ws, /* workstation identifier */ Gchar *message); /* message string */ /* Escape - LEVEL ma */ Gescout gescape( Gescout (*pfunction)(), /* specific escape function pointer */ Gescin *pdata); /* escape input data record pointer */ /********************** Output Functions ******************************/ /* Polyline - LEVEL ma */ Gerror gpolyline( Gint npoints, /* number of points */ Gwpoint *points); /* point array */ /* Polymarker - LEVEL ma */ Gerror gpolymarker( Gint npoints, /* number of points */ Gwpoint *points); /* point array */ /* Text - LEVEL ma */ Gerror gtext( Gwpoint *pposition, /* text position */ Gchar *text); /* character string */ /* Fill Area - LEVEL ma */ Gerror gfillarea( Gint npoints, /* number of points */ Gwpoint *points); /* point array */ /* Cell Array - LEVEL 0a */ Gerror gcellarray( Gwrect *prectangle, /* cell rectangle pointer */ Gipoint *pdimensions, /* colour index array dimensions pointer */ Gint rowsize, /* colour index array row length (see FORTRAN) */ Gcolour *colourarray); /* colour index array */ /* Generalized Drawing Primitive - LEVEL ma */ Gerror ggdp( Gint npoints, /* number of points */ Gwpoint *points, /* point array */ Gerror (*pfunction)(), /* GDP function pointer */ Ggdprec *pdata); /* GDP data record pointer */ /********************** Output Attributes *****************************/ /* Workstation Independent Primitive Attributes */ /* Set Polyline Index - LEVEL 0a */ Gerror gsetlineindex( Gindex index); /* polyline index */ /* Set Linetype - LEVEL ma */ Gerror gsetlinetype( Glntype type); /* linetype */ /* Set Linewidth Scale Factor - LEVEL 0a */ Gerror gsetlinewidth( Gscale width); /* linewidth scale factor */ /* Set Polyline Colour Index - LEVEL ma */ Gerror gsetlinecolour( Gcolour colour); /* polyline colour index */ /* Set Polymarker Index - LEVEL 0a */ Gerror gsetmarkerindex( Gindex index); /* polymarker index */ /* Set Marker Type - LEVEL ma */ Gerror gsetmarkertype( Gmktype type); /* marker type */ /* Set Marker Size Scale Factor - LEVEL 0a */ Gerror gsetmarkersize( Gscale size); /* marker size scale factor */ /* Set Polymarker Colour Index - LEVEL ma */ Gerror gsetmarkercolour( Gcolour colour); /* polymarker colour index */ /* Set Text Index - LEVEL 0a */ Gerror gsettextindex( Gindex index); /* text index */ /* Set Text Font and Precision - LEVEL 0a */ Gerror gsettextfontprec( Gtxfp *ptxfp); /* text font and precision pointer */ /* Set Character Expansion Factor - LEVEL 0a */ Gerror gsetcharexp( Gchrexp exp); /* character expansion factor */ /* Set Character Spacing - LEVEL 0a */ Gerror gsetcharspace( Gchrsp spacing); /* character spacing */ /* Set Text Colour Index - LEVEL ma */ Gerror gsettextcolour( Gcolour colour); /* text colour index */ /* Set Character Height - LEVEL ma */ Gerror gsetcharheight( Gchrht height); /* character height */ /* Set Character Up Vector - LEVEL ma */ Gerror gsetcharup( Gwpoint *pcharup); /* character up vector pointer */ /* Set Text Path - LEVEL 0a */ Gerror gsettextpath( Gtxpath path); /* text path */ /* Set Text Alignment - LEVEL ma */ Gerror gsettextalign( Gtxalign *ptxalign); /* text alignment pointer */ /* Set Fill Area Index - LEVEL 0a */ Gerror gsetfillindex( Gindex index); /* fill area index */ /* Set Fill Area Interior Style - LEVEL ma */ Gerror gsetfillintstyle( Gflinter style); /* fill area interior style */ /* Set Fill Area Style Index - LEVEL 0a */ Gerror gsetfillstyleindex( Gflstyle index); /* fill area style index */ /* Set Fill Area Colour Index - LEVEL ma */ Gerror gsetfillcolour( Gindex colour); /* fill area colour index */ /* Set Pattern Size - LEVEL 0a */ Gerror gsetpatsize( Gwpoint *ppatsiz); /* pattern size pointer */ /* Set Pattern Reference Point - LEVEL 0a */ Gerror gsetpatrefpoint( Gwpoint *ppatref); /* reference point pointer */ /* Set Aspect Source Flags - LEVEL 0a */ Gerror gsetasf( Gasfs *pasfs); /* aspect source flags pointer */ /* Set Pick Identifier - LEVEL 1b */ Gerror gsetpickid( Gpickid pickid); /* pick identifier */ /* Workstation Attributes (Representations) */ /* Set Polyline Representation - LEVEL 1a */ Gerror gsetlinerep( Gws ws, /* workstation identifier */ Gindex index, /* polyline index */ Glnbundl *prep); /* polyline representation pointer */ /* Set Polymarker Representation - LEVEL 1a */ Gerror gsetmarkerrep( Gws ws, /* workstation identifier */ Gindex index, /* polymarker index */ Gmkbundl *prep); /* polymarker representation pointer */ /* Set Text Representation - LEVEL 1a */ Gerror gsettextrep( Gws ws, /* workstation identifier */ Gindex index, /* text index */ Gtxbundl *prep); /* text representation pointer */ /* Set Fill Area Representation - LEVEL 1a */ Gerror gsetfillrep( Gws ws, /* workstation identifier */ Gindex index, /* fill area index */ Gflbundl *prep); /* fill area representation pointer */ /* Set Pattern Representation - LEVEL 1a */ Gerror gsetpatrep( Gws ws, /* workstation identifier */ Gindex index, /* pattern index */ Gptbundl *prep); /* pattern representation pointer */ /* Set Colour Representation - LEVEL ma */ Gerror gsetcolourrep( Gws ws, /* workstation identifier */ Gcolour index, /* colour index */ Gcobundl *prep); /* colour representation pointer */ /********************** Transformation Functions **********************/ /* Set Window - LEVEL ma */ Gerror gsetwindow( Gint transform, /* transformation number */ Gwlimit *pwindow); /* window limits pointer */ /* Set Viewport - LEVEL ma */ Gerror gsetviewport( Gint transform, /* transformation number */ Gnlimit *pviewport); /* viewport limits pointer */ /* Set Viewport Input Priotity - LEVEL mb */ Gerror gsetviewportpri( Gint transform, /* transformation number */ Gint reference, /* reference transformation number */ Gvpri priority); /* relative priority */ /* Select Normalization Transformation - LEVEL ma */ Gerror gselnormtran( Gint transform); /* normalization transformation number */ /* Set Clipping Indicator - LEVEL ma */ Gerror gsetclip( Gclip indicator); /* clipping indicator */ /* Set Workstation Window - LEVEL ma */ Gerror gsetwswindow( Gws ws, /* workstation identifier */ Gnlimit *pwindow); /* workstation window limits pointer */ /* Set Workstation Viewport - LEVEL ma */ Gerror gsetwsviewport( Gws ws, /* workstation identifier */ Gdlimit *pviewport); /* workstation viewport limits pointer */ /********************** Segment Functions *****************************/ /* Segment Manipulation Functions */ /* Create Segment - LEVEL 1a */ Gerror gcreateseg( Gseg seg); /* segment name */ /* Close Segment - LEVEL 1a */ Gerror gcloseseg(void); /* Rename Segment - LEVEL 1a */ Gerror grenameseg( Gseg old, /* old segment name */ Gseg new); /* new segment name */ /* Delete Segment - LEVEL 1a */ Gerror gdeleteseg( Gseg seg); /* segment name */ /* Delete Segment from Workstation - LEVEL 1a */ Gerror gdeletesegws( Gws ws, /* workstation identifier */ Gseg seg); /* segment name */ /* Associate Segment with Workstation - LEVEL 2a */ Gerror gassocsegws( Gws ws, /* workstation identifier */ Gseg seg); /* segment name */ /* Copy Segment to Workstation - LEVEL 2a */ Gerror gcopysegws( Gws ws, /* workstation identifier */ Gseg seg); /* segment name */ /* Insert Segment - LEVEL 2a */ Gerror ginsertseg( Gseg seg, /* segment name */ Gsegtran *ptransform); /* transformation matrix pointer */ /* Segment Attributes */ /* Set Segment Transformation - LEVEL 1a */ Gerror gsetsegtran( Gseg seg, /* segment name */ Gsegtran *ptransform); /* transformation matrix pointer */ /* Set Visibility - LEVEL 1a */ Gerror gsetvis( Gseg seg, /* segment name */ Gsegvis visibility); /* visibility */ /* Set Highlighting - LEVEL 1a */ Gerror gsethighlight( Gseg seg, /* segment name */ Gseghi highlighting); /* highlighting */ /* Set Segment Priority - LEVEL 1a */ Gerror gsetsegpri( Gseg seg, /* segment name */ Gsegpri priority); /* segment priority */ /* Set Detectability - LEVEL 1b */ Gerror gsetdet( Gseg seg, /* segment name */ Gsegdet detectability); /* detectability */ /********************** Input Functions *******************************/ /* Initialization of Input Devices */ /* Initialise Locator - LEVEL mb */ Gerror ginitloc( Gws ws, /* workstation identifier */ Gidevno dev, /* locator device number */ Gloc *pinit, /* initial locator pointer */ Gpet pet, /* prompt and echo type */ Gdlimit *parea, /* echo area pointer */ Glocrec *precord); /* data record pointer */ /* Initialise Stroke - LEVEL mb */ Gerror ginitstroke( Gws ws, /* workstation identifier */ Gidevno dev, /* stroke device number */ Gstroke *pinit, /* initial stroke pointer */ Gpet pet, /* prompt and echo type */ Gdlimit *parea, /* echo area pointer */ Gstrokerec *precord); /* data record pointer */ /* Initialise Valuator - LEVEL mb */ Gerror ginitval( Gws ws, /* workstation identifier */ Gidevno dev, /* valuator device number */ Gfloat init, /* initial value */ Gpet pet, /* prompt and echo type */ Gdlimit *parea, /* echo area pointer */ Gvalrec *precord); /* data record pointer */ /* Initialise Choice - LEVEL mb */ Gerror ginitchoice( Gws ws, /* workstation identifier */ Gidevno dev, /* choice device number */ Gint init, /* initial value */ Gpet pet, /* prompt and echo type */ Gdlimit *parea, /* echo area pointer */ Gchoicerec *precord); /* data record pointer */ /* Initialise Pick - LEVEL 1b */ Gerror ginitpick( Gws ws, /* workstation identifier */ Gidevno dev, /* pick device number */ Gpick *pinit, /* initial pick pointer */ Gpet pet, /* prompt and echo type */ Gdlimit *parea, /* echo area pointer */ Gpickrec *precord); /* data record pointer */ /* Initialise String - LEVEL mb */ Gerror ginitstring( Gws ws, /* workstation identifier */ Gidevno dev, /* string device number */ Gchar *init, /* initial string */ Gpet pet, /* prompt and echo type */ Gdlimit *parea, /* echo area pointer */ Gstringrec *precord); /* data record pointer */ /* Setting Mode of Input Devices */ /* Set Locator Mode - LEVEL mb */ Gerror gsetlocmode( Gws ws, /* workstation identifier */ Gidevno dev, /* locator device number */ Gimode mode, /* operating mode */ Gesw echo); /* echo switch */ /* Set Stroke Mode - LEVEL mb */ Gerror gsetstrokemode( Gws ws, /* workstation identifier */ Gidevno dev, /* stroke device number */ Gimode mode, /* operating mode */ Gesw echo); /* echo switch */ /* Set Valuator Mode - LEVEL mb */ Gerror gsetvalmode( Gws ws, /* workstation identifier */ Gidevno dev, /* valuator device number */ Gimode mode, /* operating mode */ Gesw echo); /* echo switch */ /* Set Choice Mode - LEVEL mb */ Gerror gsetchoicemode( Gws ws, /* workstation identifier */ Gidevno dev, /* choice device number */ Gimode mode, /* operating mode */ Gesw echo); /* echo switch */ /* Set Pick Mode - LEVEL 1b */ Gerror gsetpickmode( Gws ws, /* workstation identifier */ Gidevno dev, /* pick device number */ Gimode mode, /* operating mode */ Gesw echo); /* echo switch */ /* Set String Mode - LEVEL mb */ Gerror gsetstringmode( Gws ws, /* workstation identifier */ Gidevno dev, /* string device number */ Gimode mode, /* operating mode */ Gesw echo); /* echo switch */ /* Request Input Functions */ /* Request Locator - LEVEL mb */ Gqloc greqloc( Gws ws, /* workstation identifier */ Gidevno dev); /* locator device number */ /* Request Stroke - LEVEL mb */ Gqstroke greqstroke( Gws ws, /* workstation identifier */ Gidevno dev); /* stroke device number */ /* Request Valuator - LEVEL mb */ Gqval greqval( Gws ws, /* workstation identifier */ Gidevno dev); /* valuator device number */ /* Request Choice - LEVEL mb */ Gqchoice greqchoice( Gws ws, /* workstation identifier */ Gidevno dev); /* choice device number */ /* Request Pick - LEVEL 1b */ Gqpick greqpick( Gws ws, /* workstation identifier */ Gidevno dev); /* pick device number */ /* Request String - LEVEL mb */ Gqstring greqstring( Gws ws, /* workstation identifier */ Gidevno dev); /* string device number */ /* Sample Input Functions */ /* Event Input Functions */ /********************** Metafile Functions ****************************/ /* Write Item to GKSM - LEVEL 0a */ Gerror gwritegksm( Gws ws, /* workstation identifier */ Gint type, /* item type */ Gint length, /* item length */ Gchar *pdata); /* item data record pointer */ /* Get Item from GKSM - LEVEL 0a */ Ggksmit ggetgksm( Gws ws); /* workstation identifier */ /* Read Item from GKSM - LEVEL 0a */ Gchar *greadgksm( Gws ws, /* workstation identifier */ Gint length); /* maximum item data record length */ /* Interpret Item - LEVEL 0a */ Gerror ginterpret( Ggksmit *ptypeandlength, /* item type and length pointer */ Gchar *pdata); /* item data record pointer */ /********************** Inquire Functions *****************************/ /* Inquire Function for Operating State Value */ /* Inquire Operating State Value - LEVEL 0a */ Gos ginqopstate( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Functions for GKS Description Table */ /* Inquire Level of GKS - LEVEL ma */ Gchar *ginqlevelgks( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire List of Available Workstation Types - LEVEL 0a */ Gchar **ginqavailwstypes( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Workstation Maximum Numbers - LEVEL 1a */ Gwsmax ginqwsmaxnum( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Maximum Normalization Transformation Number - LEVEL 0a */ Gint ginqmaxnormtrannum( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire functions for GKS State List */ /* Inquire Set of Open Workstations - LEVEL 0a */ Gws *ginqopenws( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Set of Active Workstations - LEVEL 1a */ Gws *ginqactivews( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Current Primitive Attributes Values */ /* Inquire Polyline Index - LEVEL 0a */ Gindex ginqlineindex( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Polymarker Index - LEVEL 0a */ Gindex ginqmarkerindex( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Text Index - LEVEL 0a */ Gindex ginqtextindex( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Character Height - LEVEL ma */ Gchrht ginqcharheight( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Character Up Vector - LEVEL ma */ Gwpoint ginqcharup( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Character Width - LEVEL ma */ Gchrwid ginqcharwidth( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Character Base Vector - LEVEL ma */ Gwpoint ginqcharbase( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Text Path - LEVEL 0a */ Gtxpath ginqtextpath( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Text Alignment - LEVEL ma */ Gtxalign ginqtextalign( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Fill Area Index - LEVEL 0a */ Gindex ginqfillindex( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Pattern Width Vector - LEVEL 0a */ Gwpoint ginqpatwidth( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Pattern Height Vector - LEVEL 0a */ Gwpoint ginqpatheight( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Pattern Reference Point - LEVEL 0a */ Gwpoint ginqpatrefpoint( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Current Pick Identifier Value - LEVEL 1b */ Gpickid ginqpickid( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Current Individual Attributes Values */ /* Inquire Linetype - LEVEL ma */ Glntype ginqlinetype( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Linewidth Scale Factor - LEVEL 0a */ Gscale ginqlinewidth( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Polyline Colour Index - LEVEL ma */ Gcolour ginqlinecolour( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Marker Type - LEVEL ma */ Gmktype ginqmarkertype( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Marker Size Scale Factor - LEVEL 0a */ Gscale ginqmarkersize( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Polymarker Colour Index - LEVEL ma */ Gcolour ginqmarkercolour( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Text Font and Precision - LEVEL 0a */ Gtxfp ginqtextfontprec( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Character Expansion Factor - LEVEL 0a */ Gchrexp ginqcharexp( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Character Spacing - LEVEL 0a */ Gchrsp ginqcharspace( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Text Colour Index - LEVEL ma */ Gcolour ginqtextcolour( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Fill Area Interior Style - LEVEL ma */ Gflinter ginqfillintstyle( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Fill Area Style Index - LEVEL 0a */ Gflstyle ginqfillstyleindex( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Fill Area Colour Index - LEVEL ma */ Gcolour ginqfillcolour( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire List of Aspect Source Flags - LEVEL 0a */ Gasfs ginqasf( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Current Normalization Transformation Number - LEVEL ma */ Gint ginqcurnormtrannum( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire List of Normalization Transformation Numbers - LEVEL 0a */ Gint *ginqnormtrannum( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Normalization Transformation */ /* Inquire Window - LEVEL ma */ Gwlimit ginqwindow( Gint transform, /* normalization transformation number */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Viewport - LEVEL ma */ Gnlimit ginqviewport( Gint transform, /* normalization transformation number */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Clipping - LEVEL ma */ Gcliprec ginqclip( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Name of Open Segment - LEVEL 1a */ Gseg ginqnameopenseg( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Set of Segment Names in Use - LEVEL 1a */ Gseg *ginqsegnames( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire More Simultaneous Events - LEVEL mc */ Gsimultev ginqmoreevents( Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Functions for Workstation State List */ /* Inquire Workstation Connection and Type - LEVEL ma */ Gwsct ginqwsconntype( Gws ws, /* workstation identifier */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Workstation State - LEVEL 0a */ Gwsstate ginqwsstate( Gws ws, /* workstation identifier */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Workstation Deferral and Update State - LEVEL 0a */ Gwsdus ginqwsdeferralupdate( Gws ws, /* workstation identifier */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire List of Polyline Indices - LEVEL 1a */ Gbii ginqlineindices( Gws ws, /* workstation identifier */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Polyline Representation - LEVEL 1a */ Glnbundl ginqlinerep( Gws ws, /* workstation identifier */ Gindex index, /* polyline index */ Gqtype type, /* type of returned values */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire List of Polymarker Indices - LEVEL 1a */ Gbii ginqmarkerindices( Gws ws, /* workstation identifier */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Polymarker Representation - LEVEL 1a */ Gmkbundl ginqmarkerrep( Gws ws, /* workstation identifier */ Gindex index, /* polymarker index */ Gqtype type, /* type of returned values */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire List of Text Indices - LEVEL 1a */ Gbii ginqtextindices( Gws ws, /* workstation identifier */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Text Representation - LEVEL 1a */ Gtxbundl ginqtextrep( Gws ws, /* workstation identifier */ Gindex index, /* text index */ Gqtype type, /* type of returned values */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Text Extent - LEVEL ma */ Gextent ginqtextextent( Gws ws, /* workstation identifier */ Gwpoint position, /* text position */ Gchar *string, /* character string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire List of Fill Area Indices - LEVEL 1a */ Gbii ginqfillindices( Gws ws, /* workstation identifier */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Fill Area Representation - LEVEL 1a */ Gflbundl ginqfillrep( Gws ws, /* workstation identifier */ Gindex index, /* fill area index */ Gqtype type, /* type of returned values */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire List of Pattern Indices - LEVEL 1a */ Gbii ginqpatindices( Gws ws, /* workstation identifier */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Pattern Representation - LEVEL 1a */ Gptbundl ginqpatrep( Gws ws, /* workstation identifier */ Gindex index, /* pattern index */ Gqtype type, /* type of returned values */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire List of Colour Indices - LEVEL ma */ Gbii ginqcolourindices( Gws ws, /* workstation identifier */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Colour Representation - LEVEL ma */ Gcobundl ginqcolourrep( Gws ws, /* workstation identifier */ Gcolour index, /* polyline index */ Gqtype type, /* type of returned values */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Workstation Transformation - LEVEL ma */ Gwsti ginqwstran( Gws ws, /* workstation identifier */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Set of Segment Names on Workstation - LEVEL 1a */ Gseg *ginqsegnamesws( Gws ws, /* workstation identifier */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Locator Device State - LEVEL mb */ Glocst ginqlocstate( Gws ws, /* workstation identifier */ Gidevno dev, /* locator device number */ Gqtype type, /* type of returned values */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Stroke Device State - LEVEL mb */ Gstrokest ginqstrokestate( Gws ws, /* workstation identifier */ Gidevno dev, /* stroke device number */ Gqtype type, /* type of returned values */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Valuator Device State - LEVEL mb */ Gvalst ginqvalstate( Gws ws, /* workstation identifier */ Gidevno dev, /* valuator device number */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Choice Device State - LEVEL mb */ Gchoicest ginqchoicestate( Gws ws, /* workstation identifier */ Gidevno dev, /* choice device number */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Pick Device State - LEVEL 1b */ Gpickst ginqpickstate( Gws ws, /* workstation identifier */ Gidevno dev, /* pick device number */ Gqtype type, /* type of returned values */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire String Device State - LEVEL mb */ Gstringst ginqstringstate( Gws ws, /* workstation identifier */ Gidevno dev, /* string device number */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Functions for Workstation Description Table */ /* Inquire Workstation Category - LEVEL 0a */ Gwscat ginqwscategory( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Workstation Classification - LEVEL 0a */ Gwsclass ginqwsclass( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Display Space Size - LEVEL ma */ Gdspsize ginqdisplaysize( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Dynamic Modification of Workstation Attributes - LEVEL 1a */ Gmodws ginqmodws( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Default Deferral State Values - LEVEL 1a */ Gdefer ginqdefdeferral( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Polyline Facilities - LEVEL ma */ Glnfac ginqlinefac( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Predefined Polyline Representation - LEVEL 0a */ Glnbundl ginqprelinerep( Gchar *type, /* workstation type string */ Gindex index, /* predefined polyline index */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Polymarker Facilities - LEVEL ma */ Gmkfac ginqmarkerfac( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Predefined Polymarker Representation - LEVEL 0a */ Gmkbundl ginqpremarkerrep( Gchar *type, /* workstation type string */ Gindex index, /* predefined polymarker index */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Text Facilities - LEVEL ma */ Gtxfac ginqtextfac( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Predefined Text Representation - LEVEL 0a */ Gtxbundl ginqpretextrep( Gchar *type, /* workstation type string */ Gindex index, /* predefined text index */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Fill Area Facilities - LEVEL ma */ Gflfac ginqfillfac( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Predefined Fill Area Representation - LEVEL 0a */ Gflbundl ginqprefillrep( Gchar *type, /* workstation type string */ Gindex index, /* predefined fill area index */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Pattern Facilities - LEVEL 0a */ Gptfac ginqpatfac( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Predefined Pattern Representation - LEVEL 0a */ Gptbundl ginqprepatrep( Gchar *type, /* workstation type string */ Gindex index, /* predefined pattern index */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Colour Facilities - LEVEL ma */ Gcofac ginqcolourfac( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Predefined Colour Representation - LEVEL 0a */ Gcobundl ginqprecolourrep( Gchar *type, /* workstation type string */ Gcolour index, /* predefined polyline index */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire List of Available Generalized Drawing Primitives - LEVEL 0a */ Gerror (**ginqavailgdp( Gchar *type, /* workstation type string */ Gerror *perrind) /* OUT error indicator pointer */ )(void); /* Inquire Generalized Drawing Primitive - LEVEL 0a */ Ggdpfac ginqgdp( Gchar *type, /* workstation type string */ Gerror (*function)(), /* GDP function pointer */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Maximum Length of Workstation State Tables - LEVEL ma */ Gwstables ginqmaxwstables( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Number of Segment Priorities Supported - LEVEL 1a */ Gint ginqnumsegpri( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Dynamic Modification of Segment Attributes - LEVEL 1a */ Gmodseg ginqmodseg( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Number of Available Logical Input Devices - LEVEL mb */ Gnumdev ginqnumavailinput( Gchar *type, /* workstation type string */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Default Locator Device Data - LEVEL mb */ Gdefloc ginqdefloc( Gchar *type, /* workstation type string */ Gidevno dev, /* locator device number */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Default Stroke Device Data - LEVEL mb */ Gdefstroke ginqdefstroke( Gchar *type, /* workstation type string */ Gidevno dev, /* stroke device number */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Default Valuator Device Data - LEVEL mb */ Gdefval ginqdefval( Gchar *type, /* workstation type string */ Gidevno dev, /* valuator device number */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Default Choice Device Data - LEVEL mb */ Gdefchoice ginqdefchoice( Gchar *type, /* workstation type string */ Gidevno dev, /* choice device number */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Default Pick Device Data - LEVEL 1b */ Gdefpick ginqdefpick( Gchar *type, /* workstation type string */ Gidevno dev, /* locator device number */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Default String Device Data - LEVEL mb */ Gdefstring ginqdefstring( Gchar *type, /* workstation type string */ Gidevno dev, /* locator device number */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Functions for Segment State List */ /* Inquire Set of Associated Workstations - LEVEL 1a */ Gws *ginqassocws( Gseg seg, /* segment name */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Segment Attributes */ /* Inquire Segment Transformation - LEVEL 1a */ Gsegtran ginqsegtran( Gseg seg, /* segment name */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Visibility - LEVEL 1a */ Gsegvis ginqvis( Gseg seg, /* segment name */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Highlighting - LEVEL 1a */ Gseghi ginqhighlight( Gseg seg, /* segment name */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Segment Priority - LEVEL 1a */ Gsegpri ginqsegpri( Gseg seg, /* segment name */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Detectability - LEVEL 1b */ Gsegdet ginqdet( Gseg seg, /* segment name */ Gerror *perrind); /* OUT error indicator pointer */ /* Pixel Inquires */ /* Inquire Pixel Array Dimensions - LEVEL 0a */ Gipoint ginqpixelarraydim( Gws ws, /* workstation identifier */ Gwrect *prect, /* rectangle pointer */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Pixel Array - LEVEL 0a */ Gpxarray ginqpixelarray( Gws ws, /* workstation identifier */ Gwpoint *ppoint, /* pixel array location pointer */ Gipoint *pdimen, /* pixel array dimensions pointer */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Pixel - LEVEL 0a */ Gcolour ginqpixel( Gws ws, /* workstation identifier */ Gwpoint *ppoint, /* pixel location pointer */ Gerror *perrind); /* OUT error indicator pointer */ /* Inquire Function for GKS Error State List */ #if 0 /* Inquire Input Queue Overflow - LEVEL mc */ Gqinfo ginqinputoverflow( Gerror *perrind); /* OUT error indicator pointer */ #endif /********************** Utility Functions *****************************/ /* Evaluate Transformation Matrix - LEVEL 1a */ Gsegtran gevaltran( Gnpoint *ppoint, /* fixed point pointer */ Gnpoint *pshift, /* shift vector pointer */ Gfloat angle, /* rotation angle in radians */ Gwpoint *pscale, /* scale factors pointer */ Gcsw coord); /* coordinate switch */ /* Accumulate Transformation Matrix - LEVEL 1a */ Gsegtran gaccumtran( Gsegtran *ptransform, /* segment transformation matrix pointer */ Gnpoint *ppoint, /* fixed point pointer */ Gnpoint *pshift, /* shift vector pointer */ Gfloat angle, /* rotation angle in radians */ Gwpoint *pscale, /* scale factors pointer */ Gcsw coord); /* coordinate switch */ /********************** Error Handling ********************************/ /* Emergency Close GKS - LEVEL 0a */ void gemergencyclosegks(void); /* Error Handling - LEVEL 0a */ Gerror gerrorhand( Gerror errnum, /* error number */ Gint funcname, /* GKS function number */ FILE *perrfile); /* error file pointer */ /* Error Logging - LEVEL 0a */ Gerror gerrorlog( Gerror errnum, /* error number */ Gint funcname, /* GKS function number */ FILE *perrfile); /* error file pointer */ #endif