/usr/include/graphviz/gvplugin.h is in libgraphviz-dev 2.26.3-10ubuntu1.2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 63 64 65 66 | /* $Id: gvplugin.h,v 1.31 2009/07/14 13:18:07 ellson Exp $ $Revision: 1.31 $ */
/* vim:set shiftwidth=4 ts=8: */
/**********************************************************
* This software is part of the graphviz package *
* http://www.graphviz.org/ *
* *
* Copyright (c) 1994-2004 AT&T Corp. *
* and is licensed under the *
* Common Public License, Version 1.0 *
* by AT&T Corp. *
* *
* Information and Software Systems Research *
* AT&T Research, Florham Park NJ *
**********************************************************/
/* Header used by plugins */
#ifndef GVPLUGIN_H
#define GVPLUGIN_H
#ifdef __cplusplus
extern "C" {
#endif
#include "gvcext.h"
/*
* Terminology:
*
* package - e.g. libgvplugin_cairo.so
* api - e.g. render
* type - e.g. "png", "ps"
*/
typedef struct {
int id; /* an id that is only unique within a package
of plugins of the same api.
A renderer-type such as "png" in the cairo package
has an id that is different from the "ps" type
in the same package */
const char *type; /* a string name, such as "png" or "ps" that
distinguishes different types withing the same
(renderer in this case) */
int quality; /* an arbitrary integer used for ordering plugins of
the same type from different packages */
void *engine; /* pointer to the jump table for the plugin */
void *features; /* pointer to the feature description
void* because type varies by api */
} gvplugin_installed_t;
typedef struct {
api_t api;
gvplugin_installed_t *types;
} gvplugin_api_t;
typedef struct {
char *packagename; /* used when this plugin is builtin and has
no pathname */
gvplugin_api_t *apis;
} gvplugin_library_t;
#ifdef __cplusplus
}
#endif
#endif /* GVPLUGIN_H */
|