#include <Engine.h>
◆ Engine()
Engine::Engine |
( |
const std::optional< std::string > & |
pathToProjectFile, |
|
|
std::optional< Fabricator::ControlMode > |
controlMode, |
|
|
std::optional< int > |
craftAheadSeconds, |
|
|
std::optional< int > |
dubAheadSeconds, |
|
|
std::optional< int > |
deadlineSeconds, |
|
|
std::optional< int > |
persistenceWindowSeconds |
|
) |
| |
|
explicit |
Construct a new Engine
- Parameters
-
pathToProjectFile | path to the .xj project file from which to load content |
controlMode | the fabrication control mode |
craftAheadSeconds | (optional) how many seconds ahead to craft |
dubAheadSeconds | (optional) how many seconds ahead to dub |
deadlineSeconds | (optional) audio scheduling deadline in seconds |
persistenceWindowSeconds | (optional) how long to keep segments in memory |
◆ ~ Engine()
◆ doOverrideMacro()
void Engine::doOverrideMacro |
( |
const Program * |
macroProgram | ) |
const |
◆ doOverrideMemes()
void Engine::doOverrideMemes |
( |
const std::set< std::string > & |
memes | ) |
const |
◆ finish()
void Engine::finish |
( |
bool |
cancelled | ) |
const |
◆ getAllMacroPrograms()
std::vector< const Program * > Engine::getAllMacroPrograms |
( |
| ) |
const |
- Returns
- all macro programs in alphabetical order
◆ getBuildPath()
std::filesystem::path Engine::getBuildPath |
( |
| ) |
|
Get the path to the build directory
◆ getMemeTaxonomy()
std::optional< MemeTaxonomy > Engine::getMemeTaxonomy |
( |
| ) |
const |
- Returns
- the meme taxonomy from the current template configuration
◆ getProjectContent()
Get all the content loaded for the project
- Returns
- source material
◆ getSegmentStore()
◆ getSettings()
Get the work settings
- Returns
- the settings
◆ getTemplateContent()
Get all the content for the working template
- Returns
◆ getWorkState()
- Returns
- the current work state
◆ RunCycle()
std::vector< AudioScheduleEvent > Engine::RunCycle |
( |
unsigned long long |
atChainMicros | ) |
const |
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 Engine::setIntensityOverride |
( |
std::optional< float > |
intensity | ) |
const |
Set the intensity override to a value between 0 and 1, or null if no override
- Parameters
-
intensity | the intensity to set |
◆ start()
void Engine::start |
( |
const std::optional< std::string > & |
templateIdentifier | ) |
|
Start work with the given template identifier.
- Clear the segment entity store
- Reload the project content
- Load the template content
- Begin fabrication work
- Parameters
-
templateIdentifier | identify the template to fabricate |
The documentation for this class was generated from the following files:
- /home/runner/work/xjmusic/xjmusic/engine/include/xjmusic/Engine.h
- /home/runner/work/xjmusic/xjmusic/engine/src/Engine.cpp