Agora C++ API Reference for All Platforms

Classes | Public Member Functions | Protected Member Functions | List of all members
agora::rtc::IExtensionControl Class Referenceabstract

## Classes
struct | Capabilities

## Public Member Functions
virtual void | getCapabilities (Capabilities &capabilities)=0
virtual int | recycleVideoCache ()=0
virtual int | dumpVideoFrame (agora_refptr< IVideoFrame > frame, const char *file)=0
virtual int | log (commons::LOG_LEVEL level, const char *message)=0
virtual int | fireEvent (const char *provider, const char *extension, const char *event_key, const char *value)=0
virtual int | registerProvider (const char *provider, agora_refptr< IExtensionProvider > instance)=0

## Protected Member Functions
virtual | ~IExtensionControl ()

## Detailed Description

Interface for handling agora extensions.

## Constructor & Destructor Documentation

## ◆ ~IExtensionControl()

virtual agora::rtc::IExtensionControl::~IExtensionControl | ( |  | ) |
| inline protected virtual

## Member Function Documentation

## ◆ getCapabilities()

virtual void agora::rtc::IExtensionControl::getCapabilities | ( | Capabilities & | capabilities | ) |
| pure virtual

Gets the capabilities of agora extensions.

Parameters

  capabilities | Supported extension capabilities.

## ◆ recycleVideoCache()

virtual int agora::rtc::IExtensionControl::recycleVideoCache | ( |  | ) |
| pure virtual

Recycles internal frame memory with a specified Video frame type.

The SDK automatically recycles deprecated video frames. However, you can still call this method to perform an immediate memory recycle.

Parameters

  type | Frame type to be recycled.

## ◆ dumpVideoFrame()

virtual int agora::rtc::IExtensionControl::dumpVideoFrame | ( | agora_refptr< IVideoFrame > | frame,
|  | const char * | file
| ) |  |
| pure virtual

This method dumps the content of the video frame to the specified file.

Returns
  - 0: The method call succeeds.
  - <0: The method call fails.

## ◆ log()

virtual int agora::rtc::IExtensionControl::log | ( | commons::LOG_LEVEL | level,
|  | const char * | message
| ) |  |
| pure virtual

Sets log file.

Parameters

  level | Logging level. See commons::LOG_LEVEL.
  message | Message to add to the log file.

Returns
  - 0: The method call succeeds.
  - <0: The method call fails.

## ◆ fireEvent()

virtual int agora::rtc::IExtensionControl::fireEvent | ( | const char * | provider,
|  | const char * | extension,
|  | const char * | event_key,
|  | const char * | value
| ) |  |
| pure virtual

Post extension events to SDK.

Parameters

  provider | name of the provider
  extension | name of the extension
  event_key | key of the extension event
  event_json_str | string of the extension event

Returns
  - 0: The method call succeeds.
  - <0: The method call fails.

## ◆ registerProvider()

virtual int agora::rtc::IExtensionControl::registerProvider | ( | const char * | provider,
|  | agora_refptr< IExtensionProvider > | instance
| ) |  |
| pure virtual

Register provider to the SDK

Parameters

  provider | name of the provider
  instance | instance of the provider