Banuba SDK
Public Member Functions | Static Public Member Functions | List of all members
bnb::interfaces::effect_manager Class Referenceabstract

Public Member Functions

virtual void add_error_listener (const std::shared_ptr< error_listener > &error_listener)=0
 Add callback to receive errors messages from Effect Player. More...
 
virtual std::shared_ptr< effectcreate_effect () const =0
 Create empty effect.
 
virtual void set_current_effect (const std::shared_ptr< effect > &effect)=0
 Set current effect. More...
 
virtual void remove_error_listener (const std::shared_ptr< error_listener > &error_listener)=0
 Remove callback to receive errors messages from Effect Player. More...
 
virtual void add_hint_listener (const std::shared_ptr< hint_listener > &hint_listener)=0
 Add callback to receive user-visible messages from effects. More...
 
virtual void remove_hint_listener (const std::shared_ptr< hint_listener > &hint_listener)=0
 Remove callback to receive user-visible messages from effects. More...
 
virtual void add_effect_event_listener (const std::shared_ptr< effect_event_listener > &effect_event_listener)=0
 Add callback to receive events from effect. More...
 
virtual void remove_effect_event_listener (const std::shared_ptr< effect_event_listener > &effect_event_listener)=0
 Remove callback to receive events from effect. More...
 
virtual void add_effect_activated_listener (const std::shared_ptr< effect_activated_listener > &effect_activated_listener)=0
 Add callback to receive notifications on effect change. More...
 
virtual void remove_effect_activated_listener (const std::shared_ptr< effect_activated_listener > &effect_activated_listener)=0
 Remove callback to receive notifications on effect change. More...
 
virtual std::shared_ptr< effectload (const std::string &url)=0
 load and activate effect sync MUST be called from the render thread
 
virtual std::shared_ptr< effectload_async (const std::string &url)=0
 load effect async, activate in the draw() call when it will be ready Thread-safe. More...
 
virtual void unload (const std::shared_ptr< effect > &effect)=0
 Unload effect from cache. More...
 
virtual std::shared_ptr< effectcurrent ()=0
 get active Thread-safe. More...
 
virtual void change_cache_quota (int32_t size, int32_t count)=0
 size in Mb, effects count Thread-safe. More...
 
virtual void force_cache_reload ()=0
 Forces cache reload on the next load/load_async call Thread-safe. More...
 
virtual void set_effect_volume (float volume)=0
 Set effect audio volume. More...
 
virtual void set_effect_size (int32_t fx_width, int32_t fx_height)=0
 Changes effect player render size, should be called on render thread. More...
 
virtual void set_render_surface (int64_t surface_ptr)=0
 set different render surfaces. More...
 

Static Public Member Functions

static effect_info get_effect_info (const std::string &url)
 Get effect info. More...
 

Detailed Description

Definition at line 24 of file effect_manager.hpp.

Member Function Documentation

◆ add_effect_activated_listener()

virtual void bnb::interfaces::effect_manager::add_effect_activated_listener ( const std::shared_ptr< effect_activated_listener > &  effect_activated_listener)
pure virtual

Add callback to receive notifications on effect change.

Thread-safe. May be called from any thread

◆ add_effect_event_listener()

virtual void bnb::interfaces::effect_manager::add_effect_event_listener ( const std::shared_ptr< effect_event_listener > &  effect_event_listener)
pure virtual

Add callback to receive events from effect.

Thread-safe. May be called from any thread

◆ add_error_listener()

virtual void bnb::interfaces::effect_manager::add_error_listener ( const std::shared_ptr< error_listener > &  error_listener)
pure virtual

Add callback to receive errors messages from Effect Player.

Thread-safe. May be called from any thread

◆ add_hint_listener()

virtual void bnb::interfaces::effect_manager::add_hint_listener ( const std::shared_ptr< hint_listener > &  hint_listener)
pure virtual

Add callback to receive user-visible messages from effects.

You should display them on UI. Thread-safe. May be called from any thread

◆ change_cache_quota()

virtual void bnb::interfaces::effect_manager::change_cache_quota ( int32_t  size,
int32_t  count 
)
pure virtual

size in Mb, effects count Thread-safe.

May be called from any thread

◆ current()

virtual std::shared_ptr<effect> bnb::interfaces::effect_manager::current ( )
pure virtual

get active Thread-safe.

May be called from any thread

◆ force_cache_reload()

virtual void bnb::interfaces::effect_manager::force_cache_reload ( )
pure virtual

Forces cache reload on the next load/load_async call Thread-safe.

May be called from any thread

◆ get_effect_info()

static effect_info bnb::interfaces::effect_manager::get_effect_info ( const std::string &  url)
static

Get effect info.

May be called before loading effect "render type" and "recognizer features" fields won't be filled Thread-safe. May be called from any thread

◆ load_async()

virtual std::shared_ptr<effect> bnb::interfaces::effect_manager::load_async ( const std::string &  url)
pure virtual

load effect async, activate in the draw() call when it will be ready Thread-safe.

May be called from any thread

◆ remove_effect_activated_listener()

virtual void bnb::interfaces::effect_manager::remove_effect_activated_listener ( const std::shared_ptr< effect_activated_listener > &  effect_activated_listener)
pure virtual

Remove callback to receive notifications on effect change.

Thread-safe. May be called from any thread

◆ remove_effect_event_listener()

virtual void bnb::interfaces::effect_manager::remove_effect_event_listener ( const std::shared_ptr< effect_event_listener > &  effect_event_listener)
pure virtual

Remove callback to receive events from effect.

Thread-safe. May be called from any thread

◆ remove_error_listener()

virtual void bnb::interfaces::effect_manager::remove_error_listener ( const std::shared_ptr< error_listener > &  error_listener)
pure virtual

Remove callback to receive errors messages from Effect Player.

Thread-safe. May be called from any thread

◆ remove_hint_listener()

virtual void bnb::interfaces::effect_manager::remove_hint_listener ( const std::shared_ptr< hint_listener > &  hint_listener)
pure virtual

Remove callback to receive user-visible messages from effects.

Thread-safe. May be called from any thread

◆ set_current_effect()

virtual void bnb::interfaces::effect_manager::set_current_effect ( const std::shared_ptr< effect > &  effect)
pure virtual

Set current effect.

Thread-safe. May be called from any thread

◆ set_effect_size()

virtual void bnb::interfaces::effect_manager::set_effect_size ( int32_t  fx_width,
int32_t  fx_height 
)
pure virtual

Changes effect player render size, should be called on render thread.

MUST be called from the render thread

◆ set_effect_volume()

virtual void bnb::interfaces::effect_manager::set_effect_volume ( float  volume)
pure virtual

Set effect audio volume.

Thread-safe. May be called from any thread

Parameters
volumeA value in range [0, 1], where 1 means maximum volume.

◆ set_render_surface()

virtual void bnb::interfaces::effect_manager::set_render_surface ( int64_t  surface_ptr)
pure virtual

set different render surfaces.

Can be treated as void*

◆ unload()

virtual void bnb::interfaces::effect_manager::unload ( const std::shared_ptr< effect > &  effect)
pure virtual

Unload effect from cache.

if no currently loading effect - works the same way as load(""); launches empty effect loading. MUST be called from the render thread


The documentation for this class was generated from the following file: