Agora RTC Objective-C API Reference Refactor

AgoraExtensionProviderEntry.h File Reference

Go to the source code of this file.

## Macro Definition Documentation

## ◆ DECLARE_CREATE_AND_REGISTER_PROVIDER

#define DECLARE_CREATE_AND_REGISTER_PROVIDER | ( |  | PROVIDER_NAME,
|  |  | PROVIDER_CLASS,
|  |  | PROVIDER_INTERFACE_USED,
|  |  | ...
| ) |  |

Value:
static void register_##PROVIDER_NAME##_to_agora() { \
auto control = getAgoraExtensionControl(); \
agora::rtc::ExtensionVersion version = \
agora::rtc::ExtensionInterfaceVersion<PROVIDER_INTERFACE_USED>::Version(); \
declareProviderVersion(#PROVIDER_NAME, version); \
if (#PROVIDER_NAME && control) { \
control->registerProvider(#PROVIDER_NAME, \
new agora::RefCountedObject<PROVIDER_CLASS>(__VA_ARGS__)); \
} \
} \

## ◆ DECLARE_CREATE_AND_REGISTER_PROVIDER_PTR

#define DECLARE_CREATE_AND_REGISTER_PROVIDER_PTR | ( |  | PROVIDER_NAME,
|  |  | PROVIDER_INTERFACE_USED,
|  |  | PROVIDER_REF_PTR
| ) |  |

Value:
static void register_##PROVIDER_NAME##_to_agora() { \
auto control = getAgoraExtensionControl(); \
agora::rtc::ExtensionVersion version = \
agora::rtc::ExtensionInterfaceVersion<PROVIDER_INTERFACE_USED>::Version(); \
declareProviderVersion(#PROVIDER_NAME, version); \
if (#PROVIDER_NAME && control) { \
control->registerProvider(#PROVIDER_NAME, PROVIDER_REF_PTR); \
} \
} \

## Typedef Documentation

## ◆ agora_ext_entry_func_t

typedef void(* agora_ext_entry_func_t) (void)

## Function Documentation

## ◆ getAgoraExtensionControl()

AGORA_API agora::rtc::IExtensionControl* AGORA_CALL getAgoraExtensionControl | ( |  | ) |

## ◆ declareProviderVersion()

AGORA_API void AGORA_CALL declareProviderVersion | ( | const char * | ,
|  | const agora::rtc::ExtensionVersion & |
| ) |  |

## ◆ registerProviderEntry()

AGORA_API void AGORA_CALL registerProviderEntry | ( | const char * | ,
|  | agora_ext_entry_func_t |
| ) |  |

agora::RefCountedObject
Definition: AgoraRefCountedObject.h:71
getAgoraExtensionControl
AGORA_API agora::rtc::IExtensionControl *AGORA_CALL getAgoraExtensionControl()