X-Git-Url: http://git.maemo.org/git/?p=mardrone;a=blobdiff_plain;f=mardrone%2FARDrone_SDK_Version_1_8_20110726%2FARDroneLib%2FVP_SDK%2FExamples%2Fcommon%2Fcom_server.c;fp=mardrone%2FARDrone_SDK_Version_1_8_20110726%2FARDroneLib%2FVP_SDK%2FExamples%2Fcommon%2Fcom_server.c;h=aaf6c56ca0ba75886317cce954f56f6f4290fd14;hp=0000000000000000000000000000000000000000;hb=9ec9bc13b75d30bc45535c54a652934debfcea92;hpb=ae0a3c2dc0898400aca0dd6b439c5db8044db7b2 diff --git a/mardrone/ARDrone_SDK_Version_1_8_20110726/ARDroneLib/VP_SDK/Examples/common/com_server.c b/mardrone/ARDrone_SDK_Version_1_8_20110726/ARDroneLib/VP_SDK/Examples/common/com_server.c new file mode 100644 index 0000000..aaf6c56 --- /dev/null +++ b/mardrone/ARDrone_SDK_Version_1_8_20110726/ARDroneLib/VP_SDK/Examples/common/com_server.c @@ -0,0 +1,82 @@ +// ---------------------------------------------- +// +// Author : +// Date : 15/01/2007 +// +// Parrot Video SDK : Examples/common +// +// ---------------------------------------------- + +#include "common.h" + +#include +#include +#include + +#include "com_server.h" + +static com_config_t config; +static com_socket_t srv; +static com_socket_t clt; +static Read read; +static Write write; + +C_RESULT init_com_server(void) +{ + config.connection = COM_BLUETOOTH; + config.localAdapterName = DEVICENAME; + config.localIpAddress = SERVERHOST; + config.localIpSubmask = SUBMASK; + + if(FAILED(com_init(&config))) + return C_FAIL; + + return C_OK; +} + +C_RESULT run_com_server(COM_PROTOCOL protocol) +{ + srv.socket = COM_SERVER; + srv.protocol = protocol; + + if(protocol == COM_RFCOMM) + { + srv.scn = BTADDR_SCN; + } + else if(protocol == COM_BNEP) + { + srv.port = BTADDR_PORT; + srv.serverHost = SERVERHOST; + } + else + return C_FAIL; + + if(FAILED(com_open(&srv,&read,&write))) + return C_FAIL; + + com_passKey(PIN_CODE); + if(FAILED(com_accept(&srv,&clt))) + return C_FAIL; + + return C_OK; +} + +C_RESULT shutdown_com_server(void) +{ + com_close(&clt); + com_close(&srv); + + com_shutdown(); + + return C_OK; +} + +C_RESULT read_server(int8_t* buffer, int32_t* size) +{ + return read(&clt,buffer,size); +} + +C_RESULT write_server(const int8_t* buffer, int32_t* size) +{ + return write(&clt,buffer,size); +}