/* * inc/seg.h * Include file with internal segment defines, and function and type declarations * Microsoft C 5.0 - Turbo C 2.0 - VAX C 3.0 * Grupo de Tecnologia em Computacao Grafica - PUC/RIO * 23 Ago 91 */ #define SEGREAD 0 #define SEGWRITE 1 typedef struct { Gint flags; Glong cursect; Gchar *buff; Gchar *curp; Gsegsl *sgat; } SEGH; typedef struct { unsigned char pl, pm, tx, fa; } Gtab; typedef struct { Gint tot; /* numero de entradas total no diretorio de segmentos */ Gint cri; /* numero de segmentos ja criados */ Gint opseg; /* posicao do segmento aberto no diretorio */ Gint psg; /* posicao de um segmento no diretorio */ Gtab tab; /* indica para cada primitiva se ela ja faz parte do segmento aberto */ SEGH *Shand; /* ponteiro da estrutura de controle do segmento aberto */ } Gsinfo; void _gks_puc_pdf_enter ( Gint, const Gdrvparam *); void _gks_puc_transf_prim ( Gint, Gdrvparam *, Gsegtran *); void _gks_puc_ins_att ( Gint ); Gint _gks_puc_find_sg ( Gseg ); void _gks_puc_rat ( Gint, Gsegsl *); /* le atributos */ void _gks_puc_wat ( Gint, const Gsegsl *); /* escreve no diretorio */ void _gks_puc_del_sg ( Gint ); void _gks_puc_del_sg_ws ( Gwsl *, Gint, Gsegsl *); void _gks_puc_drs ( Gwsl *, Gsegsl *); void _gks_puc_libera_area ( Gint, const Gdrvparam *); Gerror _gks_puc_ord_pri_cri ( Gint ); void _gks_puc_ord_pri_del ( Gint ); Gint _gks_puc_ret_pos ( Gint ); void _gks_puc_regen ( Gwsl * ); void _gks_puc_atualiza_geom_att ( Gwsl *, Gint *); void _gks_puc_del_all_segs ( Gwsl * ); /* abre handler de segmento no pseudo display file */ SEGH * _gks_puc_seg_open ( Gsegsl *, Gint ); /* fecha handler de segmento no pdf */ void _gks_puc_seg_close ( SEGH * ); /* elimina segmento no pdf */ void _gks_puc_seg_delete ( Gsegsl * ); /* le primitiva do pdf */ Gerror _gks_puc_rpr ( SEGH *, Gint *, Gdrvparam *); /* escreve primitiva no pdf */ Gerror _gks_puc_wpr ( SEGH *, Gint , const Gdrvparam *);