00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef _OPENSYNC_PLUGIN_CONNECTION_H_
00022 #define _OPENSYNC_PLUGIN_CONNECTION_H_
00023
00032
00036 typedef enum {
00038 OSYNC_PLUGIN_CONNECTION_UNKNOWN = 0,
00040 OSYNC_PLUGIN_CONNECTION_BLUETOOTH = (1 << 0),
00042 OSYNC_PLUGIN_CONNECTION_USB = (1 << 1),
00044 OSYNC_PLUGIN_CONNECTION_NETWORK = (1 << 2),
00046 OSYNC_PLUGIN_CONNECTION_SERIAL = (1 << 3),
00048 OSYNC_PLUGIN_CONNECTION_IRDA = (1 << 4)
00049 } OSyncPluginConnectionType;
00050
00054 typedef OSyncPluginConnectionType OSyncPluginConnectionSupportedFlag;
00055
00059 typedef unsigned int OSyncPluginConnectionSupportedFlags;
00060
00064 typedef enum {
00066 OSYNC_PLUGIN_CONNECTION_BLUETOOTH_ADDRESS = (1 << 0),
00068 OSYNC_PLUGIN_CONNECTION_BLUETOOTH_RFCOMM = (1 << 1),
00070 OSYNC_PLUGIN_CONNECTION_BLUETOOTH_SDPUUID = (1 << 2),
00072 OSYNC_PLUGIN_CONNECTION_USB_VENDORID = (1 << 3),
00074 OSYNC_PLUGIN_CONNECTION_USB_PRODUCTID = (1 << 4),
00076 OSYNC_PLUGIN_CONNECTION_USB_INTERFACE = (1 << 5),
00078 OSYNC_PLUGIN_CONNECTION_NETWORK_ADDRESS = (1 << 6),
00080 OSYNC_PLUGIN_CONNECTION_NETWORK_PORT = (1 << 7),
00082 OSYNC_PLUGIN_CONNECTION_NETWORK_PROTOCOL = (1 << 8),
00084 OSYNC_PLUGIN_CONNECTION_NETWORK_DNSSD = (1 << 9),
00086 OSYNC_PLUGIN_CONNECTION_SERIAL_SPEED = (1 << 10),
00088 OSYNC_PLUGIN_CONNECTION_SERIAL_DEVICENODE = (1 << 11),
00090 OSYNC_PLUGIN_CONNECTION_IRDA_SERVICE = (1 << 12)
00091 } OSyncPluginConnectionOptionSupportedFlag;
00092
00096 typedef unsigned int OSyncPluginConnectionOptionSupportedFlags;
00097
00104 OSYNC_EXPORT OSyncPluginConnection *osync_plugin_connection_new(OSyncError **error);
00105
00111 OSYNC_EXPORT void osync_plugin_connection_unref(OSyncPluginConnection *connection);
00112
00119 OSYNC_EXPORT OSyncPluginConnection *osync_plugin_connection_ref(OSyncPluginConnection *connection);
00120
00121
00128 OSYNC_EXPORT OSyncPluginConnectionType osync_plugin_connection_get_type(OSyncPluginConnection *connection);
00129
00136 OSYNC_EXPORT void osync_plugin_connection_set_type(OSyncPluginConnection *connection, OSyncPluginConnectionType type);
00137
00138
00146 OSYNC_EXPORT osync_bool osync_plugin_connection_is_supported(OSyncPluginConnection *connection, OSyncPluginConnectionSupportedFlag flag);
00147
00154 OSYNC_EXPORT void osync_plugin_connection_set_supported(OSyncPluginConnection *connection, OSyncPluginConnectionSupportedFlags flags);
00155
00156
00164 OSYNC_EXPORT osync_bool osync_plugin_connection_option_is_supported(OSyncPluginConnection *connection, OSyncPluginConnectionOptionSupportedFlag flag);
00165
00172 OSYNC_EXPORT void osync_plugin_connection_option_set_supported(OSyncPluginConnection *connection, OSyncPluginConnectionOptionSupportedFlags flags);
00173
00174
00175
00176
00183 OSYNC_EXPORT const char *osync_plugin_connection_bt_get_addr(OSyncPluginConnection *connection);
00184
00185
00192 OSYNC_EXPORT void osync_plugin_connection_bt_set_addr(OSyncPluginConnection *connection, const char *address);
00193
00200 OSYNC_EXPORT unsigned int osync_plugin_connection_bt_get_channel(OSyncPluginConnection *connection);
00201
00208 OSYNC_EXPORT void osync_plugin_connection_bt_set_channel(OSyncPluginConnection *connection, unsigned int channel);
00209
00210
00217 OSYNC_EXPORT const char *osync_plugin_connection_bt_get_sdpuuid(OSyncPluginConnection *connection);
00218
00225 OSYNC_EXPORT void osync_plugin_connection_bt_set_sdpuuid(OSyncPluginConnection *connection, const char *sdpuuid);
00226
00227
00228
00235 OSYNC_EXPORT const char *osync_plugin_connection_usb_get_vendorid(OSyncPluginConnection *connection);
00236
00243 OSYNC_EXPORT void osync_plugin_connection_usb_set_vendorid(OSyncPluginConnection *connection, const char *vendorid);
00244
00245
00252 OSYNC_EXPORT const char *osync_plugin_connection_usb_get_productid(OSyncPluginConnection *connection);
00253
00260 OSYNC_EXPORT void osync_plugin_connection_usb_set_productid(OSyncPluginConnection *connection, const char *productid);
00261
00262
00269 OSYNC_EXPORT unsigned int osync_plugin_connection_usb_get_interface(OSyncPluginConnection *connection);
00270
00277 OSYNC_EXPORT void osync_plugin_connection_usb_set_interface(OSyncPluginConnection *connection, unsigned int interf);
00278
00279
00280
00281
00288 OSYNC_EXPORT const char *osync_plugin_connection_net_get_address(OSyncPluginConnection *connection);
00289
00296 OSYNC_EXPORT void osync_plugin_connection_net_set_address(OSyncPluginConnection *connection, const char *address);
00297
00298
00305 OSYNC_EXPORT unsigned int osync_plugin_connection_net_get_port(OSyncPluginConnection *connection);
00306
00313 OSYNC_EXPORT void osync_plugin_connection_net_set_port(OSyncPluginConnection *connection, unsigned int port);
00314
00315
00322 OSYNC_EXPORT const char *osync_plugin_connection_net_get_protocol(OSyncPluginConnection *connection);
00323
00330 OSYNC_EXPORT void osync_plugin_connection_net_set_protocol(OSyncPluginConnection *connection, const char *protocol);
00331
00332
00339 OSYNC_EXPORT const char *osync_plugin_connection_net_get_dnssd(OSyncPluginConnection *connection);
00340
00347 OSYNC_EXPORT void osync_plugin_connection_net_set_dnssd(OSyncPluginConnection *connection, const char *dnssd);
00348
00349
00350
00351
00358 OSYNC_EXPORT unsigned int osync_plugin_connection_serial_get_speed(OSyncPluginConnection *connection);
00359
00366 OSYNC_EXPORT void osync_plugin_connection_serial_set_speed(OSyncPluginConnection *connection, unsigned int speed);
00367
00368
00377 OSYNC_EXPORT const char *osync_plugin_connection_serial_get_devicenode(OSyncPluginConnection *connection);
00378
00387 OSYNC_EXPORT void osync_plugin_connection_serial_set_devicenode(OSyncPluginConnection *connection, const char *devicenode);
00388
00389
00390
00391
00398 OSYNC_EXPORT const char *osync_plugin_connection_irda_get_service(OSyncPluginConnection *connection);
00399
00406 OSYNC_EXPORT void osync_plugin_connection_irda_set_service(OSyncPluginConnection *connection, const char *irdaservice);
00407
00410 #endif
00411