#ifndef CLIENT_TABLE_H #define CLIENT_TABLE_H /*! * \file */ #ifdef __cplusplus extern "C" { #endif #include "service_table.h" #include "upnp.h" #include "UpnpString.h" #include "upnp_timeout.h" #include "uri.h" #include "TimerThread.h" #include #include #include extern TimerThread gTimerThread; #ifdef INCLUDE_CLIENT_APIS typedef struct s_ClientSubscription ClientSubscription; /*! * \brief Constructor. */ ClientSubscription *UpnpClientSubscription_new(); /*! * \brief Destructor. */ void UpnpClientSubscription_delete( /*! [in] The \b this pointer. */ ClientSubscription *p); /*! * \brief Copy Constructor. */ ClientSubscription *UpnpClientSubscription_dup( /*! [in] The \b this pointer. */ const ClientSubscription *p); /*! * \brief Assignment operator. */ void UpnpClientSubscription_assign( /*! [in] The \b this pointer. */ ClientSubscription *q, const ClientSubscription *p); /*! * \brief */ int UpnpClientSubscription_get_RenewEventId( /*! [in] The \b this pointer. */ const ClientSubscription *p); /*! * \brief */ void UpnpClientSubscription_set_RenewEventId( /*! [in] The \b this pointer. */ ClientSubscription *p, /*! [in] . */ int n); /*! * \brief */ const UpnpString *UpnpClientSubscription_get_SID( /*! [in] The \b this pointer. */ const ClientSubscription *p); /*! * \brief */ void UpnpClientSubscription_set_SID( /*! [in] The \b this pointer. */ ClientSubscription *p, const UpnpString *s); /*! * \brief */ void UpnpClientSubscription_strcpy_SID( /*! [in] The \b this pointer. */ ClientSubscription *p, const char *s); /*! * \brief */ const UpnpString *UpnpClientSubscription_get_ActualSID( /*! [in] The \b this pointer. */ const ClientSubscription *p); /*! * \brief */ void UpnpClientSubscription_set_ActualSID( /*! [in] The \b this pointer. */ ClientSubscription *p, const UpnpString *s); /*! * \brief */ void UpnpClientSubscription_strcpy_ActualSID( /*! [in] The \b this pointer. */ ClientSubscription *p, const char *s); /*! * \brief */ const UpnpString *UpnpClientSubscription_get_EventURL( /*! [in] The \b this pointer. */ const ClientSubscription *p); /*! * \brief */ void UpnpClientSubscription_set_EventURL( /*! [in] The \b this pointer. */ ClientSubscription *p, const UpnpString *s); /*! * \brief */ void UpnpClientSubscription_strcpy_EventURL( /*! [in] The \b this pointer. */ ClientSubscription *p, const char *s); /*! * \brief */ ClientSubscription *UpnpClientSubscription_get_Next( /*! [in] The \b this pointer. */ const ClientSubscription *p); /*! * \brief */ void UpnpClientSubscription_set_Next( /*! [in] The \b this pointer. */ ClientSubscription *p, ClientSubscription *q); /*! * \brief Free memory allocated for client subscription data. * * Remove timer thread associated with this subscription event. */ void free_client_subscription( /*! [in] Client subscription to be freed. */ ClientSubscription *sub); /*! * \brief Free the client subscription table. */ void freeClientSubList( /*! [in] Client subscription list to be freed. */ ClientSubscription *list); /*! * \brief Remove the client subscription matching the subscritpion id * represented by the const Upnp_SID sid parameter from the table and * update the table. */ void RemoveClientSubClientSID( /*! [in] Head of the subscription list. */ ClientSubscription **head, /*! [in] Subscription ID to be mactched. */ const UpnpString *sid); /*! * \brief Return the client subscription from the client table that matches * const Upnp_SID sid subscrition id value. * * \return The matching subscription. */ ClientSubscription *GetClientSubClientSID( /*! [in] Head of the subscription list. */ ClientSubscription *head, /*! [in] Subscription ID to be mactched. */ const UpnpString *sid); /*! * \brief Returns the client subscription from the client subscription table * that has the matching token *sid buffer value. * * \return The matching subscription. */ ClientSubscription *GetClientSubActualSID( /*! [in] Head of the subscription list. */ ClientSubscription *head, /*! [in] Subscription ID to be mactched. */ token *sid); #endif /* INCLUDE_CLIENT_APIS */ #ifdef __cplusplus } #endif /* __cplusplus */ #endif /* CLIENT_TABLE_H */