TracktionEngine
|
Classes | |
struct | BenchmarkOptions |
Enumerations | |
enum class | MultiThreaded { no , yes } |
enum class | LockFree { no , yes } |
enum class | PoolMemoryAllocations { no , yes } |
enum class | ShareNodeMemory { no , yes } |
Functions | |
juce::String | getDescription (const BenchmarkOptions &opts) |
std::unique_ptr< tracktion::graph::Node > | createNode (Edit &edit, ProcessState &processState, double sampleRate, int blockSize) |
template<typename NodePlayerType > | |
void | prepareRenderAndDestroy (juce::UnitTest &ut, juce::String editName, juce::String description, tracktion::graph::test_utilities::TestProcess< NodePlayerType > &testContext, tracktion::graph::PlayHeadState &playHeadState, MultiThreaded isMultiThreaded) |
void | renderEdit (juce::UnitTest &ut, BenchmarkOptions opts) |
void | renderEdit (juce::UnitTest &ut, juce::String editName, Edit &edit, tracktion::graph::test_utilities::TestSetup ts, MultiThreaded isMultiThreaded, LockFree isLockFree, tracktion::graph::ThreadPoolStrategy poolType) |
std::unique_ptr< Edit > | openEditfromArchiveData (Engine &engine, const char *data, int size) |
std::unique_ptr< Edit > | loadEditFromValueTree (Engine &engine, const juce::ValueTree &editState) |
Loads an Edit from a value tree with no Project file references. | |
std::unique_ptr< Edit > | openEditFromZipData (Engine &engine, const void *data, size_t numBytes) |
Loads an Edit that was saved directly from the state to a GZip stream. | |
|
strong |
|
strong |
|
strong |
|
strong |
juce::String tracktion::engine::benchmark_utilities::getDescription | ( | const BenchmarkOptions & | opts | ) |
References tracktion::graph::test_utilities::getName(), tracktion::engine::benchmark_utilities::BenchmarkOptions::isLockFree, tracktion::engine::benchmark_utilities::BenchmarkOptions::isMultiThreaded, tracktion::engine::benchmark_utilities::BenchmarkOptions::poolMemoryAllocations, tracktion::engine::benchmark_utilities::BenchmarkOptions::poolType, tracktion::engine::benchmark_utilities::BenchmarkOptions::shareNodeMemory, tracktion::engine::benchmark_utilities::BenchmarkOptions::testSetup, and yes.
Referenced by renderEdit().
std::unique_ptr< tracktion::graph::Node > tracktion::engine::benchmark_utilities::createNode | ( | Edit & | edit, |
ProcessState & | processState, | ||
double | sampleRate, | ||
int | blockSize | ||
) |
References tracktion::engine::createNodeForEdit(), and tracktion::engine::ProcessState::sampleRate.
Referenced by renderEdit().
void tracktion::engine::benchmark_utilities::prepareRenderAndDestroy | ( | juce::UnitTest & | ut, |
juce::String | editName, | ||
juce::String | description, | ||
tracktion::graph::test_utilities::TestProcess< NodePlayerType > & | testContext, | ||
tracktion::graph::PlayHeadState & | playHeadState, | ||
MultiThreaded | isMultiThreaded | ||
) |
References tracktion::graph::PerformanceMeasurement::Statistics::addResult(), tracktion::engine::StopwatchTimer::getDescription(), tracktion::graph::test_utilities::TestProcess< NodePlayerType >::getDescription(), tracktion::graph::PerformanceMeasurement::getName(), tracktion::graph::test_utilities::TestProcess< NodePlayerType >::getNode(), tracktion::graph::test_utilities::TestProcess< NodePlayerType >::getNodePlayer(), tracktion::graph::test_utilities::TestProcess< NodePlayerType >::getPerformanceMeasurement(), tracktion::graph::test_utilities::TestProcess< NodePlayerType >::getStatisticsAndReset(), no, tracktion::graph::PlayHeadState::playHead, tracktion::graph::PlayHead::playSyncedToRange(), tracktion::graph::postordering, tracktion::graph::test_utilities::TestProcess< NodePlayerType >::processAll(), and tracktion::graph::test_utilities::TestProcess< NodePlayerType >::setPlayHead().
Referenced by renderEdit().
void tracktion::engine::benchmark_utilities::renderEdit | ( | juce::UnitTest & | ut, |
BenchmarkOptions | opts | ||
) |
References tracktion::graph::test_utilities::TestSetup::blockSize, createNode(), tracktion::engine::benchmark_utilities::BenchmarkOptions::edit, tracktion::engine::benchmark_utilities::BenchmarkOptions::editName, getDescription(), tracktion::engine::Edit::getLength(), tracktion::graph::test_utilities::TestProcess< NodePlayerType >::getNodePlayer(), tracktion::graph::getPoolCreatorFunction(), tracktion::engine::benchmark_utilities::BenchmarkOptions::isLockFree, tracktion::engine::benchmark_utilities::BenchmarkOptions::isMultiThreaded, no, tracktion::engine::benchmark_utilities::BenchmarkOptions::poolMemoryAllocations, tracktion::engine::benchmark_utilities::BenchmarkOptions::poolType, prepareRenderAndDestroy(), tracktion::graph::test_utilities::TestSetup::sampleRate, tracktion::graph::test_utilities::TestProcess< NodePlayerType >::setNode(), tracktion::engine::benchmark_utilities::BenchmarkOptions::shareNodeMemory, tracktion::engine::Edit::tempoSequence, tracktion::engine::benchmark_utilities::BenchmarkOptions::testSetup, and yes.
Referenced by renderEdit().
void tracktion::engine::benchmark_utilities::renderEdit | ( | juce::UnitTest & | ut, |
juce::String | editName, | ||
Edit & | edit, | ||
tracktion::graph::test_utilities::TestSetup | ts, | ||
MultiThreaded | isMultiThreaded, | ||
LockFree | isLockFree, | ||
tracktion::graph::ThreadPoolStrategy | poolType | ||
) |
References renderEdit().
std::unique_ptr< Edit > tracktion::engine::benchmark_utilities::loadEditFromValueTree | ( | Engine & | engine, |
const juce::ValueTree & | editState | ||
) |
Loads an Edit from a value tree with no Project file references.
References tracktion::engine::Edit::createEdit(), tracktion::engine::ProjectItemID::createNewID(), tracktion::engine::Edit::forEditing, tracktion::engine::ProjectItemID::fromProperty(), and tracktion::engine::Edit::getDefaultNumUndoLevels().
Referenced by openEditFromZipData().
std::unique_ptr< Edit > tracktion::engine::benchmark_utilities::openEditFromZipData | ( | Engine & | engine, |
const void * | data, | ||
size_t | numBytes | ||
) |
Loads an Edit that was saved directly from the state to a GZip stream.
References loadEditFromValueTree().