Zao SDK for Jetson / libzep API Reference
Loading...
Searching...
No Matches
FactoryInterface.hpp
1/*
2 * Copyright (c) 2022-2023, Soliton Systems K.K. All rights reserved.
3 * Use in source and binary forms, with or without modification,
4 * is permitted provided that the following a condition is met:
5 *
6 * Use is permitted only in accordance with the terms and
7 * conditions set forth in the Software License Agreement available
8 * at https://zao-sdk.org/license-agreement/.
9 */
10#ifndef ZEP_AUDIO_FACTORY_INTERFACE_HPP_
11#define ZEP_AUDIO_FACTORY_INTERFACE_HPP_
12
13#include <memory>
14#include <string>
15
16#include "PcmSinkInterface.hpp"
17#include "PcmSourceInterface.hpp"
18
19namespace zep {
20
24namespace audio {
25
29class FactoryInterface {
30 public:
36 virtual std::unique_ptr<PcmSourceInterface> CreatePcmSource(
37 const std::string& stream_name) = 0;
38
44 virtual std::unique_ptr<PcmSinkInterface> CreatePcmSink(
45 const std::string& stream_name) = 0;
46
47 virtual ~FactoryInterface() noexcept = default;
48};
49
50} // namespace audio
51} // namespace zep
52
53#endif // ZEP_AUDIO_FACTORY_INTERFACE_HPP_
factory function interface for audio related streams
Definition FactoryInterface.hpp:29
virtual std::unique_ptr< PcmSourceInterface > CreatePcmSource(const std::string &stream_name)=0
PcmSourceのインスタンスを生成する。
virtual std::unique_ptr< PcmSinkInterface > CreatePcmSink(const std::string &stream_name)=0
PcmSinkのインスタンスを生成する。
Namespace for ZEP SDK.
Definition FactoryInterface.hpp:19