From 8fb1bc18bad99b2de79783848b41d07da01315a7 Mon Sep 17 00:00:00 2001
From: chenqiyang <1406175257@qq.com>
Date: 星期三, 01 九月 2021 17:04:05 +0800
Subject: [PATCH] 采用纯oc sdk解决版本适配问题;解决呼叫不能截屏问题

---
 Shared.IOS.HDLLinphoneSDK/Shared.IOS.HDLLinphoneSDK/Library/belle-sip.framework/Headers/mainloop.h |  126 +++++-------------------------------------
 1 files changed, 15 insertions(+), 111 deletions(-)

diff --git a/Shared.IOS.HDLLinphoneSDK/Shared.IOS.HDLLinphoneSDK/Library/belle-sip.framework/Headers/mainloop.h b/Shared.IOS.HDLLinphoneSDK/Shared.IOS.HDLLinphoneSDK/Library/belle-sip.framework/Headers/mainloop.h
index d2baf93..9fe0db3 100755
--- a/Shared.IOS.HDLLinphoneSDK/Shared.IOS.HDLLinphoneSDK/Library/belle-sip.framework/Headers/mainloop.h
+++ b/Shared.IOS.HDLLinphoneSDK/Shared.IOS.HDLLinphoneSDK/Library/belle-sip.framework/Headers/mainloop.h
@@ -20,10 +20,6 @@
 #ifndef BELLE_SIP_MAINLOOP_H
 #define BELLE_SIP_MAINLOOP_H
 
-#include "defs.h"
-#include "utils.h"
-#include "types.h"
-
 #define BELLE_SIP_EVENT_READ 1
 #define BELLE_SIP_EVENT_WRITE (1<<1)
 #define BELLE_SIP_EVENT_ERROR (1<<2)
@@ -116,22 +112,8 @@
 
 /**
  * Schedule an arbitrary task at next main loop iteration.
- * @note thread-safe
 **/
 BELLESIP_EXPORT void belle_sip_main_loop_do_later(belle_sip_main_loop_t *ml, belle_sip_callback_t func, void *data);
-
-/**
- * Same as #belle_sip_main_loop_do_later() but allow to give a name to the task.
- * @param[in] timer_name The name of the task. If NULL, the task will be named as though
- * #belle_sip_main_loop_do_later() was called.
- * @note thread-safe
-**/
-BELLESIP_EXPORT void belle_sip_main_loop_do_later_with_name(
-	belle_sip_main_loop_t *ml,
-	belle_sip_callback_t func,
-	void *data,
-	const char *timer_name
-);
 
 /**
  * Creates a timeout source, similarly to belle_sip_main_loop_add_timeout().
@@ -140,30 +122,14 @@
 **/
 BELLESIP_EXPORT belle_sip_source_t * belle_sip_timeout_source_new(belle_sip_source_func_t func, void *data, unsigned int timeout_value_ms);
 
-/**
- * Set the timeout duration.
- * @param[in] s The source to modify.
- * @param[in] value_ms The new timeout duration in milliseconds. Only values in [0;INT_MAX] are valid to define a new
- * duration. Higher values will cause the timer to be disabled.
- * @deprecated Since 2020-05-20 (SDK 4.4). Use belle_sip_source_set_timeout_int64() instead.
- */
-BELLESIP_DEPRECATED BELLESIP_EXPORT void belle_sip_source_set_timeout(belle_sip_source_t *s, unsigned int value_ms);
-/**
- * Set the timeout duration.
- * @param[in] s The source to modify.
- * @param[in] value_ms Positive values willbe taken as the new duration to set. Negative values will cause the timer
- * to be disabled.
- */
-BELLESIP_EXPORT void belle_sip_source_set_timeout_int64(belle_sip_source_t *s, int64_t value_ms);
-
+BELLESIP_EXPORT void belle_sip_source_set_timeout(belle_sip_source_t *s, unsigned int value_ms);
 /**
  * Cancel a source. Will be removed at next iterate. It is not freed.
  **/
 BELLESIP_EXPORT void belle_sip_source_cancel(belle_sip_source_t * src);
 
 
-BELLESIP_DEPRECATED BELLESIP_EXPORT unsigned int belle_sip_source_get_timeout(const belle_sip_source_t *s);
-BELLESIP_EXPORT int64_t belle_sip_source_get_timeout_int64(const belle_sip_source_t *s);
+BELLESIP_EXPORT unsigned int belle_sip_source_get_timeout(const belle_sip_source_t *s);
 
 BELLESIP_EXPORT belle_sip_source_t * belle_sip_socket_source_new(belle_sip_source_func_t func, void *data, belle_sip_socket_t fd, unsigned int events, unsigned int timeout_value_ms);
 /*
@@ -199,103 +165,41 @@
 BELLESIP_EXPORT void belle_sip_main_loop_cancel_source(belle_sip_main_loop_t *ml, unsigned long id);
 
 BELLE_SIP_END_DECLS
+#ifndef BELLE_SIP_USE_STL
+#define BELLE_SIP_USE_STL 1
+#endif
 
-#if (defined(WIN32) && defined(__cplusplus)) || __cplusplus >= 201103L
+#if ((defined(WIN32) && defined(__cplusplus)) || __cplusplus >= 201103L) && BELLE_SIP_USE_STL
 /*Only Visual Studio 2018 properly defines __cplusplus according to c++ level. */
 
 #include <functional>
