载入中...
搜索中...
未找到
AudioEditingProvider.cpp
浏览该文件的文档.
2
3#include <utility>
4
5namespace eve::audio_editing {
6namespace {
7class AudioEditingFactory final : public IAudioEditingFactory {
8public:
9 std::unique_ptr<AudioSourcePublishingTarget> createSource(
10 std::string id, IAudioSourceRuntimeSink* sink) const override {
11 return std::make_unique<AudioSourcePublishingTarget>(std::move(id), sink);
12 }
13};
14} // namespace
15
19 descriptor.id = "audio.editing";
20 descriptor.schemaVersion = 1;
21 descriptor.requiredModules = {"audio"};
22 return editing::registerStaticProvider(registry, std::move(descriptor),
24 std::make_shared<AudioEditingFactory>());
25}
26
27} // namespace eve::audio_editing
std::string descriptor
Move-only operation result carrying either a value or Status.
Definition Result.h:155
static editing::CapabilityId capabilityId()
Return the stable capability id used with ProviderLease::query().
Thread-safe generation-qualified registry for editing extension providers.
editing::Result< editing::ProviderHandle > registerEditingProvider(editing::ExtensionProviderRegistry &registry)
Publish the audio editing factory into a host-owned extension registry.
Result< ProviderHandle > registerStaticProvider(ExtensionProviderRegistry &registry, ExtensionDescriptor descriptor, CapabilityId capability, std::shared_ptr< void > implementation)
Register one owned capability behind the standard provider lifecycle.
ExtensionDescriptor public API.