wrapper_utils.h 3.23 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
/*
wrapper_utils.h
Copyright (C) 2017 Belledonne Communications SARL

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
*/

Erwan Croze's avatar
Erwan Croze committed
20
/*
21 22 23 24 25 26 27
 * That file declares functions that are used by automatic API wrapper generators. These
 * should not be used by C API users.
 */

#ifndef _WRAPPER_UTILS_H
#define _WRAPPER_UTILS_H

François Grisez's avatar
François Grisez committed
28 29
#include <bctoolbox/list.h>
#include "linphone/defs.h"
30
#include "linphone/types.h"
31 32 33 34 35 36 37 38 39 40

#ifdef __cplusplus
extern "C" {
#endif

/**
 * @addtogroup wrapper
 * @{
 */

François Grisez's avatar
François Grisez committed
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
/**
 * @brief Gets the list of listener in the core.
 * @param lc The #LinphoneCore.
 * @return The list of #LinphoneCoreCbs.
 * @donotwrap
 */
LINPHONE_PUBLIC bctbx_list_t *linphone_core_get_callbacks_list(const LinphoneCore *lc);

/**
 * @brief Gets the list of listener in the call.
 * @param[in] call #LinphoneCall object.
 * @return The list of #LinphoneCallCbs.
 * @donotwrap
 */
LINPHONE_PUBLIC const bctbx_list_t *linphone_call_get_callbacks_list(const LinphoneCall *call);

57 58
/**
 * Send a message to peer member of this chat room.
Erwan Croze's avatar
Erwan Croze committed
59
 *
60 61 62 63 64
 * The state of the sending message will be notified via the callbacks defined in the #LinphoneChatMessageCbs object that can be obtained
 * by calling linphone_chat_message_get_callbacks().
 * @note Unlike linphone_chat_room_send_chat_message(), that function only takes a reference on the #LinphoneChatMessage
 * instead of totaly takes ownership on it. Thus, the #LinphoneChatMessage object must be released by the API user after calling
 * that function.
65
 *
66 67 68 69 70
 * @param[in] cr A chat room.
 * @param[in] msg The message to send.
 */
LINPHONE_PUBLIC void linphone_chat_room_send_chat_message_2(LinphoneChatRoom *cr, LinphoneChatMessage *msg);

71 72 73 74 75 76 77 78
/**
 * Resend a chat message if it is in the 'not delivered' state for whatever reason.
 * @note Unlike linphone_chat_message_resend(), that function only takes a reference on the #LinphoneChatMessage
 * instead of totaly takes ownership on it. Thus, the #LinphoneChatMessage object must be released by the API user after calling
 * that function.
 *
 * @param[in] msg LinphoneChatMessage object
 */
Erwan Croze's avatar
Erwan Croze committed
79
LINPHONE_PUBLIC void linphone_chat_message_resend_2(LinphoneChatMessage *msg);
80

81 82 83 84 85
/**
 * Accessor for the shared_ptr&lt;BelCard&gt; stored by a #LinphoneVcard
 */
LINPHONE_PUBLIC void *linphone_vcard_get_belcard(LinphoneVcard *vcard);

86 87 88 89 90 91 92 93 94 95 96 97

/**
 * @brief Increases the reference counter of #LinphoneDialPlan objects.
 */
LINPHONE_PUBLIC LinphoneDialPlan *linphone_dial_plan_ref(LinphoneDialPlan *dp);

/**
 * @brief Decreases the reference counter of #LinphoneDialPaln objects.
 */
LINPHONE_PUBLIC void linphone_dial_plan_unref(LinphoneDialPlan *dp);


98 99 100 101 102 103 104 105 106
/**
 * @}
 */

#ifdef __cplusplus
}
#endif

#endif // _WRAPPER_UTILS_H