#include <fastmm/strategies/registry.hpp>
◆ instance()
The registry the CLIs, run_backtest(cfg, name), replay_journal and Python use.
Not thread-safe for writers: register before starting threads. Tests use a local registry.
◆ try_add()
Registers factory for one transport kind of name.
Registering the same schema and factory again does nothing (AlreadyPresent); anything that would replace or disagree with an existing registration changes nothing and returns Conflict.
◆ find()
| const StrategyEntry * fastmm::StrategyRegistry::find |
( |
std::string_view |
name | ) |
const |
|
inlinenoexcept |
◆ entries()
| const std::vector< StrategyEntry > & fastmm::StrategyRegistry::entries |
( |
| ) |
const |
|
inlinenoexcept |
◆ make()
| std::unique_ptr< IEngineRunner > fastmm::StrategyRegistry::make |
( |
std::string_view |
name, |
|
|
TransportKind |
kind, |
|
|
RunnerDeps & |
deps |
|
) |
| const |
|
inline |
Builds a runner; null when name or its factory for kind is missing, or the factory refuses (wrong backend).
Throws std::invalid_argument on bad parameters (startup only).