This file is indexed.

/usr/include/goocanvas-1.0/goocanvaspolyline.h is in libgoocanvas-dev 0.15-1.1ubuntu1.

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
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
/*
 * GooCanvas. Copyright (C) 2005 Damon Chaplin.
 * Released under the GNU LGPL license. See COPYING for details.
 *
 * goocanvaspolyline.h - polyline item, with optional arrows.
 */
#ifndef __GOO_CANVAS_POLYLINE_H__
#define __GOO_CANVAS_POLYLINE_H__

#include <gtk/gtk.h>
#include "goocanvasitemsimple.h"

G_BEGIN_DECLS


/**
 * GooCanvasPoints
 * @coords: the coordinates of the points, in pairs.
 * @num_points: the number of points.
 * @ref_count: the reference count of the struct.
 *
 * #GooCairoPoints represents an array of points.
 */
typedef struct _GooCanvasPoints GooCanvasPoints;
struct _GooCanvasPoints
{
  double *coords;
  int num_points;
  int ref_count;
};

#define GOO_TYPE_CANVAS_POINTS goo_canvas_points_get_type()
GType            goo_canvas_points_get_type (void);
GooCanvasPoints* goo_canvas_points_new      (int              num_points);
GooCanvasPoints* goo_canvas_points_ref      (GooCanvasPoints *points);
void             goo_canvas_points_unref    (GooCanvasPoints *points);


#define NUM_ARROW_POINTS     5		/* number of points in an arrowhead */

typedef struct _GooCanvasPolylineArrowData GooCanvasPolylineArrowData;
struct _GooCanvasPolylineArrowData
{
  /* These are specified in multiples of the line width, e.g. if arrow_width
     is 2 the width of the arrow will be twice the width of the line. */
  gdouble arrow_width, arrow_length, arrow_tip_length;

  gdouble line_start[2], line_end[2];
  gdouble start_arrow_coords[NUM_ARROW_POINTS * 2];
  gdouble end_arrow_coords[NUM_ARROW_POINTS * 2];
};


/* This is the data used by both model and view classes. */
typedef struct _GooCanvasPolylineData   GooCanvasPolylineData;
struct _GooCanvasPolylineData
{
  gdouble *coords;

  GooCanvasPolylineArrowData *arrow_data;

  guint num_points	   : 16;
  guint close_path	   : 1;
  guint start_arrow	   : 1;
  guint end_arrow          : 1;
  guint reconfigure_arrows : 1;
};


#define GOO_TYPE_CANVAS_POLYLINE            (goo_canvas_polyline_get_type ())
#define GOO_CANVAS_POLYLINE(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOO_TYPE_CANVAS_POLYLINE, GooCanvasPolyline))
#define GOO_CANVAS_POLYLINE_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), GOO_TYPE_CANVAS_POLYLINE, GooCanvasPolylineClass))
#define GOO_IS_CANVAS_POLYLINE(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOO_TYPE_CANVAS_POLYLINE))
#define GOO_IS_CANVAS_POLYLINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOO_TYPE_CANVAS_POLYLINE))
#define GOO_CANVAS_POLYLINE_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), GOO_TYPE_CANVAS_POLYLINE, GooCanvasPolylineClass))


typedef struct _GooCanvasPolyline       GooCanvasPolyline;
typedef struct _GooCanvasPolylineClass  GooCanvasPolylineClass;

/**
 * GooCanvasPolyline
 *
 * The #GooCanvasPolyline-struct struct contains private data only.
 */
struct _GooCanvasPolyline
{
  GooCanvasItemSimple parent;

  GooCanvasPolylineData *polyline_data;
};

struct _GooCanvasPolylineClass
{
  GooCanvasItemSimpleClass parent_class;

  /*< private >*/

  /* Padding for future expansion */
  void (*_goo_canvas_reserved1) (void);
  void (*_goo_canvas_reserved2) (void);
  void (*_goo_canvas_reserved3) (void);
  void (*_goo_canvas_reserved4) (void);
};


GType               goo_canvas_polyline_get_type       (void) G_GNUC_CONST;

GooCanvasItem*      goo_canvas_polyline_new            (GooCanvasItem      *parent,
							gboolean            close_path,
							gint                num_points,
							...);

GooCanvasItem*      goo_canvas_polyline_new_line       (GooCanvasItem      *parent,
							gdouble             x1,
							gdouble             y1,
							gdouble             x2,
							gdouble             y2,
							...);



#define GOO_TYPE_CANVAS_POLYLINE_MODEL            (goo_canvas_polyline_model_get_type ())
#define GOO_CANVAS_POLYLINE_MODEL(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOO_TYPE_CANVAS_POLYLINE_MODEL, GooCanvasPolylineModel))
#define GOO_CANVAS_POLYLINE_MODEL_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), GOO_TYPE_CANVAS_POLYLINE_MODEL, GooCanvasPolylineModelClass))
#define GOO_IS_CANVAS_POLYLINE_MODEL(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOO_TYPE_CANVAS_POLYLINE_MODEL))
#define GOO_IS_CANVAS_POLYLINE_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOO_TYPE_CANVAS_POLYLINE_MODEL))
#define GOO_CANVAS_POLYLINE_MODEL_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), GOO_TYPE_CANVAS_POLYLINE_MODEL, GooCanvasPolylineModelClass))


typedef struct _GooCanvasPolylineModel       GooCanvasPolylineModel;
typedef struct _GooCanvasPolylineModelClass  GooCanvasPolylineModelClass;

/**
 * GooCanvasPolylineModel
 *
 * The #GooCanvasPolylineModel-struct struct contains private data only.
 */
struct _GooCanvasPolylineModel
{
  GooCanvasItemModelSimple parent_object;

  GooCanvasPolylineData polyline_data;
};

struct _GooCanvasPolylineModelClass
{
  GooCanvasItemModelSimpleClass parent_class;

  /*< private >*/

  /* Padding for future expansion */
  void (*_goo_canvas_reserved1) (void);
  void (*_goo_canvas_reserved2) (void);
  void (*_goo_canvas_reserved3) (void);
  void (*_goo_canvas_reserved4) (void);
};


GType               goo_canvas_polyline_model_get_type  (void) G_GNUC_CONST;

GooCanvasItemModel* goo_canvas_polyline_model_new      (GooCanvasItemModel *parent,
							gboolean            close_path,
							gint                num_points,
							...);

GooCanvasItemModel* goo_canvas_polyline_model_new_line (GooCanvasItemModel *parent,
							gdouble             x1,
							gdouble             y1,
							gdouble             x2,
							gdouble             y2,
							...);

G_END_DECLS

#endif /* __GOO_CANVAS_POLYLINE_H__ */