rapi_connection_from_name

Langue: en

Version: 2007-08-26 (fedora - 05/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

rapi_connection_from_name - obtain connection for RAPI function calls

SYNOPSIS

 #include <rapi.h>
 
 RapiConnection *rapi_connection_from_name(const char *device_name);
 
 RapiConnection *rapi_connection_from_info(SynceInfo *info);
 
 void rapi_connection_select(RapiConnection *connection);
 
 void rapi_connection_destroy(RapiConnection *connection);
 
 HRESULT CeRapiInit();
 
 STDAPI CeRapiUninit();
 

DESCRIPTION

The rapi_connection_from_info() function returns a pointer to a newly allocated RapiConnection struct, used for remote function calls to a mobile device. The RapiConnection keeps a pointer to the SynceInfo struct but does not copy it, therefore freeing the SynceInfo before the RapiConnection is not recommended.

rapi_connection_from_name() accomplishes the same for the connected device named device_name. Refer to synce_info_new(3) for insight on how this name and the connection daemon in use can affect the device contacted.

rapi_connection_select() allows for selection between multiple active connections. NULL can be passed to result in no active connection.

rapi_connection_destroy() frees a RapiConnection. This should not be called before CeRapiUninit().

CeRapiInit() connects the current RapiConnection to it's mobile device. If already initialised, CERAPI_E_ALREADYINITIALIZED is returned.

CeRapiUninit() destroys the connection for the current RapiConnection. The RapiConnection cannot be re-initialised, it must be destroyed.

An example of using multiple devices follows.

 /*
  * SynCE support for switching between multiple devices
  *
  * Example code for two devices follows!
  *
  * It shows two different ways to get a RapiConnection object.
  *
  */
 
 RapiConnection* a = rapi_connection_from_name("device_a");
 rapi_connection_select(a);
 CeRapiInit()
 
 SynceInfo* info_b = synce_info_new("device_b");
 RapiConnection* b = rapi_connection_from_info(info_b);
 rapi_connection_select(b);
 CeRapiInit()
 
 rapi_connection_select(a);
  ...some RAPI calls to device A...
 
 rapi_connection_select(b);
  ...some RAPI calls to device B...
 
 rapi_connection_select(a);
 CeRapiUninit();
 rapi_connection_destroy(a);
 
 rapi_connection_select(b);
 CeRapiUninit();
 rapi_connection_destroy(b);
 synce_info_destroy(info_b);
 
 

RETURN VALUE

rapi_connection_from_name() and rapi_connection_from_info() return a pointer to a new RapiConnection.

CeRapiInit() and CeRapiUninit() return S_OK on success or an error code on failure.

AUTHOR

This manual page was written by Mark Ellis <mark_ellis@users.sourceforge.net>.

SEE ALSO

synce(7), synce_info_new(3), odccm(1), vdccm(1)