X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=resource%2Fcsdk%2Fconnectivity%2Finc%2Fcainterfacecontroller.h;h=fedc1a77284f6e0a64725c8cbc490dbe99046733;hb=3c093548382bb2542c87a67e6e5fa32552c29cb3;hp=034e374a22ab08a08381d4534f42b39eb6b7a2e7;hpb=074d5ecdd557332ca4550e08f9718dfc35279f60;p=platform%2Fupstream%2Fiotivity.git diff --git a/resource/csdk/connectivity/inc/cainterfacecontroller.h b/resource/csdk/connectivity/inc/cainterfacecontroller.h index 034e374..fedc1a7 100644 --- a/resource/csdk/connectivity/inc/cainterfacecontroller.h +++ b/resource/csdk/connectivity/inc/cainterfacecontroller.h @@ -28,6 +28,8 @@ #define CA_INTERFACE_CONTROLLER_H_ #include "caadapterinterface.h" +#include "cainterface.h" +#include "cautilinterface.h" #ifndef SINGLE_THREAD #include "cathreadpool.h" /* for thread pool */ @@ -40,58 +42,66 @@ extern "C" #ifdef SINGLE_THREAD /** - * @brief Initializes different adapters based on the compilation flags. - * @return none + * Initializes different adapters based on the compilation flags. */ void CAInitializeAdapters(); #else /** - * @brief Initializes different adapters based on the compilation flags. - * @param handle [IN] thread pool handle created by message handler for different adapters. - * @return none + * Initializes different adapters based on the compilation flags. + * @param[in] handle thread pool handle created by message handler + * for different adapters. + * @param[in] transportType transport type to initialize. */ -void CAInitializeAdapters(ca_thread_pool_t handle); +void CAInitializeAdapters(ca_thread_pool_t handle, CATransportAdapter_t transportType); #endif /** - * @brief Set the received packets callback for message handler - * @param callback [IN] message handler callback to receive packets from different adapters. - * @return none + * Set the received packets callback for message handler. + * @param[in] callback message handler callback to receive packets + * from different adapters. */ void CASetPacketReceivedCallback(CANetworkPacketReceivedCallback callback); /** - * @brief Set the error handler callback for message handler - * @param errorCallback [IN] error handler callback from adapters - * @return none + * Set the error handler callback for message handler. + * @param[in] errorCallback error handler callback from adapters */ void CASetErrorHandleCallback(CAErrorHandleCallback errorCallback); /** - * @brief Set the network status changed callback for message handler - * @param callback [IN] message handler network status callback to receive network changes. - * @return none + * Set the network status changed callback for CAUtil. + * @param[in] adapterCB CAUtil callback to receive adapter status changes. + * @param[in] connCB CAUtil callback to receive connection status changes. */ -void CASetNetworkChangeCallback(CANetworkChangeCallback callback); +void CASetNetworkMonitorCallbacks(CAAdapterStateChangedCB adapterCB, + CAConnectionStateChangedCB connCB); /** - * @brief Starting different connectivity adapters based on the network selection. - * @param transportType [IN] interested network for starting - * @return CA_STATUS_OK or ERROR CODES ( CAResult_t error codes in cacommon.h) + * Unset the network status changed callback for CAUtil. + * @param[in] adapterCB CAUtil callback to receive adapter status changes. + * @param[in] connCB CAUtil callback to receive connection status changes. + * @return ::CA_STATUS_OK or ERROR CODES (::CAResult_t error codes in cacommon.h). + */ +CAResult_t CAUnsetNetworkMonitorCallbacks(CAAdapterStateChangedCB adapterCB, + CAConnectionStateChangedCB connCB); + +/** + * Starting different connectivity adapters based on the network selection. + * @param[in] transportType interested network for starting. + * @return ::CA_STATUS_OK or ERROR CODES (::CAResult_t error codes in cacommon.h). */ CAResult_t CAStartAdapter(CATransportAdapter_t transportType); /** - * @brief Stopping different connectivity adapters based on the network un-selection. - * @param transportType [IN] network type that want to stop - * @return none + * Stopping different connectivity adapters based on the network un-selection. + * @param[in] transportType network type that want to stop. */ void CAStopAdapter(CATransportAdapter_t transportType); #ifdef RA_ADAPTER /** - * @brief Set Remote Access information for XMPP Client. - * @param caraInfo [IN] remote access info. + * Set Remote Access information for XMPP Client. + * @param[in] caraInfo remote access info.. * * @return CA_STATUS_OK */ @@ -99,58 +109,103 @@ CAResult_t CASetAdapterRAInfo(const CARAInfo_t *caraInfo); #endif /** - * @brief Get network information such as ipaddress and mac information - * @param info [OUT] connectivity information such as ipaddress and mac information - * @param size [OUT] number of connectivity information structures - * @return CA_STATUS_OK or ERROR CODES ( CAResult_t error codes in cacommon.h) + * Get network information such as ipaddress and mac information. + * @param[out] info connectivity information + * such as ipaddress and mac information. + * @param[out] size number of connectivity information structures. + * @return ::CA_STATUS_OK or ERROR CODES (::CAResult_t error codes in cacommon.h). */ CAResult_t CAGetNetworkInfo(CAEndpoint_t **info, uint32_t *size); /** - * @brief Sends unicast data to the remote endpoint - * @param endpoint [IN] endpoint information where the data has to be sent - * @param data [IN] data that needs to be sent - * @param length [IN] length of the data that needs to be sent - * @return CA_STATUS_OK or ERROR CODES ( CAResult_t error codes in cacommon.h) + * Sends unicast data to the remote endpoint. + * @param[in] endpoint endpoint information where the data has to be sent. + * @param[in] data data that needs to be sent. + * @param[in] length length of the data that needs to be sent. + * @param[in] dataType Data type which is REQUEST or RESPONSE. + * @return ::CA_STATUS_OK or ERROR CODES (::CAResult_t error codes in cacommon.h). */ -CAResult_t CASendUnicastData(const CAEndpoint_t *endpoint, const void *data, uint32_t length); +CAResult_t CASendUnicastData(const CAEndpoint_t *endpoint, const void *data, + uint32_t length, CADataType_t dataType); /** - * @brief Sends multicast data to all endpoints in the network. - * @param endpoint [IN] endpoint information where the data has to be sent - * @param data [IN] data that needs to be sent - * @param length [IN] length of the data that needs to be sent - * @return CA_STATUS_OK or ERROR CODES ( CAResult_t error codes in cacommon.h) + * Sends multicast data to all endpoints in the network. + * @param[in] endpoint endpoint information where the data has to be sent. + * @param[in] data data that needs to be sent. + * @param[in] length length of the data that needs to be sent. + * @param[in] dataType Data type which is REQUEST or RESPONSE. + * @return ::CA_STATUS_OK or ERROR CODES (::CAResult_t error codes in cacommon.h). */ -CAResult_t CASendMulticastData(const CAEndpoint_t *endpoint, const void *data, uint32_t length); +CAResult_t CASendMulticastData(const CAEndpoint_t *endpoint, const void *data, + uint32_t length, CADataType_t dataType); /** - * @brief Start listening servers to receive search requests from clients - * @return CA_STATUS_OK or ERROR CODES ( CAResult_t error codes in cacommon.h) + * Start listening servers to receive search requests from clients. + * @return ::CA_STATUS_OK or ERROR CODES (::CAResult_t error codes in cacommon.h). */ CAResult_t CAStartListeningServerAdapters(); /** - * @brief Start discovery servers to receive advertisements from server - * @return CA_STATUS_OK or ERROR CODES ( CAResult_t error codes in cacommon.h) + * Stop listening servers to receive search requests from clients. + * @return ::CA_STATUS_OK or ERROR CODES (::CAResult_t error codes in cacommon.h). + */ +CAResult_t CAStopListeningServerAdapters(); + +/** + * Start discovery servers to receive advertisements from server. + * @return ::CA_STATUS_OK or ERROR CODES (::CAResult_t error codes in cacommon.h). */ CAResult_t CAStartDiscoveryServerAdapters(); /** - * @brief Terminates the adapters which are initialized during the initialization - * @return none + * Terminates the adapters which are initialized during the initialization. */ void CATerminateAdapters(); #ifdef SINGLE_THREAD /** - * @brief Checks for available data and reads it - * @return CA_STATUS_OK or ERROR CODES ( CAResult_t error codes in cacommon.h) + * Checks for available data and reads it. + * @return ::CA_STATUS_OK or ERROR CODES (::CAResult_t error codes in cacommon.h). */ CAResult_t CAReadData(); #endif +#ifdef IP_ADAPTER +/** + * Set multicast time to live value to control the scope of the multicasts. + * @param[in] ttl To be set to any value from 0 to 255. + * + * @return ::CA_STATUS_OK or ERROR CODES (::CAResult_t error codes in cacommon.h). + */ +CAResult_t CASetMulticastTTL(size_t ttl); + +/** + * Get multicast time to live value. + * @param[out] ttl TTL pointer to get the stored multicast time to live. + * + * @return ::CA_STATUS_OK or ERROR CODES (::CAResult_t error codes in cacommon.h). + */ +CAResult_t CAGetMulticastTTL(size_t *ttl); +#endif + +#ifdef TCP_ADAPTER +/** + * Disconnect TCP session. + * When there is no transmission for a long time. + * Some carrier vendor is blocking data. + * Thur, TCP Session is cleaned through this function. + * @param[in] endpoint endpoint information to disconnect. + */ +CAResult_t CADisconnectSession(const CAEndpoint_t *endpoint); +#endif + +#ifdef LE_ADAPTER +void CAStartGattServer(); + +void CAStopGattServer(); +#endif + #ifdef __cplusplus } /* extern "C" */ #endif