source: trunk/ORBit2-2.14.0/linc2/include/linc/linc-server.h

Last change on this file was 92, checked in by cinc, 19 years ago

Orbit2 modified for use with NOM

File size: 1.9 KB
Line 
1/*
2 * linc-server.h: This file is part of the linc library.
3 *
4 * Authors:
5 * Elliot Lee (sopwith@redhat.com)
6 * Michael Meeks (michael@ximian.com)
7 * Mark McLouglin (mark@skynet.ie) & others
8 *
9 * Copyright 2001, Red Hat, Inc., Ximian, Inc.,
10 * Sun Microsystems, Inc.
11 */
12#ifndef _LINK_SERVER_H_
13#define _LINK_SERVER_H_
14
15#include <glib/gmacros.h>
16
17G_BEGIN_DECLS
18
19#include <linc/linc-protocol.h>
20#include <linc/linc-connection.h>
21
22#define LINK_TYPE_SERVER (link_server_get_type())
23#define LINK_TYPE_IS_SERVER(type) (G_TYPE_FUNDAMENTAL (type) == LINK_TYPE_SERVER)
24#define LINK_SERVER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), LINK_TYPE_SERVER, LinkServer))
25#define LINK_SERVER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), LINK_TYPE_CONNETION, LinkServerClass))
26#define LINK_IS_SERVER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LINK_TYPE_SERVER))
27#define LINK_IS_SERVER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LINK_TYPE_SERVER))
28
29typedef struct _LinkServerPrivate LinkServerPrivate;
30
31typedef struct {
32 GObject parent;
33
34 const LinkProtocolInfo *proto;
35
36 char *local_host_info;
37 char *local_serv_info;
38
39 /* Options that incoming connections are created with */
40 LinkConnectionOptions create_options;
41
42 LinkServerPrivate *priv;
43} LinkServer;
44
45typedef struct {
46 GObjectClass parent_class;
47
48 LinkConnection *(* create_connection) (LinkServer *srv);
49
50 void (* new_connection) (LinkServer *srv,
51 LinkConnection *cnx);
52} LinkServerClass;
53
54GType link_server_get_type (void) G_GNUC_CONST;
55
56gboolean link_server_setup (LinkServer *srv,
57 const char *proto_name,
58 const char *local_host_info,
59 const char *local_serv_info,
60 LinkConnectionOptions create_options);
61
62G_END_DECLS
63
64#endif /* _LINK_SERVER_H_ */
Note: See TracBrowser for help on using the repository browser.