1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
/// @file
/// @ingroup plugin_api
/*************************************************************************
* Copyright (c) 2011 AT&T Intellectual Property
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-v10.html
*
* Contributors: Details at https://graphviz.org
*************************************************************************/
#pragma once
#include "types.h"
#include "gvplugin.h"
#include "gvcjob.h"
#include <stddef.h>
#ifdef __cplusplus
extern "C" {
#endif
/// @ingroup plugin_api
struct gvrender_engine_s {
void (*begin_job) (GVJ_t * job);
void (*end_job) (GVJ_t * job);
void (*begin_graph) (GVJ_t * job);
void (*end_graph) (GVJ_t * job);
void (*begin_layer) (GVJ_t * job, char *layername,
int layerNum, int numLayers);
void (*end_layer) (GVJ_t * job);
void (*begin_page) (GVJ_t * job);
void (*end_page) (GVJ_t * job);
void (*begin_cluster) (GVJ_t * job);
void (*end_cluster) (GVJ_t * job);
void (*begin_nodes) (GVJ_t * job);
void (*end_nodes) (GVJ_t * job);
void (*begin_edges) (GVJ_t * job);
void (*end_edges) (GVJ_t * job);
void (*begin_node) (GVJ_t * job);
void (*end_node) (GVJ_t * job);
void (*begin_edge) (GVJ_t * job);
void (*end_edge) (GVJ_t * job);
void (*begin_anchor) (GVJ_t * job,
char *href, char *tooltip, char *target, char *id);
void (*end_anchor) (GVJ_t * job);
void (*begin_label) (GVJ_t * job, label_type type);
void (*end_label) (GVJ_t * job);
void (*textspan) (GVJ_t * job, pointf p, textspan_t * span);
void (*resolve_color) (GVJ_t * job, gvcolor_t * color);
void (*ellipse) (GVJ_t * job, pointf * A, int filled);
void (*polygon)(GVJ_t *job, pointf *A, size_t n, int filled);
void (*beziercurve)(GVJ_t *job, pointf *A, size_t n, int);
void (*polyline)(GVJ_t *job, pointf *A, size_t n);
void (*comment) (GVJ_t * job, char *comment);
void (*library_shape)(GVJ_t *job, char *name, pointf *A, size_t n, int filled);
};
#ifdef __cplusplus
}
#endif
|