• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src/router/avahi-0.6.31/avahi-compat-howl/include/corby/
1#ifndef _corby_object_h
2#define _corby_object_h
3
4/*
5 * Copyright 2003, 2004 Porchdog Software. All rights reserved.
6 *
7 *	Redistribution and use in source and binary forms, with or without modification,
8 *	are permitted provided that the following conditions are met:
9 *
10 *		1. Redistributions of source code must retain the above copyright notice,
11 *		   this list of conditions and the following disclaimer.
12 *		2. Redistributions in binary form must reproduce the above copyright notice,
13 *		   this list of conditions and the following disclaimer in the documentation
14 *		   and/or other materials provided with the distribution.
15 *
16 *	THIS SOFTWARE IS PROVIDED BY PORCHDOG SOFTWARE ``AS IS'' AND ANY
17 *	EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 *	WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19 *	IN NO EVENT SHALL THE HOWL PROJECT OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
20 *	INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
21 *	BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22 *	DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
23 *	OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24 *	OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25 *	OF THE POSSIBILITY OF SUCH DAMAGE.
26 *
27 *	The views and conclusions contained in the software and documentation are those
28 *	of the authors and should not be interpreted as representing official policies,
29 *	either expressed or implied, of Porchdog Software.
30 */
31
32#include <salt/salt.h>
33#include <corby/message.h>
34#include <corby/channel.h>
35#include <corby/buffer.h>
36#include <corby/corby.h>
37
38#if defined(__cplusplus)
39extern "C"
40{
41#endif
42
43struct										_sw_corby_orb;
44struct										_sw_corby_object;
45typedef struct _sw_corby_object	*	sw_corby_object;
46typedef sw_opaque							sw_corby_object_send_completion_handler;
47typedef void
48(HOWL_API *sw_corby_object_send_completion_func)(
49												sw_corby_object	object,
50												sw_corby_buffer	buffer,
51												sw_result			result);
52
53
54
55sw_result HOWL_API
56sw_corby_object_init_from_url(
57							sw_corby_object			*	self,
58							struct _sw_corby_orb		*	orb,
59							sw_const_string				url,
60							sw_socket_options				options,
61							sw_uint32							bufsize);
62
63
64sw_result HOWL_API
65sw_corby_object_fina(
66							sw_corby_object		self);
67
68
69sw_result HOWL_API
70sw_corby_object_start_request(
71							sw_corby_object 		self,
72							sw_const_string		op,
73							sw_uint32					op_len,
74							sw_bool					reply_expected,
75							sw_corby_buffer	*	buffer);
76
77
78sw_result HOWL_API
79sw_corby_object_send(
80							sw_corby_object					self,
81							sw_corby_buffer					buffer,
82							sw_corby_buffer_observer		observer,
83							sw_corby_buffer_written_func	func,
84							sw_opaque							extra);
85
86
87sw_result HOWL_API
88sw_corby_object_recv(
89							sw_corby_object		self,
90							sw_corby_message	*	message,
91                     sw_corby_buffer	*	buffer,
92                     sw_uint8				*	endian,
93                     sw_bool					block);
94
95
96sw_result HOWL_API
97sw_corby_object_channel(
98							sw_corby_object		self,
99							sw_corby_channel	*	channel);
100
101
102sw_result HOWL_API
103sw_corby_object_set_channel(
104							sw_corby_object		self,
105							sw_corby_channel		channel);
106
107
108#if defined(__cplusplus)
109}
110#endif
111
112
113#endif
114