--- /dev/null
+/*****************************************************************************
+** Copyright (C) 1998-2001 Ljubomir Milanovic & Horst Wagner
+** This file is part of the g2 library
+**
+** This library is free software; you can redistribute it and/or
+** modify it under the terms of the GNU Lesser General Public
+** License as published by the Free Software Foundation; either
+** version 2.1 of the License, or (at your option) any later version.
+**
+** This library is distributed in the hope that it will be useful,
+** but WITHOUT ANY WARRANTY; without even the implied warranty of
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+** Lesser General Public License for more details.
+**
+** You should have received a copy of the GNU Lesser General Public
+** License along with this library; if not, write to the Free Software
+** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+******************************************************************************/
+#ifndef _G2_PHYSICAL_DEVICE_H
+#define _G2_PHYSICAL_DEVICE_H
+
+#include "g2.h"
+#include "g2_funix.h"
+
+
+typedef enum _g2_coor { /* coord. type */
+ g2_IntCoor, g2_DoubleCoor
+} g2_coor;
+
+
+typedef struct _g2_funix_fun { /* funix--function paar */
+ g2_funix fx; /* function index */
+ int (*fun)(); /* pointer to function */
+} g2_funix_fun;
+
+
+typedef struct _g2_physical_device {
+ int pid; /* physical device id */
+ void *pdp; /* pointer to something in phys. dev. */
+ g2_coor coor_type; /* coordinate type */
+ g2_funix_fun *ff; /* list of funix-function pairs */
+ double a11, a22; /* coordinate transformation (ud->pd) */
+ double b1, b2; /* Ar + B */
+
+ double x_origin; /* User coordinates specification */
+ double y_origin;
+ double x_mul;
+ double y_mul;
+} g2_physical_device;
+
+
+
+g2_physical_device *g2_create_physical_device(int pid,
+ void *pdp,
+ g2_coor ct,
+ const g2_funix_fun *ff,
+ double a11, double a22,
+ double b1, double b2);
+void g2_destroy_physical_device(g2_physical_device *pd);
+
+#endif /* _G2_PHYSICAL_DEVICE_H */