MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
Core.cpp File Reference
+ Include dependency graph for Core.cpp:

Go to the source code of this file.

Namespaces

namespace  MayaFlux
 Main namespace for the Maya Flux audio engine.
 
namespace  MayaFlux::internal
 

Functions

void MayaFlux::Await ()
 Blocks launcher until Ctrl-C is pressed (optional convenience function)
 
void MayaFlux::internal::cleanup_engine ()
 
void MayaFlux::End ()
 Stops and cleans up the default engine.
 
Core::Engine & MayaFlux::get_context ()
 Gets the default engine instance.
 
Core::Engine & MayaFlux::internal::get_or_create_engine ()
 
void MayaFlux::Init ()
 Initializes the default engine with default settings.
 
void MayaFlux::Init (Core::GlobalStreamInfo stream_info, Core::GlobalGraphicsConfig graphics_config, Core::GlobalInputConfig input_config, Core::GlobalNetworkConfig network_config)
 Initializes the default engine with specified stream and graphics info.
 
void MayaFlux::Init (uint32_t sample_rate, uint32_t buffer_size=512, uint32_t num_out_channels=2, uint32_t num_in_channels=0)
 Initializes the default engine with specified parameters.
 
bool MayaFlux::is_configured ()
 Checks if the default engine has currently accepted all configurations and initialized all managers.
 
bool MayaFlux::is_initialized ()
 Checks if the default engine has been initialized.
 
void MayaFlux::Pause ()
 Pauses audio processing on the default engine.
 
void MayaFlux::Resume ()
 Resumes audio processing on the default engine.
 
void MayaFlux::Start ()
 Starts audio processing on the default engine.
 

Variables

std::atomic< bool > MayaFlux::internal::atexit_registered { false }
 
thread_local bool MayaFlux::internal::cleaning_up = false
 
std::atomic< bool > MayaFlux::internal::ending { false }
 
std::atomic< Core::Engine * > MayaFlux::internal::engine_ptr { nullptr }
 The engine is published through a raw atomic pointer and is freed only after End() has joined every thread that can call a global getter, so a getter is a single acquire load and never waits on a lifecycle change.
 
std::atomic< bool > MayaFlux::internal::initialized { false }
 
std::atomic< bool > MayaFlux::internal::terminating { false }