Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-12-16 10:18:20

0001 /// @file
0002 /// @ingroup public_apis
0003 /*************************************************************************
0004  * Copyright (c) 2011 AT&T Intellectual Property 
0005  * All rights reserved. This program and the accompanying materials
0006  * are made available under the terms of the Eclipse Public License v1.0
0007  * which accompanies this distribution, and is available at
0008  * https://www.eclipse.org/legal/epl-v10.html
0009  *
0010  * Contributors: Details at https://graphviz.org
0011  *************************************************************************/
0012 
0013 #pragma once
0014 
0015 #include <stddef.h>
0016 
0017 #ifdef __cplusplus
0018 extern "C" {
0019 #endif
0020 
0021 #ifdef GVDLL
0022 #ifdef PATHPLAN_EXPORTS
0023 #define PATHGEOM_API __declspec(dllexport)
0024 #else
0025 #define PATHGEOM_API __declspec(dllimport)
0026 #endif
0027 #endif
0028 
0029 #ifndef PATHGEOM_API
0030 #define PATHGEOM_API /* nothing */
0031 #endif
0032 
0033 #ifdef HAVE_POINTF_S
0034     typedef struct pointf_s Ppoint_t;
0035     typedef struct pointf_s Pvector_t;
0036 #else
0037     typedef struct Pxy_t {
0038     double x, y;
0039     } Pxy_t;
0040 
0041     typedef struct Pxy_t Ppoint_t;
0042     typedef struct Pxy_t Pvector_t;
0043 #endif
0044 
0045     typedef struct Ppoly_t {
0046     Ppoint_t *ps;
0047     size_t pn;
0048     } Ppoly_t;
0049 
0050     typedef Ppoly_t Ppolyline_t;
0051 
0052     typedef struct Pedge_t {
0053     Ppoint_t a, b;
0054     } Pedge_t;
0055 
0056 /* opaque state handle for visibility graph operations */
0057     typedef struct vconfig_s vconfig_t;
0058 
0059     PATHGEOM_API void freePath(Ppolyline_t* p);
0060 
0061 #undef PATHGEOM_API
0062 
0063 #ifdef __cplusplus
0064 }
0065 #endif