10#ifndef COSIM_ORCHESTRATION_HPP
11#define COSIM_ORCHESTRATION_HPP
32 virtual ~model()
noexcept =
default;
80 const uri& modelUriReference);
143 std::shared_ptr<
model> lookup_model(
145 const
uri& modelUriReference);
164 std::shared_ptr<
model> lookup_model(const
uri& modelUri);
A resolver for file:// model URIs with .fmu file extension.
Definition: orchestration.hpp:173
std::shared_ptr< model > lookup_model(const uri &modelUri) override
Tries to resolve a model URI.
A generic model URI resolver.
Definition: orchestration.hpp:108
model_uri_resolver() noexcept
Constructs an empty URI resolver.
An interface for classes that resolve model URIs of one or more specific URI schemes.
Definition: orchestration.hpp:54
virtual std::shared_ptr< model > lookup_model(const uri &baseUri, const uri &modelUriReference)
Tries to resolve a model URI relative to some base URI.
virtual std::shared_ptr< model > lookup_model(const uri &modelUri)=0
Tries to resolve a model URI.
A model, i.e., a blueprint from which slaves can be instantiated.
Definition: orchestration.hpp:30
virtual std::shared_ptr< const model_description > description() const noexcept=0
Returns a description of this model.
virtual std::shared_ptr< slave > instantiate(std::string_view name)=0
Instantiates a slave.
An interface for classes that represent co-simulation slaves.
Definition: slave.hpp:53
A URI reference.
Definition: uri.hpp:42
FMU import functionality.
Model-descriptive types and constants.
Top-level libcosim namespace.
Definition: algorithm.hpp:27
std::shared_ptr< model_uri_resolver > default_model_uri_resolver(std::shared_ptr< file_cache > cache=nullptr)
Returns a resolver for all URI schemes supported natively by libcosim.
URI parsing and handling.