2024-10-09 02:01:23 +02:00
|
|
|
#pragma once
|
|
|
|
|
#include <libremidi/backends/emscripten/config.hpp>
|
|
|
|
|
#include <libremidi/backends/emscripten/helpers.hpp>
|
|
|
|
|
#include <libremidi/detail/midi_out.hpp>
|
|
|
|
|
|
|
|
|
|
namespace libremidi
|
|
|
|
|
{
|
|
|
|
|
class midi_out_emscripten final
|
|
|
|
|
: public midi1::out_api
|
|
|
|
|
, public error_handler
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
struct
|
|
|
|
|
: output_configuration
|
|
|
|
|
, emscripten_output_configuration
|
|
|
|
|
{
|
|
|
|
|
} configuration;
|
|
|
|
|
|
|
|
|
|
midi_out_emscripten(output_configuration&& conf, emscripten_output_configuration&& apiconf);
|
|
|
|
|
~midi_out_emscripten() override;
|
|
|
|
|
|
|
|
|
|
libremidi::API get_current_api() const noexcept override;
|
|
|
|
|
|
2024-10-28 19:24:18 +01:00
|
|
|
stdx::error open_port(int portNumber, std::string_view);
|
|
|
|
|
stdx::error open_port(const output_port& p, std::string_view) override;
|
|
|
|
|
stdx::error close_port() override;
|
2024-10-09 02:01:23 +02:00
|
|
|
|
2024-10-28 19:24:18 +01:00
|
|
|
stdx::error send_message(const unsigned char* message, size_t size) override;
|
2024-10-09 02:01:23 +02:00
|
|
|
|
|
|
|
|
private:
|
2025-06-13 19:16:35 +02:00
|
|
|
int m_portNumber{-1};
|
2024-10-09 02:01:23 +02:00
|
|
|
};
|
|
|
|
|
}
|