-#include <memory>
 
-/**
- * A generic deleter for belle_sip_object_t objects that limits itself to decrementing the
- * reference counter. This class is to be used by std::unique_ptr and std::shared_ptr maybe.
- */
-template <typename T>
-struct BelleSipObjectDeleter {
-	constexpr BelleSipObjectDeleter() noexcept = default;
-	void operator()(T *ptr) const noexcept {belle_sip_object_unref(ptr);}
-};
+typedef std::function<int (unsigned int)> belle_sip_source_cpp_func_t;
 
-using BelleSipSourcePtr = std::unique_ptr<belle_sip_source_t, BelleSipObjectDeleter<belle_sip_source_t>>;
-using belle_sip_source_cpp_func_t = std::function<int(unsigned int)>;
-using BelleSipDoLaterFunc = std::function<void()>;
 
-/**
- * The purpose of this function is to simplify c++ timer integration.
+/*purpose of this function is to simplify c++ timer integration.
  * ex:
  * std::string helloworld("Hello world):
  * belle_sip_source_cpp_func_t *func = new belle_sip_source_cpp_func_t([helloworld](unsigned int events) {
  *						std::cout << helloworld << std::endl;
  *						return BELLE_SIP_STOP;
  *					});
- * // create timer
- * belle_sip_source_t *timer = belle_sip_main_loop_create_cpp_timeout( mainloop
+ *create timer
+ *mTimer = belle_sip_main_loop_create_cpp_timeout( mainloop
  *												, func
  *												, 1000
  *												,"timer for c++");
- * [...]
- * // Unref the timer when you doesn't need it anymore
- * belle_sip_object_unref(timer);
  *
- * @warning Not thread-sfae
- * @deprecated Since 2020-04-17.
  */
-BELLESIP_DEPRECATED BELLESIP_EXPORT belle_sip_source_t *belle_sip_main_loop_create_cpp_timeout(belle_sip_main_loop_t *ml
+
+BELLESIP_EXPORT belle_sip_source_t * belle_sip_main_loop_create_cpp_timeout(belle_sip_main_loop_t *ml
 								, belle_sip_source_cpp_func_t *func
 								, unsigned int timeout_value_ms
 								, const char* timer_name);
 
-/*
- * This variant does the same except that:
- * - it does not require to pass the std::function as a pointer allocated with new()
- * - the std::function shall return true/false instead of BELLE_SIP_CONTINUE/BELLE_SIP_STOP.
- */
-BELLESIP_EXPORT belle_sip_source_t * belle_sip_main_loop_create_cpp_timeout_2(belle_sip_main_loop_t *ml,
-							const std::function<bool ()> &func,
-							unsigned int timeout_value_ms,
-							const std::string &timer_name);
-		
-/**
- * The purpose of this function is to simplify c++ timer integration.
- * Unlike the deprecated overload of this function, there is no need to
- * allocate anything with new and to unref the timer.
- *
- * ex:
- * std::string helloworld{"Hello world};
- * auto func = [helloworld](unsigned int events) {
- *					std::cout << helloworld << std::endl;
- *					return BELLE_SIP_STOP;
- *				});
- *
- * // create the timer
- * auto timer = belle_sip_main_loop_create_cpp_timeout( mainloop
- *												, func
- *												, 1000
- *												,"timer for c++");
- *
- */
-BELLESIP_EXPORT BelleSipSourcePtr belle_sip_main_loop_create_cpp_timeout(belle_sip_main_loop_t *ml
-								, const belle_sip_source_cpp_func_t &func
-								, unsigned int timeout_value_ms
-								, const char* timer_name);
-
-/**
- * C++ wrapper for #belle_sip_main_loop_do_later().
- * @note thread-safe
- */
-BELLESIP_EXPORT void belle_sip_main_loop_cpp_do_later(belle_sip_main_loop_t *ml, const BelleSipDoLaterFunc &func);
-
-/**
- * Overload of the previous function that allow to give a name to the task.
- * @note thread-safe
- */
-BELLESIP_EXPORT void belle_sip_main_loop_cpp_do_later(
-	belle_sip_main_loop_t *ml,
-	const BelleSipDoLaterFunc &func,
-	const char *task_name
-);
+BELLESIP_EXPORT void belle_sip_main_loop_cpp_do_later(belle_sip_main_loop_t *ml, const std::function<void (void)> &func);
 
 
-#endif // C++ declarations
+#endif
 
-#endif // #ifndef BELLE_SIP_MAINLOOP_H
+#endif

--
Gitblit v1.8.0