3#include <NDEVR/SoftwareService.h>
4#include <NDEVR/ApplicationOptions.h>
5#include <NDEVR/Buffer.h>
6#include <NDEVR/String.h>
7#include <NDEVR/TranslatedString.h>
The default object to store data of any type that should persist through sessions of the application.
The equivelent of std::vector but with a bit more control.
Software Service Managers take a Software service to modify the behavior of the software.
Base interface for services that extend or modify software behavior through modules.
Produces sound on the host Device, if possible.
virtual Buffer< Sound > availableSounds()=0
Returns all sound resources available through this factory.
virtual bool playSound(const StringView &s)=0
Plays the sound identified by the given resource string.
virtual bool textToSpeech(const TextToSpeechRequest &s)=0
Converts the given text-to-speech request into audible speech.
virtual void enableTextToSpeech(bool enable)=0
Enables or disables text-to-speech output for this factory.
virtual bool supportsTextToSpeech() const =0
Returns whether this factory supports text-to-speech conversion.
virtual bool textToSpeechEnabled() const =0
Returns whether text-to-speech is currently enabled for this factory.
Handles iterating through sound factories until one is able to produce sound given the input sound re...
static bool TextToSpeech(const TextToSpeechRequest &s)
Converts the given text-to-speech request into audible speech using available factories.
static ApplicationOption< bool > enable_text_to_speech
Application option controlling whether text-to-speech is enabled.
static Buffer< SoundFactory * > s_sound_factories
All registered sound factory instances.
static bool SupportsTextToSpeech()
Returns whether any registered factory supports text-to-speech.
static bool PlaySound(const StringView &s)
Plays the sound identified by the given resource string using the first capable factory.
static void EnableTextToSpeech(bool enable)
Enables or disables text-to-speech across all registered factories.
static ApplicationOption< bool > grab_volume_keys
Application option controlling whether the app captures volume key input.
static ApplicationOption< bool > enable_sound
Application option controlling whether sound is enabled.
static void AddSoundFactory(SoundFactory *factory)
Registers a new sound factory with the manager.
static Buffer< Sound > AvailableSounds()
Returns all available sounds from all registered factories.
The core String View class for the NDEVR API.
The core String class for the NDEVR API.
Any text displayed to the user should be defined as a TranslatedString which allows the program to lo...
The primary namespace for the NDEVR SDK.
Contains the definition for a sound resource.
String resource
The resource identifier or file path for the sound.
TranslatedString title
The user-facing display name of the sound.
Allows the user to make a request for text-to-speech.
String backup_sound
The sound resource to play if text-to-speech fails.
String text_to_speech
The text to convert to speech.