This file is indexed.

/usr/include/libinfinity-0.7/libinfinity/communication/inf-communication-method.h is in libinfinity-0.7-dev 0.7.1-1.

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
/* libinfinity - a GObject-based infinote implementation
 * Copyright (C) 2007-2015 Armin Burgmeier <armin@arbur.net>
 *
 * 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 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., 51 Franklin St, Fifth Floor, Boston,
 * MA 02110-1301, USA.
 */

#ifndef __INF_COMMUNICATION_METHOD_H__
#define __INF_COMMUNICATION_METHOD_H__

#include <libinfinity/common/inf-xml-connection.h>
#include <libinfinity/communication/inf-communication-object.h>

#include <glib-object.h>

#include <libxml/tree.h>

G_BEGIN_DECLS

#define INF_COMMUNICATION_TYPE_METHOD                 (inf_communication_method_get_type())
#define INF_COMMUNICATION_METHOD(obj)                 (G_TYPE_CHECK_INSTANCE_CAST((obj), INF_COMMUNICATION_TYPE_METHOD, InfCommunicationMethod))
#define INF_COMMUNICATION_IS_METHOD(obj)              (G_TYPE_CHECK_INSTANCE_TYPE((obj), INF_COMMUNICATION_TYPE_METHOD))
#define INF_COMMUNICATION_METHOD_GET_IFACE(inst)      (G_TYPE_INSTANCE_GET_INTERFACE((inst), INF_COMMUNICATION_TYPE_METHOD, InfCommunicationMethodInterface))

/**
 * InfCommunicationMethod:
 *
 * #InfCommunicationMethod is an opaque data type. You should only access it
 * via the public API functions.
 */
typedef struct _InfCommunicationMethod InfCommunicationMethod;
typedef struct _InfCommunicationMethodInterface InfCommunicationMethodInterface;

/**
 * InfCommunicationMethodInterface:
 * @add_member: Default signal handler of the
 * #InfCommunicationMethod::add-member signal.
 * @remove_member: Default signal handler of the
 * #InfCommunicationMethod::remove-member signal.
 * @is_member: Returns whether the given connection is a member of the group.
 * @send_single: Sends a message to a single connection. Takes ownership of
 * @xml.
 * @send_all: Sends a message to all group members, except @except. Takes
 * ownership of @xml.
 * @cancel_messages: Cancel sending messages that have not yet been sent
 * to the given connection.
 * @received: Handles reception of a message from a registered connection.
 * This normally includes informing a group's NetObject and forwarding the
 * message to other group members.
 * @enqueued: Handles when a message has been enqueued to be sent on a
 * registered connection.
 * @sent: Handles when a message has been sent to a registered connection.
 *
 * The default signal handlers of virtual methods of #InfCommunicationMethod.
 * These implement communication within a #InfCommunicationGroup.
 */
struct _InfCommunicationMethodInterface {
  /*< private >*/
  GTypeInterface parent;

  /*< public >*/
  /* Signals */
  void (*add_member)(InfCommunicationMethod* method,
                     InfXmlConnection* connection);
  void (*remove_member)(InfCommunicationMethod* method,
                        InfXmlConnection* connection);

  /* Virtual functions */
  gboolean (*is_member)(InfCommunicationMethod* method,
                        InfXmlConnection* connection);

  void (*send_single)(InfCommunicationMethod* method,
                      InfXmlConnection* connection,
                      xmlNodePtr xml);
  void (*send_all)(InfCommunicationMethod* method,
                   xmlNodePtr xml);
  void (*cancel_messages)(InfCommunicationMethod* method,
                          InfXmlConnection* connection);

  InfCommunicationScope (*received)(InfCommunicationMethod* method,
                                    InfXmlConnection* connection,
                                    xmlNodePtr xml);
  void (*enqueued)(InfCommunicationMethod* method,
                   InfXmlConnection* connection,
                   xmlNodePtr xml);
  void (*sent)(InfCommunicationMethod* method,
               InfXmlConnection* connection,
               xmlNodePtr xml);
};

GType
inf_communication_method_get_type(void) G_GNUC_CONST;

void
inf_communication_method_add_member(InfCommunicationMethod* method,
                                    InfXmlConnection* connection);

void
inf_communication_method_remove_member(InfCommunicationMethod* method,
                                       InfXmlConnection* connection);

gboolean
inf_communication_method_is_member(InfCommunicationMethod* method,
                                   InfXmlConnection* connection);

void
inf_communication_method_send_single(InfCommunicationMethod* method,
                                     InfXmlConnection* connection,
                                     xmlNodePtr xml);

void
inf_communication_method_send_all(InfCommunicationMethod* method,
                                  xmlNodePtr xml);

void
inf_communication_method_cancel_messages(InfCommunicationMethod* method,
                                         InfXmlConnection* connection);

InfCommunicationScope
inf_communication_method_received(InfCommunicationMethod* method,
                                  InfXmlConnection* connection,
                                  xmlNodePtr xml);

void
inf_communication_method_enqueued(InfCommunicationMethod* method,
                                  InfXmlConnection* connection,
                                  xmlNodePtr xml);

void
inf_communication_method_sent(InfCommunicationMethod* method,
                              InfXmlConnection* connection,
                              xmlNodePtr xml);

G_END_DECLS

#endif /* __INF_COMMUNICATION_METHOD_H__ */

/* vim:set et sw=2 ts=2: */