XJ music engine  1.9.6
In-game runtime engine for XJ music.
Public Member Functions | List of all members
XJ::WorkManager Class Reference

#include <WorkManager.h>

Public Member Functions

 WorkManager (SegmentEntityStore *store, ContentEntityStore *content, const WorkSettings &config)
 
void start ()
 
void finish (bool cancelled)
 
std::vector< AudioScheduleEventrunCycle (unsigned long long atChainMicros)
 
SegmentEntityStoregetEntityStore () const
 
ContentEntityStoregetSourceMaterial () const
 
WorkState getState () const
 
void doOverrideMacro (const Program *macroProgram)
 
std::optional< MemeTaxonomygetMemeTaxonomy () const
 
std::vector< const Program * > getAllMacroPrograms () const
 
void doOverrideMemes (const std::set< std::string > &memes)
 
bool getAndResetDidOverride ()
 
void setIntensityOverride (std::optional< float > intensity)
 

Constructor & Destructor Documentation

◆ WorkManager()

WorkManager::WorkManager ( SegmentEntityStore store,
ContentEntityStore content,
const WorkSettings config 
)
explicit

Construct a new WorkManager

Parameters
storefor segments
contentfor source material
configwork settings

Member Function Documentation

◆ doOverrideMacro()

void WorkManager::doOverrideMacro ( const Program macroProgram)

Go to the given macro program right away https://github.com/xjmusic/xjmusic/issues/197

Parameters
macroProgramto go to

◆ doOverrideMemes()

void WorkManager::doOverrideMemes ( const std::set< std::string > &  memes)

Manually go to a specific taxonomy category meme, and force until reset https://github.com/xjmusic/xjmusic/issues/199

Parameters
memesspecific (assumed allowably) set of taxonomy category memes

◆ finish()

void WorkManager::finish ( bool  cancelled)

Stop work

◆ getAllMacroPrograms()

std::vector< const Program * > WorkManager::getAllMacroPrograms ( ) const
Returns
all macro programs in alphabetical order

◆ getAndResetDidOverride()

bool WorkManager::getAndResetDidOverride ( )

Get whether an override happened, and reset its state after getting

Returns
true if an override happened

◆ getEntityStore()

SegmentEntityStore * WorkManager::getEntityStore ( ) const

Get the entity store

◆ getMemeTaxonomy()

std::optional< MemeTaxonomy > WorkManager::getMemeTaxonomy ( ) const
Returns
the meme taxonomy from the current template configuration

◆ getSourceMaterial()

ContentEntityStore * WorkManager::getSourceMaterial ( ) const

Get the Hub content source material

Returns
source material

◆ getState()

WorkState WorkManager::getState ( ) const
Returns
the current work state

◆ runCycle()

std::vector< AudioScheduleEvent > WorkManager::runCycle ( unsigned long long  atChainMicros)

Run the tick cycle (1-3 times per second) This returns the list of audio that should be queued up for playback in a structured way

◆ setIntensityOverride()

void WorkManager::setIntensityOverride ( std::optional< float >  intensity)

Set the intensity override to a value between 0 and 1, or null if no override

Parameters
intensitythe intensity to set

◆ start()

void WorkManager::start ( )

Start work.


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