commit fa4f9720f1157646715ca2b109dffdb38d5516c3 Author: nanako <469449812@qq.com> Date: Tue Aug 12 22:47:32 2025 +0800 init diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8b23368 --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +.idea +*.exe +*.ilk +*.pdb +*.lib +cmake-build-*/ +/src/frontend/obj/ diff --git a/Nina.sln b/Nina.sln new file mode 100644 index 0000000..41159ad --- /dev/null +++ b/Nina.sln @@ -0,0 +1,16 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "frontend", "src\frontend\frontend.csproj", "{D3560CDC-2C15-4167-AF02-D1CA2D6F4240}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {D3560CDC-2C15-4167-AF02-D1CA2D6F4240}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D3560CDC-2C15-4167-AF02-D1CA2D6F4240}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D3560CDC-2C15-4167-AF02-D1CA2D6F4240}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D3560CDC-2C15-4167-AF02-D1CA2D6F4240}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection +EndGlobal diff --git a/src/backend/CMakeLists.txt b/src/backend/CMakeLists.txt new file mode 100644 index 0000000..f9f69b6 --- /dev/null +++ b/src/backend/CMakeLists.txt @@ -0,0 +1,33 @@ +cmake_minimum_required(VERSION 3.14) +project(NinaEngine) + +include(../cmake_script/project_cpp_standard.cmake) +include(../cmake_script/retrieve_files.cmake) +include(../cmake_script/utils.cmake) + +setup_project_options( + STANDARD 23 + INTERFACE_TARGET config_target +) + +set(CMAKE_BINARY_DIR ${CMAKE_SOURCE_DIR}/../../build) +configure_project_defaults() + +set(SRC_FILS "") +retrieve_files(${CMAKE_CURRENT_SOURCE_DIR}/src SRC_FILES) + + +find_package(gRPC REQUIRED) +find_package(Protobuf REQUIRED) +find_package(ZeroMQ REQUIRED) + +add_executable(${PROJECT_NAME} ${SRC_FILES}) +target_link_libraries(${PROJECT_NAME} PRIVATE config_target) +target_link_libraries(${PROJECT_NAME} PRIVATE gRPC::grpc++ protobuf::libprotobuf zmq) + +compile_proto_files( + TARGET_NAME ${PROJECT_NAME}_proto + PROTO_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../proto + OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/src/proto + GRPC_ENABLED TRUE +) diff --git a/src/backend/src/main.cpp b/src/backend/src/main.cpp new file mode 100644 index 0000000..1e9c1fc --- /dev/null +++ b/src/backend/src/main.cpp @@ -0,0 +1,114 @@ +// +// Created by A on 2025/8/12. +// + +#include "zmq.h" +#include "proto/daw_api.grpc.pb.h" + +class daw_api_project_service : public daw::api::ProjectService::Service { +public: + grpc::Status NewProject(grpc::ServerContext* context, + const daw::api::Empty* request, + daw::api::ProjectState* response) override { + + return grpc::Status::OK; + } + + grpc::Status LoadProject(grpc::ServerContext* context, + const daw::api::LoadProjectRequest* request, + daw::api::ProjectState* response) override { + + return grpc::Status::OK; + } + + grpc::Status SaveProject(grpc::ServerContext* context, + const daw::api::SaveProjectRequest* request, + daw::api::StatusResponse* response) override { + + return grpc::Status::OK; + } +}; + +class daw_api_transport_service : public daw::api::TransportService::Service { +public: + grpc::Status Play(grpc::ServerContext* context, + const daw::api::Empty* request, + daw::api::StatusResponse* response) override { + + return grpc::Status::OK; + } + + grpc::Status Pause(grpc::ServerContext* context, + const daw::api::Empty* request, + daw::api::StatusResponse* response) override { + + return grpc::Status::OK; + } + + grpc::Status Stop(grpc::ServerContext* context, + const daw::api::Empty* request, + daw::api::StatusResponse* response) override { + + return grpc::Status::OK; + } + + grpc::Status SetTempo(grpc::ServerContext* context, + const daw::api::SetTempoRequest* request, + daw::api::StatusResponse* response) override { + + return grpc::Status::OK; + } +}; + +class daw_api_track_service : public daw::api::TrackService::Service { +public: + grpc::Status AddTrack(grpc::ServerContext* context, + const daw::api::AddTrackRequest* request, + daw::api::TrackInfo* response) override { + + return grpc::Status::OK; + } + + grpc::Status RemoveTrack(grpc::ServerContext* context, + const daw::api::TrackIdRequest* request, + daw::api::StatusResponse* response) override { + + return grpc::Status::OK; + } + + grpc::Status SetTrackVolume(grpc::ServerContext* context, + const daw::api::SetTrackVolumeRequest* request, + daw::api::StatusResponse* response) override { + + return grpc::Status::OK; + } + + grpc::Status SetTrackPan(grpc::ServerContext* context, + const daw::api::SetTrackPanRequest* request, + daw::api::StatusResponse* response) override { + + return grpc::Status::OK; + } +}; + +class daw_api_plugin_service : public daw::api::PluginService::Service { +public: + grpc::Status LoadPlugin(grpc::ServerContext* context, + const daw::api::LoadPluginRequest* request, + daw::api::PluginInfo* response) override { + + return grpc::Status::OK; + } + + grpc::Status SetPluginParameter(grpc::ServerContext* context, + const daw::api::SetPluginParameterRequest* request, + daw::api::StatusResponse* response) override { + + return grpc::Status::OK; + } +}; + +int main(int argc, char *argv[]) +{ + return 0; +} diff --git a/src/backend/src/proto/daw_api.grpc.pb.cc b/src/backend/src/proto/daw_api.grpc.pb.cc new file mode 100644 index 0000000..800e57f --- /dev/null +++ b/src/backend/src/proto/daw_api.grpc.pb.cc @@ -0,0 +1,649 @@ +// Generated by the gRPC C++ plugin. +// If you make any local change, they will be lost. +// source: daw_api.proto + +#include "daw_api.pb.h" +#include "daw_api.grpc.pb.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +namespace daw { +namespace api { + +static const char* TransportService_method_names[] = { + "/daw.api.TransportService/Play", + "/daw.api.TransportService/Pause", + "/daw.api.TransportService/Stop", + "/daw.api.TransportService/SetTempo", +}; + +std::unique_ptr< TransportService::Stub> TransportService::NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options) { + (void)options; + std::unique_ptr< TransportService::Stub> stub(new TransportService::Stub(channel, options)); + return stub; +} + +TransportService::Stub::Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options) + : channel_(channel), rpcmethod_Play_(TransportService_method_names[0], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_Pause_(TransportService_method_names[1], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_Stop_(TransportService_method_names[2], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_SetTempo_(TransportService_method_names[3], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel) + {} + +::grpc::Status TransportService::Stub::Play(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::daw::api::StatusResponse* response) { + return ::grpc::internal::BlockingUnaryCall< ::daw::api::Empty, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_Play_, context, request, response); +} + +void TransportService::Stub::async::Play(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, std::function f) { + ::grpc::internal::CallbackUnaryCall< ::daw::api::Empty, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_Play_, context, request, response, std::move(f)); +} + +void TransportService::Stub::async::Play(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_Play_, context, request, response, reactor); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* TransportService::Stub::PrepareAsyncPlayRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::daw::api::StatusResponse, ::daw::api::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_Play_, context, request); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* TransportService::Stub::AsyncPlayRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + auto* result = + this->PrepareAsyncPlayRaw(context, request, cq); + result->StartCall(); + return result; +} + +::grpc::Status TransportService::Stub::Pause(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::daw::api::StatusResponse* response) { + return ::grpc::internal::BlockingUnaryCall< ::daw::api::Empty, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_Pause_, context, request, response); +} + +void TransportService::Stub::async::Pause(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, std::function f) { + ::grpc::internal::CallbackUnaryCall< ::daw::api::Empty, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_Pause_, context, request, response, std::move(f)); +} + +void TransportService::Stub::async::Pause(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_Pause_, context, request, response, reactor); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* TransportService::Stub::PrepareAsyncPauseRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::daw::api::StatusResponse, ::daw::api::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_Pause_, context, request); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* TransportService::Stub::AsyncPauseRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + auto* result = + this->PrepareAsyncPauseRaw(context, request, cq); + result->StartCall(); + return result; +} + +::grpc::Status TransportService::Stub::Stop(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::daw::api::StatusResponse* response) { + return ::grpc::internal::BlockingUnaryCall< ::daw::api::Empty, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_Stop_, context, request, response); +} + +void TransportService::Stub::async::Stop(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, std::function f) { + ::grpc::internal::CallbackUnaryCall< ::daw::api::Empty, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_Stop_, context, request, response, std::move(f)); +} + +void TransportService::Stub::async::Stop(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_Stop_, context, request, response, reactor); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* TransportService::Stub::PrepareAsyncStopRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::daw::api::StatusResponse, ::daw::api::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_Stop_, context, request); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* TransportService::Stub::AsyncStopRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + auto* result = + this->PrepareAsyncStopRaw(context, request, cq); + result->StartCall(); + return result; +} + +::grpc::Status TransportService::Stub::SetTempo(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest& request, ::daw::api::StatusResponse* response) { + return ::grpc::internal::BlockingUnaryCall< ::daw::api::SetTempoRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_SetTempo_, context, request, response); +} + +void TransportService::Stub::async::SetTempo(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest* request, ::daw::api::StatusResponse* response, std::function f) { + ::grpc::internal::CallbackUnaryCall< ::daw::api::SetTempoRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_SetTempo_, context, request, response, std::move(f)); +} + +void TransportService::Stub::async::SetTempo(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_SetTempo_, context, request, response, reactor); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* TransportService::Stub::PrepareAsyncSetTempoRaw(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::daw::api::StatusResponse, ::daw::api::SetTempoRequest, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_SetTempo_, context, request); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* TransportService::Stub::AsyncSetTempoRaw(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest& request, ::grpc::CompletionQueue* cq) { + auto* result = + this->PrepareAsyncSetTempoRaw(context, request, cq); + result->StartCall(); + return result; +} + +TransportService::Service::Service() { + AddMethod(new ::grpc::internal::RpcServiceMethod( + TransportService_method_names[0], + ::grpc::internal::RpcMethod::NORMAL_RPC, + new ::grpc::internal::RpcMethodHandler< TransportService::Service, ::daw::api::Empty, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>( + [](TransportService::Service* service, + ::grpc::ServerContext* ctx, + const ::daw::api::Empty* req, + ::daw::api::StatusResponse* resp) { + return service->Play(ctx, req, resp); + }, this))); + AddMethod(new ::grpc::internal::RpcServiceMethod( + TransportService_method_names[1], + ::grpc::internal::RpcMethod::NORMAL_RPC, + new ::grpc::internal::RpcMethodHandler< TransportService::Service, ::daw::api::Empty, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>( + [](TransportService::Service* service, + ::grpc::ServerContext* ctx, + const ::daw::api::Empty* req, + ::daw::api::StatusResponse* resp) { + return service->Pause(ctx, req, resp); + }, this))); + AddMethod(new ::grpc::internal::RpcServiceMethod( + TransportService_method_names[2], + ::grpc::internal::RpcMethod::NORMAL_RPC, + new ::grpc::internal::RpcMethodHandler< TransportService::Service, ::daw::api::Empty, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>( + [](TransportService::Service* service, + ::grpc::ServerContext* ctx, + const ::daw::api::Empty* req, + ::daw::api::StatusResponse* resp) { + return service->Stop(ctx, req, resp); + }, this))); + AddMethod(new ::grpc::internal::RpcServiceMethod( + TransportService_method_names[3], + ::grpc::internal::RpcMethod::NORMAL_RPC, + new ::grpc::internal::RpcMethodHandler< TransportService::Service, ::daw::api::SetTempoRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>( + [](TransportService::Service* service, + ::grpc::ServerContext* ctx, + const ::daw::api::SetTempoRequest* req, + ::daw::api::StatusResponse* resp) { + return service->SetTempo(ctx, req, resp); + }, this))); +} + +TransportService::Service::~Service() { +} + +::grpc::Status TransportService::Service::Play(::grpc::ServerContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response) { + (void) context; + (void) request; + (void) response; + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); +} + +::grpc::Status TransportService::Service::Pause(::grpc::ServerContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response) { + (void) context; + (void) request; + (void) response; + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); +} + +::grpc::Status TransportService::Service::Stop(::grpc::ServerContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response) { + (void) context; + (void) request; + (void) response; + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); +} + +::grpc::Status TransportService::Service::SetTempo(::grpc::ServerContext* context, const ::daw::api::SetTempoRequest* request, ::daw::api::StatusResponse* response) { + (void) context; + (void) request; + (void) response; + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); +} + + +static const char* ProjectService_method_names[] = { + "/daw.api.ProjectService/NewProject", + "/daw.api.ProjectService/LoadProject", + "/daw.api.ProjectService/SaveProject", +}; + +std::unique_ptr< ProjectService::Stub> ProjectService::NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options) { + (void)options; + std::unique_ptr< ProjectService::Stub> stub(new ProjectService::Stub(channel, options)); + return stub; +} + +ProjectService::Stub::Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options) + : channel_(channel), rpcmethod_NewProject_(ProjectService_method_names[0], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_LoadProject_(ProjectService_method_names[1], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_SaveProject_(ProjectService_method_names[2], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel) + {} + +::grpc::Status ProjectService::Stub::NewProject(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::daw::api::ProjectState* response) { + return ::grpc::internal::BlockingUnaryCall< ::daw::api::Empty, ::daw::api::ProjectState, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_NewProject_, context, request, response); +} + +void ProjectService::Stub::async::NewProject(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::ProjectState* response, std::function f) { + ::grpc::internal::CallbackUnaryCall< ::daw::api::Empty, ::daw::api::ProjectState, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_NewProject_, context, request, response, std::move(f)); +} + +void ProjectService::Stub::async::NewProject(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::ProjectState* response, ::grpc::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_NewProject_, context, request, response, reactor); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>* ProjectService::Stub::PrepareAsyncNewProjectRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::daw::api::ProjectState, ::daw::api::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_NewProject_, context, request); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>* ProjectService::Stub::AsyncNewProjectRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + auto* result = + this->PrepareAsyncNewProjectRaw(context, request, cq); + result->StartCall(); + return result; +} + +::grpc::Status ProjectService::Stub::LoadProject(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest& request, ::daw::api::ProjectState* response) { + return ::grpc::internal::BlockingUnaryCall< ::daw::api::LoadProjectRequest, ::daw::api::ProjectState, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_LoadProject_, context, request, response); +} + +void ProjectService::Stub::async::LoadProject(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest* request, ::daw::api::ProjectState* response, std::function f) { + ::grpc::internal::CallbackUnaryCall< ::daw::api::LoadProjectRequest, ::daw::api::ProjectState, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_LoadProject_, context, request, response, std::move(f)); +} + +void ProjectService::Stub::async::LoadProject(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest* request, ::daw::api::ProjectState* response, ::grpc::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_LoadProject_, context, request, response, reactor); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>* ProjectService::Stub::PrepareAsyncLoadProjectRaw(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::daw::api::ProjectState, ::daw::api::LoadProjectRequest, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_LoadProject_, context, request); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>* ProjectService::Stub::AsyncLoadProjectRaw(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest& request, ::grpc::CompletionQueue* cq) { + auto* result = + this->PrepareAsyncLoadProjectRaw(context, request, cq); + result->StartCall(); + return result; +} + +::grpc::Status ProjectService::Stub::SaveProject(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest& request, ::daw::api::StatusResponse* response) { + return ::grpc::internal::BlockingUnaryCall< ::daw::api::SaveProjectRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_SaveProject_, context, request, response); +} + +void ProjectService::Stub::async::SaveProject(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest* request, ::daw::api::StatusResponse* response, std::function f) { + ::grpc::internal::CallbackUnaryCall< ::daw::api::SaveProjectRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_SaveProject_, context, request, response, std::move(f)); +} + +void ProjectService::Stub::async::SaveProject(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_SaveProject_, context, request, response, reactor); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* ProjectService::Stub::PrepareAsyncSaveProjectRaw(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::daw::api::StatusResponse, ::daw::api::SaveProjectRequest, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_SaveProject_, context, request); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* ProjectService::Stub::AsyncSaveProjectRaw(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest& request, ::grpc::CompletionQueue* cq) { + auto* result = + this->PrepareAsyncSaveProjectRaw(context, request, cq); + result->StartCall(); + return result; +} + +ProjectService::Service::Service() { + AddMethod(new ::grpc::internal::RpcServiceMethod( + ProjectService_method_names[0], + ::grpc::internal::RpcMethod::NORMAL_RPC, + new ::grpc::internal::RpcMethodHandler< ProjectService::Service, ::daw::api::Empty, ::daw::api::ProjectState, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>( + [](ProjectService::Service* service, + ::grpc::ServerContext* ctx, + const ::daw::api::Empty* req, + ::daw::api::ProjectState* resp) { + return service->NewProject(ctx, req, resp); + }, this))); + AddMethod(new ::grpc::internal::RpcServiceMethod( + ProjectService_method_names[1], + ::grpc::internal::RpcMethod::NORMAL_RPC, + new ::grpc::internal::RpcMethodHandler< ProjectService::Service, ::daw::api::LoadProjectRequest, ::daw::api::ProjectState, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>( + [](ProjectService::Service* service, + ::grpc::ServerContext* ctx, + const ::daw::api::LoadProjectRequest* req, + ::daw::api::ProjectState* resp) { + return service->LoadProject(ctx, req, resp); + }, this))); + AddMethod(new ::grpc::internal::RpcServiceMethod( + ProjectService_method_names[2], + ::grpc::internal::RpcMethod::NORMAL_RPC, + new ::grpc::internal::RpcMethodHandler< ProjectService::Service, ::daw::api::SaveProjectRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>( + [](ProjectService::Service* service, + ::grpc::ServerContext* ctx, + const ::daw::api::SaveProjectRequest* req, + ::daw::api::StatusResponse* resp) { + return service->SaveProject(ctx, req, resp); + }, this))); +} + +ProjectService::Service::~Service() { +} + +::grpc::Status ProjectService::Service::NewProject(::grpc::ServerContext* context, const ::daw::api::Empty* request, ::daw::api::ProjectState* response) { + (void) context; + (void) request; + (void) response; + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); +} + +::grpc::Status ProjectService::Service::LoadProject(::grpc::ServerContext* context, const ::daw::api::LoadProjectRequest* request, ::daw::api::ProjectState* response) { + (void) context; + (void) request; + (void) response; + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); +} + +::grpc::Status ProjectService::Service::SaveProject(::grpc::ServerContext* context, const ::daw::api::SaveProjectRequest* request, ::daw::api::StatusResponse* response) { + (void) context; + (void) request; + (void) response; + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); +} + + +static const char* TrackService_method_names[] = { + "/daw.api.TrackService/AddTrack", + "/daw.api.TrackService/RemoveTrack", + "/daw.api.TrackService/SetTrackVolume", + "/daw.api.TrackService/SetTrackPan", +}; + +std::unique_ptr< TrackService::Stub> TrackService::NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options) { + (void)options; + std::unique_ptr< TrackService::Stub> stub(new TrackService::Stub(channel, options)); + return stub; +} + +TrackService::Stub::Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options) + : channel_(channel), rpcmethod_AddTrack_(TrackService_method_names[0], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_RemoveTrack_(TrackService_method_names[1], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_SetTrackVolume_(TrackService_method_names[2], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_SetTrackPan_(TrackService_method_names[3], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel) + {} + +::grpc::Status TrackService::Stub::AddTrack(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest& request, ::daw::api::TrackInfo* response) { + return ::grpc::internal::BlockingUnaryCall< ::daw::api::AddTrackRequest, ::daw::api::TrackInfo, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_AddTrack_, context, request, response); +} + +void TrackService::Stub::async::AddTrack(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest* request, ::daw::api::TrackInfo* response, std::function f) { + ::grpc::internal::CallbackUnaryCall< ::daw::api::AddTrackRequest, ::daw::api::TrackInfo, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_AddTrack_, context, request, response, std::move(f)); +} + +void TrackService::Stub::async::AddTrack(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest* request, ::daw::api::TrackInfo* response, ::grpc::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_AddTrack_, context, request, response, reactor); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::TrackInfo>* TrackService::Stub::PrepareAsyncAddTrackRaw(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::daw::api::TrackInfo, ::daw::api::AddTrackRequest, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_AddTrack_, context, request); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::TrackInfo>* TrackService::Stub::AsyncAddTrackRaw(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest& request, ::grpc::CompletionQueue* cq) { + auto* result = + this->PrepareAsyncAddTrackRaw(context, request, cq); + result->StartCall(); + return result; +} + +::grpc::Status TrackService::Stub::RemoveTrack(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest& request, ::daw::api::StatusResponse* response) { + return ::grpc::internal::BlockingUnaryCall< ::daw::api::TrackIdRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_RemoveTrack_, context, request, response); +} + +void TrackService::Stub::async::RemoveTrack(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest* request, ::daw::api::StatusResponse* response, std::function f) { + ::grpc::internal::CallbackUnaryCall< ::daw::api::TrackIdRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_RemoveTrack_, context, request, response, std::move(f)); +} + +void TrackService::Stub::async::RemoveTrack(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_RemoveTrack_, context, request, response, reactor); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* TrackService::Stub::PrepareAsyncRemoveTrackRaw(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::daw::api::StatusResponse, ::daw::api::TrackIdRequest, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_RemoveTrack_, context, request); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* TrackService::Stub::AsyncRemoveTrackRaw(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest& request, ::grpc::CompletionQueue* cq) { + auto* result = + this->PrepareAsyncRemoveTrackRaw(context, request, cq); + result->StartCall(); + return result; +} + +::grpc::Status TrackService::Stub::SetTrackVolume(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest& request, ::daw::api::StatusResponse* response) { + return ::grpc::internal::BlockingUnaryCall< ::daw::api::SetTrackVolumeRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_SetTrackVolume_, context, request, response); +} + +void TrackService::Stub::async::SetTrackVolume(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest* request, ::daw::api::StatusResponse* response, std::function f) { + ::grpc::internal::CallbackUnaryCall< ::daw::api::SetTrackVolumeRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_SetTrackVolume_, context, request, response, std::move(f)); +} + +void TrackService::Stub::async::SetTrackVolume(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_SetTrackVolume_, context, request, response, reactor); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* TrackService::Stub::PrepareAsyncSetTrackVolumeRaw(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::daw::api::StatusResponse, ::daw::api::SetTrackVolumeRequest, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_SetTrackVolume_, context, request); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* TrackService::Stub::AsyncSetTrackVolumeRaw(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest& request, ::grpc::CompletionQueue* cq) { + auto* result = + this->PrepareAsyncSetTrackVolumeRaw(context, request, cq); + result->StartCall(); + return result; +} + +::grpc::Status TrackService::Stub::SetTrackPan(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest& request, ::daw::api::StatusResponse* response) { + return ::grpc::internal::BlockingUnaryCall< ::daw::api::SetTrackPanRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_SetTrackPan_, context, request, response); +} + +void TrackService::Stub::async::SetTrackPan(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest* request, ::daw::api::StatusResponse* response, std::function f) { + ::grpc::internal::CallbackUnaryCall< ::daw::api::SetTrackPanRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_SetTrackPan_, context, request, response, std::move(f)); +} + +void TrackService::Stub::async::SetTrackPan(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_SetTrackPan_, context, request, response, reactor); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* TrackService::Stub::PrepareAsyncSetTrackPanRaw(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::daw::api::StatusResponse, ::daw::api::SetTrackPanRequest, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_SetTrackPan_, context, request); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* TrackService::Stub::AsyncSetTrackPanRaw(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest& request, ::grpc::CompletionQueue* cq) { + auto* result = + this->PrepareAsyncSetTrackPanRaw(context, request, cq); + result->StartCall(); + return result; +} + +TrackService::Service::Service() { + AddMethod(new ::grpc::internal::RpcServiceMethod( + TrackService_method_names[0], + ::grpc::internal::RpcMethod::NORMAL_RPC, + new ::grpc::internal::RpcMethodHandler< TrackService::Service, ::daw::api::AddTrackRequest, ::daw::api::TrackInfo, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>( + [](TrackService::Service* service, + ::grpc::ServerContext* ctx, + const ::daw::api::AddTrackRequest* req, + ::daw::api::TrackInfo* resp) { + return service->AddTrack(ctx, req, resp); + }, this))); + AddMethod(new ::grpc::internal::RpcServiceMethod( + TrackService_method_names[1], + ::grpc::internal::RpcMethod::NORMAL_RPC, + new ::grpc::internal::RpcMethodHandler< TrackService::Service, ::daw::api::TrackIdRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>( + [](TrackService::Service* service, + ::grpc::ServerContext* ctx, + const ::daw::api::TrackIdRequest* req, + ::daw::api::StatusResponse* resp) { + return service->RemoveTrack(ctx, req, resp); + }, this))); + AddMethod(new ::grpc::internal::RpcServiceMethod( + TrackService_method_names[2], + ::grpc::internal::RpcMethod::NORMAL_RPC, + new ::grpc::internal::RpcMethodHandler< TrackService::Service, ::daw::api::SetTrackVolumeRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>( + [](TrackService::Service* service, + ::grpc::ServerContext* ctx, + const ::daw::api::SetTrackVolumeRequest* req, + ::daw::api::StatusResponse* resp) { + return service->SetTrackVolume(ctx, req, resp); + }, this))); + AddMethod(new ::grpc::internal::RpcServiceMethod( + TrackService_method_names[3], + ::grpc::internal::RpcMethod::NORMAL_RPC, + new ::grpc::internal::RpcMethodHandler< TrackService::Service, ::daw::api::SetTrackPanRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>( + [](TrackService::Service* service, + ::grpc::ServerContext* ctx, + const ::daw::api::SetTrackPanRequest* req, + ::daw::api::StatusResponse* resp) { + return service->SetTrackPan(ctx, req, resp); + }, this))); +} + +TrackService::Service::~Service() { +} + +::grpc::Status TrackService::Service::AddTrack(::grpc::ServerContext* context, const ::daw::api::AddTrackRequest* request, ::daw::api::TrackInfo* response) { + (void) context; + (void) request; + (void) response; + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); +} + +::grpc::Status TrackService::Service::RemoveTrack(::grpc::ServerContext* context, const ::daw::api::TrackIdRequest* request, ::daw::api::StatusResponse* response) { + (void) context; + (void) request; + (void) response; + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); +} + +::grpc::Status TrackService::Service::SetTrackVolume(::grpc::ServerContext* context, const ::daw::api::SetTrackVolumeRequest* request, ::daw::api::StatusResponse* response) { + (void) context; + (void) request; + (void) response; + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); +} + +::grpc::Status TrackService::Service::SetTrackPan(::grpc::ServerContext* context, const ::daw::api::SetTrackPanRequest* request, ::daw::api::StatusResponse* response) { + (void) context; + (void) request; + (void) response; + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); +} + + +static const char* PluginService_method_names[] = { + "/daw.api.PluginService/LoadPlugin", + "/daw.api.PluginService/SetPluginParameter", +}; + +std::unique_ptr< PluginService::Stub> PluginService::NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options) { + (void)options; + std::unique_ptr< PluginService::Stub> stub(new PluginService::Stub(channel, options)); + return stub; +} + +PluginService::Stub::Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options) + : channel_(channel), rpcmethod_LoadPlugin_(PluginService_method_names[0], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel) + , rpcmethod_SetPluginParameter_(PluginService_method_names[1], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel) + {} + +::grpc::Status PluginService::Stub::LoadPlugin(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest& request, ::daw::api::PluginInfo* response) { + return ::grpc::internal::BlockingUnaryCall< ::daw::api::LoadPluginRequest, ::daw::api::PluginInfo, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_LoadPlugin_, context, request, response); +} + +void PluginService::Stub::async::LoadPlugin(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest* request, ::daw::api::PluginInfo* response, std::function f) { + ::grpc::internal::CallbackUnaryCall< ::daw::api::LoadPluginRequest, ::daw::api::PluginInfo, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_LoadPlugin_, context, request, response, std::move(f)); +} + +void PluginService::Stub::async::LoadPlugin(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest* request, ::daw::api::PluginInfo* response, ::grpc::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_LoadPlugin_, context, request, response, reactor); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::PluginInfo>* PluginService::Stub::PrepareAsyncLoadPluginRaw(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::daw::api::PluginInfo, ::daw::api::LoadPluginRequest, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_LoadPlugin_, context, request); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::PluginInfo>* PluginService::Stub::AsyncLoadPluginRaw(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest& request, ::grpc::CompletionQueue* cq) { + auto* result = + this->PrepareAsyncLoadPluginRaw(context, request, cq); + result->StartCall(); + return result; +} + +::grpc::Status PluginService::Stub::SetPluginParameter(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest& request, ::daw::api::StatusResponse* response) { + return ::grpc::internal::BlockingUnaryCall< ::daw::api::SetPluginParameterRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_SetPluginParameter_, context, request, response); +} + +void PluginService::Stub::async::SetPluginParameter(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest* request, ::daw::api::StatusResponse* response, std::function f) { + ::grpc::internal::CallbackUnaryCall< ::daw::api::SetPluginParameterRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_SetPluginParameter_, context, request, response, std::move(f)); +} + +void PluginService::Stub::async::SetPluginParameter(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) { + ::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_SetPluginParameter_, context, request, response, reactor); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* PluginService::Stub::PrepareAsyncSetPluginParameterRaw(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest& request, ::grpc::CompletionQueue* cq) { + return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::daw::api::StatusResponse, ::daw::api::SetPluginParameterRequest, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_SetPluginParameter_, context, request); +} + +::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* PluginService::Stub::AsyncSetPluginParameterRaw(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest& request, ::grpc::CompletionQueue* cq) { + auto* result = + this->PrepareAsyncSetPluginParameterRaw(context, request, cq); + result->StartCall(); + return result; +} + +PluginService::Service::Service() { + AddMethod(new ::grpc::internal::RpcServiceMethod( + PluginService_method_names[0], + ::grpc::internal::RpcMethod::NORMAL_RPC, + new ::grpc::internal::RpcMethodHandler< PluginService::Service, ::daw::api::LoadPluginRequest, ::daw::api::PluginInfo, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>( + [](PluginService::Service* service, + ::grpc::ServerContext* ctx, + const ::daw::api::LoadPluginRequest* req, + ::daw::api::PluginInfo* resp) { + return service->LoadPlugin(ctx, req, resp); + }, this))); + AddMethod(new ::grpc::internal::RpcServiceMethod( + PluginService_method_names[1], + ::grpc::internal::RpcMethod::NORMAL_RPC, + new ::grpc::internal::RpcMethodHandler< PluginService::Service, ::daw::api::SetPluginParameterRequest, ::daw::api::StatusResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>( + [](PluginService::Service* service, + ::grpc::ServerContext* ctx, + const ::daw::api::SetPluginParameterRequest* req, + ::daw::api::StatusResponse* resp) { + return service->SetPluginParameter(ctx, req, resp); + }, this))); +} + +PluginService::Service::~Service() { +} + +::grpc::Status PluginService::Service::LoadPlugin(::grpc::ServerContext* context, const ::daw::api::LoadPluginRequest* request, ::daw::api::PluginInfo* response) { + (void) context; + (void) request; + (void) response; + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); +} + +::grpc::Status PluginService::Service::SetPluginParameter(::grpc::ServerContext* context, const ::daw::api::SetPluginParameterRequest* request, ::daw::api::StatusResponse* response) { + (void) context; + (void) request; + (void) response; + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); +} + + +} // namespace daw +} // namespace api + diff --git a/src/backend/src/proto/daw_api.grpc.pb.h b/src/backend/src/proto/daw_api.grpc.pb.h new file mode 100644 index 0000000..02cbf07 --- /dev/null +++ b/src/backend/src/proto/daw_api.grpc.pb.h @@ -0,0 +1,2282 @@ +// Generated by the gRPC C++ plugin. +// If you make any local change, they will be lost. +// source: daw_api.proto +#ifndef GRPC_daw_5fapi_2eproto__INCLUDED +#define GRPC_daw_5fapi_2eproto__INCLUDED + +#include "daw_api.pb.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace daw { +namespace api { + +// =================================================================== +// Service Definitions (gRPC Control Plane) +// =================================================================== +// +class TransportService final { + public: + static constexpr char const* service_full_name() { + return "daw.api.TransportService"; + } + class StubInterface { + public: + virtual ~StubInterface() {} + virtual ::grpc::Status Play(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::daw::api::StatusResponse* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> AsyncPlay(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(AsyncPlayRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> PrepareAsyncPlay(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(PrepareAsyncPlayRaw(context, request, cq)); + } + virtual ::grpc::Status Pause(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::daw::api::StatusResponse* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> AsyncPause(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(AsyncPauseRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> PrepareAsyncPause(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(PrepareAsyncPauseRaw(context, request, cq)); + } + virtual ::grpc::Status Stop(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::daw::api::StatusResponse* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> AsyncStop(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(AsyncStopRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> PrepareAsyncStop(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(PrepareAsyncStopRaw(context, request, cq)); + } + virtual ::grpc::Status SetTempo(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest& request, ::daw::api::StatusResponse* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> AsyncSetTempo(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(AsyncSetTempoRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> PrepareAsyncSetTempo(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(PrepareAsyncSetTempoRaw(context, request, cq)); + } + class async_interface { + public: + virtual ~async_interface() {} + virtual void Play(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, std::function) = 0; + virtual void Play(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) = 0; + virtual void Pause(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, std::function) = 0; + virtual void Pause(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) = 0; + virtual void Stop(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, std::function) = 0; + virtual void Stop(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) = 0; + virtual void SetTempo(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest* request, ::daw::api::StatusResponse* response, std::function) = 0; + virtual void SetTempo(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) = 0; + }; + typedef class async_interface experimental_async_interface; + virtual class async_interface* async() { return nullptr; } + class async_interface* experimental_async() { return async(); } + private: + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* AsyncPlayRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* PrepareAsyncPlayRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* AsyncPauseRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* PrepareAsyncPauseRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* AsyncStopRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* PrepareAsyncStopRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* AsyncSetTempoRaw(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* PrepareAsyncSetTempoRaw(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest& request, ::grpc::CompletionQueue* cq) = 0; + }; + class Stub final : public StubInterface { + public: + Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions()); + ::grpc::Status Play(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::daw::api::StatusResponse* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> AsyncPlay(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(AsyncPlayRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> PrepareAsyncPlay(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(PrepareAsyncPlayRaw(context, request, cq)); + } + ::grpc::Status Pause(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::daw::api::StatusResponse* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> AsyncPause(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(AsyncPauseRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> PrepareAsyncPause(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(PrepareAsyncPauseRaw(context, request, cq)); + } + ::grpc::Status Stop(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::daw::api::StatusResponse* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> AsyncStop(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(AsyncStopRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> PrepareAsyncStop(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(PrepareAsyncStopRaw(context, request, cq)); + } + ::grpc::Status SetTempo(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest& request, ::daw::api::StatusResponse* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> AsyncSetTempo(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(AsyncSetTempoRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> PrepareAsyncSetTempo(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(PrepareAsyncSetTempoRaw(context, request, cq)); + } + class async final : + public StubInterface::async_interface { + public: + void Play(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, std::function) override; + void Play(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) override; + void Pause(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, std::function) override; + void Pause(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) override; + void Stop(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, std::function) override; + void Stop(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) override; + void SetTempo(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest* request, ::daw::api::StatusResponse* response, std::function) override; + void SetTempo(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) override; + private: + friend class Stub; + explicit async(Stub* stub): stub_(stub) { } + Stub* stub() { return stub_; } + Stub* stub_; + }; + class async* async() override { return &async_stub_; } + + private: + std::shared_ptr< ::grpc::ChannelInterface> channel_; + class async async_stub_{this}; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* AsyncPlayRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* PrepareAsyncPlayRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* AsyncPauseRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* PrepareAsyncPauseRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* AsyncStopRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* PrepareAsyncStopRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* AsyncSetTempoRaw(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* PrepareAsyncSetTempoRaw(::grpc::ClientContext* context, const ::daw::api::SetTempoRequest& request, ::grpc::CompletionQueue* cq) override; + const ::grpc::internal::RpcMethod rpcmethod_Play_; + const ::grpc::internal::RpcMethod rpcmethod_Pause_; + const ::grpc::internal::RpcMethod rpcmethod_Stop_; + const ::grpc::internal::RpcMethod rpcmethod_SetTempo_; + }; + static std::unique_ptr NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions()); + + class Service : public ::grpc::Service { + public: + Service(); + virtual ~Service(); + virtual ::grpc::Status Play(::grpc::ServerContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response); + virtual ::grpc::Status Pause(::grpc::ServerContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response); + virtual ::grpc::Status Stop(::grpc::ServerContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response); + virtual ::grpc::Status SetTempo(::grpc::ServerContext* context, const ::daw::api::SetTempoRequest* request, ::daw::api::StatusResponse* response); + }; + template + class WithAsyncMethod_Play : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithAsyncMethod_Play() { + ::grpc::Service::MarkMethodAsync(0); + } + ~WithAsyncMethod_Play() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Play(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestPlay(::grpc::ServerContext* context, ::daw::api::Empty* request, ::grpc::ServerAsyncResponseWriter< ::daw::api::StatusResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithAsyncMethod_Pause : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithAsyncMethod_Pause() { + ::grpc::Service::MarkMethodAsync(1); + } + ~WithAsyncMethod_Pause() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Pause(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestPause(::grpc::ServerContext* context, ::daw::api::Empty* request, ::grpc::ServerAsyncResponseWriter< ::daw::api::StatusResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(1, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithAsyncMethod_Stop : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithAsyncMethod_Stop() { + ::grpc::Service::MarkMethodAsync(2); + } + ~WithAsyncMethod_Stop() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Stop(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestStop(::grpc::ServerContext* context, ::daw::api::Empty* request, ::grpc::ServerAsyncResponseWriter< ::daw::api::StatusResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(2, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithAsyncMethod_SetTempo : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithAsyncMethod_SetTempo() { + ::grpc::Service::MarkMethodAsync(3); + } + ~WithAsyncMethod_SetTempo() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTempo(::grpc::ServerContext* /*context*/, const ::daw::api::SetTempoRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestSetTempo(::grpc::ServerContext* context, ::daw::api::SetTempoRequest* request, ::grpc::ServerAsyncResponseWriter< ::daw::api::StatusResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(3, context, request, response, new_call_cq, notification_cq, tag); + } + }; + typedef WithAsyncMethod_Play > > > AsyncService; + template + class WithCallbackMethod_Play : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithCallbackMethod_Play() { + ::grpc::Service::MarkMethodCallback(0, + new ::grpc::internal::CallbackUnaryHandler< ::daw::api::Empty, ::daw::api::StatusResponse>( + [this]( + ::grpc::CallbackServerContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response) { return this->Play(context, request, response); }));} + void SetMessageAllocatorFor_Play( + ::grpc::MessageAllocator< ::daw::api::Empty, ::daw::api::StatusResponse>* allocator) { + ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(0); + static_cast<::grpc::internal::CallbackUnaryHandler< ::daw::api::Empty, ::daw::api::StatusResponse>*>(handler) + ->SetMessageAllocator(allocator); + } + ~WithCallbackMethod_Play() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Play(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* Play( + ::grpc::CallbackServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) { return nullptr; } + }; + template + class WithCallbackMethod_Pause : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithCallbackMethod_Pause() { + ::grpc::Service::MarkMethodCallback(1, + new ::grpc::internal::CallbackUnaryHandler< ::daw::api::Empty, ::daw::api::StatusResponse>( + [this]( + ::grpc::CallbackServerContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response) { return this->Pause(context, request, response); }));} + void SetMessageAllocatorFor_Pause( + ::grpc::MessageAllocator< ::daw::api::Empty, ::daw::api::StatusResponse>* allocator) { + ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(1); + static_cast<::grpc::internal::CallbackUnaryHandler< ::daw::api::Empty, ::daw::api::StatusResponse>*>(handler) + ->SetMessageAllocator(allocator); + } + ~WithCallbackMethod_Pause() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Pause(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* Pause( + ::grpc::CallbackServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) { return nullptr; } + }; + template + class WithCallbackMethod_Stop : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithCallbackMethod_Stop() { + ::grpc::Service::MarkMethodCallback(2, + new ::grpc::internal::CallbackUnaryHandler< ::daw::api::Empty, ::daw::api::StatusResponse>( + [this]( + ::grpc::CallbackServerContext* context, const ::daw::api::Empty* request, ::daw::api::StatusResponse* response) { return this->Stop(context, request, response); }));} + void SetMessageAllocatorFor_Stop( + ::grpc::MessageAllocator< ::daw::api::Empty, ::daw::api::StatusResponse>* allocator) { + ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(2); + static_cast<::grpc::internal::CallbackUnaryHandler< ::daw::api::Empty, ::daw::api::StatusResponse>*>(handler) + ->SetMessageAllocator(allocator); + } + ~WithCallbackMethod_Stop() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Stop(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* Stop( + ::grpc::CallbackServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) { return nullptr; } + }; + template + class WithCallbackMethod_SetTempo : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithCallbackMethod_SetTempo() { + ::grpc::Service::MarkMethodCallback(3, + new ::grpc::internal::CallbackUnaryHandler< ::daw::api::SetTempoRequest, ::daw::api::StatusResponse>( + [this]( + ::grpc::CallbackServerContext* context, const ::daw::api::SetTempoRequest* request, ::daw::api::StatusResponse* response) { return this->SetTempo(context, request, response); }));} + void SetMessageAllocatorFor_SetTempo( + ::grpc::MessageAllocator< ::daw::api::SetTempoRequest, ::daw::api::StatusResponse>* allocator) { + ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(3); + static_cast<::grpc::internal::CallbackUnaryHandler< ::daw::api::SetTempoRequest, ::daw::api::StatusResponse>*>(handler) + ->SetMessageAllocator(allocator); + } + ~WithCallbackMethod_SetTempo() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTempo(::grpc::ServerContext* /*context*/, const ::daw::api::SetTempoRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* SetTempo( + ::grpc::CallbackServerContext* /*context*/, const ::daw::api::SetTempoRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) { return nullptr; } + }; + typedef WithCallbackMethod_Play > > > CallbackService; + typedef CallbackService ExperimentalCallbackService; + template + class WithGenericMethod_Play : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithGenericMethod_Play() { + ::grpc::Service::MarkMethodGeneric(0); + } + ~WithGenericMethod_Play() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Play(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + }; + template + class WithGenericMethod_Pause : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithGenericMethod_Pause() { + ::grpc::Service::MarkMethodGeneric(1); + } + ~WithGenericMethod_Pause() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Pause(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + }; + template + class WithGenericMethod_Stop : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithGenericMethod_Stop() { + ::grpc::Service::MarkMethodGeneric(2); + } + ~WithGenericMethod_Stop() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Stop(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + }; + template + class WithGenericMethod_SetTempo : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithGenericMethod_SetTempo() { + ::grpc::Service::MarkMethodGeneric(3); + } + ~WithGenericMethod_SetTempo() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTempo(::grpc::ServerContext* /*context*/, const ::daw::api::SetTempoRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + }; + template + class WithRawMethod_Play : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawMethod_Play() { + ::grpc::Service::MarkMethodRaw(0); + } + ~WithRawMethod_Play() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Play(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestPlay(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithRawMethod_Pause : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawMethod_Pause() { + ::grpc::Service::MarkMethodRaw(1); + } + ~WithRawMethod_Pause() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Pause(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestPause(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(1, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithRawMethod_Stop : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawMethod_Stop() { + ::grpc::Service::MarkMethodRaw(2); + } + ~WithRawMethod_Stop() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Stop(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestStop(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(2, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithRawMethod_SetTempo : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawMethod_SetTempo() { + ::grpc::Service::MarkMethodRaw(3); + } + ~WithRawMethod_SetTempo() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTempo(::grpc::ServerContext* /*context*/, const ::daw::api::SetTempoRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestSetTempo(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(3, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithRawCallbackMethod_Play : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawCallbackMethod_Play() { + ::grpc::Service::MarkMethodRawCallback(0, + new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( + [this]( + ::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->Play(context, request, response); })); + } + ~WithRawCallbackMethod_Play() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Play(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* Play( + ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; } + }; + template + class WithRawCallbackMethod_Pause : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawCallbackMethod_Pause() { + ::grpc::Service::MarkMethodRawCallback(1, + new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( + [this]( + ::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->Pause(context, request, response); })); + } + ~WithRawCallbackMethod_Pause() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Pause(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* Pause( + ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; } + }; + template + class WithRawCallbackMethod_Stop : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawCallbackMethod_Stop() { + ::grpc::Service::MarkMethodRawCallback(2, + new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( + [this]( + ::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->Stop(context, request, response); })); + } + ~WithRawCallbackMethod_Stop() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status Stop(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* Stop( + ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; } + }; + template + class WithRawCallbackMethod_SetTempo : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawCallbackMethod_SetTempo() { + ::grpc::Service::MarkMethodRawCallback(3, + new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( + [this]( + ::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->SetTempo(context, request, response); })); + } + ~WithRawCallbackMethod_SetTempo() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTempo(::grpc::ServerContext* /*context*/, const ::daw::api::SetTempoRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* SetTempo( + ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; } + }; + template + class WithStreamedUnaryMethod_Play : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithStreamedUnaryMethod_Play() { + ::grpc::Service::MarkMethodStreamed(0, + new ::grpc::internal::StreamedUnaryHandler< + ::daw::api::Empty, ::daw::api::StatusResponse>( + [this](::grpc::ServerContext* context, + ::grpc::ServerUnaryStreamer< + ::daw::api::Empty, ::daw::api::StatusResponse>* streamer) { + return this->StreamedPlay(context, + streamer); + })); + } + ~WithStreamedUnaryMethod_Play() override { + BaseClassMustBeDerivedFromService(this); + } + // disable regular version of this method + ::grpc::Status Play(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + // replace default version of method with streamed unary + virtual ::grpc::Status StreamedPlay(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::daw::api::Empty,::daw::api::StatusResponse>* server_unary_streamer) = 0; + }; + template + class WithStreamedUnaryMethod_Pause : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithStreamedUnaryMethod_Pause() { + ::grpc::Service::MarkMethodStreamed(1, + new ::grpc::internal::StreamedUnaryHandler< + ::daw::api::Empty, ::daw::api::StatusResponse>( + [this](::grpc::ServerContext* context, + ::grpc::ServerUnaryStreamer< + ::daw::api::Empty, ::daw::api::StatusResponse>* streamer) { + return this->StreamedPause(context, + streamer); + })); + } + ~WithStreamedUnaryMethod_Pause() override { + BaseClassMustBeDerivedFromService(this); + } + // disable regular version of this method + ::grpc::Status Pause(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + // replace default version of method with streamed unary + virtual ::grpc::Status StreamedPause(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::daw::api::Empty,::daw::api::StatusResponse>* server_unary_streamer) = 0; + }; + template + class WithStreamedUnaryMethod_Stop : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithStreamedUnaryMethod_Stop() { + ::grpc::Service::MarkMethodStreamed(2, + new ::grpc::internal::StreamedUnaryHandler< + ::daw::api::Empty, ::daw::api::StatusResponse>( + [this](::grpc::ServerContext* context, + ::grpc::ServerUnaryStreamer< + ::daw::api::Empty, ::daw::api::StatusResponse>* streamer) { + return this->StreamedStop(context, + streamer); + })); + } + ~WithStreamedUnaryMethod_Stop() override { + BaseClassMustBeDerivedFromService(this); + } + // disable regular version of this method + ::grpc::Status Stop(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + // replace default version of method with streamed unary + virtual ::grpc::Status StreamedStop(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::daw::api::Empty,::daw::api::StatusResponse>* server_unary_streamer) = 0; + }; + template + class WithStreamedUnaryMethod_SetTempo : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithStreamedUnaryMethod_SetTempo() { + ::grpc::Service::MarkMethodStreamed(3, + new ::grpc::internal::StreamedUnaryHandler< + ::daw::api::SetTempoRequest, ::daw::api::StatusResponse>( + [this](::grpc::ServerContext* context, + ::grpc::ServerUnaryStreamer< + ::daw::api::SetTempoRequest, ::daw::api::StatusResponse>* streamer) { + return this->StreamedSetTempo(context, + streamer); + })); + } + ~WithStreamedUnaryMethod_SetTempo() override { + BaseClassMustBeDerivedFromService(this); + } + // disable regular version of this method + ::grpc::Status SetTempo(::grpc::ServerContext* /*context*/, const ::daw::api::SetTempoRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + // replace default version of method with streamed unary + virtual ::grpc::Status StreamedSetTempo(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::daw::api::SetTempoRequest,::daw::api::StatusResponse>* server_unary_streamer) = 0; + }; + typedef WithStreamedUnaryMethod_Play > > > StreamedUnaryService; + typedef Service SplitStreamedService; + typedef WithStreamedUnaryMethod_Play > > > StreamedService; +}; + +class ProjectService final { + public: + static constexpr char const* service_full_name() { + return "daw.api.ProjectService"; + } + class StubInterface { + public: + virtual ~StubInterface() {} + virtual ::grpc::Status NewProject(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::daw::api::ProjectState* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::ProjectState>> AsyncNewProject(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::ProjectState>>(AsyncNewProjectRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::ProjectState>> PrepareAsyncNewProject(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::ProjectState>>(PrepareAsyncNewProjectRaw(context, request, cq)); + } + virtual ::grpc::Status LoadProject(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest& request, ::daw::api::ProjectState* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::ProjectState>> AsyncLoadProject(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::ProjectState>>(AsyncLoadProjectRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::ProjectState>> PrepareAsyncLoadProject(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::ProjectState>>(PrepareAsyncLoadProjectRaw(context, request, cq)); + } + virtual ::grpc::Status SaveProject(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest& request, ::daw::api::StatusResponse* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> AsyncSaveProject(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(AsyncSaveProjectRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> PrepareAsyncSaveProject(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(PrepareAsyncSaveProjectRaw(context, request, cq)); + } + class async_interface { + public: + virtual ~async_interface() {} + virtual void NewProject(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::ProjectState* response, std::function) = 0; + virtual void NewProject(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::ProjectState* response, ::grpc::ClientUnaryReactor* reactor) = 0; + virtual void LoadProject(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest* request, ::daw::api::ProjectState* response, std::function) = 0; + virtual void LoadProject(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest* request, ::daw::api::ProjectState* response, ::grpc::ClientUnaryReactor* reactor) = 0; + virtual void SaveProject(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest* request, ::daw::api::StatusResponse* response, std::function) = 0; + virtual void SaveProject(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) = 0; + }; + typedef class async_interface experimental_async_interface; + virtual class async_interface* async() { return nullptr; } + class async_interface* experimental_async() { return async(); } + private: + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::ProjectState>* AsyncNewProjectRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::ProjectState>* PrepareAsyncNewProjectRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::ProjectState>* AsyncLoadProjectRaw(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::ProjectState>* PrepareAsyncLoadProjectRaw(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* AsyncSaveProjectRaw(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* PrepareAsyncSaveProjectRaw(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest& request, ::grpc::CompletionQueue* cq) = 0; + }; + class Stub final : public StubInterface { + public: + Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions()); + ::grpc::Status NewProject(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::daw::api::ProjectState* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>> AsyncNewProject(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>>(AsyncNewProjectRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>> PrepareAsyncNewProject(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>>(PrepareAsyncNewProjectRaw(context, request, cq)); + } + ::grpc::Status LoadProject(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest& request, ::daw::api::ProjectState* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>> AsyncLoadProject(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>>(AsyncLoadProjectRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>> PrepareAsyncLoadProject(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>>(PrepareAsyncLoadProjectRaw(context, request, cq)); + } + ::grpc::Status SaveProject(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest& request, ::daw::api::StatusResponse* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> AsyncSaveProject(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(AsyncSaveProjectRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> PrepareAsyncSaveProject(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(PrepareAsyncSaveProjectRaw(context, request, cq)); + } + class async final : + public StubInterface::async_interface { + public: + void NewProject(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::ProjectState* response, std::function) override; + void NewProject(::grpc::ClientContext* context, const ::daw::api::Empty* request, ::daw::api::ProjectState* response, ::grpc::ClientUnaryReactor* reactor) override; + void LoadProject(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest* request, ::daw::api::ProjectState* response, std::function) override; + void LoadProject(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest* request, ::daw::api::ProjectState* response, ::grpc::ClientUnaryReactor* reactor) override; + void SaveProject(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest* request, ::daw::api::StatusResponse* response, std::function) override; + void SaveProject(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) override; + private: + friend class Stub; + explicit async(Stub* stub): stub_(stub) { } + Stub* stub() { return stub_; } + Stub* stub_; + }; + class async* async() override { return &async_stub_; } + + private: + std::shared_ptr< ::grpc::ChannelInterface> channel_; + class async async_stub_{this}; + ::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>* AsyncNewProjectRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>* PrepareAsyncNewProjectRaw(::grpc::ClientContext* context, const ::daw::api::Empty& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>* AsyncLoadProjectRaw(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::ProjectState>* PrepareAsyncLoadProjectRaw(::grpc::ClientContext* context, const ::daw::api::LoadProjectRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* AsyncSaveProjectRaw(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* PrepareAsyncSaveProjectRaw(::grpc::ClientContext* context, const ::daw::api::SaveProjectRequest& request, ::grpc::CompletionQueue* cq) override; + const ::grpc::internal::RpcMethod rpcmethod_NewProject_; + const ::grpc::internal::RpcMethod rpcmethod_LoadProject_; + const ::grpc::internal::RpcMethod rpcmethod_SaveProject_; + }; + static std::unique_ptr NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions()); + + class Service : public ::grpc::Service { + public: + Service(); + virtual ~Service(); + virtual ::grpc::Status NewProject(::grpc::ServerContext* context, const ::daw::api::Empty* request, ::daw::api::ProjectState* response); + virtual ::grpc::Status LoadProject(::grpc::ServerContext* context, const ::daw::api::LoadProjectRequest* request, ::daw::api::ProjectState* response); + virtual ::grpc::Status SaveProject(::grpc::ServerContext* context, const ::daw::api::SaveProjectRequest* request, ::daw::api::StatusResponse* response); + }; + template + class WithAsyncMethod_NewProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithAsyncMethod_NewProject() { + ::grpc::Service::MarkMethodAsync(0); + } + ~WithAsyncMethod_NewProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status NewProject(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::ProjectState* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestNewProject(::grpc::ServerContext* context, ::daw::api::Empty* request, ::grpc::ServerAsyncResponseWriter< ::daw::api::ProjectState>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithAsyncMethod_LoadProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithAsyncMethod_LoadProject() { + ::grpc::Service::MarkMethodAsync(1); + } + ~WithAsyncMethod_LoadProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status LoadProject(::grpc::ServerContext* /*context*/, const ::daw::api::LoadProjectRequest* /*request*/, ::daw::api::ProjectState* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestLoadProject(::grpc::ServerContext* context, ::daw::api::LoadProjectRequest* request, ::grpc::ServerAsyncResponseWriter< ::daw::api::ProjectState>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(1, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithAsyncMethod_SaveProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithAsyncMethod_SaveProject() { + ::grpc::Service::MarkMethodAsync(2); + } + ~WithAsyncMethod_SaveProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SaveProject(::grpc::ServerContext* /*context*/, const ::daw::api::SaveProjectRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestSaveProject(::grpc::ServerContext* context, ::daw::api::SaveProjectRequest* request, ::grpc::ServerAsyncResponseWriter< ::daw::api::StatusResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(2, context, request, response, new_call_cq, notification_cq, tag); + } + }; + typedef WithAsyncMethod_NewProject > > AsyncService; + template + class WithCallbackMethod_NewProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithCallbackMethod_NewProject() { + ::grpc::Service::MarkMethodCallback(0, + new ::grpc::internal::CallbackUnaryHandler< ::daw::api::Empty, ::daw::api::ProjectState>( + [this]( + ::grpc::CallbackServerContext* context, const ::daw::api::Empty* request, ::daw::api::ProjectState* response) { return this->NewProject(context, request, response); }));} + void SetMessageAllocatorFor_NewProject( + ::grpc::MessageAllocator< ::daw::api::Empty, ::daw::api::ProjectState>* allocator) { + ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(0); + static_cast<::grpc::internal::CallbackUnaryHandler< ::daw::api::Empty, ::daw::api::ProjectState>*>(handler) + ->SetMessageAllocator(allocator); + } + ~WithCallbackMethod_NewProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status NewProject(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::ProjectState* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* NewProject( + ::grpc::CallbackServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::ProjectState* /*response*/) { return nullptr; } + }; + template + class WithCallbackMethod_LoadProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithCallbackMethod_LoadProject() { + ::grpc::Service::MarkMethodCallback(1, + new ::grpc::internal::CallbackUnaryHandler< ::daw::api::LoadProjectRequest, ::daw::api::ProjectState>( + [this]( + ::grpc::CallbackServerContext* context, const ::daw::api::LoadProjectRequest* request, ::daw::api::ProjectState* response) { return this->LoadProject(context, request, response); }));} + void SetMessageAllocatorFor_LoadProject( + ::grpc::MessageAllocator< ::daw::api::LoadProjectRequest, ::daw::api::ProjectState>* allocator) { + ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(1); + static_cast<::grpc::internal::CallbackUnaryHandler< ::daw::api::LoadProjectRequest, ::daw::api::ProjectState>*>(handler) + ->SetMessageAllocator(allocator); + } + ~WithCallbackMethod_LoadProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status LoadProject(::grpc::ServerContext* /*context*/, const ::daw::api::LoadProjectRequest* /*request*/, ::daw::api::ProjectState* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* LoadProject( + ::grpc::CallbackServerContext* /*context*/, const ::daw::api::LoadProjectRequest* /*request*/, ::daw::api::ProjectState* /*response*/) { return nullptr; } + }; + template + class WithCallbackMethod_SaveProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithCallbackMethod_SaveProject() { + ::grpc::Service::MarkMethodCallback(2, + new ::grpc::internal::CallbackUnaryHandler< ::daw::api::SaveProjectRequest, ::daw::api::StatusResponse>( + [this]( + ::grpc::CallbackServerContext* context, const ::daw::api::SaveProjectRequest* request, ::daw::api::StatusResponse* response) { return this->SaveProject(context, request, response); }));} + void SetMessageAllocatorFor_SaveProject( + ::grpc::MessageAllocator< ::daw::api::SaveProjectRequest, ::daw::api::StatusResponse>* allocator) { + ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(2); + static_cast<::grpc::internal::CallbackUnaryHandler< ::daw::api::SaveProjectRequest, ::daw::api::StatusResponse>*>(handler) + ->SetMessageAllocator(allocator); + } + ~WithCallbackMethod_SaveProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SaveProject(::grpc::ServerContext* /*context*/, const ::daw::api::SaveProjectRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* SaveProject( + ::grpc::CallbackServerContext* /*context*/, const ::daw::api::SaveProjectRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) { return nullptr; } + }; + typedef WithCallbackMethod_NewProject > > CallbackService; + typedef CallbackService ExperimentalCallbackService; + template + class WithGenericMethod_NewProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithGenericMethod_NewProject() { + ::grpc::Service::MarkMethodGeneric(0); + } + ~WithGenericMethod_NewProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status NewProject(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::ProjectState* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + }; + template + class WithGenericMethod_LoadProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithGenericMethod_LoadProject() { + ::grpc::Service::MarkMethodGeneric(1); + } + ~WithGenericMethod_LoadProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status LoadProject(::grpc::ServerContext* /*context*/, const ::daw::api::LoadProjectRequest* /*request*/, ::daw::api::ProjectState* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + }; + template + class WithGenericMethod_SaveProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithGenericMethod_SaveProject() { + ::grpc::Service::MarkMethodGeneric(2); + } + ~WithGenericMethod_SaveProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SaveProject(::grpc::ServerContext* /*context*/, const ::daw::api::SaveProjectRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + }; + template + class WithRawMethod_NewProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawMethod_NewProject() { + ::grpc::Service::MarkMethodRaw(0); + } + ~WithRawMethod_NewProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status NewProject(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::ProjectState* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestNewProject(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithRawMethod_LoadProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawMethod_LoadProject() { + ::grpc::Service::MarkMethodRaw(1); + } + ~WithRawMethod_LoadProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status LoadProject(::grpc::ServerContext* /*context*/, const ::daw::api::LoadProjectRequest* /*request*/, ::daw::api::ProjectState* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestLoadProject(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(1, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithRawMethod_SaveProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawMethod_SaveProject() { + ::grpc::Service::MarkMethodRaw(2); + } + ~WithRawMethod_SaveProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SaveProject(::grpc::ServerContext* /*context*/, const ::daw::api::SaveProjectRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestSaveProject(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(2, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithRawCallbackMethod_NewProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawCallbackMethod_NewProject() { + ::grpc::Service::MarkMethodRawCallback(0, + new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( + [this]( + ::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->NewProject(context, request, response); })); + } + ~WithRawCallbackMethod_NewProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status NewProject(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::ProjectState* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* NewProject( + ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; } + }; + template + class WithRawCallbackMethod_LoadProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawCallbackMethod_LoadProject() { + ::grpc::Service::MarkMethodRawCallback(1, + new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( + [this]( + ::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->LoadProject(context, request, response); })); + } + ~WithRawCallbackMethod_LoadProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status LoadProject(::grpc::ServerContext* /*context*/, const ::daw::api::LoadProjectRequest* /*request*/, ::daw::api::ProjectState* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* LoadProject( + ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; } + }; + template + class WithRawCallbackMethod_SaveProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawCallbackMethod_SaveProject() { + ::grpc::Service::MarkMethodRawCallback(2, + new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( + [this]( + ::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->SaveProject(context, request, response); })); + } + ~WithRawCallbackMethod_SaveProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SaveProject(::grpc::ServerContext* /*context*/, const ::daw::api::SaveProjectRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* SaveProject( + ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; } + }; + template + class WithStreamedUnaryMethod_NewProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithStreamedUnaryMethod_NewProject() { + ::grpc::Service::MarkMethodStreamed(0, + new ::grpc::internal::StreamedUnaryHandler< + ::daw::api::Empty, ::daw::api::ProjectState>( + [this](::grpc::ServerContext* context, + ::grpc::ServerUnaryStreamer< + ::daw::api::Empty, ::daw::api::ProjectState>* streamer) { + return this->StreamedNewProject(context, + streamer); + })); + } + ~WithStreamedUnaryMethod_NewProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable regular version of this method + ::grpc::Status NewProject(::grpc::ServerContext* /*context*/, const ::daw::api::Empty* /*request*/, ::daw::api::ProjectState* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + // replace default version of method with streamed unary + virtual ::grpc::Status StreamedNewProject(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::daw::api::Empty,::daw::api::ProjectState>* server_unary_streamer) = 0; + }; + template + class WithStreamedUnaryMethod_LoadProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithStreamedUnaryMethod_LoadProject() { + ::grpc::Service::MarkMethodStreamed(1, + new ::grpc::internal::StreamedUnaryHandler< + ::daw::api::LoadProjectRequest, ::daw::api::ProjectState>( + [this](::grpc::ServerContext* context, + ::grpc::ServerUnaryStreamer< + ::daw::api::LoadProjectRequest, ::daw::api::ProjectState>* streamer) { + return this->StreamedLoadProject(context, + streamer); + })); + } + ~WithStreamedUnaryMethod_LoadProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable regular version of this method + ::grpc::Status LoadProject(::grpc::ServerContext* /*context*/, const ::daw::api::LoadProjectRequest* /*request*/, ::daw::api::ProjectState* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + // replace default version of method with streamed unary + virtual ::grpc::Status StreamedLoadProject(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::daw::api::LoadProjectRequest,::daw::api::ProjectState>* server_unary_streamer) = 0; + }; + template + class WithStreamedUnaryMethod_SaveProject : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithStreamedUnaryMethod_SaveProject() { + ::grpc::Service::MarkMethodStreamed(2, + new ::grpc::internal::StreamedUnaryHandler< + ::daw::api::SaveProjectRequest, ::daw::api::StatusResponse>( + [this](::grpc::ServerContext* context, + ::grpc::ServerUnaryStreamer< + ::daw::api::SaveProjectRequest, ::daw::api::StatusResponse>* streamer) { + return this->StreamedSaveProject(context, + streamer); + })); + } + ~WithStreamedUnaryMethod_SaveProject() override { + BaseClassMustBeDerivedFromService(this); + } + // disable regular version of this method + ::grpc::Status SaveProject(::grpc::ServerContext* /*context*/, const ::daw::api::SaveProjectRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + // replace default version of method with streamed unary + virtual ::grpc::Status StreamedSaveProject(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::daw::api::SaveProjectRequest,::daw::api::StatusResponse>* server_unary_streamer) = 0; + }; + typedef WithStreamedUnaryMethod_NewProject > > StreamedUnaryService; + typedef Service SplitStreamedService; + typedef WithStreamedUnaryMethod_NewProject > > StreamedService; +}; + +class TrackService final { + public: + static constexpr char const* service_full_name() { + return "daw.api.TrackService"; + } + class StubInterface { + public: + virtual ~StubInterface() {} + virtual ::grpc::Status AddTrack(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest& request, ::daw::api::TrackInfo* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::TrackInfo>> AsyncAddTrack(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::TrackInfo>>(AsyncAddTrackRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::TrackInfo>> PrepareAsyncAddTrack(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::TrackInfo>>(PrepareAsyncAddTrackRaw(context, request, cq)); + } + virtual ::grpc::Status RemoveTrack(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest& request, ::daw::api::StatusResponse* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> AsyncRemoveTrack(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(AsyncRemoveTrackRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> PrepareAsyncRemoveTrack(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(PrepareAsyncRemoveTrackRaw(context, request, cq)); + } + virtual ::grpc::Status SetTrackVolume(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest& request, ::daw::api::StatusResponse* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> AsyncSetTrackVolume(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(AsyncSetTrackVolumeRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> PrepareAsyncSetTrackVolume(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(PrepareAsyncSetTrackVolumeRaw(context, request, cq)); + } + virtual ::grpc::Status SetTrackPan(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest& request, ::daw::api::StatusResponse* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> AsyncSetTrackPan(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(AsyncSetTrackPanRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> PrepareAsyncSetTrackPan(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(PrepareAsyncSetTrackPanRaw(context, request, cq)); + } + class async_interface { + public: + virtual ~async_interface() {} + virtual void AddTrack(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest* request, ::daw::api::TrackInfo* response, std::function) = 0; + virtual void AddTrack(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest* request, ::daw::api::TrackInfo* response, ::grpc::ClientUnaryReactor* reactor) = 0; + virtual void RemoveTrack(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest* request, ::daw::api::StatusResponse* response, std::function) = 0; + virtual void RemoveTrack(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) = 0; + virtual void SetTrackVolume(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest* request, ::daw::api::StatusResponse* response, std::function) = 0; + virtual void SetTrackVolume(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) = 0; + virtual void SetTrackPan(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest* request, ::daw::api::StatusResponse* response, std::function) = 0; + virtual void SetTrackPan(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) = 0; + }; + typedef class async_interface experimental_async_interface; + virtual class async_interface* async() { return nullptr; } + class async_interface* experimental_async() { return async(); } + private: + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::TrackInfo>* AsyncAddTrackRaw(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::TrackInfo>* PrepareAsyncAddTrackRaw(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* AsyncRemoveTrackRaw(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* PrepareAsyncRemoveTrackRaw(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* AsyncSetTrackVolumeRaw(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* PrepareAsyncSetTrackVolumeRaw(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* AsyncSetTrackPanRaw(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* PrepareAsyncSetTrackPanRaw(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest& request, ::grpc::CompletionQueue* cq) = 0; + }; + class Stub final : public StubInterface { + public: + Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions()); + ::grpc::Status AddTrack(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest& request, ::daw::api::TrackInfo* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::TrackInfo>> AsyncAddTrack(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::TrackInfo>>(AsyncAddTrackRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::TrackInfo>> PrepareAsyncAddTrack(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::TrackInfo>>(PrepareAsyncAddTrackRaw(context, request, cq)); + } + ::grpc::Status RemoveTrack(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest& request, ::daw::api::StatusResponse* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> AsyncRemoveTrack(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(AsyncRemoveTrackRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> PrepareAsyncRemoveTrack(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(PrepareAsyncRemoveTrackRaw(context, request, cq)); + } + ::grpc::Status SetTrackVolume(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest& request, ::daw::api::StatusResponse* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> AsyncSetTrackVolume(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(AsyncSetTrackVolumeRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> PrepareAsyncSetTrackVolume(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(PrepareAsyncSetTrackVolumeRaw(context, request, cq)); + } + ::grpc::Status SetTrackPan(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest& request, ::daw::api::StatusResponse* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> AsyncSetTrackPan(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(AsyncSetTrackPanRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> PrepareAsyncSetTrackPan(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(PrepareAsyncSetTrackPanRaw(context, request, cq)); + } + class async final : + public StubInterface::async_interface { + public: + void AddTrack(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest* request, ::daw::api::TrackInfo* response, std::function) override; + void AddTrack(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest* request, ::daw::api::TrackInfo* response, ::grpc::ClientUnaryReactor* reactor) override; + void RemoveTrack(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest* request, ::daw::api::StatusResponse* response, std::function) override; + void RemoveTrack(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) override; + void SetTrackVolume(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest* request, ::daw::api::StatusResponse* response, std::function) override; + void SetTrackVolume(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) override; + void SetTrackPan(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest* request, ::daw::api::StatusResponse* response, std::function) override; + void SetTrackPan(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) override; + private: + friend class Stub; + explicit async(Stub* stub): stub_(stub) { } + Stub* stub() { return stub_; } + Stub* stub_; + }; + class async* async() override { return &async_stub_; } + + private: + std::shared_ptr< ::grpc::ChannelInterface> channel_; + class async async_stub_{this}; + ::grpc::ClientAsyncResponseReader< ::daw::api::TrackInfo>* AsyncAddTrackRaw(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::TrackInfo>* PrepareAsyncAddTrackRaw(::grpc::ClientContext* context, const ::daw::api::AddTrackRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* AsyncRemoveTrackRaw(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* PrepareAsyncRemoveTrackRaw(::grpc::ClientContext* context, const ::daw::api::TrackIdRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* AsyncSetTrackVolumeRaw(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* PrepareAsyncSetTrackVolumeRaw(::grpc::ClientContext* context, const ::daw::api::SetTrackVolumeRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* AsyncSetTrackPanRaw(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* PrepareAsyncSetTrackPanRaw(::grpc::ClientContext* context, const ::daw::api::SetTrackPanRequest& request, ::grpc::CompletionQueue* cq) override; + const ::grpc::internal::RpcMethod rpcmethod_AddTrack_; + const ::grpc::internal::RpcMethod rpcmethod_RemoveTrack_; + const ::grpc::internal::RpcMethod rpcmethod_SetTrackVolume_; + const ::grpc::internal::RpcMethod rpcmethod_SetTrackPan_; + }; + static std::unique_ptr NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions()); + + class Service : public ::grpc::Service { + public: + Service(); + virtual ~Service(); + virtual ::grpc::Status AddTrack(::grpc::ServerContext* context, const ::daw::api::AddTrackRequest* request, ::daw::api::TrackInfo* response); + virtual ::grpc::Status RemoveTrack(::grpc::ServerContext* context, const ::daw::api::TrackIdRequest* request, ::daw::api::StatusResponse* response); + virtual ::grpc::Status SetTrackVolume(::grpc::ServerContext* context, const ::daw::api::SetTrackVolumeRequest* request, ::daw::api::StatusResponse* response); + virtual ::grpc::Status SetTrackPan(::grpc::ServerContext* context, const ::daw::api::SetTrackPanRequest* request, ::daw::api::StatusResponse* response); + }; + template + class WithAsyncMethod_AddTrack : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithAsyncMethod_AddTrack() { + ::grpc::Service::MarkMethodAsync(0); + } + ~WithAsyncMethod_AddTrack() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status AddTrack(::grpc::ServerContext* /*context*/, const ::daw::api::AddTrackRequest* /*request*/, ::daw::api::TrackInfo* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestAddTrack(::grpc::ServerContext* context, ::daw::api::AddTrackRequest* request, ::grpc::ServerAsyncResponseWriter< ::daw::api::TrackInfo>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithAsyncMethod_RemoveTrack : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithAsyncMethod_RemoveTrack() { + ::grpc::Service::MarkMethodAsync(1); + } + ~WithAsyncMethod_RemoveTrack() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status RemoveTrack(::grpc::ServerContext* /*context*/, const ::daw::api::TrackIdRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestRemoveTrack(::grpc::ServerContext* context, ::daw::api::TrackIdRequest* request, ::grpc::ServerAsyncResponseWriter< ::daw::api::StatusResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(1, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithAsyncMethod_SetTrackVolume : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithAsyncMethod_SetTrackVolume() { + ::grpc::Service::MarkMethodAsync(2); + } + ~WithAsyncMethod_SetTrackVolume() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTrackVolume(::grpc::ServerContext* /*context*/, const ::daw::api::SetTrackVolumeRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestSetTrackVolume(::grpc::ServerContext* context, ::daw::api::SetTrackVolumeRequest* request, ::grpc::ServerAsyncResponseWriter< ::daw::api::StatusResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(2, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithAsyncMethod_SetTrackPan : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithAsyncMethod_SetTrackPan() { + ::grpc::Service::MarkMethodAsync(3); + } + ~WithAsyncMethod_SetTrackPan() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTrackPan(::grpc::ServerContext* /*context*/, const ::daw::api::SetTrackPanRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestSetTrackPan(::grpc::ServerContext* context, ::daw::api::SetTrackPanRequest* request, ::grpc::ServerAsyncResponseWriter< ::daw::api::StatusResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(3, context, request, response, new_call_cq, notification_cq, tag); + } + }; + typedef WithAsyncMethod_AddTrack > > > AsyncService; + template + class WithCallbackMethod_AddTrack : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithCallbackMethod_AddTrack() { + ::grpc::Service::MarkMethodCallback(0, + new ::grpc::internal::CallbackUnaryHandler< ::daw::api::AddTrackRequest, ::daw::api::TrackInfo>( + [this]( + ::grpc::CallbackServerContext* context, const ::daw::api::AddTrackRequest* request, ::daw::api::TrackInfo* response) { return this->AddTrack(context, request, response); }));} + void SetMessageAllocatorFor_AddTrack( + ::grpc::MessageAllocator< ::daw::api::AddTrackRequest, ::daw::api::TrackInfo>* allocator) { + ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(0); + static_cast<::grpc::internal::CallbackUnaryHandler< ::daw::api::AddTrackRequest, ::daw::api::TrackInfo>*>(handler) + ->SetMessageAllocator(allocator); + } + ~WithCallbackMethod_AddTrack() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status AddTrack(::grpc::ServerContext* /*context*/, const ::daw::api::AddTrackRequest* /*request*/, ::daw::api::TrackInfo* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* AddTrack( + ::grpc::CallbackServerContext* /*context*/, const ::daw::api::AddTrackRequest* /*request*/, ::daw::api::TrackInfo* /*response*/) { return nullptr; } + }; + template + class WithCallbackMethod_RemoveTrack : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithCallbackMethod_RemoveTrack() { + ::grpc::Service::MarkMethodCallback(1, + new ::grpc::internal::CallbackUnaryHandler< ::daw::api::TrackIdRequest, ::daw::api::StatusResponse>( + [this]( + ::grpc::CallbackServerContext* context, const ::daw::api::TrackIdRequest* request, ::daw::api::StatusResponse* response) { return this->RemoveTrack(context, request, response); }));} + void SetMessageAllocatorFor_RemoveTrack( + ::grpc::MessageAllocator< ::daw::api::TrackIdRequest, ::daw::api::StatusResponse>* allocator) { + ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(1); + static_cast<::grpc::internal::CallbackUnaryHandler< ::daw::api::TrackIdRequest, ::daw::api::StatusResponse>*>(handler) + ->SetMessageAllocator(allocator); + } + ~WithCallbackMethod_RemoveTrack() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status RemoveTrack(::grpc::ServerContext* /*context*/, const ::daw::api::TrackIdRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* RemoveTrack( + ::grpc::CallbackServerContext* /*context*/, const ::daw::api::TrackIdRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) { return nullptr; } + }; + template + class WithCallbackMethod_SetTrackVolume : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithCallbackMethod_SetTrackVolume() { + ::grpc::Service::MarkMethodCallback(2, + new ::grpc::internal::CallbackUnaryHandler< ::daw::api::SetTrackVolumeRequest, ::daw::api::StatusResponse>( + [this]( + ::grpc::CallbackServerContext* context, const ::daw::api::SetTrackVolumeRequest* request, ::daw::api::StatusResponse* response) { return this->SetTrackVolume(context, request, response); }));} + void SetMessageAllocatorFor_SetTrackVolume( + ::grpc::MessageAllocator< ::daw::api::SetTrackVolumeRequest, ::daw::api::StatusResponse>* allocator) { + ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(2); + static_cast<::grpc::internal::CallbackUnaryHandler< ::daw::api::SetTrackVolumeRequest, ::daw::api::StatusResponse>*>(handler) + ->SetMessageAllocator(allocator); + } + ~WithCallbackMethod_SetTrackVolume() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTrackVolume(::grpc::ServerContext* /*context*/, const ::daw::api::SetTrackVolumeRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* SetTrackVolume( + ::grpc::CallbackServerContext* /*context*/, const ::daw::api::SetTrackVolumeRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) { return nullptr; } + }; + template + class WithCallbackMethod_SetTrackPan : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithCallbackMethod_SetTrackPan() { + ::grpc::Service::MarkMethodCallback(3, + new ::grpc::internal::CallbackUnaryHandler< ::daw::api::SetTrackPanRequest, ::daw::api::StatusResponse>( + [this]( + ::grpc::CallbackServerContext* context, const ::daw::api::SetTrackPanRequest* request, ::daw::api::StatusResponse* response) { return this->SetTrackPan(context, request, response); }));} + void SetMessageAllocatorFor_SetTrackPan( + ::grpc::MessageAllocator< ::daw::api::SetTrackPanRequest, ::daw::api::StatusResponse>* allocator) { + ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(3); + static_cast<::grpc::internal::CallbackUnaryHandler< ::daw::api::SetTrackPanRequest, ::daw::api::StatusResponse>*>(handler) + ->SetMessageAllocator(allocator); + } + ~WithCallbackMethod_SetTrackPan() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTrackPan(::grpc::ServerContext* /*context*/, const ::daw::api::SetTrackPanRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* SetTrackPan( + ::grpc::CallbackServerContext* /*context*/, const ::daw::api::SetTrackPanRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) { return nullptr; } + }; + typedef WithCallbackMethod_AddTrack > > > CallbackService; + typedef CallbackService ExperimentalCallbackService; + template + class WithGenericMethod_AddTrack : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithGenericMethod_AddTrack() { + ::grpc::Service::MarkMethodGeneric(0); + } + ~WithGenericMethod_AddTrack() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status AddTrack(::grpc::ServerContext* /*context*/, const ::daw::api::AddTrackRequest* /*request*/, ::daw::api::TrackInfo* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + }; + template + class WithGenericMethod_RemoveTrack : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithGenericMethod_RemoveTrack() { + ::grpc::Service::MarkMethodGeneric(1); + } + ~WithGenericMethod_RemoveTrack() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status RemoveTrack(::grpc::ServerContext* /*context*/, const ::daw::api::TrackIdRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + }; + template + class WithGenericMethod_SetTrackVolume : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithGenericMethod_SetTrackVolume() { + ::grpc::Service::MarkMethodGeneric(2); + } + ~WithGenericMethod_SetTrackVolume() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTrackVolume(::grpc::ServerContext* /*context*/, const ::daw::api::SetTrackVolumeRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + }; + template + class WithGenericMethod_SetTrackPan : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithGenericMethod_SetTrackPan() { + ::grpc::Service::MarkMethodGeneric(3); + } + ~WithGenericMethod_SetTrackPan() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTrackPan(::grpc::ServerContext* /*context*/, const ::daw::api::SetTrackPanRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + }; + template + class WithRawMethod_AddTrack : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawMethod_AddTrack() { + ::grpc::Service::MarkMethodRaw(0); + } + ~WithRawMethod_AddTrack() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status AddTrack(::grpc::ServerContext* /*context*/, const ::daw::api::AddTrackRequest* /*request*/, ::daw::api::TrackInfo* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestAddTrack(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithRawMethod_RemoveTrack : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawMethod_RemoveTrack() { + ::grpc::Service::MarkMethodRaw(1); + } + ~WithRawMethod_RemoveTrack() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status RemoveTrack(::grpc::ServerContext* /*context*/, const ::daw::api::TrackIdRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestRemoveTrack(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(1, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithRawMethod_SetTrackVolume : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawMethod_SetTrackVolume() { + ::grpc::Service::MarkMethodRaw(2); + } + ~WithRawMethod_SetTrackVolume() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTrackVolume(::grpc::ServerContext* /*context*/, const ::daw::api::SetTrackVolumeRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestSetTrackVolume(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(2, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithRawMethod_SetTrackPan : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawMethod_SetTrackPan() { + ::grpc::Service::MarkMethodRaw(3); + } + ~WithRawMethod_SetTrackPan() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTrackPan(::grpc::ServerContext* /*context*/, const ::daw::api::SetTrackPanRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestSetTrackPan(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(3, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithRawCallbackMethod_AddTrack : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawCallbackMethod_AddTrack() { + ::grpc::Service::MarkMethodRawCallback(0, + new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( + [this]( + ::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->AddTrack(context, request, response); })); + } + ~WithRawCallbackMethod_AddTrack() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status AddTrack(::grpc::ServerContext* /*context*/, const ::daw::api::AddTrackRequest* /*request*/, ::daw::api::TrackInfo* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* AddTrack( + ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; } + }; + template + class WithRawCallbackMethod_RemoveTrack : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawCallbackMethod_RemoveTrack() { + ::grpc::Service::MarkMethodRawCallback(1, + new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( + [this]( + ::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->RemoveTrack(context, request, response); })); + } + ~WithRawCallbackMethod_RemoveTrack() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status RemoveTrack(::grpc::ServerContext* /*context*/, const ::daw::api::TrackIdRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* RemoveTrack( + ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; } + }; + template + class WithRawCallbackMethod_SetTrackVolume : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawCallbackMethod_SetTrackVolume() { + ::grpc::Service::MarkMethodRawCallback(2, + new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( + [this]( + ::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->SetTrackVolume(context, request, response); })); + } + ~WithRawCallbackMethod_SetTrackVolume() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTrackVolume(::grpc::ServerContext* /*context*/, const ::daw::api::SetTrackVolumeRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* SetTrackVolume( + ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; } + }; + template + class WithRawCallbackMethod_SetTrackPan : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawCallbackMethod_SetTrackPan() { + ::grpc::Service::MarkMethodRawCallback(3, + new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( + [this]( + ::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->SetTrackPan(context, request, response); })); + } + ~WithRawCallbackMethod_SetTrackPan() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetTrackPan(::grpc::ServerContext* /*context*/, const ::daw::api::SetTrackPanRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* SetTrackPan( + ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; } + }; + template + class WithStreamedUnaryMethod_AddTrack : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithStreamedUnaryMethod_AddTrack() { + ::grpc::Service::MarkMethodStreamed(0, + new ::grpc::internal::StreamedUnaryHandler< + ::daw::api::AddTrackRequest, ::daw::api::TrackInfo>( + [this](::grpc::ServerContext* context, + ::grpc::ServerUnaryStreamer< + ::daw::api::AddTrackRequest, ::daw::api::TrackInfo>* streamer) { + return this->StreamedAddTrack(context, + streamer); + })); + } + ~WithStreamedUnaryMethod_AddTrack() override { + BaseClassMustBeDerivedFromService(this); + } + // disable regular version of this method + ::grpc::Status AddTrack(::grpc::ServerContext* /*context*/, const ::daw::api::AddTrackRequest* /*request*/, ::daw::api::TrackInfo* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + // replace default version of method with streamed unary + virtual ::grpc::Status StreamedAddTrack(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::daw::api::AddTrackRequest,::daw::api::TrackInfo>* server_unary_streamer) = 0; + }; + template + class WithStreamedUnaryMethod_RemoveTrack : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithStreamedUnaryMethod_RemoveTrack() { + ::grpc::Service::MarkMethodStreamed(1, + new ::grpc::internal::StreamedUnaryHandler< + ::daw::api::TrackIdRequest, ::daw::api::StatusResponse>( + [this](::grpc::ServerContext* context, + ::grpc::ServerUnaryStreamer< + ::daw::api::TrackIdRequest, ::daw::api::StatusResponse>* streamer) { + return this->StreamedRemoveTrack(context, + streamer); + })); + } + ~WithStreamedUnaryMethod_RemoveTrack() override { + BaseClassMustBeDerivedFromService(this); + } + // disable regular version of this method + ::grpc::Status RemoveTrack(::grpc::ServerContext* /*context*/, const ::daw::api::TrackIdRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + // replace default version of method with streamed unary + virtual ::grpc::Status StreamedRemoveTrack(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::daw::api::TrackIdRequest,::daw::api::StatusResponse>* server_unary_streamer) = 0; + }; + template + class WithStreamedUnaryMethod_SetTrackVolume : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithStreamedUnaryMethod_SetTrackVolume() { + ::grpc::Service::MarkMethodStreamed(2, + new ::grpc::internal::StreamedUnaryHandler< + ::daw::api::SetTrackVolumeRequest, ::daw::api::StatusResponse>( + [this](::grpc::ServerContext* context, + ::grpc::ServerUnaryStreamer< + ::daw::api::SetTrackVolumeRequest, ::daw::api::StatusResponse>* streamer) { + return this->StreamedSetTrackVolume(context, + streamer); + })); + } + ~WithStreamedUnaryMethod_SetTrackVolume() override { + BaseClassMustBeDerivedFromService(this); + } + // disable regular version of this method + ::grpc::Status SetTrackVolume(::grpc::ServerContext* /*context*/, const ::daw::api::SetTrackVolumeRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + // replace default version of method with streamed unary + virtual ::grpc::Status StreamedSetTrackVolume(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::daw::api::SetTrackVolumeRequest,::daw::api::StatusResponse>* server_unary_streamer) = 0; + }; + template + class WithStreamedUnaryMethod_SetTrackPan : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithStreamedUnaryMethod_SetTrackPan() { + ::grpc::Service::MarkMethodStreamed(3, + new ::grpc::internal::StreamedUnaryHandler< + ::daw::api::SetTrackPanRequest, ::daw::api::StatusResponse>( + [this](::grpc::ServerContext* context, + ::grpc::ServerUnaryStreamer< + ::daw::api::SetTrackPanRequest, ::daw::api::StatusResponse>* streamer) { + return this->StreamedSetTrackPan(context, + streamer); + })); + } + ~WithStreamedUnaryMethod_SetTrackPan() override { + BaseClassMustBeDerivedFromService(this); + } + // disable regular version of this method + ::grpc::Status SetTrackPan(::grpc::ServerContext* /*context*/, const ::daw::api::SetTrackPanRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + // replace default version of method with streamed unary + virtual ::grpc::Status StreamedSetTrackPan(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::daw::api::SetTrackPanRequest,::daw::api::StatusResponse>* server_unary_streamer) = 0; + }; + typedef WithStreamedUnaryMethod_AddTrack > > > StreamedUnaryService; + typedef Service SplitStreamedService; + typedef WithStreamedUnaryMethod_AddTrack > > > StreamedService; +}; + +class PluginService final { + public: + static constexpr char const* service_full_name() { + return "daw.api.PluginService"; + } + class StubInterface { + public: + virtual ~StubInterface() {} + virtual ::grpc::Status LoadPlugin(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest& request, ::daw::api::PluginInfo* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::PluginInfo>> AsyncLoadPlugin(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::PluginInfo>>(AsyncLoadPluginRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::PluginInfo>> PrepareAsyncLoadPlugin(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::PluginInfo>>(PrepareAsyncLoadPluginRaw(context, request, cq)); + } + virtual ::grpc::Status SetPluginParameter(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest& request, ::daw::api::StatusResponse* response) = 0; + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> AsyncSetPluginParameter(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(AsyncSetPluginParameterRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>> PrepareAsyncSetPluginParameter(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>>(PrepareAsyncSetPluginParameterRaw(context, request, cq)); + } + class async_interface { + public: + virtual ~async_interface() {} + virtual void LoadPlugin(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest* request, ::daw::api::PluginInfo* response, std::function) = 0; + virtual void LoadPlugin(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest* request, ::daw::api::PluginInfo* response, ::grpc::ClientUnaryReactor* reactor) = 0; + virtual void SetPluginParameter(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest* request, ::daw::api::StatusResponse* response, std::function) = 0; + virtual void SetPluginParameter(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) = 0; + }; + typedef class async_interface experimental_async_interface; + virtual class async_interface* async() { return nullptr; } + class async_interface* experimental_async() { return async(); } + private: + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::PluginInfo>* AsyncLoadPluginRaw(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::PluginInfo>* PrepareAsyncLoadPluginRaw(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* AsyncSetPluginParameterRaw(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest& request, ::grpc::CompletionQueue* cq) = 0; + virtual ::grpc::ClientAsyncResponseReaderInterface< ::daw::api::StatusResponse>* PrepareAsyncSetPluginParameterRaw(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest& request, ::grpc::CompletionQueue* cq) = 0; + }; + class Stub final : public StubInterface { + public: + Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions()); + ::grpc::Status LoadPlugin(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest& request, ::daw::api::PluginInfo* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::PluginInfo>> AsyncLoadPlugin(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::PluginInfo>>(AsyncLoadPluginRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::PluginInfo>> PrepareAsyncLoadPlugin(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::PluginInfo>>(PrepareAsyncLoadPluginRaw(context, request, cq)); + } + ::grpc::Status SetPluginParameter(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest& request, ::daw::api::StatusResponse* response) override; + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> AsyncSetPluginParameter(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(AsyncSetPluginParameterRaw(context, request, cq)); + } + std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>> PrepareAsyncSetPluginParameter(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest& request, ::grpc::CompletionQueue* cq) { + return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>>(PrepareAsyncSetPluginParameterRaw(context, request, cq)); + } + class async final : + public StubInterface::async_interface { + public: + void LoadPlugin(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest* request, ::daw::api::PluginInfo* response, std::function) override; + void LoadPlugin(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest* request, ::daw::api::PluginInfo* response, ::grpc::ClientUnaryReactor* reactor) override; + void SetPluginParameter(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest* request, ::daw::api::StatusResponse* response, std::function) override; + void SetPluginParameter(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest* request, ::daw::api::StatusResponse* response, ::grpc::ClientUnaryReactor* reactor) override; + private: + friend class Stub; + explicit async(Stub* stub): stub_(stub) { } + Stub* stub() { return stub_; } + Stub* stub_; + }; + class async* async() override { return &async_stub_; } + + private: + std::shared_ptr< ::grpc::ChannelInterface> channel_; + class async async_stub_{this}; + ::grpc::ClientAsyncResponseReader< ::daw::api::PluginInfo>* AsyncLoadPluginRaw(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::PluginInfo>* PrepareAsyncLoadPluginRaw(::grpc::ClientContext* context, const ::daw::api::LoadPluginRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* AsyncSetPluginParameterRaw(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest& request, ::grpc::CompletionQueue* cq) override; + ::grpc::ClientAsyncResponseReader< ::daw::api::StatusResponse>* PrepareAsyncSetPluginParameterRaw(::grpc::ClientContext* context, const ::daw::api::SetPluginParameterRequest& request, ::grpc::CompletionQueue* cq) override; + const ::grpc::internal::RpcMethod rpcmethod_LoadPlugin_; + const ::grpc::internal::RpcMethod rpcmethod_SetPluginParameter_; + }; + static std::unique_ptr NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions()); + + class Service : public ::grpc::Service { + public: + Service(); + virtual ~Service(); + virtual ::grpc::Status LoadPlugin(::grpc::ServerContext* context, const ::daw::api::LoadPluginRequest* request, ::daw::api::PluginInfo* response); + virtual ::grpc::Status SetPluginParameter(::grpc::ServerContext* context, const ::daw::api::SetPluginParameterRequest* request, ::daw::api::StatusResponse* response); + }; + template + class WithAsyncMethod_LoadPlugin : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithAsyncMethod_LoadPlugin() { + ::grpc::Service::MarkMethodAsync(0); + } + ~WithAsyncMethod_LoadPlugin() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status LoadPlugin(::grpc::ServerContext* /*context*/, const ::daw::api::LoadPluginRequest* /*request*/, ::daw::api::PluginInfo* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestLoadPlugin(::grpc::ServerContext* context, ::daw::api::LoadPluginRequest* request, ::grpc::ServerAsyncResponseWriter< ::daw::api::PluginInfo>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithAsyncMethod_SetPluginParameter : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithAsyncMethod_SetPluginParameter() { + ::grpc::Service::MarkMethodAsync(1); + } + ~WithAsyncMethod_SetPluginParameter() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetPluginParameter(::grpc::ServerContext* /*context*/, const ::daw::api::SetPluginParameterRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestSetPluginParameter(::grpc::ServerContext* context, ::daw::api::SetPluginParameterRequest* request, ::grpc::ServerAsyncResponseWriter< ::daw::api::StatusResponse>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(1, context, request, response, new_call_cq, notification_cq, tag); + } + }; + typedef WithAsyncMethod_LoadPlugin > AsyncService; + template + class WithCallbackMethod_LoadPlugin : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithCallbackMethod_LoadPlugin() { + ::grpc::Service::MarkMethodCallback(0, + new ::grpc::internal::CallbackUnaryHandler< ::daw::api::LoadPluginRequest, ::daw::api::PluginInfo>( + [this]( + ::grpc::CallbackServerContext* context, const ::daw::api::LoadPluginRequest* request, ::daw::api::PluginInfo* response) { return this->LoadPlugin(context, request, response); }));} + void SetMessageAllocatorFor_LoadPlugin( + ::grpc::MessageAllocator< ::daw::api::LoadPluginRequest, ::daw::api::PluginInfo>* allocator) { + ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(0); + static_cast<::grpc::internal::CallbackUnaryHandler< ::daw::api::LoadPluginRequest, ::daw::api::PluginInfo>*>(handler) + ->SetMessageAllocator(allocator); + } + ~WithCallbackMethod_LoadPlugin() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status LoadPlugin(::grpc::ServerContext* /*context*/, const ::daw::api::LoadPluginRequest* /*request*/, ::daw::api::PluginInfo* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* LoadPlugin( + ::grpc::CallbackServerContext* /*context*/, const ::daw::api::LoadPluginRequest* /*request*/, ::daw::api::PluginInfo* /*response*/) { return nullptr; } + }; + template + class WithCallbackMethod_SetPluginParameter : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithCallbackMethod_SetPluginParameter() { + ::grpc::Service::MarkMethodCallback(1, + new ::grpc::internal::CallbackUnaryHandler< ::daw::api::SetPluginParameterRequest, ::daw::api::StatusResponse>( + [this]( + ::grpc::CallbackServerContext* context, const ::daw::api::SetPluginParameterRequest* request, ::daw::api::StatusResponse* response) { return this->SetPluginParameter(context, request, response); }));} + void SetMessageAllocatorFor_SetPluginParameter( + ::grpc::MessageAllocator< ::daw::api::SetPluginParameterRequest, ::daw::api::StatusResponse>* allocator) { + ::grpc::internal::MethodHandler* const handler = ::grpc::Service::GetHandler(1); + static_cast<::grpc::internal::CallbackUnaryHandler< ::daw::api::SetPluginParameterRequest, ::daw::api::StatusResponse>*>(handler) + ->SetMessageAllocator(allocator); + } + ~WithCallbackMethod_SetPluginParameter() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetPluginParameter(::grpc::ServerContext* /*context*/, const ::daw::api::SetPluginParameterRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* SetPluginParameter( + ::grpc::CallbackServerContext* /*context*/, const ::daw::api::SetPluginParameterRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) { return nullptr; } + }; + typedef WithCallbackMethod_LoadPlugin > CallbackService; + typedef CallbackService ExperimentalCallbackService; + template + class WithGenericMethod_LoadPlugin : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithGenericMethod_LoadPlugin() { + ::grpc::Service::MarkMethodGeneric(0); + } + ~WithGenericMethod_LoadPlugin() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status LoadPlugin(::grpc::ServerContext* /*context*/, const ::daw::api::LoadPluginRequest* /*request*/, ::daw::api::PluginInfo* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + }; + template + class WithGenericMethod_SetPluginParameter : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithGenericMethod_SetPluginParameter() { + ::grpc::Service::MarkMethodGeneric(1); + } + ~WithGenericMethod_SetPluginParameter() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetPluginParameter(::grpc::ServerContext* /*context*/, const ::daw::api::SetPluginParameterRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + }; + template + class WithRawMethod_LoadPlugin : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawMethod_LoadPlugin() { + ::grpc::Service::MarkMethodRaw(0); + } + ~WithRawMethod_LoadPlugin() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status LoadPlugin(::grpc::ServerContext* /*context*/, const ::daw::api::LoadPluginRequest* /*request*/, ::daw::api::PluginInfo* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestLoadPlugin(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithRawMethod_SetPluginParameter : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawMethod_SetPluginParameter() { + ::grpc::Service::MarkMethodRaw(1); + } + ~WithRawMethod_SetPluginParameter() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetPluginParameter(::grpc::ServerContext* /*context*/, const ::daw::api::SetPluginParameterRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + void RequestSetPluginParameter(::grpc::ServerContext* context, ::grpc::ByteBuffer* request, ::grpc::ServerAsyncResponseWriter< ::grpc::ByteBuffer>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { + ::grpc::Service::RequestAsyncUnary(1, context, request, response, new_call_cq, notification_cq, tag); + } + }; + template + class WithRawCallbackMethod_LoadPlugin : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawCallbackMethod_LoadPlugin() { + ::grpc::Service::MarkMethodRawCallback(0, + new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( + [this]( + ::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->LoadPlugin(context, request, response); })); + } + ~WithRawCallbackMethod_LoadPlugin() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status LoadPlugin(::grpc::ServerContext* /*context*/, const ::daw::api::LoadPluginRequest* /*request*/, ::daw::api::PluginInfo* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* LoadPlugin( + ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; } + }; + template + class WithRawCallbackMethod_SetPluginParameter : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithRawCallbackMethod_SetPluginParameter() { + ::grpc::Service::MarkMethodRawCallback(1, + new ::grpc::internal::CallbackUnaryHandler< ::grpc::ByteBuffer, ::grpc::ByteBuffer>( + [this]( + ::grpc::CallbackServerContext* context, const ::grpc::ByteBuffer* request, ::grpc::ByteBuffer* response) { return this->SetPluginParameter(context, request, response); })); + } + ~WithRawCallbackMethod_SetPluginParameter() override { + BaseClassMustBeDerivedFromService(this); + } + // disable synchronous version of this method + ::grpc::Status SetPluginParameter(::grpc::ServerContext* /*context*/, const ::daw::api::SetPluginParameterRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + virtual ::grpc::ServerUnaryReactor* SetPluginParameter( + ::grpc::CallbackServerContext* /*context*/, const ::grpc::ByteBuffer* /*request*/, ::grpc::ByteBuffer* /*response*/) { return nullptr; } + }; + template + class WithStreamedUnaryMethod_LoadPlugin : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithStreamedUnaryMethod_LoadPlugin() { + ::grpc::Service::MarkMethodStreamed(0, + new ::grpc::internal::StreamedUnaryHandler< + ::daw::api::LoadPluginRequest, ::daw::api::PluginInfo>( + [this](::grpc::ServerContext* context, + ::grpc::ServerUnaryStreamer< + ::daw::api::LoadPluginRequest, ::daw::api::PluginInfo>* streamer) { + return this->StreamedLoadPlugin(context, + streamer); + })); + } + ~WithStreamedUnaryMethod_LoadPlugin() override { + BaseClassMustBeDerivedFromService(this); + } + // disable regular version of this method + ::grpc::Status LoadPlugin(::grpc::ServerContext* /*context*/, const ::daw::api::LoadPluginRequest* /*request*/, ::daw::api::PluginInfo* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + // replace default version of method with streamed unary + virtual ::grpc::Status StreamedLoadPlugin(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::daw::api::LoadPluginRequest,::daw::api::PluginInfo>* server_unary_streamer) = 0; + }; + template + class WithStreamedUnaryMethod_SetPluginParameter : public BaseClass { + private: + void BaseClassMustBeDerivedFromService(const Service* /*service*/) {} + public: + WithStreamedUnaryMethod_SetPluginParameter() { + ::grpc::Service::MarkMethodStreamed(1, + new ::grpc::internal::StreamedUnaryHandler< + ::daw::api::SetPluginParameterRequest, ::daw::api::StatusResponse>( + [this](::grpc::ServerContext* context, + ::grpc::ServerUnaryStreamer< + ::daw::api::SetPluginParameterRequest, ::daw::api::StatusResponse>* streamer) { + return this->StreamedSetPluginParameter(context, + streamer); + })); + } + ~WithStreamedUnaryMethod_SetPluginParameter() override { + BaseClassMustBeDerivedFromService(this); + } + // disable regular version of this method + ::grpc::Status SetPluginParameter(::grpc::ServerContext* /*context*/, const ::daw::api::SetPluginParameterRequest* /*request*/, ::daw::api::StatusResponse* /*response*/) override { + abort(); + return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); + } + // replace default version of method with streamed unary + virtual ::grpc::Status StreamedSetPluginParameter(::grpc::ServerContext* context, ::grpc::ServerUnaryStreamer< ::daw::api::SetPluginParameterRequest,::daw::api::StatusResponse>* server_unary_streamer) = 0; + }; + typedef WithStreamedUnaryMethod_LoadPlugin > StreamedUnaryService; + typedef Service SplitStreamedService; + typedef WithStreamedUnaryMethod_LoadPlugin > StreamedService; +}; + +} // namespace api +} // namespace daw + + +#include +#endif // GRPC_daw_5fapi_2eproto__INCLUDED diff --git a/src/backend/src/proto/daw_api.pb.cc b/src/backend/src/proto/daw_api.pb.cc new file mode 100644 index 0000000..1277fe3 --- /dev/null +++ b/src/backend/src/proto/daw_api.pb.cc @@ -0,0 +1,5972 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: daw_api.proto +// Protobuf C++ Version: 5.29.3 + +#include "daw_api.pb.h" + +#include +#include +#include "google/protobuf/io/coded_stream.h" +#include "google/protobuf/generated_message_tctable_impl.h" +#include "google/protobuf/extension_set.h" +#include "google/protobuf/generated_message_util.h" +#include "google/protobuf/wire_format_lite.h" +#include "google/protobuf/descriptor.h" +#include "google/protobuf/generated_message_reflection.h" +#include "google/protobuf/reflection_ops.h" +#include "google/protobuf/wire_format.h" +// @@protoc_insertion_point(includes) + +// Must be included last. +#include "google/protobuf/port_def.inc" +PROTOBUF_PRAGMA_INIT_SEG +namespace _pb = ::google::protobuf; +namespace _pbi = ::google::protobuf::internal; +namespace _fl = ::google::protobuf::internal::field_layout; +namespace daw { +namespace api { + +inline constexpr VUMeterUpdate::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : track_id_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + peak_dbfs_{0}, + rms_dbfs_{0}, + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR VUMeterUpdate::VUMeterUpdate(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct VUMeterUpdateDefaultTypeInternal { + PROTOBUF_CONSTEXPR VUMeterUpdateDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~VUMeterUpdateDefaultTypeInternal() {} + union { + VUMeterUpdate _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 VUMeterUpdateDefaultTypeInternal _VUMeterUpdate_default_instance_; + +inline constexpr TrackIdRequest::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : track_id_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR TrackIdRequest::TrackIdRequest(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct TrackIdRequestDefaultTypeInternal { + PROTOBUF_CONSTEXPR TrackIdRequestDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~TrackIdRequestDefaultTypeInternal() {} + union { + TrackIdRequest _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 TrackIdRequestDefaultTypeInternal _TrackIdRequest_default_instance_; + +inline constexpr StatusResponse::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : error_message_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + success_{false}, + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR StatusResponse::StatusResponse(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct StatusResponseDefaultTypeInternal { + PROTOBUF_CONSTEXPR StatusResponseDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~StatusResponseDefaultTypeInternal() {} + union { + StatusResponse _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 StatusResponseDefaultTypeInternal _StatusResponse_default_instance_; + +inline constexpr SetTrackVolumeRequest::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : track_id_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + volume_db_{0}, + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR SetTrackVolumeRequest::SetTrackVolumeRequest(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct SetTrackVolumeRequestDefaultTypeInternal { + PROTOBUF_CONSTEXPR SetTrackVolumeRequestDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~SetTrackVolumeRequestDefaultTypeInternal() {} + union { + SetTrackVolumeRequest _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SetTrackVolumeRequestDefaultTypeInternal _SetTrackVolumeRequest_default_instance_; + +inline constexpr SetTrackPanRequest::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : track_id_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + pan_{0}, + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR SetTrackPanRequest::SetTrackPanRequest(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct SetTrackPanRequestDefaultTypeInternal { + PROTOBUF_CONSTEXPR SetTrackPanRequestDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~SetTrackPanRequestDefaultTypeInternal() {} + union { + SetTrackPanRequest _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SetTrackPanRequestDefaultTypeInternal _SetTrackPanRequest_default_instance_; + +inline constexpr SetTempoRequest::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : bpm_{0}, + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR SetTempoRequest::SetTempoRequest(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct SetTempoRequestDefaultTypeInternal { + PROTOBUF_CONSTEXPR SetTempoRequestDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~SetTempoRequestDefaultTypeInternal() {} + union { + SetTempoRequest _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SetTempoRequestDefaultTypeInternal _SetTempoRequest_default_instance_; + +inline constexpr SetPluginParameterRequest::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : instance_id_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + value_{0}, + parameter_id_{0u}, + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR SetPluginParameterRequest::SetPluginParameterRequest(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct SetPluginParameterRequestDefaultTypeInternal { + PROTOBUF_CONSTEXPR SetPluginParameterRequestDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~SetPluginParameterRequestDefaultTypeInternal() {} + union { + SetPluginParameterRequest _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SetPluginParameterRequestDefaultTypeInternal _SetPluginParameterRequest_default_instance_; + +inline constexpr SaveProjectRequest::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : file_path_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR SaveProjectRequest::SaveProjectRequest(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct SaveProjectRequestDefaultTypeInternal { + PROTOBUF_CONSTEXPR SaveProjectRequestDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~SaveProjectRequestDefaultTypeInternal() {} + union { + SaveProjectRequest _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SaveProjectRequestDefaultTypeInternal _SaveProjectRequest_default_instance_; + +inline constexpr RealtimeCursorPosition::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : time_in_seconds_{0}, + absolute_ticks_{::int64_t{0}}, + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR RealtimeCursorPosition::RealtimeCursorPosition(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct RealtimeCursorPositionDefaultTypeInternal { + PROTOBUF_CONSTEXPR RealtimeCursorPositionDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~RealtimeCursorPositionDefaultTypeInternal() {} + union { + RealtimeCursorPosition _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RealtimeCursorPositionDefaultTypeInternal _RealtimeCursorPosition_default_instance_; + +inline constexpr PluginParameter::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : name_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + value_{0}, + parameter_id_{0u}, + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR PluginParameter::PluginParameter(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct PluginParameterDefaultTypeInternal { + PROTOBUF_CONSTEXPR PluginParameterDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~PluginParameterDefaultTypeInternal() {} + union { + PluginParameter _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PluginParameterDefaultTypeInternal _PluginParameter_default_instance_; + +inline constexpr PlaybackState::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : bar_{0}, + beat_{0}, + bpm_{0}, + tick_{0}, + is_playing_{false}, + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR PlaybackState::PlaybackState(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct PlaybackStateDefaultTypeInternal { + PROTOBUF_CONSTEXPR PlaybackStateDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~PlaybackStateDefaultTypeInternal() {} + union { + PlaybackState _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PlaybackStateDefaultTypeInternal _PlaybackState_default_instance_; + +inline constexpr LoadProjectRequest::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : file_path_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR LoadProjectRequest::LoadProjectRequest(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct LoadProjectRequestDefaultTypeInternal { + PROTOBUF_CONSTEXPR LoadProjectRequestDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~LoadProjectRequestDefaultTypeInternal() {} + union { + LoadProjectRequest _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 LoadProjectRequestDefaultTypeInternal _LoadProjectRequest_default_instance_; + +inline constexpr LoadPluginRequest::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : file_path_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR LoadPluginRequest::LoadPluginRequest(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct LoadPluginRequestDefaultTypeInternal { + PROTOBUF_CONSTEXPR LoadPluginRequestDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~LoadPluginRequestDefaultTypeInternal() {} + union { + LoadPluginRequest _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 LoadPluginRequestDefaultTypeInternal _LoadPluginRequest_default_instance_; + template +PROTOBUF_CONSTEXPR Empty::Empty(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::internal::ZeroFieldsBase(_class_data_.base()){} +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::internal::ZeroFieldsBase() { +} +#endif // PROTOBUF_CUSTOM_VTABLE +struct EmptyDefaultTypeInternal { + PROTOBUF_CONSTEXPR EmptyDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~EmptyDefaultTypeInternal() {} + union { + Empty _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 EmptyDefaultTypeInternal _Empty_default_instance_; + +inline constexpr AddTrackRequest::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : name_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + type_{static_cast< ::daw::api::TrackType >(0)}, + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR AddTrackRequest::AddTrackRequest(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct AddTrackRequestDefaultTypeInternal { + PROTOBUF_CONSTEXPR AddTrackRequestDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~AddTrackRequestDefaultTypeInternal() {} + union { + AddTrackRequest _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AddTrackRequestDefaultTypeInternal _AddTrackRequest_default_instance_; + +inline constexpr VUMeterData::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : updates_{}, + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR VUMeterData::VUMeterData(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct VUMeterDataDefaultTypeInternal { + PROTOBUF_CONSTEXPR VUMeterDataDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~VUMeterDataDefaultTypeInternal() {} + union { + VUMeterData _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 VUMeterDataDefaultTypeInternal _VUMeterData_default_instance_; + +inline constexpr PluginInfo::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : parameters_{}, + instance_id_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + name_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + is_bypassed_{false}, + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR PluginInfo::PluginInfo(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct PluginInfoDefaultTypeInternal { + PROTOBUF_CONSTEXPR PluginInfoDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~PluginInfoDefaultTypeInternal() {} + union { + PluginInfo _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PluginInfoDefaultTypeInternal _PluginInfo_default_instance_; + +inline constexpr TrackInfo::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : plugins_{}, + track_id_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + name_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + type_{static_cast< ::daw::api::TrackType >(0)}, + volume_db_{0}, + pan_{0}, + is_muted_{false}, + is_soloed_{false}, + _cached_size_{0} {} + +template +PROTOBUF_CONSTEXPR TrackInfo::TrackInfo(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct TrackInfoDefaultTypeInternal { + PROTOBUF_CONSTEXPR TrackInfoDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~TrackInfoDefaultTypeInternal() {} + union { + TrackInfo _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 TrackInfoDefaultTypeInternal _TrackInfo_default_instance_; + +inline constexpr ProjectState::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : _cached_size_{0}, + tracks_{}, + project_id_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + project_name_( + &::google::protobuf::internal::fixed_address_empty_string, + ::_pbi::ConstantInitialized()), + playback_state_{nullptr} {} + +template +PROTOBUF_CONSTEXPR ProjectState::ProjectState(::_pbi::ConstantInitialized) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(_class_data_.base()), +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(), +#endif // PROTOBUF_CUSTOM_VTABLE + _impl_(::_pbi::ConstantInitialized()) { +} +struct ProjectStateDefaultTypeInternal { + PROTOBUF_CONSTEXPR ProjectStateDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~ProjectStateDefaultTypeInternal() {} + union { + ProjectState _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ProjectStateDefaultTypeInternal _ProjectState_default_instance_; +} // namespace api +} // namespace daw +static const ::_pb::EnumDescriptor* file_level_enum_descriptors_daw_5fapi_2eproto[1]; +static constexpr const ::_pb::ServiceDescriptor** + file_level_service_descriptors_daw_5fapi_2eproto = nullptr; +const ::uint32_t + TableStruct_daw_5fapi_2eproto::offsets[] ABSL_ATTRIBUTE_SECTION_VARIABLE( + protodesc_cold) = { + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::Empty, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::StatusResponse, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::StatusResponse, _impl_.success_), + PROTOBUF_FIELD_OFFSET(::daw::api::StatusResponse, _impl_.error_message_), + PROTOBUF_FIELD_OFFSET(::daw::api::ProjectState, _impl_._has_bits_), + PROTOBUF_FIELD_OFFSET(::daw::api::ProjectState, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::ProjectState, _impl_.project_id_), + PROTOBUF_FIELD_OFFSET(::daw::api::ProjectState, _impl_.project_name_), + PROTOBUF_FIELD_OFFSET(::daw::api::ProjectState, _impl_.playback_state_), + PROTOBUF_FIELD_OFFSET(::daw::api::ProjectState, _impl_.tracks_), + ~0u, + ~0u, + 0, + ~0u, + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::LoadProjectRequest, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::LoadProjectRequest, _impl_.file_path_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::SaveProjectRequest, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::SaveProjectRequest, _impl_.file_path_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::PlaybackState, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::PlaybackState, _impl_.bar_), + PROTOBUF_FIELD_OFFSET(::daw::api::PlaybackState, _impl_.beat_), + PROTOBUF_FIELD_OFFSET(::daw::api::PlaybackState, _impl_.tick_), + PROTOBUF_FIELD_OFFSET(::daw::api::PlaybackState, _impl_.bpm_), + PROTOBUF_FIELD_OFFSET(::daw::api::PlaybackState, _impl_.is_playing_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::SetTempoRequest, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::SetTempoRequest, _impl_.bpm_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::TrackInfo, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::TrackInfo, _impl_.track_id_), + PROTOBUF_FIELD_OFFSET(::daw::api::TrackInfo, _impl_.name_), + PROTOBUF_FIELD_OFFSET(::daw::api::TrackInfo, _impl_.type_), + PROTOBUF_FIELD_OFFSET(::daw::api::TrackInfo, _impl_.volume_db_), + PROTOBUF_FIELD_OFFSET(::daw::api::TrackInfo, _impl_.pan_), + PROTOBUF_FIELD_OFFSET(::daw::api::TrackInfo, _impl_.is_muted_), + PROTOBUF_FIELD_OFFSET(::daw::api::TrackInfo, _impl_.is_soloed_), + PROTOBUF_FIELD_OFFSET(::daw::api::TrackInfo, _impl_.plugins_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::AddTrackRequest, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::AddTrackRequest, _impl_.name_), + PROTOBUF_FIELD_OFFSET(::daw::api::AddTrackRequest, _impl_.type_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::TrackIdRequest, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::TrackIdRequest, _impl_.track_id_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::SetTrackVolumeRequest, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::SetTrackVolumeRequest, _impl_.track_id_), + PROTOBUF_FIELD_OFFSET(::daw::api::SetTrackVolumeRequest, _impl_.volume_db_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::SetTrackPanRequest, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::SetTrackPanRequest, _impl_.track_id_), + PROTOBUF_FIELD_OFFSET(::daw::api::SetTrackPanRequest, _impl_.pan_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::PluginInfo, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::PluginInfo, _impl_.instance_id_), + PROTOBUF_FIELD_OFFSET(::daw::api::PluginInfo, _impl_.name_), + PROTOBUF_FIELD_OFFSET(::daw::api::PluginInfo, _impl_.is_bypassed_), + PROTOBUF_FIELD_OFFSET(::daw::api::PluginInfo, _impl_.parameters_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::PluginParameter, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::PluginParameter, _impl_.parameter_id_), + PROTOBUF_FIELD_OFFSET(::daw::api::PluginParameter, _impl_.name_), + PROTOBUF_FIELD_OFFSET(::daw::api::PluginParameter, _impl_.value_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::SetPluginParameterRequest, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::SetPluginParameterRequest, _impl_.instance_id_), + PROTOBUF_FIELD_OFFSET(::daw::api::SetPluginParameterRequest, _impl_.parameter_id_), + PROTOBUF_FIELD_OFFSET(::daw::api::SetPluginParameterRequest, _impl_.value_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::LoadPluginRequest, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::LoadPluginRequest, _impl_.file_path_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::VUMeterUpdate, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::VUMeterUpdate, _impl_.track_id_), + PROTOBUF_FIELD_OFFSET(::daw::api::VUMeterUpdate, _impl_.peak_dbfs_), + PROTOBUF_FIELD_OFFSET(::daw::api::VUMeterUpdate, _impl_.rms_dbfs_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::VUMeterData, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::VUMeterData, _impl_.updates_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::daw::api::RealtimeCursorPosition, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + PROTOBUF_FIELD_OFFSET(::daw::api::RealtimeCursorPosition, _impl_.time_in_seconds_), + PROTOBUF_FIELD_OFFSET(::daw::api::RealtimeCursorPosition, _impl_.absolute_ticks_), +}; + +static const ::_pbi::MigrationSchema + schemas[] ABSL_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = { + {0, -1, -1, sizeof(::daw::api::Empty)}, + {8, -1, -1, sizeof(::daw::api::StatusResponse)}, + {18, 30, -1, sizeof(::daw::api::ProjectState)}, + {34, -1, -1, sizeof(::daw::api::LoadProjectRequest)}, + {43, -1, -1, sizeof(::daw::api::SaveProjectRequest)}, + {52, -1, -1, sizeof(::daw::api::PlaybackState)}, + {65, -1, -1, sizeof(::daw::api::SetTempoRequest)}, + {74, -1, -1, sizeof(::daw::api::TrackInfo)}, + {90, -1, -1, sizeof(::daw::api::AddTrackRequest)}, + {100, -1, -1, sizeof(::daw::api::TrackIdRequest)}, + {109, -1, -1, sizeof(::daw::api::SetTrackVolumeRequest)}, + {119, -1, -1, sizeof(::daw::api::SetTrackPanRequest)}, + {129, -1, -1, sizeof(::daw::api::PluginInfo)}, + {141, -1, -1, sizeof(::daw::api::PluginParameter)}, + {152, -1, -1, sizeof(::daw::api::SetPluginParameterRequest)}, + {163, -1, -1, sizeof(::daw::api::LoadPluginRequest)}, + {172, -1, -1, sizeof(::daw::api::VUMeterUpdate)}, + {183, -1, -1, sizeof(::daw::api::VUMeterData)}, + {192, -1, -1, sizeof(::daw::api::RealtimeCursorPosition)}, +}; +static const ::_pb::Message* const file_default_instances[] = { + &::daw::api::_Empty_default_instance_._instance, + &::daw::api::_StatusResponse_default_instance_._instance, + &::daw::api::_ProjectState_default_instance_._instance, + &::daw::api::_LoadProjectRequest_default_instance_._instance, + &::daw::api::_SaveProjectRequest_default_instance_._instance, + &::daw::api::_PlaybackState_default_instance_._instance, + &::daw::api::_SetTempoRequest_default_instance_._instance, + &::daw::api::_TrackInfo_default_instance_._instance, + &::daw::api::_AddTrackRequest_default_instance_._instance, + &::daw::api::_TrackIdRequest_default_instance_._instance, + &::daw::api::_SetTrackVolumeRequest_default_instance_._instance, + &::daw::api::_SetTrackPanRequest_default_instance_._instance, + &::daw::api::_PluginInfo_default_instance_._instance, + &::daw::api::_PluginParameter_default_instance_._instance, + &::daw::api::_SetPluginParameterRequest_default_instance_._instance, + &::daw::api::_LoadPluginRequest_default_instance_._instance, + &::daw::api::_VUMeterUpdate_default_instance_._instance, + &::daw::api::_VUMeterData_default_instance_._instance, + &::daw::api::_RealtimeCursorPosition_default_instance_._instance, +}; +const char descriptor_table_protodef_daw_5fapi_2eproto[] ABSL_ATTRIBUTE_SECTION_VARIABLE( + protodesc_cold) = { + "\n\rdaw_api.proto\022\007daw.api\"\007\n\005Empty\"8\n\016Sta" + "tusResponse\022\017\n\007success\030\001 \001(\010\022\025\n\rerror_me" + "ssage\030\002 \001(\t\"\214\001\n\014ProjectState\022\022\n\nproject_" + "id\030\001 \001(\t\022\024\n\014project_name\030\002 \001(\t\022.\n\016playba" + "ck_state\030\003 \001(\0132\026.daw.api.PlaybackState\022\"" + "\n\006tracks\030\004 \003(\0132\022.daw.api.TrackInfo\"\'\n\022Lo" + "adProjectRequest\022\021\n\tfile_path\030\001 \001(\t\"\'\n\022S" + "aveProjectRequest\022\021\n\tfile_path\030\001 \001(\t\"Y\n\r" + "PlaybackState\022\013\n\003bar\030\001 \001(\005\022\014\n\004beat\030\002 \001(\005" + "\022\014\n\004tick\030\003 \001(\005\022\013\n\003bpm\030\004 \001(\001\022\022\n\nis_playin" + "g\030\006 \001(\010\"\036\n\017SetTempoRequest\022\013\n\003bpm\030\001 \001(\001\"" + "\270\001\n\tTrackInfo\022\020\n\010track_id\030\001 \001(\t\022\014\n\004name\030" + "\002 \001(\t\022 \n\004type\030\003 \001(\0162\022.daw.api.TrackType\022" + "\021\n\tvolume_db\030\005 \001(\002\022\013\n\003pan\030\006 \001(\002\022\020\n\010is_mu" + "ted\030\007 \001(\010\022\021\n\tis_soloed\030\010 \001(\010\022$\n\007plugins\030" + "\t \003(\0132\023.daw.api.PluginInfo\"A\n\017AddTrackRe" + "quest\022\014\n\004name\030\001 \001(\t\022 \n\004type\030\002 \001(\0162\022.daw." + "api.TrackType\"\"\n\016TrackIdRequest\022\020\n\010track" + "_id\030\001 \001(\t\"<\n\025SetTrackVolumeRequest\022\020\n\010tr" + "ack_id\030\001 \001(\t\022\021\n\tvolume_db\030\002 \001(\002\"3\n\022SetTr" + "ackPanRequest\022\020\n\010track_id\030\001 \001(\t\022\013\n\003pan\030\002" + " \001(\002\"r\n\nPluginInfo\022\023\n\013instance_id\030\001 \001(\t\022" + "\014\n\004name\030\002 \001(\t\022\023\n\013is_bypassed\030\004 \001(\010\022,\n\npa" + "rameters\030\005 \003(\0132\030.daw.api.PluginParameter" + "\"D\n\017PluginParameter\022\024\n\014parameter_id\030\001 \001(" + "\r\022\014\n\004name\030\002 \001(\t\022\r\n\005value\030\003 \001(\001\"U\n\031SetPlu" + "ginParameterRequest\022\023\n\013instance_id\030\001 \001(\t" + "\022\024\n\014parameter_id\030\002 \001(\r\022\r\n\005value\030\003 \001(\001\"&\n" + "\021LoadPluginRequest\022\021\n\tfile_path\030\001 \001(\t\"F\n" + "\rVUMeterUpdate\022\020\n\010track_id\030\001 \001(\t\022\021\n\tpeak" + "_dbfs\030\002 \001(\002\022\020\n\010rms_dbfs\030\003 \001(\002\"6\n\013VUMeter" + "Data\022\'\n\007updates\030\001 \003(\0132\026.daw.api.VUMeterU" + "pdate\"I\n\026RealtimeCursorPosition\022\027\n\017time_" + "in_seconds\030\001 \001(\001\022\026\n\016absolute_ticks\030\002 \001(\003" + "* \n\tTrackType\022\t\n\005AUDIO\020\000\022\010\n\004MIDI\020\0012\345\001\n\020T" + "ransportService\022/\n\004Play\022\016.daw.api.Empty\032" + "\027.daw.api.StatusResponse\0220\n\005Pause\022\016.daw." + "api.Empty\032\027.daw.api.StatusResponse\022/\n\004St" + "op\022\016.daw.api.Empty\032\027.daw.api.StatusRespo" + "nse\022=\n\010SetTempo\022\030.daw.api.SetTempoReques" + "t\032\027.daw.api.StatusResponse2\315\001\n\016ProjectSe" + "rvice\0223\n\nNewProject\022\016.daw.api.Empty\032\025.da" + "w.api.ProjectState\022A\n\013LoadProject\022\033.daw." + "api.LoadProjectRequest\032\025.daw.api.Project" + "State\022C\n\013SaveProject\022\033.daw.api.SaveProje" + "ctRequest\032\027.daw.api.StatusResponse2\231\002\n\014T" + "rackService\0228\n\010AddTrack\022\030.daw.api.AddTra" + "ckRequest\032\022.daw.api.TrackInfo\022\?\n\013RemoveT" + "rack\022\027.daw.api.TrackIdRequest\032\027.daw.api." + "StatusResponse\022I\n\016SetTrackVolume\022\036.daw.a" + "pi.SetTrackVolumeRequest\032\027.daw.api.Statu" + "sResponse\022C\n\013SetTrackPan\022\033.daw.api.SetTr" + "ackPanRequest\032\027.daw.api.StatusResponse2\241" + "\001\n\rPluginService\022=\n\nLoadPlugin\022\032.daw.api" + ".LoadPluginRequest\032\023.daw.api.PluginInfo\022" + "Q\n\022SetPluginParameter\022\".daw.api.SetPlugi" + "nParameterRequest\032\027.daw.api.StatusRespon" + "seb\006proto3" +}; +static ::absl::once_flag descriptor_table_daw_5fapi_2eproto_once; +PROTOBUF_CONSTINIT const ::_pbi::DescriptorTable descriptor_table_daw_5fapi_2eproto = { + false, + false, + 2290, + descriptor_table_protodef_daw_5fapi_2eproto, + "daw_api.proto", + &descriptor_table_daw_5fapi_2eproto_once, + nullptr, + 0, + 19, + schemas, + file_default_instances, + TableStruct_daw_5fapi_2eproto::offsets, + file_level_enum_descriptors_daw_5fapi_2eproto, + file_level_service_descriptors_daw_5fapi_2eproto, +}; +namespace daw { +namespace api { +const ::google::protobuf::EnumDescriptor* TrackType_descriptor() { + ::google::protobuf::internal::AssignDescriptors(&descriptor_table_daw_5fapi_2eproto); + return file_level_enum_descriptors_daw_5fapi_2eproto[0]; +} +PROTOBUF_CONSTINIT const uint32_t TrackType_internal_data_[] = { + 131072u, 0u, }; +bool TrackType_IsValid(int value) { + return 0 <= value && value <= 1; +} +// =================================================================== + +class Empty::_Internal { + public: +}; + +Empty::Empty(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::internal::ZeroFieldsBase(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::internal::ZeroFieldsBase(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(arena_constructor:daw.api.Empty) +} +Empty::Empty( + ::google::protobuf::Arena* arena, + const Empty& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::internal::ZeroFieldsBase(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::internal::ZeroFieldsBase(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + Empty* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + + // @@protoc_insertion_point(copy_constructor:daw.api.Empty) +} + +inline void* Empty::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) Empty(arena); +} +constexpr auto Empty::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(Empty), + alignof(Empty)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull Empty::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_Empty_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &Empty::MergeImpl, + ::google::protobuf::internal::ZeroFieldsBase::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &Empty::SharedDtor, + ::google::protobuf::internal::ZeroFieldsBase::GetClearImpl(), &Empty::ByteSizeLong, + &Empty::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(Empty, _impl_._cached_size_), + false, + }, + &Empty::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* Empty::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<0, 0, 0, 0, 2> Empty::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 0, 0, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967295, // skipmap + offsetof(decltype(_table_), field_names), // no field_entries + 0, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::Empty>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + {::_pbi::TcParser::MiniParse, {}}, + }}, {{ + 65535, 65535 + }}, + // no field_entries, or aux_entries + {{ + }}, +}; + + + + + + + + +::google::protobuf::Metadata Empty::GetMetadata() const { + return ::google::protobuf::internal::ZeroFieldsBase::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class StatusResponse::_Internal { + public: +}; + +StatusResponse::StatusResponse(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.StatusResponse) +} +inline PROTOBUF_NDEBUG_INLINE StatusResponse::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::StatusResponse& from_msg) + : error_message_(arena, from.error_message_), + _cached_size_{0} {} + +StatusResponse::StatusResponse( + ::google::protobuf::Arena* arena, + const StatusResponse& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + StatusResponse* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + _impl_.success_ = from._impl_.success_; + + // @@protoc_insertion_point(copy_constructor:daw.api.StatusResponse) +} +inline PROTOBUF_NDEBUG_INLINE StatusResponse::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : error_message_(arena), + _cached_size_{0} {} + +inline void StatusResponse::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); + _impl_.success_ = {}; +} +StatusResponse::~StatusResponse() { + // @@protoc_insertion_point(destructor:daw.api.StatusResponse) + SharedDtor(*this); +} +inline void StatusResponse::SharedDtor(MessageLite& self) { + StatusResponse& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.error_message_.Destroy(); + this_._impl_.~Impl_(); +} + +inline void* StatusResponse::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) StatusResponse(arena); +} +constexpr auto StatusResponse::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(StatusResponse), + alignof(StatusResponse)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull StatusResponse::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_StatusResponse_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &StatusResponse::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &StatusResponse::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &StatusResponse::ByteSizeLong, + &StatusResponse::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(StatusResponse, _impl_._cached_size_), + false, + }, + &StatusResponse::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* StatusResponse::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<1, 2, 0, 44, 2> StatusResponse::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 2, 8, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967292, // skipmap + offsetof(decltype(_table_), field_entries), + 2, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::StatusResponse>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + // string error_message = 2; + {::_pbi::TcParser::FastUS1, + {18, 63, 0, PROTOBUF_FIELD_OFFSET(StatusResponse, _impl_.error_message_)}}, + // bool success = 1; + {::_pbi::TcParser::SingularVarintNoZag1(), + {8, 63, 0, PROTOBUF_FIELD_OFFSET(StatusResponse, _impl_.success_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // bool success = 1; + {PROTOBUF_FIELD_OFFSET(StatusResponse, _impl_.success_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kBool)}, + // string error_message = 2; + {PROTOBUF_FIELD_OFFSET(StatusResponse, _impl_.error_message_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + }}, + // no aux_entries + {{ + "\26\0\15\0\0\0\0\0" + "daw.api.StatusResponse" + "error_message" + }}, +}; + +PROTOBUF_NOINLINE void StatusResponse::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.StatusResponse) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.error_message_.ClearToEmpty(); + _impl_.success_ = false; + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* StatusResponse::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const StatusResponse& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* StatusResponse::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const StatusResponse& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.StatusResponse) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // bool success = 1; + if (this_._internal_success() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteBoolToArray( + 1, this_._internal_success(), target); + } + + // string error_message = 2; + if (!this_._internal_error_message().empty()) { + const std::string& _s = this_._internal_error_message(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.StatusResponse.error_message"); + target = stream->WriteStringMaybeAliased(2, _s, target); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.StatusResponse) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t StatusResponse::ByteSizeLong(const MessageLite& base) { + const StatusResponse& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t StatusResponse::ByteSizeLong() const { + const StatusResponse& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.StatusResponse) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + ::_pbi::Prefetch5LinesFrom7Lines(&this_); + { + // string error_message = 2; + if (!this_._internal_error_message().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_error_message()); + } + // bool success = 1; + if (this_._internal_success() != 0) { + total_size += 2; + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void StatusResponse::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.StatusResponse) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_error_message().empty()) { + _this->_internal_set_error_message(from._internal_error_message()); + } + if (from._internal_success() != 0) { + _this->_impl_.success_ = from._impl_.success_; + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void StatusResponse::CopyFrom(const StatusResponse& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.StatusResponse) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void StatusResponse::InternalSwap(StatusResponse* PROTOBUF_RESTRICT other) { + using std::swap; + auto* arena = GetArena(); + ABSL_DCHECK_EQ(arena, other->GetArena()); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.error_message_, &other->_impl_.error_message_, arena); + swap(_impl_.success_, other->_impl_.success_); +} + +::google::protobuf::Metadata StatusResponse::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class ProjectState::_Internal { + public: + using HasBits = + decltype(std::declval()._impl_._has_bits_); + static constexpr ::int32_t kHasBitsOffset = + 8 * PROTOBUF_FIELD_OFFSET(ProjectState, _impl_._has_bits_); +}; + +ProjectState::ProjectState(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.ProjectState) +} +inline PROTOBUF_NDEBUG_INLINE ProjectState::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::ProjectState& from_msg) + : _has_bits_{from._has_bits_}, + _cached_size_{0}, + tracks_{visibility, arena, from.tracks_}, + project_id_(arena, from.project_id_), + project_name_(arena, from.project_name_) {} + +ProjectState::ProjectState( + ::google::protobuf::Arena* arena, + const ProjectState& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + ProjectState* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + ::uint32_t cached_has_bits = _impl_._has_bits_[0]; + _impl_.playback_state_ = (cached_has_bits & 0x00000001u) ? ::google::protobuf::Message::CopyConstruct<::daw::api::PlaybackState>( + arena, *from._impl_.playback_state_) + : nullptr; + + // @@protoc_insertion_point(copy_constructor:daw.api.ProjectState) +} +inline PROTOBUF_NDEBUG_INLINE ProjectState::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : _cached_size_{0}, + tracks_{visibility, arena}, + project_id_(arena), + project_name_(arena) {} + +inline void ProjectState::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); + _impl_.playback_state_ = {}; +} +ProjectState::~ProjectState() { + // @@protoc_insertion_point(destructor:daw.api.ProjectState) + SharedDtor(*this); +} +inline void ProjectState::SharedDtor(MessageLite& self) { + ProjectState& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.project_id_.Destroy(); + this_._impl_.project_name_.Destroy(); + delete this_._impl_.playback_state_; + this_._impl_.~Impl_(); +} + +inline void* ProjectState::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) ProjectState(arena); +} +constexpr auto ProjectState::InternalNewImpl_() { + constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({ + PROTOBUF_FIELD_OFFSET(ProjectState, _impl_.tracks_) + + decltype(ProjectState::_impl_.tracks_):: + InternalGetArenaOffset( + ::google::protobuf::Message::internal_visibility()), + }); + if (arena_bits.has_value()) { + return ::google::protobuf::internal::MessageCreator::CopyInit( + sizeof(ProjectState), alignof(ProjectState), *arena_bits); + } else { + return ::google::protobuf::internal::MessageCreator(&ProjectState::PlacementNew_, + sizeof(ProjectState), + alignof(ProjectState)); + } +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull ProjectState::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_ProjectState_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &ProjectState::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &ProjectState::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &ProjectState::ByteSizeLong, + &ProjectState::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(ProjectState, _impl_._cached_size_), + false, + }, + &ProjectState::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* ProjectState::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<2, 4, 2, 51, 2> ProjectState::_table_ = { + { + PROTOBUF_FIELD_OFFSET(ProjectState, _impl_._has_bits_), + 0, // no _extensions_ + 4, 24, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967280, // skipmap + offsetof(decltype(_table_), field_entries), + 4, // num_field_entries + 2, // num_aux_entries + offsetof(decltype(_table_), aux_entries), + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::ProjectState>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + // repeated .daw.api.TrackInfo tracks = 4; + {::_pbi::TcParser::FastMtR1, + {34, 63, 1, PROTOBUF_FIELD_OFFSET(ProjectState, _impl_.tracks_)}}, + // string project_id = 1; + {::_pbi::TcParser::FastUS1, + {10, 63, 0, PROTOBUF_FIELD_OFFSET(ProjectState, _impl_.project_id_)}}, + // string project_name = 2; + {::_pbi::TcParser::FastUS1, + {18, 63, 0, PROTOBUF_FIELD_OFFSET(ProjectState, _impl_.project_name_)}}, + // .daw.api.PlaybackState playback_state = 3; + {::_pbi::TcParser::FastMtS1, + {26, 0, 0, PROTOBUF_FIELD_OFFSET(ProjectState, _impl_.playback_state_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // string project_id = 1; + {PROTOBUF_FIELD_OFFSET(ProjectState, _impl_.project_id_), -1, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + // string project_name = 2; + {PROTOBUF_FIELD_OFFSET(ProjectState, _impl_.project_name_), -1, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + // .daw.api.PlaybackState playback_state = 3; + {PROTOBUF_FIELD_OFFSET(ProjectState, _impl_.playback_state_), _Internal::kHasBitsOffset + 0, 0, + (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)}, + // repeated .daw.api.TrackInfo tracks = 4; + {PROTOBUF_FIELD_OFFSET(ProjectState, _impl_.tracks_), -1, 1, + (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)}, + }}, {{ + {::_pbi::TcParser::GetTable<::daw::api::PlaybackState>()}, + {::_pbi::TcParser::GetTable<::daw::api::TrackInfo>()}, + }}, {{ + "\24\12\14\0\0\0\0\0" + "daw.api.ProjectState" + "project_id" + "project_name" + }}, +}; + +PROTOBUF_NOINLINE void ProjectState::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.ProjectState) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.tracks_.Clear(); + _impl_.project_id_.ClearToEmpty(); + _impl_.project_name_.ClearToEmpty(); + cached_has_bits = _impl_._has_bits_[0]; + if (cached_has_bits & 0x00000001u) { + ABSL_DCHECK(_impl_.playback_state_ != nullptr); + _impl_.playback_state_->Clear(); + } + _impl_._has_bits_.Clear(); + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* ProjectState::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const ProjectState& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* ProjectState::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const ProjectState& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.ProjectState) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // string project_id = 1; + if (!this_._internal_project_id().empty()) { + const std::string& _s = this_._internal_project_id(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.ProjectState.project_id"); + target = stream->WriteStringMaybeAliased(1, _s, target); + } + + // string project_name = 2; + if (!this_._internal_project_name().empty()) { + const std::string& _s = this_._internal_project_name(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.ProjectState.project_name"); + target = stream->WriteStringMaybeAliased(2, _s, target); + } + + cached_has_bits = this_._impl_._has_bits_[0]; + // .daw.api.PlaybackState playback_state = 3; + if (cached_has_bits & 0x00000001u) { + target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage( + 3, *this_._impl_.playback_state_, this_._impl_.playback_state_->GetCachedSize(), target, + stream); + } + + // repeated .daw.api.TrackInfo tracks = 4; + for (unsigned i = 0, n = static_cast( + this_._internal_tracks_size()); + i < n; i++) { + const auto& repfield = this_._internal_tracks().Get(i); + target = + ::google::protobuf::internal::WireFormatLite::InternalWriteMessage( + 4, repfield, repfield.GetCachedSize(), + target, stream); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.ProjectState) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t ProjectState::ByteSizeLong(const MessageLite& base) { + const ProjectState& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t ProjectState::ByteSizeLong() const { + const ProjectState& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.ProjectState) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + ::_pbi::Prefetch5LinesFrom7Lines(&this_); + { + // repeated .daw.api.TrackInfo tracks = 4; + { + total_size += 1UL * this_._internal_tracks_size(); + for (const auto& msg : this_._internal_tracks()) { + total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg); + } + } + } + { + // string project_id = 1; + if (!this_._internal_project_id().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_project_id()); + } + // string project_name = 2; + if (!this_._internal_project_name().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_project_name()); + } + } + { + // .daw.api.PlaybackState playback_state = 3; + cached_has_bits = this_._impl_._has_bits_[0]; + if (cached_has_bits & 0x00000001u) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.playback_state_); + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void ProjectState::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + ::google::protobuf::Arena* arena = _this->GetArena(); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.ProjectState) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + _this->_internal_mutable_tracks()->MergeFrom( + from._internal_tracks()); + if (!from._internal_project_id().empty()) { + _this->_internal_set_project_id(from._internal_project_id()); + } + if (!from._internal_project_name().empty()) { + _this->_internal_set_project_name(from._internal_project_name()); + } + cached_has_bits = from._impl_._has_bits_[0]; + if (cached_has_bits & 0x00000001u) { + ABSL_DCHECK(from._impl_.playback_state_ != nullptr); + if (_this->_impl_.playback_state_ == nullptr) { + _this->_impl_.playback_state_ = + ::google::protobuf::Message::CopyConstruct<::daw::api::PlaybackState>(arena, *from._impl_.playback_state_); + } else { + _this->_impl_.playback_state_->MergeFrom(*from._impl_.playback_state_); + } + } + _this->_impl_._has_bits_[0] |= cached_has_bits; + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void ProjectState::CopyFrom(const ProjectState& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.ProjectState) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void ProjectState::InternalSwap(ProjectState* PROTOBUF_RESTRICT other) { + using std::swap; + auto* arena = GetArena(); + ABSL_DCHECK_EQ(arena, other->GetArena()); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]); + _impl_.tracks_.InternalSwap(&other->_impl_.tracks_); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.project_id_, &other->_impl_.project_id_, arena); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.project_name_, &other->_impl_.project_name_, arena); + swap(_impl_.playback_state_, other->_impl_.playback_state_); +} + +::google::protobuf::Metadata ProjectState::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class LoadProjectRequest::_Internal { + public: +}; + +LoadProjectRequest::LoadProjectRequest(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.LoadProjectRequest) +} +inline PROTOBUF_NDEBUG_INLINE LoadProjectRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::LoadProjectRequest& from_msg) + : file_path_(arena, from.file_path_), + _cached_size_{0} {} + +LoadProjectRequest::LoadProjectRequest( + ::google::protobuf::Arena* arena, + const LoadProjectRequest& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + LoadProjectRequest* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + + // @@protoc_insertion_point(copy_constructor:daw.api.LoadProjectRequest) +} +inline PROTOBUF_NDEBUG_INLINE LoadProjectRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : file_path_(arena), + _cached_size_{0} {} + +inline void LoadProjectRequest::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); +} +LoadProjectRequest::~LoadProjectRequest() { + // @@protoc_insertion_point(destructor:daw.api.LoadProjectRequest) + SharedDtor(*this); +} +inline void LoadProjectRequest::SharedDtor(MessageLite& self) { + LoadProjectRequest& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.file_path_.Destroy(); + this_._impl_.~Impl_(); +} + +inline void* LoadProjectRequest::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) LoadProjectRequest(arena); +} +constexpr auto LoadProjectRequest::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(LoadProjectRequest), + alignof(LoadProjectRequest)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull LoadProjectRequest::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_LoadProjectRequest_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &LoadProjectRequest::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &LoadProjectRequest::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &LoadProjectRequest::ByteSizeLong, + &LoadProjectRequest::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(LoadProjectRequest, _impl_._cached_size_), + false, + }, + &LoadProjectRequest::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* LoadProjectRequest::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<0, 1, 0, 44, 2> LoadProjectRequest::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 1, 0, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967294, // skipmap + offsetof(decltype(_table_), field_entries), + 1, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::LoadProjectRequest>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + // string file_path = 1; + {::_pbi::TcParser::FastUS1, + {10, 63, 0, PROTOBUF_FIELD_OFFSET(LoadProjectRequest, _impl_.file_path_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // string file_path = 1; + {PROTOBUF_FIELD_OFFSET(LoadProjectRequest, _impl_.file_path_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + }}, + // no aux_entries + {{ + "\32\11\0\0\0\0\0\0" + "daw.api.LoadProjectRequest" + "file_path" + }}, +}; + +PROTOBUF_NOINLINE void LoadProjectRequest::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.LoadProjectRequest) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.file_path_.ClearToEmpty(); + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* LoadProjectRequest::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const LoadProjectRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* LoadProjectRequest::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const LoadProjectRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.LoadProjectRequest) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // string file_path = 1; + if (!this_._internal_file_path().empty()) { + const std::string& _s = this_._internal_file_path(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.LoadProjectRequest.file_path"); + target = stream->WriteStringMaybeAliased(1, _s, target); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.LoadProjectRequest) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t LoadProjectRequest::ByteSizeLong(const MessageLite& base) { + const LoadProjectRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t LoadProjectRequest::ByteSizeLong() const { + const LoadProjectRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.LoadProjectRequest) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + { + // string file_path = 1; + if (!this_._internal_file_path().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_file_path()); + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void LoadProjectRequest::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.LoadProjectRequest) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_file_path().empty()) { + _this->_internal_set_file_path(from._internal_file_path()); + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void LoadProjectRequest::CopyFrom(const LoadProjectRequest& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.LoadProjectRequest) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void LoadProjectRequest::InternalSwap(LoadProjectRequest* PROTOBUF_RESTRICT other) { + using std::swap; + auto* arena = GetArena(); + ABSL_DCHECK_EQ(arena, other->GetArena()); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.file_path_, &other->_impl_.file_path_, arena); +} + +::google::protobuf::Metadata LoadProjectRequest::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class SaveProjectRequest::_Internal { + public: +}; + +SaveProjectRequest::SaveProjectRequest(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.SaveProjectRequest) +} +inline PROTOBUF_NDEBUG_INLINE SaveProjectRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::SaveProjectRequest& from_msg) + : file_path_(arena, from.file_path_), + _cached_size_{0} {} + +SaveProjectRequest::SaveProjectRequest( + ::google::protobuf::Arena* arena, + const SaveProjectRequest& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SaveProjectRequest* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + + // @@protoc_insertion_point(copy_constructor:daw.api.SaveProjectRequest) +} +inline PROTOBUF_NDEBUG_INLINE SaveProjectRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : file_path_(arena), + _cached_size_{0} {} + +inline void SaveProjectRequest::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); +} +SaveProjectRequest::~SaveProjectRequest() { + // @@protoc_insertion_point(destructor:daw.api.SaveProjectRequest) + SharedDtor(*this); +} +inline void SaveProjectRequest::SharedDtor(MessageLite& self) { + SaveProjectRequest& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.file_path_.Destroy(); + this_._impl_.~Impl_(); +} + +inline void* SaveProjectRequest::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) SaveProjectRequest(arena); +} +constexpr auto SaveProjectRequest::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(SaveProjectRequest), + alignof(SaveProjectRequest)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull SaveProjectRequest::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_SaveProjectRequest_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &SaveProjectRequest::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &SaveProjectRequest::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &SaveProjectRequest::ByteSizeLong, + &SaveProjectRequest::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(SaveProjectRequest, _impl_._cached_size_), + false, + }, + &SaveProjectRequest::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* SaveProjectRequest::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<0, 1, 0, 44, 2> SaveProjectRequest::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 1, 0, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967294, // skipmap + offsetof(decltype(_table_), field_entries), + 1, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::SaveProjectRequest>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + // string file_path = 1; + {::_pbi::TcParser::FastUS1, + {10, 63, 0, PROTOBUF_FIELD_OFFSET(SaveProjectRequest, _impl_.file_path_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // string file_path = 1; + {PROTOBUF_FIELD_OFFSET(SaveProjectRequest, _impl_.file_path_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + }}, + // no aux_entries + {{ + "\32\11\0\0\0\0\0\0" + "daw.api.SaveProjectRequest" + "file_path" + }}, +}; + +PROTOBUF_NOINLINE void SaveProjectRequest::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.SaveProjectRequest) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.file_path_.ClearToEmpty(); + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* SaveProjectRequest::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const SaveProjectRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* SaveProjectRequest::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const SaveProjectRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.SaveProjectRequest) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // string file_path = 1; + if (!this_._internal_file_path().empty()) { + const std::string& _s = this_._internal_file_path(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.SaveProjectRequest.file_path"); + target = stream->WriteStringMaybeAliased(1, _s, target); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.SaveProjectRequest) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t SaveProjectRequest::ByteSizeLong(const MessageLite& base) { + const SaveProjectRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t SaveProjectRequest::ByteSizeLong() const { + const SaveProjectRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.SaveProjectRequest) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + { + // string file_path = 1; + if (!this_._internal_file_path().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_file_path()); + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void SaveProjectRequest::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.SaveProjectRequest) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_file_path().empty()) { + _this->_internal_set_file_path(from._internal_file_path()); + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void SaveProjectRequest::CopyFrom(const SaveProjectRequest& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.SaveProjectRequest) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void SaveProjectRequest::InternalSwap(SaveProjectRequest* PROTOBUF_RESTRICT other) { + using std::swap; + auto* arena = GetArena(); + ABSL_DCHECK_EQ(arena, other->GetArena()); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.file_path_, &other->_impl_.file_path_, arena); +} + +::google::protobuf::Metadata SaveProjectRequest::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class PlaybackState::_Internal { + public: +}; + +PlaybackState::PlaybackState(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.PlaybackState) +} +PlaybackState::PlaybackState( + ::google::protobuf::Arena* arena, const PlaybackState& from) + : PlaybackState(arena) { + MergeFrom(from); +} +inline PROTOBUF_NDEBUG_INLINE PlaybackState::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : _cached_size_{0} {} + +inline void PlaybackState::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); + ::memset(reinterpret_cast(&_impl_) + + offsetof(Impl_, bar_), + 0, + offsetof(Impl_, is_playing_) - + offsetof(Impl_, bar_) + + sizeof(Impl_::is_playing_)); +} +PlaybackState::~PlaybackState() { + // @@protoc_insertion_point(destructor:daw.api.PlaybackState) + SharedDtor(*this); +} +inline void PlaybackState::SharedDtor(MessageLite& self) { + PlaybackState& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.~Impl_(); +} + +inline void* PlaybackState::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) PlaybackState(arena); +} +constexpr auto PlaybackState::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(PlaybackState), + alignof(PlaybackState)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull PlaybackState::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_PlaybackState_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &PlaybackState::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &PlaybackState::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &PlaybackState::ByteSizeLong, + &PlaybackState::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(PlaybackState, _impl_._cached_size_), + false, + }, + &PlaybackState::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* PlaybackState::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<3, 5, 0, 0, 2> PlaybackState::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 6, 56, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967248, // skipmap + offsetof(decltype(_table_), field_entries), + 5, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::PlaybackState>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + {::_pbi::TcParser::MiniParse, {}}, + // int32 bar = 1; + {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(PlaybackState, _impl_.bar_), 63>(), + {8, 63, 0, PROTOBUF_FIELD_OFFSET(PlaybackState, _impl_.bar_)}}, + // int32 beat = 2; + {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(PlaybackState, _impl_.beat_), 63>(), + {16, 63, 0, PROTOBUF_FIELD_OFFSET(PlaybackState, _impl_.beat_)}}, + // int32 tick = 3; + {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(PlaybackState, _impl_.tick_), 63>(), + {24, 63, 0, PROTOBUF_FIELD_OFFSET(PlaybackState, _impl_.tick_)}}, + // double bpm = 4; + {::_pbi::TcParser::FastF64S1, + {33, 63, 0, PROTOBUF_FIELD_OFFSET(PlaybackState, _impl_.bpm_)}}, + {::_pbi::TcParser::MiniParse, {}}, + // bool is_playing = 6; + {::_pbi::TcParser::SingularVarintNoZag1(), + {48, 63, 0, PROTOBUF_FIELD_OFFSET(PlaybackState, _impl_.is_playing_)}}, + {::_pbi::TcParser::MiniParse, {}}, + }}, {{ + 65535, 65535 + }}, {{ + // int32 bar = 1; + {PROTOBUF_FIELD_OFFSET(PlaybackState, _impl_.bar_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kInt32)}, + // int32 beat = 2; + {PROTOBUF_FIELD_OFFSET(PlaybackState, _impl_.beat_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kInt32)}, + // int32 tick = 3; + {PROTOBUF_FIELD_OFFSET(PlaybackState, _impl_.tick_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kInt32)}, + // double bpm = 4; + {PROTOBUF_FIELD_OFFSET(PlaybackState, _impl_.bpm_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kDouble)}, + // bool is_playing = 6; + {PROTOBUF_FIELD_OFFSET(PlaybackState, _impl_.is_playing_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kBool)}, + }}, + // no aux_entries + {{ + }}, +}; + +PROTOBUF_NOINLINE void PlaybackState::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.PlaybackState) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + ::memset(&_impl_.bar_, 0, static_cast<::size_t>( + reinterpret_cast(&_impl_.is_playing_) - + reinterpret_cast(&_impl_.bar_)) + sizeof(_impl_.is_playing_)); + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* PlaybackState::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const PlaybackState& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* PlaybackState::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const PlaybackState& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.PlaybackState) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // int32 bar = 1; + if (this_._internal_bar() != 0) { + target = ::google::protobuf::internal::WireFormatLite:: + WriteInt32ToArrayWithField<1>( + stream, this_._internal_bar(), target); + } + + // int32 beat = 2; + if (this_._internal_beat() != 0) { + target = ::google::protobuf::internal::WireFormatLite:: + WriteInt32ToArrayWithField<2>( + stream, this_._internal_beat(), target); + } + + // int32 tick = 3; + if (this_._internal_tick() != 0) { + target = ::google::protobuf::internal::WireFormatLite:: + WriteInt32ToArrayWithField<3>( + stream, this_._internal_tick(), target); + } + + // double bpm = 4; + if (::absl::bit_cast<::uint64_t>(this_._internal_bpm()) != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteDoubleToArray( + 4, this_._internal_bpm(), target); + } + + // bool is_playing = 6; + if (this_._internal_is_playing() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteBoolToArray( + 6, this_._internal_is_playing(), target); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.PlaybackState) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t PlaybackState::ByteSizeLong(const MessageLite& base) { + const PlaybackState& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t PlaybackState::ByteSizeLong() const { + const PlaybackState& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.PlaybackState) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + ::_pbi::Prefetch5LinesFrom7Lines(&this_); + { + // int32 bar = 1; + if (this_._internal_bar() != 0) { + total_size += ::_pbi::WireFormatLite::Int32SizePlusOne( + this_._internal_bar()); + } + // int32 beat = 2; + if (this_._internal_beat() != 0) { + total_size += ::_pbi::WireFormatLite::Int32SizePlusOne( + this_._internal_beat()); + } + // double bpm = 4; + if (::absl::bit_cast<::uint64_t>(this_._internal_bpm()) != 0) { + total_size += 9; + } + // int32 tick = 3; + if (this_._internal_tick() != 0) { + total_size += ::_pbi::WireFormatLite::Int32SizePlusOne( + this_._internal_tick()); + } + // bool is_playing = 6; + if (this_._internal_is_playing() != 0) { + total_size += 2; + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void PlaybackState::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.PlaybackState) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (from._internal_bar() != 0) { + _this->_impl_.bar_ = from._impl_.bar_; + } + if (from._internal_beat() != 0) { + _this->_impl_.beat_ = from._impl_.beat_; + } + if (::absl::bit_cast<::uint64_t>(from._internal_bpm()) != 0) { + _this->_impl_.bpm_ = from._impl_.bpm_; + } + if (from._internal_tick() != 0) { + _this->_impl_.tick_ = from._impl_.tick_; + } + if (from._internal_is_playing() != 0) { + _this->_impl_.is_playing_ = from._impl_.is_playing_; + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void PlaybackState::CopyFrom(const PlaybackState& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.PlaybackState) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void PlaybackState::InternalSwap(PlaybackState* PROTOBUF_RESTRICT other) { + using std::swap; + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::google::protobuf::internal::memswap< + PROTOBUF_FIELD_OFFSET(PlaybackState, _impl_.is_playing_) + + sizeof(PlaybackState::_impl_.is_playing_) + - PROTOBUF_FIELD_OFFSET(PlaybackState, _impl_.bar_)>( + reinterpret_cast(&_impl_.bar_), + reinterpret_cast(&other->_impl_.bar_)); +} + +::google::protobuf::Metadata PlaybackState::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class SetTempoRequest::_Internal { + public: +}; + +SetTempoRequest::SetTempoRequest(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.SetTempoRequest) +} +SetTempoRequest::SetTempoRequest( + ::google::protobuf::Arena* arena, const SetTempoRequest& from) + : SetTempoRequest(arena) { + MergeFrom(from); +} +inline PROTOBUF_NDEBUG_INLINE SetTempoRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : _cached_size_{0} {} + +inline void SetTempoRequest::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); + _impl_.bpm_ = {}; +} +SetTempoRequest::~SetTempoRequest() { + // @@protoc_insertion_point(destructor:daw.api.SetTempoRequest) + SharedDtor(*this); +} +inline void SetTempoRequest::SharedDtor(MessageLite& self) { + SetTempoRequest& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.~Impl_(); +} + +inline void* SetTempoRequest::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) SetTempoRequest(arena); +} +constexpr auto SetTempoRequest::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(SetTempoRequest), + alignof(SetTempoRequest)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull SetTempoRequest::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_SetTempoRequest_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &SetTempoRequest::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &SetTempoRequest::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &SetTempoRequest::ByteSizeLong, + &SetTempoRequest::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(SetTempoRequest, _impl_._cached_size_), + false, + }, + &SetTempoRequest::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* SetTempoRequest::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<0, 1, 0, 0, 2> SetTempoRequest::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 1, 0, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967294, // skipmap + offsetof(decltype(_table_), field_entries), + 1, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::SetTempoRequest>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + // double bpm = 1; + {::_pbi::TcParser::FastF64S1, + {9, 63, 0, PROTOBUF_FIELD_OFFSET(SetTempoRequest, _impl_.bpm_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // double bpm = 1; + {PROTOBUF_FIELD_OFFSET(SetTempoRequest, _impl_.bpm_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kDouble)}, + }}, + // no aux_entries + {{ + }}, +}; + +PROTOBUF_NOINLINE void SetTempoRequest::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.SetTempoRequest) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.bpm_ = 0; + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* SetTempoRequest::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const SetTempoRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* SetTempoRequest::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const SetTempoRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.SetTempoRequest) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // double bpm = 1; + if (::absl::bit_cast<::uint64_t>(this_._internal_bpm()) != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteDoubleToArray( + 1, this_._internal_bpm(), target); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.SetTempoRequest) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t SetTempoRequest::ByteSizeLong(const MessageLite& base) { + const SetTempoRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t SetTempoRequest::ByteSizeLong() const { + const SetTempoRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.SetTempoRequest) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + { + // double bpm = 1; + if (::absl::bit_cast<::uint64_t>(this_._internal_bpm()) != 0) { + total_size += 9; + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void SetTempoRequest::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.SetTempoRequest) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (::absl::bit_cast<::uint64_t>(from._internal_bpm()) != 0) { + _this->_impl_.bpm_ = from._impl_.bpm_; + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void SetTempoRequest::CopyFrom(const SetTempoRequest& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.SetTempoRequest) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void SetTempoRequest::InternalSwap(SetTempoRequest* PROTOBUF_RESTRICT other) { + using std::swap; + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + swap(_impl_.bpm_, other->_impl_.bpm_); +} + +::google::protobuf::Metadata SetTempoRequest::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class TrackInfo::_Internal { + public: +}; + +TrackInfo::TrackInfo(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.TrackInfo) +} +inline PROTOBUF_NDEBUG_INLINE TrackInfo::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::TrackInfo& from_msg) + : plugins_{visibility, arena, from.plugins_}, + track_id_(arena, from.track_id_), + name_(arena, from.name_), + _cached_size_{0} {} + +TrackInfo::TrackInfo( + ::google::protobuf::Arena* arena, + const TrackInfo& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + TrackInfo* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + ::memcpy(reinterpret_cast(&_impl_) + + offsetof(Impl_, type_), + reinterpret_cast(&from._impl_) + + offsetof(Impl_, type_), + offsetof(Impl_, is_soloed_) - + offsetof(Impl_, type_) + + sizeof(Impl_::is_soloed_)); + + // @@protoc_insertion_point(copy_constructor:daw.api.TrackInfo) +} +inline PROTOBUF_NDEBUG_INLINE TrackInfo::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : plugins_{visibility, arena}, + track_id_(arena), + name_(arena), + _cached_size_{0} {} + +inline void TrackInfo::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); + ::memset(reinterpret_cast(&_impl_) + + offsetof(Impl_, type_), + 0, + offsetof(Impl_, is_soloed_) - + offsetof(Impl_, type_) + + sizeof(Impl_::is_soloed_)); +} +TrackInfo::~TrackInfo() { + // @@protoc_insertion_point(destructor:daw.api.TrackInfo) + SharedDtor(*this); +} +inline void TrackInfo::SharedDtor(MessageLite& self) { + TrackInfo& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.track_id_.Destroy(); + this_._impl_.name_.Destroy(); + this_._impl_.~Impl_(); +} + +inline void* TrackInfo::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) TrackInfo(arena); +} +constexpr auto TrackInfo::InternalNewImpl_() { + constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({ + PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.plugins_) + + decltype(TrackInfo::_impl_.plugins_):: + InternalGetArenaOffset( + ::google::protobuf::Message::internal_visibility()), + }); + if (arena_bits.has_value()) { + return ::google::protobuf::internal::MessageCreator::CopyInit( + sizeof(TrackInfo), alignof(TrackInfo), *arena_bits); + } else { + return ::google::protobuf::internal::MessageCreator(&TrackInfo::PlacementNew_, + sizeof(TrackInfo), + alignof(TrackInfo)); + } +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull TrackInfo::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_TrackInfo_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &TrackInfo::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &TrackInfo::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &TrackInfo::ByteSizeLong, + &TrackInfo::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_._cached_size_), + false, + }, + &TrackInfo::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* TrackInfo::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<4, 8, 1, 46, 2> TrackInfo::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 9, 120, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294966792, // skipmap + offsetof(decltype(_table_), field_entries), + 8, // num_field_entries + 1, // num_aux_entries + offsetof(decltype(_table_), aux_entries), + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::TrackInfo>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + {::_pbi::TcParser::MiniParse, {}}, + // string track_id = 1; + {::_pbi::TcParser::FastUS1, + {10, 63, 0, PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.track_id_)}}, + // string name = 2; + {::_pbi::TcParser::FastUS1, + {18, 63, 0, PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.name_)}}, + // .daw.api.TrackType type = 3; + {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(TrackInfo, _impl_.type_), 63>(), + {24, 63, 0, PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.type_)}}, + {::_pbi::TcParser::MiniParse, {}}, + // float volume_db = 5; + {::_pbi::TcParser::FastF32S1, + {45, 63, 0, PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.volume_db_)}}, + // float pan = 6; + {::_pbi::TcParser::FastF32S1, + {53, 63, 0, PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.pan_)}}, + // bool is_muted = 7; + {::_pbi::TcParser::SingularVarintNoZag1(), + {56, 63, 0, PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.is_muted_)}}, + // bool is_soloed = 8; + {::_pbi::TcParser::SingularVarintNoZag1(), + {64, 63, 0, PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.is_soloed_)}}, + // repeated .daw.api.PluginInfo plugins = 9; + {::_pbi::TcParser::FastMtR1, + {74, 63, 0, PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.plugins_)}}, + {::_pbi::TcParser::MiniParse, {}}, + {::_pbi::TcParser::MiniParse, {}}, + {::_pbi::TcParser::MiniParse, {}}, + {::_pbi::TcParser::MiniParse, {}}, + {::_pbi::TcParser::MiniParse, {}}, + {::_pbi::TcParser::MiniParse, {}}, + }}, {{ + 65535, 65535 + }}, {{ + // string track_id = 1; + {PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.track_id_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + // string name = 2; + {PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.name_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + // .daw.api.TrackType type = 3; + {PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.type_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kOpenEnum)}, + // float volume_db = 5; + {PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.volume_db_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kFloat)}, + // float pan = 6; + {PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.pan_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kFloat)}, + // bool is_muted = 7; + {PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.is_muted_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kBool)}, + // bool is_soloed = 8; + {PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.is_soloed_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kBool)}, + // repeated .daw.api.PluginInfo plugins = 9; + {PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.plugins_), 0, 0, + (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)}, + }}, {{ + {::_pbi::TcParser::GetTable<::daw::api::PluginInfo>()}, + }}, {{ + "\21\10\4\0\0\0\0\0\0\0\0\0\0\0\0\0" + "daw.api.TrackInfo" + "track_id" + "name" + }}, +}; + +PROTOBUF_NOINLINE void TrackInfo::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.TrackInfo) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.plugins_.Clear(); + _impl_.track_id_.ClearToEmpty(); + _impl_.name_.ClearToEmpty(); + ::memset(&_impl_.type_, 0, static_cast<::size_t>( + reinterpret_cast(&_impl_.is_soloed_) - + reinterpret_cast(&_impl_.type_)) + sizeof(_impl_.is_soloed_)); + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* TrackInfo::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const TrackInfo& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* TrackInfo::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const TrackInfo& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.TrackInfo) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // string track_id = 1; + if (!this_._internal_track_id().empty()) { + const std::string& _s = this_._internal_track_id(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.TrackInfo.track_id"); + target = stream->WriteStringMaybeAliased(1, _s, target); + } + + // string name = 2; + if (!this_._internal_name().empty()) { + const std::string& _s = this_._internal_name(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.TrackInfo.name"); + target = stream->WriteStringMaybeAliased(2, _s, target); + } + + // .daw.api.TrackType type = 3; + if (this_._internal_type() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 3, this_._internal_type(), target); + } + + // float volume_db = 5; + if (::absl::bit_cast<::uint32_t>(this_._internal_volume_db()) != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray( + 5, this_._internal_volume_db(), target); + } + + // float pan = 6; + if (::absl::bit_cast<::uint32_t>(this_._internal_pan()) != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray( + 6, this_._internal_pan(), target); + } + + // bool is_muted = 7; + if (this_._internal_is_muted() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteBoolToArray( + 7, this_._internal_is_muted(), target); + } + + // bool is_soloed = 8; + if (this_._internal_is_soloed() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteBoolToArray( + 8, this_._internal_is_soloed(), target); + } + + // repeated .daw.api.PluginInfo plugins = 9; + for (unsigned i = 0, n = static_cast( + this_._internal_plugins_size()); + i < n; i++) { + const auto& repfield = this_._internal_plugins().Get(i); + target = + ::google::protobuf::internal::WireFormatLite::InternalWriteMessage( + 9, repfield, repfield.GetCachedSize(), + target, stream); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.TrackInfo) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t TrackInfo::ByteSizeLong(const MessageLite& base) { + const TrackInfo& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t TrackInfo::ByteSizeLong() const { + const TrackInfo& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.TrackInfo) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + ::_pbi::Prefetch5LinesFrom7Lines(&this_); + { + // repeated .daw.api.PluginInfo plugins = 9; + { + total_size += 1UL * this_._internal_plugins_size(); + for (const auto& msg : this_._internal_plugins()) { + total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg); + } + } + } + { + // string track_id = 1; + if (!this_._internal_track_id().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_track_id()); + } + // string name = 2; + if (!this_._internal_name().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_name()); + } + // .daw.api.TrackType type = 3; + if (this_._internal_type() != 0) { + total_size += 1 + + ::_pbi::WireFormatLite::EnumSize(this_._internal_type()); + } + // float volume_db = 5; + if (::absl::bit_cast<::uint32_t>(this_._internal_volume_db()) != 0) { + total_size += 5; + } + // float pan = 6; + if (::absl::bit_cast<::uint32_t>(this_._internal_pan()) != 0) { + total_size += 5; + } + // bool is_muted = 7; + if (this_._internal_is_muted() != 0) { + total_size += 2; + } + // bool is_soloed = 8; + if (this_._internal_is_soloed() != 0) { + total_size += 2; + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void TrackInfo::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.TrackInfo) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + _this->_internal_mutable_plugins()->MergeFrom( + from._internal_plugins()); + if (!from._internal_track_id().empty()) { + _this->_internal_set_track_id(from._internal_track_id()); + } + if (!from._internal_name().empty()) { + _this->_internal_set_name(from._internal_name()); + } + if (from._internal_type() != 0) { + _this->_impl_.type_ = from._impl_.type_; + } + if (::absl::bit_cast<::uint32_t>(from._internal_volume_db()) != 0) { + _this->_impl_.volume_db_ = from._impl_.volume_db_; + } + if (::absl::bit_cast<::uint32_t>(from._internal_pan()) != 0) { + _this->_impl_.pan_ = from._impl_.pan_; + } + if (from._internal_is_muted() != 0) { + _this->_impl_.is_muted_ = from._impl_.is_muted_; + } + if (from._internal_is_soloed() != 0) { + _this->_impl_.is_soloed_ = from._impl_.is_soloed_; + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void TrackInfo::CopyFrom(const TrackInfo& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.TrackInfo) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void TrackInfo::InternalSwap(TrackInfo* PROTOBUF_RESTRICT other) { + using std::swap; + auto* arena = GetArena(); + ABSL_DCHECK_EQ(arena, other->GetArena()); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + _impl_.plugins_.InternalSwap(&other->_impl_.plugins_); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.track_id_, &other->_impl_.track_id_, arena); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.name_, &other->_impl_.name_, arena); + ::google::protobuf::internal::memswap< + PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.is_soloed_) + + sizeof(TrackInfo::_impl_.is_soloed_) + - PROTOBUF_FIELD_OFFSET(TrackInfo, _impl_.type_)>( + reinterpret_cast(&_impl_.type_), + reinterpret_cast(&other->_impl_.type_)); +} + +::google::protobuf::Metadata TrackInfo::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class AddTrackRequest::_Internal { + public: +}; + +AddTrackRequest::AddTrackRequest(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.AddTrackRequest) +} +inline PROTOBUF_NDEBUG_INLINE AddTrackRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::AddTrackRequest& from_msg) + : name_(arena, from.name_), + _cached_size_{0} {} + +AddTrackRequest::AddTrackRequest( + ::google::protobuf::Arena* arena, + const AddTrackRequest& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + AddTrackRequest* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + _impl_.type_ = from._impl_.type_; + + // @@protoc_insertion_point(copy_constructor:daw.api.AddTrackRequest) +} +inline PROTOBUF_NDEBUG_INLINE AddTrackRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : name_(arena), + _cached_size_{0} {} + +inline void AddTrackRequest::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); + _impl_.type_ = {}; +} +AddTrackRequest::~AddTrackRequest() { + // @@protoc_insertion_point(destructor:daw.api.AddTrackRequest) + SharedDtor(*this); +} +inline void AddTrackRequest::SharedDtor(MessageLite& self) { + AddTrackRequest& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.name_.Destroy(); + this_._impl_.~Impl_(); +} + +inline void* AddTrackRequest::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) AddTrackRequest(arena); +} +constexpr auto AddTrackRequest::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(AddTrackRequest), + alignof(AddTrackRequest)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull AddTrackRequest::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_AddTrackRequest_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &AddTrackRequest::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &AddTrackRequest::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &AddTrackRequest::ByteSizeLong, + &AddTrackRequest::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(AddTrackRequest, _impl_._cached_size_), + false, + }, + &AddTrackRequest::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* AddTrackRequest::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<1, 2, 0, 36, 2> AddTrackRequest::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 2, 8, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967292, // skipmap + offsetof(decltype(_table_), field_entries), + 2, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::AddTrackRequest>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + // .daw.api.TrackType type = 2; + {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(AddTrackRequest, _impl_.type_), 63>(), + {16, 63, 0, PROTOBUF_FIELD_OFFSET(AddTrackRequest, _impl_.type_)}}, + // string name = 1; + {::_pbi::TcParser::FastUS1, + {10, 63, 0, PROTOBUF_FIELD_OFFSET(AddTrackRequest, _impl_.name_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // string name = 1; + {PROTOBUF_FIELD_OFFSET(AddTrackRequest, _impl_.name_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + // .daw.api.TrackType type = 2; + {PROTOBUF_FIELD_OFFSET(AddTrackRequest, _impl_.type_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kOpenEnum)}, + }}, + // no aux_entries + {{ + "\27\4\0\0\0\0\0\0" + "daw.api.AddTrackRequest" + "name" + }}, +}; + +PROTOBUF_NOINLINE void AddTrackRequest::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.AddTrackRequest) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.name_.ClearToEmpty(); + _impl_.type_ = 0; + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* AddTrackRequest::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const AddTrackRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* AddTrackRequest::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const AddTrackRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.AddTrackRequest) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // string name = 1; + if (!this_._internal_name().empty()) { + const std::string& _s = this_._internal_name(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.AddTrackRequest.name"); + target = stream->WriteStringMaybeAliased(1, _s, target); + } + + // .daw.api.TrackType type = 2; + if (this_._internal_type() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteEnumToArray( + 2, this_._internal_type(), target); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.AddTrackRequest) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t AddTrackRequest::ByteSizeLong(const MessageLite& base) { + const AddTrackRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t AddTrackRequest::ByteSizeLong() const { + const AddTrackRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.AddTrackRequest) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + ::_pbi::Prefetch5LinesFrom7Lines(&this_); + { + // string name = 1; + if (!this_._internal_name().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_name()); + } + // .daw.api.TrackType type = 2; + if (this_._internal_type() != 0) { + total_size += 1 + + ::_pbi::WireFormatLite::EnumSize(this_._internal_type()); + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void AddTrackRequest::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.AddTrackRequest) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_name().empty()) { + _this->_internal_set_name(from._internal_name()); + } + if (from._internal_type() != 0) { + _this->_impl_.type_ = from._impl_.type_; + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void AddTrackRequest::CopyFrom(const AddTrackRequest& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.AddTrackRequest) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void AddTrackRequest::InternalSwap(AddTrackRequest* PROTOBUF_RESTRICT other) { + using std::swap; + auto* arena = GetArena(); + ABSL_DCHECK_EQ(arena, other->GetArena()); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.name_, &other->_impl_.name_, arena); + swap(_impl_.type_, other->_impl_.type_); +} + +::google::protobuf::Metadata AddTrackRequest::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class TrackIdRequest::_Internal { + public: +}; + +TrackIdRequest::TrackIdRequest(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.TrackIdRequest) +} +inline PROTOBUF_NDEBUG_INLINE TrackIdRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::TrackIdRequest& from_msg) + : track_id_(arena, from.track_id_), + _cached_size_{0} {} + +TrackIdRequest::TrackIdRequest( + ::google::protobuf::Arena* arena, + const TrackIdRequest& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + TrackIdRequest* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + + // @@protoc_insertion_point(copy_constructor:daw.api.TrackIdRequest) +} +inline PROTOBUF_NDEBUG_INLINE TrackIdRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : track_id_(arena), + _cached_size_{0} {} + +inline void TrackIdRequest::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); +} +TrackIdRequest::~TrackIdRequest() { + // @@protoc_insertion_point(destructor:daw.api.TrackIdRequest) + SharedDtor(*this); +} +inline void TrackIdRequest::SharedDtor(MessageLite& self) { + TrackIdRequest& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.track_id_.Destroy(); + this_._impl_.~Impl_(); +} + +inline void* TrackIdRequest::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) TrackIdRequest(arena); +} +constexpr auto TrackIdRequest::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(TrackIdRequest), + alignof(TrackIdRequest)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull TrackIdRequest::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_TrackIdRequest_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &TrackIdRequest::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &TrackIdRequest::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &TrackIdRequest::ByteSizeLong, + &TrackIdRequest::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(TrackIdRequest, _impl_._cached_size_), + false, + }, + &TrackIdRequest::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* TrackIdRequest::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<0, 1, 0, 39, 2> TrackIdRequest::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 1, 0, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967294, // skipmap + offsetof(decltype(_table_), field_entries), + 1, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::TrackIdRequest>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + // string track_id = 1; + {::_pbi::TcParser::FastUS1, + {10, 63, 0, PROTOBUF_FIELD_OFFSET(TrackIdRequest, _impl_.track_id_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // string track_id = 1; + {PROTOBUF_FIELD_OFFSET(TrackIdRequest, _impl_.track_id_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + }}, + // no aux_entries + {{ + "\26\10\0\0\0\0\0\0" + "daw.api.TrackIdRequest" + "track_id" + }}, +}; + +PROTOBUF_NOINLINE void TrackIdRequest::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.TrackIdRequest) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.track_id_.ClearToEmpty(); + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* TrackIdRequest::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const TrackIdRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* TrackIdRequest::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const TrackIdRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.TrackIdRequest) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // string track_id = 1; + if (!this_._internal_track_id().empty()) { + const std::string& _s = this_._internal_track_id(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.TrackIdRequest.track_id"); + target = stream->WriteStringMaybeAliased(1, _s, target); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.TrackIdRequest) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t TrackIdRequest::ByteSizeLong(const MessageLite& base) { + const TrackIdRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t TrackIdRequest::ByteSizeLong() const { + const TrackIdRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.TrackIdRequest) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + { + // string track_id = 1; + if (!this_._internal_track_id().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_track_id()); + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void TrackIdRequest::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.TrackIdRequest) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_track_id().empty()) { + _this->_internal_set_track_id(from._internal_track_id()); + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void TrackIdRequest::CopyFrom(const TrackIdRequest& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.TrackIdRequest) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void TrackIdRequest::InternalSwap(TrackIdRequest* PROTOBUF_RESTRICT other) { + using std::swap; + auto* arena = GetArena(); + ABSL_DCHECK_EQ(arena, other->GetArena()); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.track_id_, &other->_impl_.track_id_, arena); +} + +::google::protobuf::Metadata TrackIdRequest::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class SetTrackVolumeRequest::_Internal { + public: +}; + +SetTrackVolumeRequest::SetTrackVolumeRequest(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.SetTrackVolumeRequest) +} +inline PROTOBUF_NDEBUG_INLINE SetTrackVolumeRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::SetTrackVolumeRequest& from_msg) + : track_id_(arena, from.track_id_), + _cached_size_{0} {} + +SetTrackVolumeRequest::SetTrackVolumeRequest( + ::google::protobuf::Arena* arena, + const SetTrackVolumeRequest& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SetTrackVolumeRequest* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + _impl_.volume_db_ = from._impl_.volume_db_; + + // @@protoc_insertion_point(copy_constructor:daw.api.SetTrackVolumeRequest) +} +inline PROTOBUF_NDEBUG_INLINE SetTrackVolumeRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : track_id_(arena), + _cached_size_{0} {} + +inline void SetTrackVolumeRequest::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); + _impl_.volume_db_ = {}; +} +SetTrackVolumeRequest::~SetTrackVolumeRequest() { + // @@protoc_insertion_point(destructor:daw.api.SetTrackVolumeRequest) + SharedDtor(*this); +} +inline void SetTrackVolumeRequest::SharedDtor(MessageLite& self) { + SetTrackVolumeRequest& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.track_id_.Destroy(); + this_._impl_.~Impl_(); +} + +inline void* SetTrackVolumeRequest::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) SetTrackVolumeRequest(arena); +} +constexpr auto SetTrackVolumeRequest::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(SetTrackVolumeRequest), + alignof(SetTrackVolumeRequest)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull SetTrackVolumeRequest::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_SetTrackVolumeRequest_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &SetTrackVolumeRequest::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &SetTrackVolumeRequest::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &SetTrackVolumeRequest::ByteSizeLong, + &SetTrackVolumeRequest::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(SetTrackVolumeRequest, _impl_._cached_size_), + false, + }, + &SetTrackVolumeRequest::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* SetTrackVolumeRequest::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<1, 2, 0, 46, 2> SetTrackVolumeRequest::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 2, 8, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967292, // skipmap + offsetof(decltype(_table_), field_entries), + 2, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::SetTrackVolumeRequest>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + // float volume_db = 2; + {::_pbi::TcParser::FastF32S1, + {21, 63, 0, PROTOBUF_FIELD_OFFSET(SetTrackVolumeRequest, _impl_.volume_db_)}}, + // string track_id = 1; + {::_pbi::TcParser::FastUS1, + {10, 63, 0, PROTOBUF_FIELD_OFFSET(SetTrackVolumeRequest, _impl_.track_id_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // string track_id = 1; + {PROTOBUF_FIELD_OFFSET(SetTrackVolumeRequest, _impl_.track_id_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + // float volume_db = 2; + {PROTOBUF_FIELD_OFFSET(SetTrackVolumeRequest, _impl_.volume_db_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kFloat)}, + }}, + // no aux_entries + {{ + "\35\10\0\0\0\0\0\0" + "daw.api.SetTrackVolumeRequest" + "track_id" + }}, +}; + +PROTOBUF_NOINLINE void SetTrackVolumeRequest::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.SetTrackVolumeRequest) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.track_id_.ClearToEmpty(); + _impl_.volume_db_ = 0; + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* SetTrackVolumeRequest::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const SetTrackVolumeRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* SetTrackVolumeRequest::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const SetTrackVolumeRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.SetTrackVolumeRequest) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // string track_id = 1; + if (!this_._internal_track_id().empty()) { + const std::string& _s = this_._internal_track_id(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.SetTrackVolumeRequest.track_id"); + target = stream->WriteStringMaybeAliased(1, _s, target); + } + + // float volume_db = 2; + if (::absl::bit_cast<::uint32_t>(this_._internal_volume_db()) != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray( + 2, this_._internal_volume_db(), target); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.SetTrackVolumeRequest) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t SetTrackVolumeRequest::ByteSizeLong(const MessageLite& base) { + const SetTrackVolumeRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t SetTrackVolumeRequest::ByteSizeLong() const { + const SetTrackVolumeRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.SetTrackVolumeRequest) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + ::_pbi::Prefetch5LinesFrom7Lines(&this_); + { + // string track_id = 1; + if (!this_._internal_track_id().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_track_id()); + } + // float volume_db = 2; + if (::absl::bit_cast<::uint32_t>(this_._internal_volume_db()) != 0) { + total_size += 5; + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void SetTrackVolumeRequest::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.SetTrackVolumeRequest) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_track_id().empty()) { + _this->_internal_set_track_id(from._internal_track_id()); + } + if (::absl::bit_cast<::uint32_t>(from._internal_volume_db()) != 0) { + _this->_impl_.volume_db_ = from._impl_.volume_db_; + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void SetTrackVolumeRequest::CopyFrom(const SetTrackVolumeRequest& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.SetTrackVolumeRequest) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void SetTrackVolumeRequest::InternalSwap(SetTrackVolumeRequest* PROTOBUF_RESTRICT other) { + using std::swap; + auto* arena = GetArena(); + ABSL_DCHECK_EQ(arena, other->GetArena()); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.track_id_, &other->_impl_.track_id_, arena); + swap(_impl_.volume_db_, other->_impl_.volume_db_); +} + +::google::protobuf::Metadata SetTrackVolumeRequest::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class SetTrackPanRequest::_Internal { + public: +}; + +SetTrackPanRequest::SetTrackPanRequest(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.SetTrackPanRequest) +} +inline PROTOBUF_NDEBUG_INLINE SetTrackPanRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::SetTrackPanRequest& from_msg) + : track_id_(arena, from.track_id_), + _cached_size_{0} {} + +SetTrackPanRequest::SetTrackPanRequest( + ::google::protobuf::Arena* arena, + const SetTrackPanRequest& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SetTrackPanRequest* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + _impl_.pan_ = from._impl_.pan_; + + // @@protoc_insertion_point(copy_constructor:daw.api.SetTrackPanRequest) +} +inline PROTOBUF_NDEBUG_INLINE SetTrackPanRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : track_id_(arena), + _cached_size_{0} {} + +inline void SetTrackPanRequest::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); + _impl_.pan_ = {}; +} +SetTrackPanRequest::~SetTrackPanRequest() { + // @@protoc_insertion_point(destructor:daw.api.SetTrackPanRequest) + SharedDtor(*this); +} +inline void SetTrackPanRequest::SharedDtor(MessageLite& self) { + SetTrackPanRequest& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.track_id_.Destroy(); + this_._impl_.~Impl_(); +} + +inline void* SetTrackPanRequest::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) SetTrackPanRequest(arena); +} +constexpr auto SetTrackPanRequest::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(SetTrackPanRequest), + alignof(SetTrackPanRequest)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull SetTrackPanRequest::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_SetTrackPanRequest_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &SetTrackPanRequest::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &SetTrackPanRequest::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &SetTrackPanRequest::ByteSizeLong, + &SetTrackPanRequest::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(SetTrackPanRequest, _impl_._cached_size_), + false, + }, + &SetTrackPanRequest::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* SetTrackPanRequest::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<1, 2, 0, 43, 2> SetTrackPanRequest::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 2, 8, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967292, // skipmap + offsetof(decltype(_table_), field_entries), + 2, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::SetTrackPanRequest>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + // float pan = 2; + {::_pbi::TcParser::FastF32S1, + {21, 63, 0, PROTOBUF_FIELD_OFFSET(SetTrackPanRequest, _impl_.pan_)}}, + // string track_id = 1; + {::_pbi::TcParser::FastUS1, + {10, 63, 0, PROTOBUF_FIELD_OFFSET(SetTrackPanRequest, _impl_.track_id_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // string track_id = 1; + {PROTOBUF_FIELD_OFFSET(SetTrackPanRequest, _impl_.track_id_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + // float pan = 2; + {PROTOBUF_FIELD_OFFSET(SetTrackPanRequest, _impl_.pan_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kFloat)}, + }}, + // no aux_entries + {{ + "\32\10\0\0\0\0\0\0" + "daw.api.SetTrackPanRequest" + "track_id" + }}, +}; + +PROTOBUF_NOINLINE void SetTrackPanRequest::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.SetTrackPanRequest) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.track_id_.ClearToEmpty(); + _impl_.pan_ = 0; + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* SetTrackPanRequest::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const SetTrackPanRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* SetTrackPanRequest::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const SetTrackPanRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.SetTrackPanRequest) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // string track_id = 1; + if (!this_._internal_track_id().empty()) { + const std::string& _s = this_._internal_track_id(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.SetTrackPanRequest.track_id"); + target = stream->WriteStringMaybeAliased(1, _s, target); + } + + // float pan = 2; + if (::absl::bit_cast<::uint32_t>(this_._internal_pan()) != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray( + 2, this_._internal_pan(), target); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.SetTrackPanRequest) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t SetTrackPanRequest::ByteSizeLong(const MessageLite& base) { + const SetTrackPanRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t SetTrackPanRequest::ByteSizeLong() const { + const SetTrackPanRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.SetTrackPanRequest) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + ::_pbi::Prefetch5LinesFrom7Lines(&this_); + { + // string track_id = 1; + if (!this_._internal_track_id().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_track_id()); + } + // float pan = 2; + if (::absl::bit_cast<::uint32_t>(this_._internal_pan()) != 0) { + total_size += 5; + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void SetTrackPanRequest::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.SetTrackPanRequest) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_track_id().empty()) { + _this->_internal_set_track_id(from._internal_track_id()); + } + if (::absl::bit_cast<::uint32_t>(from._internal_pan()) != 0) { + _this->_impl_.pan_ = from._impl_.pan_; + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void SetTrackPanRequest::CopyFrom(const SetTrackPanRequest& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.SetTrackPanRequest) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void SetTrackPanRequest::InternalSwap(SetTrackPanRequest* PROTOBUF_RESTRICT other) { + using std::swap; + auto* arena = GetArena(); + ABSL_DCHECK_EQ(arena, other->GetArena()); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.track_id_, &other->_impl_.track_id_, arena); + swap(_impl_.pan_, other->_impl_.pan_); +} + +::google::protobuf::Metadata SetTrackPanRequest::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class PluginInfo::_Internal { + public: +}; + +PluginInfo::PluginInfo(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.PluginInfo) +} +inline PROTOBUF_NDEBUG_INLINE PluginInfo::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::PluginInfo& from_msg) + : parameters_{visibility, arena, from.parameters_}, + instance_id_(arena, from.instance_id_), + name_(arena, from.name_), + _cached_size_{0} {} + +PluginInfo::PluginInfo( + ::google::protobuf::Arena* arena, + const PluginInfo& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + PluginInfo* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + _impl_.is_bypassed_ = from._impl_.is_bypassed_; + + // @@protoc_insertion_point(copy_constructor:daw.api.PluginInfo) +} +inline PROTOBUF_NDEBUG_INLINE PluginInfo::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : parameters_{visibility, arena}, + instance_id_(arena), + name_(arena), + _cached_size_{0} {} + +inline void PluginInfo::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); + _impl_.is_bypassed_ = {}; +} +PluginInfo::~PluginInfo() { + // @@protoc_insertion_point(destructor:daw.api.PluginInfo) + SharedDtor(*this); +} +inline void PluginInfo::SharedDtor(MessageLite& self) { + PluginInfo& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.instance_id_.Destroy(); + this_._impl_.name_.Destroy(); + this_._impl_.~Impl_(); +} + +inline void* PluginInfo::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) PluginInfo(arena); +} +constexpr auto PluginInfo::InternalNewImpl_() { + constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({ + PROTOBUF_FIELD_OFFSET(PluginInfo, _impl_.parameters_) + + decltype(PluginInfo::_impl_.parameters_):: + InternalGetArenaOffset( + ::google::protobuf::Message::internal_visibility()), + }); + if (arena_bits.has_value()) { + return ::google::protobuf::internal::MessageCreator::CopyInit( + sizeof(PluginInfo), alignof(PluginInfo), *arena_bits); + } else { + return ::google::protobuf::internal::MessageCreator(&PluginInfo::PlacementNew_, + sizeof(PluginInfo), + alignof(PluginInfo)); + } +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull PluginInfo::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_PluginInfo_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &PluginInfo::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &PluginInfo::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &PluginInfo::ByteSizeLong, + &PluginInfo::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(PluginInfo, _impl_._cached_size_), + false, + }, + &PluginInfo::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* PluginInfo::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<3, 4, 1, 42, 2> PluginInfo::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 5, 56, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967268, // skipmap + offsetof(decltype(_table_), field_entries), + 4, // num_field_entries + 1, // num_aux_entries + offsetof(decltype(_table_), aux_entries), + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::PluginInfo>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + {::_pbi::TcParser::MiniParse, {}}, + // string instance_id = 1; + {::_pbi::TcParser::FastUS1, + {10, 63, 0, PROTOBUF_FIELD_OFFSET(PluginInfo, _impl_.instance_id_)}}, + // string name = 2; + {::_pbi::TcParser::FastUS1, + {18, 63, 0, PROTOBUF_FIELD_OFFSET(PluginInfo, _impl_.name_)}}, + {::_pbi::TcParser::MiniParse, {}}, + // bool is_bypassed = 4; + {::_pbi::TcParser::SingularVarintNoZag1(), + {32, 63, 0, PROTOBUF_FIELD_OFFSET(PluginInfo, _impl_.is_bypassed_)}}, + // repeated .daw.api.PluginParameter parameters = 5; + {::_pbi::TcParser::FastMtR1, + {42, 63, 0, PROTOBUF_FIELD_OFFSET(PluginInfo, _impl_.parameters_)}}, + {::_pbi::TcParser::MiniParse, {}}, + {::_pbi::TcParser::MiniParse, {}}, + }}, {{ + 65535, 65535 + }}, {{ + // string instance_id = 1; + {PROTOBUF_FIELD_OFFSET(PluginInfo, _impl_.instance_id_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + // string name = 2; + {PROTOBUF_FIELD_OFFSET(PluginInfo, _impl_.name_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + // bool is_bypassed = 4; + {PROTOBUF_FIELD_OFFSET(PluginInfo, _impl_.is_bypassed_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kBool)}, + // repeated .daw.api.PluginParameter parameters = 5; + {PROTOBUF_FIELD_OFFSET(PluginInfo, _impl_.parameters_), 0, 0, + (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)}, + }}, {{ + {::_pbi::TcParser::GetTable<::daw::api::PluginParameter>()}, + }}, {{ + "\22\13\4\0\0\0\0\0" + "daw.api.PluginInfo" + "instance_id" + "name" + }}, +}; + +PROTOBUF_NOINLINE void PluginInfo::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.PluginInfo) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.parameters_.Clear(); + _impl_.instance_id_.ClearToEmpty(); + _impl_.name_.ClearToEmpty(); + _impl_.is_bypassed_ = false; + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* PluginInfo::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const PluginInfo& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* PluginInfo::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const PluginInfo& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.PluginInfo) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // string instance_id = 1; + if (!this_._internal_instance_id().empty()) { + const std::string& _s = this_._internal_instance_id(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.PluginInfo.instance_id"); + target = stream->WriteStringMaybeAliased(1, _s, target); + } + + // string name = 2; + if (!this_._internal_name().empty()) { + const std::string& _s = this_._internal_name(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.PluginInfo.name"); + target = stream->WriteStringMaybeAliased(2, _s, target); + } + + // bool is_bypassed = 4; + if (this_._internal_is_bypassed() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteBoolToArray( + 4, this_._internal_is_bypassed(), target); + } + + // repeated .daw.api.PluginParameter parameters = 5; + for (unsigned i = 0, n = static_cast( + this_._internal_parameters_size()); + i < n; i++) { + const auto& repfield = this_._internal_parameters().Get(i); + target = + ::google::protobuf::internal::WireFormatLite::InternalWriteMessage( + 5, repfield, repfield.GetCachedSize(), + target, stream); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.PluginInfo) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t PluginInfo::ByteSizeLong(const MessageLite& base) { + const PluginInfo& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t PluginInfo::ByteSizeLong() const { + const PluginInfo& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.PluginInfo) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + ::_pbi::Prefetch5LinesFrom7Lines(&this_); + { + // repeated .daw.api.PluginParameter parameters = 5; + { + total_size += 1UL * this_._internal_parameters_size(); + for (const auto& msg : this_._internal_parameters()) { + total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg); + } + } + } + { + // string instance_id = 1; + if (!this_._internal_instance_id().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_instance_id()); + } + // string name = 2; + if (!this_._internal_name().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_name()); + } + // bool is_bypassed = 4; + if (this_._internal_is_bypassed() != 0) { + total_size += 2; + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void PluginInfo::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.PluginInfo) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + _this->_internal_mutable_parameters()->MergeFrom( + from._internal_parameters()); + if (!from._internal_instance_id().empty()) { + _this->_internal_set_instance_id(from._internal_instance_id()); + } + if (!from._internal_name().empty()) { + _this->_internal_set_name(from._internal_name()); + } + if (from._internal_is_bypassed() != 0) { + _this->_impl_.is_bypassed_ = from._impl_.is_bypassed_; + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void PluginInfo::CopyFrom(const PluginInfo& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.PluginInfo) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void PluginInfo::InternalSwap(PluginInfo* PROTOBUF_RESTRICT other) { + using std::swap; + auto* arena = GetArena(); + ABSL_DCHECK_EQ(arena, other->GetArena()); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + _impl_.parameters_.InternalSwap(&other->_impl_.parameters_); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.instance_id_, &other->_impl_.instance_id_, arena); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.name_, &other->_impl_.name_, arena); + swap(_impl_.is_bypassed_, other->_impl_.is_bypassed_); +} + +::google::protobuf::Metadata PluginInfo::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class PluginParameter::_Internal { + public: +}; + +PluginParameter::PluginParameter(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.PluginParameter) +} +inline PROTOBUF_NDEBUG_INLINE PluginParameter::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::PluginParameter& from_msg) + : name_(arena, from.name_), + _cached_size_{0} {} + +PluginParameter::PluginParameter( + ::google::protobuf::Arena* arena, + const PluginParameter& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + PluginParameter* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + ::memcpy(reinterpret_cast(&_impl_) + + offsetof(Impl_, value_), + reinterpret_cast(&from._impl_) + + offsetof(Impl_, value_), + offsetof(Impl_, parameter_id_) - + offsetof(Impl_, value_) + + sizeof(Impl_::parameter_id_)); + + // @@protoc_insertion_point(copy_constructor:daw.api.PluginParameter) +} +inline PROTOBUF_NDEBUG_INLINE PluginParameter::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : name_(arena), + _cached_size_{0} {} + +inline void PluginParameter::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); + ::memset(reinterpret_cast(&_impl_) + + offsetof(Impl_, value_), + 0, + offsetof(Impl_, parameter_id_) - + offsetof(Impl_, value_) + + sizeof(Impl_::parameter_id_)); +} +PluginParameter::~PluginParameter() { + // @@protoc_insertion_point(destructor:daw.api.PluginParameter) + SharedDtor(*this); +} +inline void PluginParameter::SharedDtor(MessageLite& self) { + PluginParameter& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.name_.Destroy(); + this_._impl_.~Impl_(); +} + +inline void* PluginParameter::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) PluginParameter(arena); +} +constexpr auto PluginParameter::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(PluginParameter), + alignof(PluginParameter)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull PluginParameter::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_PluginParameter_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &PluginParameter::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &PluginParameter::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &PluginParameter::ByteSizeLong, + &PluginParameter::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(PluginParameter, _impl_._cached_size_), + false, + }, + &PluginParameter::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* PluginParameter::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<2, 3, 0, 36, 2> PluginParameter::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 3, 24, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967288, // skipmap + offsetof(decltype(_table_), field_entries), + 3, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::PluginParameter>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + {::_pbi::TcParser::MiniParse, {}}, + // uint32 parameter_id = 1; + {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(PluginParameter, _impl_.parameter_id_), 63>(), + {8, 63, 0, PROTOBUF_FIELD_OFFSET(PluginParameter, _impl_.parameter_id_)}}, + // string name = 2; + {::_pbi::TcParser::FastUS1, + {18, 63, 0, PROTOBUF_FIELD_OFFSET(PluginParameter, _impl_.name_)}}, + // double value = 3; + {::_pbi::TcParser::FastF64S1, + {25, 63, 0, PROTOBUF_FIELD_OFFSET(PluginParameter, _impl_.value_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // uint32 parameter_id = 1; + {PROTOBUF_FIELD_OFFSET(PluginParameter, _impl_.parameter_id_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUInt32)}, + // string name = 2; + {PROTOBUF_FIELD_OFFSET(PluginParameter, _impl_.name_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + // double value = 3; + {PROTOBUF_FIELD_OFFSET(PluginParameter, _impl_.value_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kDouble)}, + }}, + // no aux_entries + {{ + "\27\0\4\0\0\0\0\0" + "daw.api.PluginParameter" + "name" + }}, +}; + +PROTOBUF_NOINLINE void PluginParameter::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.PluginParameter) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.name_.ClearToEmpty(); + ::memset(&_impl_.value_, 0, static_cast<::size_t>( + reinterpret_cast(&_impl_.parameter_id_) - + reinterpret_cast(&_impl_.value_)) + sizeof(_impl_.parameter_id_)); + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* PluginParameter::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const PluginParameter& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* PluginParameter::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const PluginParameter& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.PluginParameter) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // uint32 parameter_id = 1; + if (this_._internal_parameter_id() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray( + 1, this_._internal_parameter_id(), target); + } + + // string name = 2; + if (!this_._internal_name().empty()) { + const std::string& _s = this_._internal_name(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.PluginParameter.name"); + target = stream->WriteStringMaybeAliased(2, _s, target); + } + + // double value = 3; + if (::absl::bit_cast<::uint64_t>(this_._internal_value()) != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteDoubleToArray( + 3, this_._internal_value(), target); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.PluginParameter) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t PluginParameter::ByteSizeLong(const MessageLite& base) { + const PluginParameter& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t PluginParameter::ByteSizeLong() const { + const PluginParameter& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.PluginParameter) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + ::_pbi::Prefetch5LinesFrom7Lines(&this_); + { + // string name = 2; + if (!this_._internal_name().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_name()); + } + // double value = 3; + if (::absl::bit_cast<::uint64_t>(this_._internal_value()) != 0) { + total_size += 9; + } + // uint32 parameter_id = 1; + if (this_._internal_parameter_id() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne( + this_._internal_parameter_id()); + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void PluginParameter::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.PluginParameter) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_name().empty()) { + _this->_internal_set_name(from._internal_name()); + } + if (::absl::bit_cast<::uint64_t>(from._internal_value()) != 0) { + _this->_impl_.value_ = from._impl_.value_; + } + if (from._internal_parameter_id() != 0) { + _this->_impl_.parameter_id_ = from._impl_.parameter_id_; + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void PluginParameter::CopyFrom(const PluginParameter& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.PluginParameter) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void PluginParameter::InternalSwap(PluginParameter* PROTOBUF_RESTRICT other) { + using std::swap; + auto* arena = GetArena(); + ABSL_DCHECK_EQ(arena, other->GetArena()); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.name_, &other->_impl_.name_, arena); + ::google::protobuf::internal::memswap< + PROTOBUF_FIELD_OFFSET(PluginParameter, _impl_.parameter_id_) + + sizeof(PluginParameter::_impl_.parameter_id_) + - PROTOBUF_FIELD_OFFSET(PluginParameter, _impl_.value_)>( + reinterpret_cast(&_impl_.value_), + reinterpret_cast(&other->_impl_.value_)); +} + +::google::protobuf::Metadata PluginParameter::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class SetPluginParameterRequest::_Internal { + public: +}; + +SetPluginParameterRequest::SetPluginParameterRequest(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.SetPluginParameterRequest) +} +inline PROTOBUF_NDEBUG_INLINE SetPluginParameterRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::SetPluginParameterRequest& from_msg) + : instance_id_(arena, from.instance_id_), + _cached_size_{0} {} + +SetPluginParameterRequest::SetPluginParameterRequest( + ::google::protobuf::Arena* arena, + const SetPluginParameterRequest& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SetPluginParameterRequest* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + ::memcpy(reinterpret_cast(&_impl_) + + offsetof(Impl_, value_), + reinterpret_cast(&from._impl_) + + offsetof(Impl_, value_), + offsetof(Impl_, parameter_id_) - + offsetof(Impl_, value_) + + sizeof(Impl_::parameter_id_)); + + // @@protoc_insertion_point(copy_constructor:daw.api.SetPluginParameterRequest) +} +inline PROTOBUF_NDEBUG_INLINE SetPluginParameterRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : instance_id_(arena), + _cached_size_{0} {} + +inline void SetPluginParameterRequest::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); + ::memset(reinterpret_cast(&_impl_) + + offsetof(Impl_, value_), + 0, + offsetof(Impl_, parameter_id_) - + offsetof(Impl_, value_) + + sizeof(Impl_::parameter_id_)); +} +SetPluginParameterRequest::~SetPluginParameterRequest() { + // @@protoc_insertion_point(destructor:daw.api.SetPluginParameterRequest) + SharedDtor(*this); +} +inline void SetPluginParameterRequest::SharedDtor(MessageLite& self) { + SetPluginParameterRequest& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.instance_id_.Destroy(); + this_._impl_.~Impl_(); +} + +inline void* SetPluginParameterRequest::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) SetPluginParameterRequest(arena); +} +constexpr auto SetPluginParameterRequest::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(SetPluginParameterRequest), + alignof(SetPluginParameterRequest)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull SetPluginParameterRequest::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_SetPluginParameterRequest_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &SetPluginParameterRequest::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &SetPluginParameterRequest::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &SetPluginParameterRequest::ByteSizeLong, + &SetPluginParameterRequest::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(SetPluginParameterRequest, _impl_._cached_size_), + false, + }, + &SetPluginParameterRequest::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* SetPluginParameterRequest::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<2, 3, 0, 53, 2> SetPluginParameterRequest::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 3, 24, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967288, // skipmap + offsetof(decltype(_table_), field_entries), + 3, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::SetPluginParameterRequest>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + {::_pbi::TcParser::MiniParse, {}}, + // string instance_id = 1; + {::_pbi::TcParser::FastUS1, + {10, 63, 0, PROTOBUF_FIELD_OFFSET(SetPluginParameterRequest, _impl_.instance_id_)}}, + // uint32 parameter_id = 2; + {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(SetPluginParameterRequest, _impl_.parameter_id_), 63>(), + {16, 63, 0, PROTOBUF_FIELD_OFFSET(SetPluginParameterRequest, _impl_.parameter_id_)}}, + // double value = 3; + {::_pbi::TcParser::FastF64S1, + {25, 63, 0, PROTOBUF_FIELD_OFFSET(SetPluginParameterRequest, _impl_.value_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // string instance_id = 1; + {PROTOBUF_FIELD_OFFSET(SetPluginParameterRequest, _impl_.instance_id_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + // uint32 parameter_id = 2; + {PROTOBUF_FIELD_OFFSET(SetPluginParameterRequest, _impl_.parameter_id_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUInt32)}, + // double value = 3; + {PROTOBUF_FIELD_OFFSET(SetPluginParameterRequest, _impl_.value_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kDouble)}, + }}, + // no aux_entries + {{ + "\41\13\0\0\0\0\0\0" + "daw.api.SetPluginParameterRequest" + "instance_id" + }}, +}; + +PROTOBUF_NOINLINE void SetPluginParameterRequest::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.SetPluginParameterRequest) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.instance_id_.ClearToEmpty(); + ::memset(&_impl_.value_, 0, static_cast<::size_t>( + reinterpret_cast(&_impl_.parameter_id_) - + reinterpret_cast(&_impl_.value_)) + sizeof(_impl_.parameter_id_)); + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* SetPluginParameterRequest::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const SetPluginParameterRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* SetPluginParameterRequest::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const SetPluginParameterRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.SetPluginParameterRequest) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // string instance_id = 1; + if (!this_._internal_instance_id().empty()) { + const std::string& _s = this_._internal_instance_id(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.SetPluginParameterRequest.instance_id"); + target = stream->WriteStringMaybeAliased(1, _s, target); + } + + // uint32 parameter_id = 2; + if (this_._internal_parameter_id() != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteUInt32ToArray( + 2, this_._internal_parameter_id(), target); + } + + // double value = 3; + if (::absl::bit_cast<::uint64_t>(this_._internal_value()) != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteDoubleToArray( + 3, this_._internal_value(), target); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.SetPluginParameterRequest) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t SetPluginParameterRequest::ByteSizeLong(const MessageLite& base) { + const SetPluginParameterRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t SetPluginParameterRequest::ByteSizeLong() const { + const SetPluginParameterRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.SetPluginParameterRequest) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + ::_pbi::Prefetch5LinesFrom7Lines(&this_); + { + // string instance_id = 1; + if (!this_._internal_instance_id().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_instance_id()); + } + // double value = 3; + if (::absl::bit_cast<::uint64_t>(this_._internal_value()) != 0) { + total_size += 9; + } + // uint32 parameter_id = 2; + if (this_._internal_parameter_id() != 0) { + total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne( + this_._internal_parameter_id()); + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void SetPluginParameterRequest::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.SetPluginParameterRequest) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_instance_id().empty()) { + _this->_internal_set_instance_id(from._internal_instance_id()); + } + if (::absl::bit_cast<::uint64_t>(from._internal_value()) != 0) { + _this->_impl_.value_ = from._impl_.value_; + } + if (from._internal_parameter_id() != 0) { + _this->_impl_.parameter_id_ = from._impl_.parameter_id_; + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void SetPluginParameterRequest::CopyFrom(const SetPluginParameterRequest& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.SetPluginParameterRequest) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void SetPluginParameterRequest::InternalSwap(SetPluginParameterRequest* PROTOBUF_RESTRICT other) { + using std::swap; + auto* arena = GetArena(); + ABSL_DCHECK_EQ(arena, other->GetArena()); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.instance_id_, &other->_impl_.instance_id_, arena); + ::google::protobuf::internal::memswap< + PROTOBUF_FIELD_OFFSET(SetPluginParameterRequest, _impl_.parameter_id_) + + sizeof(SetPluginParameterRequest::_impl_.parameter_id_) + - PROTOBUF_FIELD_OFFSET(SetPluginParameterRequest, _impl_.value_)>( + reinterpret_cast(&_impl_.value_), + reinterpret_cast(&other->_impl_.value_)); +} + +::google::protobuf::Metadata SetPluginParameterRequest::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class LoadPluginRequest::_Internal { + public: +}; + +LoadPluginRequest::LoadPluginRequest(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.LoadPluginRequest) +} +inline PROTOBUF_NDEBUG_INLINE LoadPluginRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::LoadPluginRequest& from_msg) + : file_path_(arena, from.file_path_), + _cached_size_{0} {} + +LoadPluginRequest::LoadPluginRequest( + ::google::protobuf::Arena* arena, + const LoadPluginRequest& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + LoadPluginRequest* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + + // @@protoc_insertion_point(copy_constructor:daw.api.LoadPluginRequest) +} +inline PROTOBUF_NDEBUG_INLINE LoadPluginRequest::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : file_path_(arena), + _cached_size_{0} {} + +inline void LoadPluginRequest::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); +} +LoadPluginRequest::~LoadPluginRequest() { + // @@protoc_insertion_point(destructor:daw.api.LoadPluginRequest) + SharedDtor(*this); +} +inline void LoadPluginRequest::SharedDtor(MessageLite& self) { + LoadPluginRequest& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.file_path_.Destroy(); + this_._impl_.~Impl_(); +} + +inline void* LoadPluginRequest::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) LoadPluginRequest(arena); +} +constexpr auto LoadPluginRequest::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(LoadPluginRequest), + alignof(LoadPluginRequest)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull LoadPluginRequest::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_LoadPluginRequest_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &LoadPluginRequest::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &LoadPluginRequest::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &LoadPluginRequest::ByteSizeLong, + &LoadPluginRequest::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(LoadPluginRequest, _impl_._cached_size_), + false, + }, + &LoadPluginRequest::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* LoadPluginRequest::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<0, 1, 0, 43, 2> LoadPluginRequest::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 1, 0, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967294, // skipmap + offsetof(decltype(_table_), field_entries), + 1, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::LoadPluginRequest>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + // string file_path = 1; + {::_pbi::TcParser::FastUS1, + {10, 63, 0, PROTOBUF_FIELD_OFFSET(LoadPluginRequest, _impl_.file_path_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // string file_path = 1; + {PROTOBUF_FIELD_OFFSET(LoadPluginRequest, _impl_.file_path_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + }}, + // no aux_entries + {{ + "\31\11\0\0\0\0\0\0" + "daw.api.LoadPluginRequest" + "file_path" + }}, +}; + +PROTOBUF_NOINLINE void LoadPluginRequest::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.LoadPluginRequest) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.file_path_.ClearToEmpty(); + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* LoadPluginRequest::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const LoadPluginRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* LoadPluginRequest::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const LoadPluginRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.LoadPluginRequest) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // string file_path = 1; + if (!this_._internal_file_path().empty()) { + const std::string& _s = this_._internal_file_path(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.LoadPluginRequest.file_path"); + target = stream->WriteStringMaybeAliased(1, _s, target); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.LoadPluginRequest) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t LoadPluginRequest::ByteSizeLong(const MessageLite& base) { + const LoadPluginRequest& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t LoadPluginRequest::ByteSizeLong() const { + const LoadPluginRequest& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.LoadPluginRequest) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + { + // string file_path = 1; + if (!this_._internal_file_path().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_file_path()); + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void LoadPluginRequest::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.LoadPluginRequest) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_file_path().empty()) { + _this->_internal_set_file_path(from._internal_file_path()); + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void LoadPluginRequest::CopyFrom(const LoadPluginRequest& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.LoadPluginRequest) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void LoadPluginRequest::InternalSwap(LoadPluginRequest* PROTOBUF_RESTRICT other) { + using std::swap; + auto* arena = GetArena(); + ABSL_DCHECK_EQ(arena, other->GetArena()); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.file_path_, &other->_impl_.file_path_, arena); +} + +::google::protobuf::Metadata LoadPluginRequest::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class VUMeterUpdate::_Internal { + public: +}; + +VUMeterUpdate::VUMeterUpdate(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.VUMeterUpdate) +} +inline PROTOBUF_NDEBUG_INLINE VUMeterUpdate::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::VUMeterUpdate& from_msg) + : track_id_(arena, from.track_id_), + _cached_size_{0} {} + +VUMeterUpdate::VUMeterUpdate( + ::google::protobuf::Arena* arena, + const VUMeterUpdate& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + VUMeterUpdate* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + ::memcpy(reinterpret_cast(&_impl_) + + offsetof(Impl_, peak_dbfs_), + reinterpret_cast(&from._impl_) + + offsetof(Impl_, peak_dbfs_), + offsetof(Impl_, rms_dbfs_) - + offsetof(Impl_, peak_dbfs_) + + sizeof(Impl_::rms_dbfs_)); + + // @@protoc_insertion_point(copy_constructor:daw.api.VUMeterUpdate) +} +inline PROTOBUF_NDEBUG_INLINE VUMeterUpdate::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : track_id_(arena), + _cached_size_{0} {} + +inline void VUMeterUpdate::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); + ::memset(reinterpret_cast(&_impl_) + + offsetof(Impl_, peak_dbfs_), + 0, + offsetof(Impl_, rms_dbfs_) - + offsetof(Impl_, peak_dbfs_) + + sizeof(Impl_::rms_dbfs_)); +} +VUMeterUpdate::~VUMeterUpdate() { + // @@protoc_insertion_point(destructor:daw.api.VUMeterUpdate) + SharedDtor(*this); +} +inline void VUMeterUpdate::SharedDtor(MessageLite& self) { + VUMeterUpdate& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.track_id_.Destroy(); + this_._impl_.~Impl_(); +} + +inline void* VUMeterUpdate::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) VUMeterUpdate(arena); +} +constexpr auto VUMeterUpdate::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(VUMeterUpdate), + alignof(VUMeterUpdate)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull VUMeterUpdate::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_VUMeterUpdate_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &VUMeterUpdate::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &VUMeterUpdate::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &VUMeterUpdate::ByteSizeLong, + &VUMeterUpdate::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(VUMeterUpdate, _impl_._cached_size_), + false, + }, + &VUMeterUpdate::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* VUMeterUpdate::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<2, 3, 0, 38, 2> VUMeterUpdate::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 3, 24, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967288, // skipmap + offsetof(decltype(_table_), field_entries), + 3, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::VUMeterUpdate>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + {::_pbi::TcParser::MiniParse, {}}, + // string track_id = 1; + {::_pbi::TcParser::FastUS1, + {10, 63, 0, PROTOBUF_FIELD_OFFSET(VUMeterUpdate, _impl_.track_id_)}}, + // float peak_dbfs = 2; + {::_pbi::TcParser::FastF32S1, + {21, 63, 0, PROTOBUF_FIELD_OFFSET(VUMeterUpdate, _impl_.peak_dbfs_)}}, + // float rms_dbfs = 3; + {::_pbi::TcParser::FastF32S1, + {29, 63, 0, PROTOBUF_FIELD_OFFSET(VUMeterUpdate, _impl_.rms_dbfs_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // string track_id = 1; + {PROTOBUF_FIELD_OFFSET(VUMeterUpdate, _impl_.track_id_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kUtf8String | ::_fl::kRepAString)}, + // float peak_dbfs = 2; + {PROTOBUF_FIELD_OFFSET(VUMeterUpdate, _impl_.peak_dbfs_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kFloat)}, + // float rms_dbfs = 3; + {PROTOBUF_FIELD_OFFSET(VUMeterUpdate, _impl_.rms_dbfs_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kFloat)}, + }}, + // no aux_entries + {{ + "\25\10\0\0\0\0\0\0" + "daw.api.VUMeterUpdate" + "track_id" + }}, +}; + +PROTOBUF_NOINLINE void VUMeterUpdate::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.VUMeterUpdate) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.track_id_.ClearToEmpty(); + ::memset(&_impl_.peak_dbfs_, 0, static_cast<::size_t>( + reinterpret_cast(&_impl_.rms_dbfs_) - + reinterpret_cast(&_impl_.peak_dbfs_)) + sizeof(_impl_.rms_dbfs_)); + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* VUMeterUpdate::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const VUMeterUpdate& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* VUMeterUpdate::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const VUMeterUpdate& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.VUMeterUpdate) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // string track_id = 1; + if (!this_._internal_track_id().empty()) { + const std::string& _s = this_._internal_track_id(); + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + _s.data(), static_cast(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "daw.api.VUMeterUpdate.track_id"); + target = stream->WriteStringMaybeAliased(1, _s, target); + } + + // float peak_dbfs = 2; + if (::absl::bit_cast<::uint32_t>(this_._internal_peak_dbfs()) != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray( + 2, this_._internal_peak_dbfs(), target); + } + + // float rms_dbfs = 3; + if (::absl::bit_cast<::uint32_t>(this_._internal_rms_dbfs()) != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteFloatToArray( + 3, this_._internal_rms_dbfs(), target); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.VUMeterUpdate) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t VUMeterUpdate::ByteSizeLong(const MessageLite& base) { + const VUMeterUpdate& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t VUMeterUpdate::ByteSizeLong() const { + const VUMeterUpdate& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.VUMeterUpdate) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + ::_pbi::Prefetch5LinesFrom7Lines(&this_); + { + // string track_id = 1; + if (!this_._internal_track_id().empty()) { + total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize( + this_._internal_track_id()); + } + // float peak_dbfs = 2; + if (::absl::bit_cast<::uint32_t>(this_._internal_peak_dbfs()) != 0) { + total_size += 5; + } + // float rms_dbfs = 3; + if (::absl::bit_cast<::uint32_t>(this_._internal_rms_dbfs()) != 0) { + total_size += 5; + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void VUMeterUpdate::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.VUMeterUpdate) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (!from._internal_track_id().empty()) { + _this->_internal_set_track_id(from._internal_track_id()); + } + if (::absl::bit_cast<::uint32_t>(from._internal_peak_dbfs()) != 0) { + _this->_impl_.peak_dbfs_ = from._impl_.peak_dbfs_; + } + if (::absl::bit_cast<::uint32_t>(from._internal_rms_dbfs()) != 0) { + _this->_impl_.rms_dbfs_ = from._impl_.rms_dbfs_; + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void VUMeterUpdate::CopyFrom(const VUMeterUpdate& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.VUMeterUpdate) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void VUMeterUpdate::InternalSwap(VUMeterUpdate* PROTOBUF_RESTRICT other) { + using std::swap; + auto* arena = GetArena(); + ABSL_DCHECK_EQ(arena, other->GetArena()); + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.track_id_, &other->_impl_.track_id_, arena); + ::google::protobuf::internal::memswap< + PROTOBUF_FIELD_OFFSET(VUMeterUpdate, _impl_.rms_dbfs_) + + sizeof(VUMeterUpdate::_impl_.rms_dbfs_) + - PROTOBUF_FIELD_OFFSET(VUMeterUpdate, _impl_.peak_dbfs_)>( + reinterpret_cast(&_impl_.peak_dbfs_), + reinterpret_cast(&other->_impl_.peak_dbfs_)); +} + +::google::protobuf::Metadata VUMeterUpdate::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class VUMeterData::_Internal { + public: +}; + +VUMeterData::VUMeterData(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.VUMeterData) +} +inline PROTOBUF_NDEBUG_INLINE VUMeterData::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from, const ::daw::api::VUMeterData& from_msg) + : updates_{visibility, arena, from.updates_}, + _cached_size_{0} {} + +VUMeterData::VUMeterData( + ::google::protobuf::Arena* arena, + const VUMeterData& from) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + VUMeterData* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from); + + // @@protoc_insertion_point(copy_constructor:daw.api.VUMeterData) +} +inline PROTOBUF_NDEBUG_INLINE VUMeterData::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : updates_{visibility, arena}, + _cached_size_{0} {} + +inline void VUMeterData::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); +} +VUMeterData::~VUMeterData() { + // @@protoc_insertion_point(destructor:daw.api.VUMeterData) + SharedDtor(*this); +} +inline void VUMeterData::SharedDtor(MessageLite& self) { + VUMeterData& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.~Impl_(); +} + +inline void* VUMeterData::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) VUMeterData(arena); +} +constexpr auto VUMeterData::InternalNewImpl_() { + constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({ + PROTOBUF_FIELD_OFFSET(VUMeterData, _impl_.updates_) + + decltype(VUMeterData::_impl_.updates_):: + InternalGetArenaOffset( + ::google::protobuf::Message::internal_visibility()), + }); + if (arena_bits.has_value()) { + return ::google::protobuf::internal::MessageCreator::ZeroInit( + sizeof(VUMeterData), alignof(VUMeterData), *arena_bits); + } else { + return ::google::protobuf::internal::MessageCreator(&VUMeterData::PlacementNew_, + sizeof(VUMeterData), + alignof(VUMeterData)); + } +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull VUMeterData::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_VUMeterData_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &VUMeterData::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &VUMeterData::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &VUMeterData::ByteSizeLong, + &VUMeterData::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(VUMeterData, _impl_._cached_size_), + false, + }, + &VUMeterData::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* VUMeterData::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<0, 1, 1, 0, 2> VUMeterData::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 1, 0, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967294, // skipmap + offsetof(decltype(_table_), field_entries), + 1, // num_field_entries + 1, // num_aux_entries + offsetof(decltype(_table_), aux_entries), + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::VUMeterData>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + // repeated .daw.api.VUMeterUpdate updates = 1; + {::_pbi::TcParser::FastMtR1, + {10, 63, 0, PROTOBUF_FIELD_OFFSET(VUMeterData, _impl_.updates_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // repeated .daw.api.VUMeterUpdate updates = 1; + {PROTOBUF_FIELD_OFFSET(VUMeterData, _impl_.updates_), 0, 0, + (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)}, + }}, {{ + {::_pbi::TcParser::GetTable<::daw::api::VUMeterUpdate>()}, + }}, {{ + }}, +}; + +PROTOBUF_NOINLINE void VUMeterData::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.VUMeterData) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _impl_.updates_.Clear(); + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* VUMeterData::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const VUMeterData& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* VUMeterData::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const VUMeterData& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.VUMeterData) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // repeated .daw.api.VUMeterUpdate updates = 1; + for (unsigned i = 0, n = static_cast( + this_._internal_updates_size()); + i < n; i++) { + const auto& repfield = this_._internal_updates().Get(i); + target = + ::google::protobuf::internal::WireFormatLite::InternalWriteMessage( + 1, repfield, repfield.GetCachedSize(), + target, stream); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.VUMeterData) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t VUMeterData::ByteSizeLong(const MessageLite& base) { + const VUMeterData& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t VUMeterData::ByteSizeLong() const { + const VUMeterData& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.VUMeterData) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + ::_pbi::Prefetch5LinesFrom7Lines(&this_); + { + // repeated .daw.api.VUMeterUpdate updates = 1; + { + total_size += 1UL * this_._internal_updates_size(); + for (const auto& msg : this_._internal_updates()) { + total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg); + } + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void VUMeterData::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.VUMeterData) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + _this->_internal_mutable_updates()->MergeFrom( + from._internal_updates()); + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void VUMeterData::CopyFrom(const VUMeterData& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.VUMeterData) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void VUMeterData::InternalSwap(VUMeterData* PROTOBUF_RESTRICT other) { + using std::swap; + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + _impl_.updates_.InternalSwap(&other->_impl_.updates_); +} + +::google::protobuf::Metadata VUMeterData::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// =================================================================== + +class RealtimeCursorPosition::_Internal { + public: +}; + +RealtimeCursorPosition::RealtimeCursorPosition(::google::protobuf::Arena* arena) +#if defined(PROTOBUF_CUSTOM_VTABLE) + : ::google::protobuf::Message(arena, _class_data_.base()) { +#else // PROTOBUF_CUSTOM_VTABLE + : ::google::protobuf::Message(arena) { +#endif // PROTOBUF_CUSTOM_VTABLE + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:daw.api.RealtimeCursorPosition) +} +RealtimeCursorPosition::RealtimeCursorPosition( + ::google::protobuf::Arena* arena, const RealtimeCursorPosition& from) + : RealtimeCursorPosition(arena) { + MergeFrom(from); +} +inline PROTOBUF_NDEBUG_INLINE RealtimeCursorPosition::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : _cached_size_{0} {} + +inline void RealtimeCursorPosition::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); + ::memset(reinterpret_cast(&_impl_) + + offsetof(Impl_, time_in_seconds_), + 0, + offsetof(Impl_, absolute_ticks_) - + offsetof(Impl_, time_in_seconds_) + + sizeof(Impl_::absolute_ticks_)); +} +RealtimeCursorPosition::~RealtimeCursorPosition() { + // @@protoc_insertion_point(destructor:daw.api.RealtimeCursorPosition) + SharedDtor(*this); +} +inline void RealtimeCursorPosition::SharedDtor(MessageLite& self) { + RealtimeCursorPosition& this_ = static_cast(self); + this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + ABSL_DCHECK(this_.GetArena() == nullptr); + this_._impl_.~Impl_(); +} + +inline void* RealtimeCursorPosition::PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena) { + return ::new (mem) RealtimeCursorPosition(arena); +} +constexpr auto RealtimeCursorPosition::InternalNewImpl_() { + return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(RealtimeCursorPosition), + alignof(RealtimeCursorPosition)); +} +PROTOBUF_CONSTINIT +PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::google::protobuf::internal::ClassDataFull RealtimeCursorPosition::_class_data_ = { + ::google::protobuf::internal::ClassData{ + &_RealtimeCursorPosition_default_instance_._instance, + &_table_.header, + nullptr, // OnDemandRegisterArenaDtor + nullptr, // IsInitialized + &RealtimeCursorPosition::MergeImpl, + ::google::protobuf::Message::GetNewImpl(), +#if defined(PROTOBUF_CUSTOM_VTABLE) + &RealtimeCursorPosition::SharedDtor, + ::google::protobuf::Message::GetClearImpl(), &RealtimeCursorPosition::ByteSizeLong, + &RealtimeCursorPosition::_InternalSerialize, +#endif // PROTOBUF_CUSTOM_VTABLE + PROTOBUF_FIELD_OFFSET(RealtimeCursorPosition, _impl_._cached_size_), + false, + }, + &RealtimeCursorPosition::kDescriptorMethods, + &descriptor_table_daw_5fapi_2eproto, + nullptr, // tracker +}; +const ::google::protobuf::internal::ClassData* RealtimeCursorPosition::GetClassData() const { + ::google::protobuf::internal::PrefetchToLocalCache(&_class_data_); + ::google::protobuf::internal::PrefetchToLocalCache(_class_data_.tc_table); + return _class_data_.base(); +} +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<1, 2, 0, 0, 2> RealtimeCursorPosition::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 2, 8, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967292, // skipmap + offsetof(decltype(_table_), field_entries), + 2, // num_field_entries + 0, // num_aux_entries + offsetof(decltype(_table_), field_names), // no aux_entries + _class_data_.base(), + nullptr, // post_loop_handler + ::_pbi::TcParser::GenericFallback, // fallback + #ifdef PROTOBUF_PREFETCH_PARSE_TABLE + ::_pbi::TcParser::GetTable<::daw::api::RealtimeCursorPosition>(), // to_prefetch + #endif // PROTOBUF_PREFETCH_PARSE_TABLE + }, {{ + // int64 absolute_ticks = 2; + {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(RealtimeCursorPosition, _impl_.absolute_ticks_), 63>(), + {16, 63, 0, PROTOBUF_FIELD_OFFSET(RealtimeCursorPosition, _impl_.absolute_ticks_)}}, + // double time_in_seconds = 1; + {::_pbi::TcParser::FastF64S1, + {9, 63, 0, PROTOBUF_FIELD_OFFSET(RealtimeCursorPosition, _impl_.time_in_seconds_)}}, + }}, {{ + 65535, 65535 + }}, {{ + // double time_in_seconds = 1; + {PROTOBUF_FIELD_OFFSET(RealtimeCursorPosition, _impl_.time_in_seconds_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kDouble)}, + // int64 absolute_ticks = 2; + {PROTOBUF_FIELD_OFFSET(RealtimeCursorPosition, _impl_.absolute_ticks_), 0, 0, + (0 | ::_fl::kFcSingular | ::_fl::kInt64)}, + }}, + // no aux_entries + {{ + }}, +}; + +PROTOBUF_NOINLINE void RealtimeCursorPosition::Clear() { +// @@protoc_insertion_point(message_clear_start:daw.api.RealtimeCursorPosition) + ::google::protobuf::internal::TSanWrite(&_impl_); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + ::memset(&_impl_.time_in_seconds_, 0, static_cast<::size_t>( + reinterpret_cast(&_impl_.absolute_ticks_) - + reinterpret_cast(&_impl_.time_in_seconds_)) + sizeof(_impl_.absolute_ticks_)); + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::uint8_t* RealtimeCursorPosition::_InternalSerialize( + const MessageLite& base, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) { + const RealtimeCursorPosition& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::uint8_t* RealtimeCursorPosition::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + const RealtimeCursorPosition& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(serialize_to_array_start:daw.api.RealtimeCursorPosition) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // double time_in_seconds = 1; + if (::absl::bit_cast<::uint64_t>(this_._internal_time_in_seconds()) != 0) { + target = stream->EnsureSpace(target); + target = ::_pbi::WireFormatLite::WriteDoubleToArray( + 1, this_._internal_time_in_seconds(), target); + } + + // int64 absolute_ticks = 2; + if (this_._internal_absolute_ticks() != 0) { + target = ::google::protobuf::internal::WireFormatLite:: + WriteInt64ToArrayWithField<2>( + stream, this_._internal_absolute_ticks(), target); + } + + if (PROTOBUF_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:daw.api.RealtimeCursorPosition) + return target; + } + +#if defined(PROTOBUF_CUSTOM_VTABLE) + ::size_t RealtimeCursorPosition::ByteSizeLong(const MessageLite& base) { + const RealtimeCursorPosition& this_ = static_cast(base); +#else // PROTOBUF_CUSTOM_VTABLE + ::size_t RealtimeCursorPosition::ByteSizeLong() const { + const RealtimeCursorPosition& this_ = *this; +#endif // PROTOBUF_CUSTOM_VTABLE + // @@protoc_insertion_point(message_byte_size_start:daw.api.RealtimeCursorPosition) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void)cached_has_bits; + + ::_pbi::Prefetch5LinesFrom7Lines(&this_); + { + // double time_in_seconds = 1; + if (::absl::bit_cast<::uint64_t>(this_._internal_time_in_seconds()) != 0) { + total_size += 9; + } + // int64 absolute_ticks = 2; + if (this_._internal_absolute_ticks() != 0) { + total_size += ::_pbi::WireFormatLite::Int64SizePlusOne( + this_._internal_absolute_ticks()); + } + } + return this_.MaybeComputeUnknownFieldsSize(total_size, + &this_._impl_._cached_size_); + } + +void RealtimeCursorPosition::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:daw.api.RealtimeCursorPosition) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (::absl::bit_cast<::uint64_t>(from._internal_time_in_seconds()) != 0) { + _this->_impl_.time_in_seconds_ = from._impl_.time_in_seconds_; + } + if (from._internal_absolute_ticks() != 0) { + _this->_impl_.absolute_ticks_ = from._impl_.absolute_ticks_; + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void RealtimeCursorPosition::CopyFrom(const RealtimeCursorPosition& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:daw.api.RealtimeCursorPosition) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + + +void RealtimeCursorPosition::InternalSwap(RealtimeCursorPosition* PROTOBUF_RESTRICT other) { + using std::swap; + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + ::google::protobuf::internal::memswap< + PROTOBUF_FIELD_OFFSET(RealtimeCursorPosition, _impl_.absolute_ticks_) + + sizeof(RealtimeCursorPosition::_impl_.absolute_ticks_) + - PROTOBUF_FIELD_OFFSET(RealtimeCursorPosition, _impl_.time_in_seconds_)>( + reinterpret_cast(&_impl_.time_in_seconds_), + reinterpret_cast(&other->_impl_.time_in_seconds_)); +} + +::google::protobuf::Metadata RealtimeCursorPosition::GetMetadata() const { + return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full()); +} +// @@protoc_insertion_point(namespace_scope) +} // namespace api +} // namespace daw +namespace google { +namespace protobuf { +} // namespace protobuf +} // namespace google +// @@protoc_insertion_point(global_scope) +PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::std::false_type + _static_init2_ PROTOBUF_UNUSED = + (::_pbi::AddDescriptors(&descriptor_table_daw_5fapi_2eproto), + ::std::false_type{}); +#include "google/protobuf/port_undef.inc" diff --git a/src/backend/src/proto/daw_api.pb.h b/src/backend/src/proto/daw_api.pb.h new file mode 100644 index 0000000..89f2b77 --- /dev/null +++ b/src/backend/src/proto/daw_api.pb.h @@ -0,0 +1,5949 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: daw_api.proto +// Protobuf C++ Version: 5.29.3 + +#ifndef daw_5fapi_2eproto_2epb_2eh +#define daw_5fapi_2eproto_2epb_2eh + +#include +#include +#include +#include + +#include "google/protobuf/runtime_version.h" +#if PROTOBUF_VERSION != 5029003 +#error "Protobuf C++ gencode is built with an incompatible version of" +#error "Protobuf C++ headers/runtime. See" +#error "https://protobuf.dev/support/cross-version-runtime-guarantee/#cpp" +#endif +#include "google/protobuf/io/coded_stream.h" +#include "google/protobuf/arena.h" +#include "google/protobuf/arenastring.h" +#include "google/protobuf/generated_message_bases.h" +#include "google/protobuf/generated_message_tctable_decl.h" +#include "google/protobuf/generated_message_util.h" +#include "google/protobuf/metadata_lite.h" +#include "google/protobuf/generated_message_reflection.h" +#include "google/protobuf/message.h" +#include "google/protobuf/message_lite.h" +#include "google/protobuf/repeated_field.h" // IWYU pragma: export +#include "google/protobuf/extension_set.h" // IWYU pragma: export +#include "google/protobuf/generated_enum_reflection.h" +#include "google/protobuf/unknown_field_set.h" +// @@protoc_insertion_point(includes) + +// Must be included last. +#include "google/protobuf/port_def.inc" + +#define PROTOBUF_INTERNAL_EXPORT_daw_5fapi_2eproto + +namespace google { +namespace protobuf { +namespace internal { +template +::absl::string_view GetAnyMessageName(); +} // namespace internal +} // namespace protobuf +} // namespace google + +// Internal implementation detail -- do not use these members. +struct TableStruct_daw_5fapi_2eproto { + static const ::uint32_t offsets[]; +}; +extern const ::google::protobuf::internal::DescriptorTable + descriptor_table_daw_5fapi_2eproto; +namespace daw { +namespace api { +class AddTrackRequest; +struct AddTrackRequestDefaultTypeInternal; +extern AddTrackRequestDefaultTypeInternal _AddTrackRequest_default_instance_; +class Empty; +struct EmptyDefaultTypeInternal; +extern EmptyDefaultTypeInternal _Empty_default_instance_; +class LoadPluginRequest; +struct LoadPluginRequestDefaultTypeInternal; +extern LoadPluginRequestDefaultTypeInternal _LoadPluginRequest_default_instance_; +class LoadProjectRequest; +struct LoadProjectRequestDefaultTypeInternal; +extern LoadProjectRequestDefaultTypeInternal _LoadProjectRequest_default_instance_; +class PlaybackState; +struct PlaybackStateDefaultTypeInternal; +extern PlaybackStateDefaultTypeInternal _PlaybackState_default_instance_; +class PluginInfo; +struct PluginInfoDefaultTypeInternal; +extern PluginInfoDefaultTypeInternal _PluginInfo_default_instance_; +class PluginParameter; +struct PluginParameterDefaultTypeInternal; +extern PluginParameterDefaultTypeInternal _PluginParameter_default_instance_; +class ProjectState; +struct ProjectStateDefaultTypeInternal; +extern ProjectStateDefaultTypeInternal _ProjectState_default_instance_; +class RealtimeCursorPosition; +struct RealtimeCursorPositionDefaultTypeInternal; +extern RealtimeCursorPositionDefaultTypeInternal _RealtimeCursorPosition_default_instance_; +class SaveProjectRequest; +struct SaveProjectRequestDefaultTypeInternal; +extern SaveProjectRequestDefaultTypeInternal _SaveProjectRequest_default_instance_; +class SetPluginParameterRequest; +struct SetPluginParameterRequestDefaultTypeInternal; +extern SetPluginParameterRequestDefaultTypeInternal _SetPluginParameterRequest_default_instance_; +class SetTempoRequest; +struct SetTempoRequestDefaultTypeInternal; +extern SetTempoRequestDefaultTypeInternal _SetTempoRequest_default_instance_; +class SetTrackPanRequest; +struct SetTrackPanRequestDefaultTypeInternal; +extern SetTrackPanRequestDefaultTypeInternal _SetTrackPanRequest_default_instance_; +class SetTrackVolumeRequest; +struct SetTrackVolumeRequestDefaultTypeInternal; +extern SetTrackVolumeRequestDefaultTypeInternal _SetTrackVolumeRequest_default_instance_; +class StatusResponse; +struct StatusResponseDefaultTypeInternal; +extern StatusResponseDefaultTypeInternal _StatusResponse_default_instance_; +class TrackIdRequest; +struct TrackIdRequestDefaultTypeInternal; +extern TrackIdRequestDefaultTypeInternal _TrackIdRequest_default_instance_; +class TrackInfo; +struct TrackInfoDefaultTypeInternal; +extern TrackInfoDefaultTypeInternal _TrackInfo_default_instance_; +class VUMeterData; +struct VUMeterDataDefaultTypeInternal; +extern VUMeterDataDefaultTypeInternal _VUMeterData_default_instance_; +class VUMeterUpdate; +struct VUMeterUpdateDefaultTypeInternal; +extern VUMeterUpdateDefaultTypeInternal _VUMeterUpdate_default_instance_; +} // namespace api +} // namespace daw +namespace google { +namespace protobuf { +} // namespace protobuf +} // namespace google + +namespace daw { +namespace api { +enum TrackType : int { + AUDIO = 0, + MIDI = 1, + TrackType_INT_MIN_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::min(), + TrackType_INT_MAX_SENTINEL_DO_NOT_USE_ = + std::numeric_limits<::int32_t>::max(), +}; + +bool TrackType_IsValid(int value); +extern const uint32_t TrackType_internal_data_[]; +constexpr TrackType TrackType_MIN = static_cast(0); +constexpr TrackType TrackType_MAX = static_cast(1); +constexpr int TrackType_ARRAYSIZE = 1 + 1; +const ::google::protobuf::EnumDescriptor* +TrackType_descriptor(); +template +const std::string& TrackType_Name(T value) { + static_assert(std::is_same::value || + std::is_integral::value, + "Incorrect type passed to TrackType_Name()."); + return TrackType_Name(static_cast(value)); +} +template <> +inline const std::string& TrackType_Name(TrackType value) { + return ::google::protobuf::internal::NameOfDenseEnum( + static_cast(value)); +} +inline bool TrackType_Parse(absl::string_view name, TrackType* value) { + return ::google::protobuf::internal::ParseNamedEnum( + TrackType_descriptor(), name, value); +} + +// =================================================================== + + +// ------------------------------------------------------------------- + +class VUMeterUpdate final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.VUMeterUpdate) */ { + public: + inline VUMeterUpdate() : VUMeterUpdate(nullptr) {} + ~VUMeterUpdate() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(VUMeterUpdate* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(VUMeterUpdate)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR VUMeterUpdate( + ::google::protobuf::internal::ConstantInitialized); + + inline VUMeterUpdate(const VUMeterUpdate& from) : VUMeterUpdate(nullptr, from) {} + inline VUMeterUpdate(VUMeterUpdate&& from) noexcept + : VUMeterUpdate(nullptr, std::move(from)) {} + inline VUMeterUpdate& operator=(const VUMeterUpdate& from) { + CopyFrom(from); + return *this; + } + inline VUMeterUpdate& operator=(VUMeterUpdate&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const VUMeterUpdate& default_instance() { + return *internal_default_instance(); + } + static inline const VUMeterUpdate* internal_default_instance() { + return reinterpret_cast( + &_VUMeterUpdate_default_instance_); + } + static constexpr int kIndexInFileMessages = 16; + friend void swap(VUMeterUpdate& a, VUMeterUpdate& b) { a.Swap(&b); } + inline void Swap(VUMeterUpdate* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(VUMeterUpdate* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + VUMeterUpdate* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const VUMeterUpdate& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const VUMeterUpdate& from) { VUMeterUpdate::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(VUMeterUpdate* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.VUMeterUpdate"; } + + protected: + explicit VUMeterUpdate(::google::protobuf::Arena* arena); + VUMeterUpdate(::google::protobuf::Arena* arena, const VUMeterUpdate& from); + VUMeterUpdate(::google::protobuf::Arena* arena, VUMeterUpdate&& from) noexcept + : VUMeterUpdate(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kTrackIdFieldNumber = 1, + kPeakDbfsFieldNumber = 2, + kRmsDbfsFieldNumber = 3, + }; + // string track_id = 1; + void clear_track_id() ; + const std::string& track_id() const; + template + void set_track_id(Arg_&& arg, Args_... args); + std::string* mutable_track_id(); + PROTOBUF_NODISCARD std::string* release_track_id(); + void set_allocated_track_id(std::string* value); + + private: + const std::string& _internal_track_id() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_track_id( + const std::string& value); + std::string* _internal_mutable_track_id(); + + public: + // float peak_dbfs = 2; + void clear_peak_dbfs() ; + float peak_dbfs() const; + void set_peak_dbfs(float value); + + private: + float _internal_peak_dbfs() const; + void _internal_set_peak_dbfs(float value); + + public: + // float rms_dbfs = 3; + void clear_rms_dbfs() ; + float rms_dbfs() const; + void set_rms_dbfs(float value); + + private: + float _internal_rms_dbfs() const; + void _internal_set_rms_dbfs(float value); + + public: + // @@protoc_insertion_point(class_scope:daw.api.VUMeterUpdate) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 0, + 38, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const VUMeterUpdate& from_msg); + ::google::protobuf::internal::ArenaStringPtr track_id_; + float peak_dbfs_; + float rms_dbfs_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class TrackIdRequest final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.TrackIdRequest) */ { + public: + inline TrackIdRequest() : TrackIdRequest(nullptr) {} + ~TrackIdRequest() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(TrackIdRequest* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(TrackIdRequest)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR TrackIdRequest( + ::google::protobuf::internal::ConstantInitialized); + + inline TrackIdRequest(const TrackIdRequest& from) : TrackIdRequest(nullptr, from) {} + inline TrackIdRequest(TrackIdRequest&& from) noexcept + : TrackIdRequest(nullptr, std::move(from)) {} + inline TrackIdRequest& operator=(const TrackIdRequest& from) { + CopyFrom(from); + return *this; + } + inline TrackIdRequest& operator=(TrackIdRequest&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const TrackIdRequest& default_instance() { + return *internal_default_instance(); + } + static inline const TrackIdRequest* internal_default_instance() { + return reinterpret_cast( + &_TrackIdRequest_default_instance_); + } + static constexpr int kIndexInFileMessages = 9; + friend void swap(TrackIdRequest& a, TrackIdRequest& b) { a.Swap(&b); } + inline void Swap(TrackIdRequest* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(TrackIdRequest* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + TrackIdRequest* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const TrackIdRequest& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const TrackIdRequest& from) { TrackIdRequest::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(TrackIdRequest* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.TrackIdRequest"; } + + protected: + explicit TrackIdRequest(::google::protobuf::Arena* arena); + TrackIdRequest(::google::protobuf::Arena* arena, const TrackIdRequest& from); + TrackIdRequest(::google::protobuf::Arena* arena, TrackIdRequest&& from) noexcept + : TrackIdRequest(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kTrackIdFieldNumber = 1, + }; + // string track_id = 1; + void clear_track_id() ; + const std::string& track_id() const; + template + void set_track_id(Arg_&& arg, Args_... args); + std::string* mutable_track_id(); + PROTOBUF_NODISCARD std::string* release_track_id(); + void set_allocated_track_id(std::string* value); + + private: + const std::string& _internal_track_id() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_track_id( + const std::string& value); + std::string* _internal_mutable_track_id(); + + public: + // @@protoc_insertion_point(class_scope:daw.api.TrackIdRequest) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 39, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const TrackIdRequest& from_msg); + ::google::protobuf::internal::ArenaStringPtr track_id_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class StatusResponse final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.StatusResponse) */ { + public: + inline StatusResponse() : StatusResponse(nullptr) {} + ~StatusResponse() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(StatusResponse* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(StatusResponse)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR StatusResponse( + ::google::protobuf::internal::ConstantInitialized); + + inline StatusResponse(const StatusResponse& from) : StatusResponse(nullptr, from) {} + inline StatusResponse(StatusResponse&& from) noexcept + : StatusResponse(nullptr, std::move(from)) {} + inline StatusResponse& operator=(const StatusResponse& from) { + CopyFrom(from); + return *this; + } + inline StatusResponse& operator=(StatusResponse&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const StatusResponse& default_instance() { + return *internal_default_instance(); + } + static inline const StatusResponse* internal_default_instance() { + return reinterpret_cast( + &_StatusResponse_default_instance_); + } + static constexpr int kIndexInFileMessages = 1; + friend void swap(StatusResponse& a, StatusResponse& b) { a.Swap(&b); } + inline void Swap(StatusResponse* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(StatusResponse* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + StatusResponse* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const StatusResponse& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const StatusResponse& from) { StatusResponse::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(StatusResponse* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.StatusResponse"; } + + protected: + explicit StatusResponse(::google::protobuf::Arena* arena); + StatusResponse(::google::protobuf::Arena* arena, const StatusResponse& from); + StatusResponse(::google::protobuf::Arena* arena, StatusResponse&& from) noexcept + : StatusResponse(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kErrorMessageFieldNumber = 2, + kSuccessFieldNumber = 1, + }; + // string error_message = 2; + void clear_error_message() ; + const std::string& error_message() const; + template + void set_error_message(Arg_&& arg, Args_... args); + std::string* mutable_error_message(); + PROTOBUF_NODISCARD std::string* release_error_message(); + void set_allocated_error_message(std::string* value); + + private: + const std::string& _internal_error_message() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_error_message( + const std::string& value); + std::string* _internal_mutable_error_message(); + + public: + // bool success = 1; + void clear_success() ; + bool success() const; + void set_success(bool value); + + private: + bool _internal_success() const; + void _internal_set_success(bool value); + + public: + // @@protoc_insertion_point(class_scope:daw.api.StatusResponse) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 0, + 44, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const StatusResponse& from_msg); + ::google::protobuf::internal::ArenaStringPtr error_message_; + bool success_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class SetTrackVolumeRequest final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.SetTrackVolumeRequest) */ { + public: + inline SetTrackVolumeRequest() : SetTrackVolumeRequest(nullptr) {} + ~SetTrackVolumeRequest() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(SetTrackVolumeRequest* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(SetTrackVolumeRequest)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR SetTrackVolumeRequest( + ::google::protobuf::internal::ConstantInitialized); + + inline SetTrackVolumeRequest(const SetTrackVolumeRequest& from) : SetTrackVolumeRequest(nullptr, from) {} + inline SetTrackVolumeRequest(SetTrackVolumeRequest&& from) noexcept + : SetTrackVolumeRequest(nullptr, std::move(from)) {} + inline SetTrackVolumeRequest& operator=(const SetTrackVolumeRequest& from) { + CopyFrom(from); + return *this; + } + inline SetTrackVolumeRequest& operator=(SetTrackVolumeRequest&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const SetTrackVolumeRequest& default_instance() { + return *internal_default_instance(); + } + static inline const SetTrackVolumeRequest* internal_default_instance() { + return reinterpret_cast( + &_SetTrackVolumeRequest_default_instance_); + } + static constexpr int kIndexInFileMessages = 10; + friend void swap(SetTrackVolumeRequest& a, SetTrackVolumeRequest& b) { a.Swap(&b); } + inline void Swap(SetTrackVolumeRequest* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(SetTrackVolumeRequest* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + SetTrackVolumeRequest* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SetTrackVolumeRequest& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const SetTrackVolumeRequest& from) { SetTrackVolumeRequest::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(SetTrackVolumeRequest* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.SetTrackVolumeRequest"; } + + protected: + explicit SetTrackVolumeRequest(::google::protobuf::Arena* arena); + SetTrackVolumeRequest(::google::protobuf::Arena* arena, const SetTrackVolumeRequest& from); + SetTrackVolumeRequest(::google::protobuf::Arena* arena, SetTrackVolumeRequest&& from) noexcept + : SetTrackVolumeRequest(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kTrackIdFieldNumber = 1, + kVolumeDbFieldNumber = 2, + }; + // string track_id = 1; + void clear_track_id() ; + const std::string& track_id() const; + template + void set_track_id(Arg_&& arg, Args_... args); + std::string* mutable_track_id(); + PROTOBUF_NODISCARD std::string* release_track_id(); + void set_allocated_track_id(std::string* value); + + private: + const std::string& _internal_track_id() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_track_id( + const std::string& value); + std::string* _internal_mutable_track_id(); + + public: + // float volume_db = 2; + void clear_volume_db() ; + float volume_db() const; + void set_volume_db(float value); + + private: + float _internal_volume_db() const; + void _internal_set_volume_db(float value); + + public: + // @@protoc_insertion_point(class_scope:daw.api.SetTrackVolumeRequest) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 0, + 46, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const SetTrackVolumeRequest& from_msg); + ::google::protobuf::internal::ArenaStringPtr track_id_; + float volume_db_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class SetTrackPanRequest final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.SetTrackPanRequest) */ { + public: + inline SetTrackPanRequest() : SetTrackPanRequest(nullptr) {} + ~SetTrackPanRequest() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(SetTrackPanRequest* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(SetTrackPanRequest)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR SetTrackPanRequest( + ::google::protobuf::internal::ConstantInitialized); + + inline SetTrackPanRequest(const SetTrackPanRequest& from) : SetTrackPanRequest(nullptr, from) {} + inline SetTrackPanRequest(SetTrackPanRequest&& from) noexcept + : SetTrackPanRequest(nullptr, std::move(from)) {} + inline SetTrackPanRequest& operator=(const SetTrackPanRequest& from) { + CopyFrom(from); + return *this; + } + inline SetTrackPanRequest& operator=(SetTrackPanRequest&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const SetTrackPanRequest& default_instance() { + return *internal_default_instance(); + } + static inline const SetTrackPanRequest* internal_default_instance() { + return reinterpret_cast( + &_SetTrackPanRequest_default_instance_); + } + static constexpr int kIndexInFileMessages = 11; + friend void swap(SetTrackPanRequest& a, SetTrackPanRequest& b) { a.Swap(&b); } + inline void Swap(SetTrackPanRequest* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(SetTrackPanRequest* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + SetTrackPanRequest* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SetTrackPanRequest& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const SetTrackPanRequest& from) { SetTrackPanRequest::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(SetTrackPanRequest* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.SetTrackPanRequest"; } + + protected: + explicit SetTrackPanRequest(::google::protobuf::Arena* arena); + SetTrackPanRequest(::google::protobuf::Arena* arena, const SetTrackPanRequest& from); + SetTrackPanRequest(::google::protobuf::Arena* arena, SetTrackPanRequest&& from) noexcept + : SetTrackPanRequest(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kTrackIdFieldNumber = 1, + kPanFieldNumber = 2, + }; + // string track_id = 1; + void clear_track_id() ; + const std::string& track_id() const; + template + void set_track_id(Arg_&& arg, Args_... args); + std::string* mutable_track_id(); + PROTOBUF_NODISCARD std::string* release_track_id(); + void set_allocated_track_id(std::string* value); + + private: + const std::string& _internal_track_id() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_track_id( + const std::string& value); + std::string* _internal_mutable_track_id(); + + public: + // float pan = 2; + void clear_pan() ; + float pan() const; + void set_pan(float value); + + private: + float _internal_pan() const; + void _internal_set_pan(float value); + + public: + // @@protoc_insertion_point(class_scope:daw.api.SetTrackPanRequest) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 0, + 43, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const SetTrackPanRequest& from_msg); + ::google::protobuf::internal::ArenaStringPtr track_id_; + float pan_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class SetTempoRequest final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.SetTempoRequest) */ { + public: + inline SetTempoRequest() : SetTempoRequest(nullptr) {} + ~SetTempoRequest() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(SetTempoRequest* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(SetTempoRequest)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR SetTempoRequest( + ::google::protobuf::internal::ConstantInitialized); + + inline SetTempoRequest(const SetTempoRequest& from) : SetTempoRequest(nullptr, from) {} + inline SetTempoRequest(SetTempoRequest&& from) noexcept + : SetTempoRequest(nullptr, std::move(from)) {} + inline SetTempoRequest& operator=(const SetTempoRequest& from) { + CopyFrom(from); + return *this; + } + inline SetTempoRequest& operator=(SetTempoRequest&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const SetTempoRequest& default_instance() { + return *internal_default_instance(); + } + static inline const SetTempoRequest* internal_default_instance() { + return reinterpret_cast( + &_SetTempoRequest_default_instance_); + } + static constexpr int kIndexInFileMessages = 6; + friend void swap(SetTempoRequest& a, SetTempoRequest& b) { a.Swap(&b); } + inline void Swap(SetTempoRequest* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(SetTempoRequest* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + SetTempoRequest* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SetTempoRequest& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const SetTempoRequest& from) { SetTempoRequest::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(SetTempoRequest* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.SetTempoRequest"; } + + protected: + explicit SetTempoRequest(::google::protobuf::Arena* arena); + SetTempoRequest(::google::protobuf::Arena* arena, const SetTempoRequest& from); + SetTempoRequest(::google::protobuf::Arena* arena, SetTempoRequest&& from) noexcept + : SetTempoRequest(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kBpmFieldNumber = 1, + }; + // double bpm = 1; + void clear_bpm() ; + double bpm() const; + void set_bpm(double value); + + private: + double _internal_bpm() const; + void _internal_set_bpm(double value); + + public: + // @@protoc_insertion_point(class_scope:daw.api.SetTempoRequest) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 0, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const SetTempoRequest& from_msg); + double bpm_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class SetPluginParameterRequest final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.SetPluginParameterRequest) */ { + public: + inline SetPluginParameterRequest() : SetPluginParameterRequest(nullptr) {} + ~SetPluginParameterRequest() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(SetPluginParameterRequest* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(SetPluginParameterRequest)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR SetPluginParameterRequest( + ::google::protobuf::internal::ConstantInitialized); + + inline SetPluginParameterRequest(const SetPluginParameterRequest& from) : SetPluginParameterRequest(nullptr, from) {} + inline SetPluginParameterRequest(SetPluginParameterRequest&& from) noexcept + : SetPluginParameterRequest(nullptr, std::move(from)) {} + inline SetPluginParameterRequest& operator=(const SetPluginParameterRequest& from) { + CopyFrom(from); + return *this; + } + inline SetPluginParameterRequest& operator=(SetPluginParameterRequest&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const SetPluginParameterRequest& default_instance() { + return *internal_default_instance(); + } + static inline const SetPluginParameterRequest* internal_default_instance() { + return reinterpret_cast( + &_SetPluginParameterRequest_default_instance_); + } + static constexpr int kIndexInFileMessages = 14; + friend void swap(SetPluginParameterRequest& a, SetPluginParameterRequest& b) { a.Swap(&b); } + inline void Swap(SetPluginParameterRequest* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(SetPluginParameterRequest* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + SetPluginParameterRequest* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SetPluginParameterRequest& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const SetPluginParameterRequest& from) { SetPluginParameterRequest::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(SetPluginParameterRequest* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.SetPluginParameterRequest"; } + + protected: + explicit SetPluginParameterRequest(::google::protobuf::Arena* arena); + SetPluginParameterRequest(::google::protobuf::Arena* arena, const SetPluginParameterRequest& from); + SetPluginParameterRequest(::google::protobuf::Arena* arena, SetPluginParameterRequest&& from) noexcept + : SetPluginParameterRequest(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kInstanceIdFieldNumber = 1, + kValueFieldNumber = 3, + kParameterIdFieldNumber = 2, + }; + // string instance_id = 1; + void clear_instance_id() ; + const std::string& instance_id() const; + template + void set_instance_id(Arg_&& arg, Args_... args); + std::string* mutable_instance_id(); + PROTOBUF_NODISCARD std::string* release_instance_id(); + void set_allocated_instance_id(std::string* value); + + private: + const std::string& _internal_instance_id() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_instance_id( + const std::string& value); + std::string* _internal_mutable_instance_id(); + + public: + // double value = 3; + void clear_value() ; + double value() const; + void set_value(double value); + + private: + double _internal_value() const; + void _internal_set_value(double value); + + public: + // uint32 parameter_id = 2; + void clear_parameter_id() ; + ::uint32_t parameter_id() const; + void set_parameter_id(::uint32_t value); + + private: + ::uint32_t _internal_parameter_id() const; + void _internal_set_parameter_id(::uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:daw.api.SetPluginParameterRequest) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 0, + 53, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const SetPluginParameterRequest& from_msg); + ::google::protobuf::internal::ArenaStringPtr instance_id_; + double value_; + ::uint32_t parameter_id_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class SaveProjectRequest final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.SaveProjectRequest) */ { + public: + inline SaveProjectRequest() : SaveProjectRequest(nullptr) {} + ~SaveProjectRequest() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(SaveProjectRequest* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(SaveProjectRequest)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR SaveProjectRequest( + ::google::protobuf::internal::ConstantInitialized); + + inline SaveProjectRequest(const SaveProjectRequest& from) : SaveProjectRequest(nullptr, from) {} + inline SaveProjectRequest(SaveProjectRequest&& from) noexcept + : SaveProjectRequest(nullptr, std::move(from)) {} + inline SaveProjectRequest& operator=(const SaveProjectRequest& from) { + CopyFrom(from); + return *this; + } + inline SaveProjectRequest& operator=(SaveProjectRequest&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const SaveProjectRequest& default_instance() { + return *internal_default_instance(); + } + static inline const SaveProjectRequest* internal_default_instance() { + return reinterpret_cast( + &_SaveProjectRequest_default_instance_); + } + static constexpr int kIndexInFileMessages = 4; + friend void swap(SaveProjectRequest& a, SaveProjectRequest& b) { a.Swap(&b); } + inline void Swap(SaveProjectRequest* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(SaveProjectRequest* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + SaveProjectRequest* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const SaveProjectRequest& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const SaveProjectRequest& from) { SaveProjectRequest::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(SaveProjectRequest* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.SaveProjectRequest"; } + + protected: + explicit SaveProjectRequest(::google::protobuf::Arena* arena); + SaveProjectRequest(::google::protobuf::Arena* arena, const SaveProjectRequest& from); + SaveProjectRequest(::google::protobuf::Arena* arena, SaveProjectRequest&& from) noexcept + : SaveProjectRequest(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kFilePathFieldNumber = 1, + }; + // string file_path = 1; + void clear_file_path() ; + const std::string& file_path() const; + template + void set_file_path(Arg_&& arg, Args_... args); + std::string* mutable_file_path(); + PROTOBUF_NODISCARD std::string* release_file_path(); + void set_allocated_file_path(std::string* value); + + private: + const std::string& _internal_file_path() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_file_path( + const std::string& value); + std::string* _internal_mutable_file_path(); + + public: + // @@protoc_insertion_point(class_scope:daw.api.SaveProjectRequest) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 44, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const SaveProjectRequest& from_msg); + ::google::protobuf::internal::ArenaStringPtr file_path_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class RealtimeCursorPosition final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.RealtimeCursorPosition) */ { + public: + inline RealtimeCursorPosition() : RealtimeCursorPosition(nullptr) {} + ~RealtimeCursorPosition() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(RealtimeCursorPosition* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(RealtimeCursorPosition)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR RealtimeCursorPosition( + ::google::protobuf::internal::ConstantInitialized); + + inline RealtimeCursorPosition(const RealtimeCursorPosition& from) : RealtimeCursorPosition(nullptr, from) {} + inline RealtimeCursorPosition(RealtimeCursorPosition&& from) noexcept + : RealtimeCursorPosition(nullptr, std::move(from)) {} + inline RealtimeCursorPosition& operator=(const RealtimeCursorPosition& from) { + CopyFrom(from); + return *this; + } + inline RealtimeCursorPosition& operator=(RealtimeCursorPosition&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const RealtimeCursorPosition& default_instance() { + return *internal_default_instance(); + } + static inline const RealtimeCursorPosition* internal_default_instance() { + return reinterpret_cast( + &_RealtimeCursorPosition_default_instance_); + } + static constexpr int kIndexInFileMessages = 18; + friend void swap(RealtimeCursorPosition& a, RealtimeCursorPosition& b) { a.Swap(&b); } + inline void Swap(RealtimeCursorPosition* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(RealtimeCursorPosition* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + RealtimeCursorPosition* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const RealtimeCursorPosition& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const RealtimeCursorPosition& from) { RealtimeCursorPosition::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(RealtimeCursorPosition* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.RealtimeCursorPosition"; } + + protected: + explicit RealtimeCursorPosition(::google::protobuf::Arena* arena); + RealtimeCursorPosition(::google::protobuf::Arena* arena, const RealtimeCursorPosition& from); + RealtimeCursorPosition(::google::protobuf::Arena* arena, RealtimeCursorPosition&& from) noexcept + : RealtimeCursorPosition(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kTimeInSecondsFieldNumber = 1, + kAbsoluteTicksFieldNumber = 2, + }; + // double time_in_seconds = 1; + void clear_time_in_seconds() ; + double time_in_seconds() const; + void set_time_in_seconds(double value); + + private: + double _internal_time_in_seconds() const; + void _internal_set_time_in_seconds(double value); + + public: + // int64 absolute_ticks = 2; + void clear_absolute_ticks() ; + ::int64_t absolute_ticks() const; + void set_absolute_ticks(::int64_t value); + + private: + ::int64_t _internal_absolute_ticks() const; + void _internal_set_absolute_ticks(::int64_t value); + + public: + // @@protoc_insertion_point(class_scope:daw.api.RealtimeCursorPosition) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 0, + 0, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const RealtimeCursorPosition& from_msg); + double time_in_seconds_; + ::int64_t absolute_ticks_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class PluginParameter final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.PluginParameter) */ { + public: + inline PluginParameter() : PluginParameter(nullptr) {} + ~PluginParameter() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(PluginParameter* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(PluginParameter)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR PluginParameter( + ::google::protobuf::internal::ConstantInitialized); + + inline PluginParameter(const PluginParameter& from) : PluginParameter(nullptr, from) {} + inline PluginParameter(PluginParameter&& from) noexcept + : PluginParameter(nullptr, std::move(from)) {} + inline PluginParameter& operator=(const PluginParameter& from) { + CopyFrom(from); + return *this; + } + inline PluginParameter& operator=(PluginParameter&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const PluginParameter& default_instance() { + return *internal_default_instance(); + } + static inline const PluginParameter* internal_default_instance() { + return reinterpret_cast( + &_PluginParameter_default_instance_); + } + static constexpr int kIndexInFileMessages = 13; + friend void swap(PluginParameter& a, PluginParameter& b) { a.Swap(&b); } + inline void Swap(PluginParameter* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(PluginParameter* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + PluginParameter* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const PluginParameter& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const PluginParameter& from) { PluginParameter::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(PluginParameter* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.PluginParameter"; } + + protected: + explicit PluginParameter(::google::protobuf::Arena* arena); + PluginParameter(::google::protobuf::Arena* arena, const PluginParameter& from); + PluginParameter(::google::protobuf::Arena* arena, PluginParameter&& from) noexcept + : PluginParameter(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kNameFieldNumber = 2, + kValueFieldNumber = 3, + kParameterIdFieldNumber = 1, + }; + // string name = 2; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); + + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + + public: + // double value = 3; + void clear_value() ; + double value() const; + void set_value(double value); + + private: + double _internal_value() const; + void _internal_set_value(double value); + + public: + // uint32 parameter_id = 1; + void clear_parameter_id() ; + ::uint32_t parameter_id() const; + void set_parameter_id(::uint32_t value); + + private: + ::uint32_t _internal_parameter_id() const; + void _internal_set_parameter_id(::uint32_t value); + + public: + // @@protoc_insertion_point(class_scope:daw.api.PluginParameter) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 3, 0, + 36, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const PluginParameter& from_msg); + ::google::protobuf::internal::ArenaStringPtr name_; + double value_; + ::uint32_t parameter_id_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class PlaybackState final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.PlaybackState) */ { + public: + inline PlaybackState() : PlaybackState(nullptr) {} + ~PlaybackState() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(PlaybackState* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(PlaybackState)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR PlaybackState( + ::google::protobuf::internal::ConstantInitialized); + + inline PlaybackState(const PlaybackState& from) : PlaybackState(nullptr, from) {} + inline PlaybackState(PlaybackState&& from) noexcept + : PlaybackState(nullptr, std::move(from)) {} + inline PlaybackState& operator=(const PlaybackState& from) { + CopyFrom(from); + return *this; + } + inline PlaybackState& operator=(PlaybackState&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const PlaybackState& default_instance() { + return *internal_default_instance(); + } + static inline const PlaybackState* internal_default_instance() { + return reinterpret_cast( + &_PlaybackState_default_instance_); + } + static constexpr int kIndexInFileMessages = 5; + friend void swap(PlaybackState& a, PlaybackState& b) { a.Swap(&b); } + inline void Swap(PlaybackState* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(PlaybackState* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + PlaybackState* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const PlaybackState& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const PlaybackState& from) { PlaybackState::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(PlaybackState* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.PlaybackState"; } + + protected: + explicit PlaybackState(::google::protobuf::Arena* arena); + PlaybackState(::google::protobuf::Arena* arena, const PlaybackState& from); + PlaybackState(::google::protobuf::Arena* arena, PlaybackState&& from) noexcept + : PlaybackState(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kBarFieldNumber = 1, + kBeatFieldNumber = 2, + kBpmFieldNumber = 4, + kTickFieldNumber = 3, + kIsPlayingFieldNumber = 6, + }; + // int32 bar = 1; + void clear_bar() ; + ::int32_t bar() const; + void set_bar(::int32_t value); + + private: + ::int32_t _internal_bar() const; + void _internal_set_bar(::int32_t value); + + public: + // int32 beat = 2; + void clear_beat() ; + ::int32_t beat() const; + void set_beat(::int32_t value); + + private: + ::int32_t _internal_beat() const; + void _internal_set_beat(::int32_t value); + + public: + // double bpm = 4; + void clear_bpm() ; + double bpm() const; + void set_bpm(double value); + + private: + double _internal_bpm() const; + void _internal_set_bpm(double value); + + public: + // int32 tick = 3; + void clear_tick() ; + ::int32_t tick() const; + void set_tick(::int32_t value); + + private: + ::int32_t _internal_tick() const; + void _internal_set_tick(::int32_t value); + + public: + // bool is_playing = 6; + void clear_is_playing() ; + bool is_playing() const; + void set_is_playing(bool value); + + private: + bool _internal_is_playing() const; + void _internal_set_is_playing(bool value); + + public: + // @@protoc_insertion_point(class_scope:daw.api.PlaybackState) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 5, 0, + 0, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const PlaybackState& from_msg); + ::int32_t bar_; + ::int32_t beat_; + double bpm_; + ::int32_t tick_; + bool is_playing_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class LoadProjectRequest final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.LoadProjectRequest) */ { + public: + inline LoadProjectRequest() : LoadProjectRequest(nullptr) {} + ~LoadProjectRequest() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(LoadProjectRequest* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(LoadProjectRequest)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR LoadProjectRequest( + ::google::protobuf::internal::ConstantInitialized); + + inline LoadProjectRequest(const LoadProjectRequest& from) : LoadProjectRequest(nullptr, from) {} + inline LoadProjectRequest(LoadProjectRequest&& from) noexcept + : LoadProjectRequest(nullptr, std::move(from)) {} + inline LoadProjectRequest& operator=(const LoadProjectRequest& from) { + CopyFrom(from); + return *this; + } + inline LoadProjectRequest& operator=(LoadProjectRequest&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const LoadProjectRequest& default_instance() { + return *internal_default_instance(); + } + static inline const LoadProjectRequest* internal_default_instance() { + return reinterpret_cast( + &_LoadProjectRequest_default_instance_); + } + static constexpr int kIndexInFileMessages = 3; + friend void swap(LoadProjectRequest& a, LoadProjectRequest& b) { a.Swap(&b); } + inline void Swap(LoadProjectRequest* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(LoadProjectRequest* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + LoadProjectRequest* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const LoadProjectRequest& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const LoadProjectRequest& from) { LoadProjectRequest::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(LoadProjectRequest* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.LoadProjectRequest"; } + + protected: + explicit LoadProjectRequest(::google::protobuf::Arena* arena); + LoadProjectRequest(::google::protobuf::Arena* arena, const LoadProjectRequest& from); + LoadProjectRequest(::google::protobuf::Arena* arena, LoadProjectRequest&& from) noexcept + : LoadProjectRequest(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kFilePathFieldNumber = 1, + }; + // string file_path = 1; + void clear_file_path() ; + const std::string& file_path() const; + template + void set_file_path(Arg_&& arg, Args_... args); + std::string* mutable_file_path(); + PROTOBUF_NODISCARD std::string* release_file_path(); + void set_allocated_file_path(std::string* value); + + private: + const std::string& _internal_file_path() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_file_path( + const std::string& value); + std::string* _internal_mutable_file_path(); + + public: + // @@protoc_insertion_point(class_scope:daw.api.LoadProjectRequest) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 44, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const LoadProjectRequest& from_msg); + ::google::protobuf::internal::ArenaStringPtr file_path_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class LoadPluginRequest final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.LoadPluginRequest) */ { + public: + inline LoadPluginRequest() : LoadPluginRequest(nullptr) {} + ~LoadPluginRequest() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(LoadPluginRequest* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(LoadPluginRequest)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR LoadPluginRequest( + ::google::protobuf::internal::ConstantInitialized); + + inline LoadPluginRequest(const LoadPluginRequest& from) : LoadPluginRequest(nullptr, from) {} + inline LoadPluginRequest(LoadPluginRequest&& from) noexcept + : LoadPluginRequest(nullptr, std::move(from)) {} + inline LoadPluginRequest& operator=(const LoadPluginRequest& from) { + CopyFrom(from); + return *this; + } + inline LoadPluginRequest& operator=(LoadPluginRequest&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const LoadPluginRequest& default_instance() { + return *internal_default_instance(); + } + static inline const LoadPluginRequest* internal_default_instance() { + return reinterpret_cast( + &_LoadPluginRequest_default_instance_); + } + static constexpr int kIndexInFileMessages = 15; + friend void swap(LoadPluginRequest& a, LoadPluginRequest& b) { a.Swap(&b); } + inline void Swap(LoadPluginRequest* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(LoadPluginRequest* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + LoadPluginRequest* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const LoadPluginRequest& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const LoadPluginRequest& from) { LoadPluginRequest::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(LoadPluginRequest* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.LoadPluginRequest"; } + + protected: + explicit LoadPluginRequest(::google::protobuf::Arena* arena); + LoadPluginRequest(::google::protobuf::Arena* arena, const LoadPluginRequest& from); + LoadPluginRequest(::google::protobuf::Arena* arena, LoadPluginRequest&& from) noexcept + : LoadPluginRequest(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kFilePathFieldNumber = 1, + }; + // string file_path = 1; + void clear_file_path() ; + const std::string& file_path() const; + template + void set_file_path(Arg_&& arg, Args_... args); + std::string* mutable_file_path(); + PROTOBUF_NODISCARD std::string* release_file_path(); + void set_allocated_file_path(std::string* value); + + private: + const std::string& _internal_file_path() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_file_path( + const std::string& value); + std::string* _internal_mutable_file_path(); + + public: + // @@protoc_insertion_point(class_scope:daw.api.LoadPluginRequest) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 0, + 43, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const LoadPluginRequest& from_msg); + ::google::protobuf::internal::ArenaStringPtr file_path_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class Empty final : public ::google::protobuf::internal::ZeroFieldsBase +/* @@protoc_insertion_point(class_definition:daw.api.Empty) */ { + public: + inline Empty() : Empty(nullptr) {} + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(Empty* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(Empty)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR Empty( + ::google::protobuf::internal::ConstantInitialized); + + inline Empty(const Empty& from) : Empty(nullptr, from) {} + inline Empty(Empty&& from) noexcept + : Empty(nullptr, std::move(from)) {} + inline Empty& operator=(const Empty& from) { + CopyFrom(from); + return *this; + } + inline Empty& operator=(Empty&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Empty& default_instance() { + return *internal_default_instance(); + } + static inline const Empty* internal_default_instance() { + return reinterpret_cast( + &_Empty_default_instance_); + } + static constexpr int kIndexInFileMessages = 0; + friend void swap(Empty& a, Empty& b) { a.Swap(&b); } + inline void Swap(Empty* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Empty* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + Empty* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::internal::ZeroFieldsBase::DefaultConstruct(arena); + } + using ::google::protobuf::internal::ZeroFieldsBase::CopyFrom; + inline void CopyFrom(const Empty& from) { + ::google::protobuf::internal::ZeroFieldsBase::CopyImpl(*this, from); + } + using ::google::protobuf::internal::ZeroFieldsBase::MergeFrom; + void MergeFrom(const Empty& from) { + ::google::protobuf::internal::ZeroFieldsBase::MergeImpl(*this, from); + } + + public: + bool IsInitialized() const { + return true; + } + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.Empty"; } + + protected: + explicit Empty(::google::protobuf::Arena* arena); + Empty(::google::protobuf::Arena* arena, const Empty& from); + Empty(::google::protobuf::Arena* arena, Empty&& from) noexcept + : Empty(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + // @@protoc_insertion_point(class_scope:daw.api.Empty) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 0, 0, + 0, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const Empty& from_msg); + PROTOBUF_TSAN_DECLARE_MEMBER + }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class AddTrackRequest final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.AddTrackRequest) */ { + public: + inline AddTrackRequest() : AddTrackRequest(nullptr) {} + ~AddTrackRequest() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(AddTrackRequest* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(AddTrackRequest)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR AddTrackRequest( + ::google::protobuf::internal::ConstantInitialized); + + inline AddTrackRequest(const AddTrackRequest& from) : AddTrackRequest(nullptr, from) {} + inline AddTrackRequest(AddTrackRequest&& from) noexcept + : AddTrackRequest(nullptr, std::move(from)) {} + inline AddTrackRequest& operator=(const AddTrackRequest& from) { + CopyFrom(from); + return *this; + } + inline AddTrackRequest& operator=(AddTrackRequest&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const AddTrackRequest& default_instance() { + return *internal_default_instance(); + } + static inline const AddTrackRequest* internal_default_instance() { + return reinterpret_cast( + &_AddTrackRequest_default_instance_); + } + static constexpr int kIndexInFileMessages = 8; + friend void swap(AddTrackRequest& a, AddTrackRequest& b) { a.Swap(&b); } + inline void Swap(AddTrackRequest* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(AddTrackRequest* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + AddTrackRequest* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const AddTrackRequest& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const AddTrackRequest& from) { AddTrackRequest::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(AddTrackRequest* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.AddTrackRequest"; } + + protected: + explicit AddTrackRequest(::google::protobuf::Arena* arena); + AddTrackRequest(::google::protobuf::Arena* arena, const AddTrackRequest& from); + AddTrackRequest(::google::protobuf::Arena* arena, AddTrackRequest&& from) noexcept + : AddTrackRequest(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kNameFieldNumber = 1, + kTypeFieldNumber = 2, + }; + // string name = 1; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); + + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + + public: + // .daw.api.TrackType type = 2; + void clear_type() ; + ::daw::api::TrackType type() const; + void set_type(::daw::api::TrackType value); + + private: + ::daw::api::TrackType _internal_type() const; + void _internal_set_type(::daw::api::TrackType value); + + public: + // @@protoc_insertion_point(class_scope:daw.api.AddTrackRequest) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 1, 2, 0, + 36, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const AddTrackRequest& from_msg); + ::google::protobuf::internal::ArenaStringPtr name_; + int type_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class VUMeterData final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.VUMeterData) */ { + public: + inline VUMeterData() : VUMeterData(nullptr) {} + ~VUMeterData() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(VUMeterData* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(VUMeterData)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR VUMeterData( + ::google::protobuf::internal::ConstantInitialized); + + inline VUMeterData(const VUMeterData& from) : VUMeterData(nullptr, from) {} + inline VUMeterData(VUMeterData&& from) noexcept + : VUMeterData(nullptr, std::move(from)) {} + inline VUMeterData& operator=(const VUMeterData& from) { + CopyFrom(from); + return *this; + } + inline VUMeterData& operator=(VUMeterData&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const VUMeterData& default_instance() { + return *internal_default_instance(); + } + static inline const VUMeterData* internal_default_instance() { + return reinterpret_cast( + &_VUMeterData_default_instance_); + } + static constexpr int kIndexInFileMessages = 17; + friend void swap(VUMeterData& a, VUMeterData& b) { a.Swap(&b); } + inline void Swap(VUMeterData* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(VUMeterData* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + VUMeterData* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const VUMeterData& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const VUMeterData& from) { VUMeterData::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(VUMeterData* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.VUMeterData"; } + + protected: + explicit VUMeterData(::google::protobuf::Arena* arena); + VUMeterData(::google::protobuf::Arena* arena, const VUMeterData& from); + VUMeterData(::google::protobuf::Arena* arena, VUMeterData&& from) noexcept + : VUMeterData(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kUpdatesFieldNumber = 1, + }; + // repeated .daw.api.VUMeterUpdate updates = 1; + int updates_size() const; + private: + int _internal_updates_size() const; + + public: + void clear_updates() ; + ::daw::api::VUMeterUpdate* mutable_updates(int index); + ::google::protobuf::RepeatedPtrField<::daw::api::VUMeterUpdate>* mutable_updates(); + + private: + const ::google::protobuf::RepeatedPtrField<::daw::api::VUMeterUpdate>& _internal_updates() const; + ::google::protobuf::RepeatedPtrField<::daw::api::VUMeterUpdate>* _internal_mutable_updates(); + public: + const ::daw::api::VUMeterUpdate& updates(int index) const; + ::daw::api::VUMeterUpdate* add_updates(); + const ::google::protobuf::RepeatedPtrField<::daw::api::VUMeterUpdate>& updates() const; + // @@protoc_insertion_point(class_scope:daw.api.VUMeterData) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 1, + 0, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const VUMeterData& from_msg); + ::google::protobuf::RepeatedPtrField< ::daw::api::VUMeterUpdate > updates_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class PluginInfo final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.PluginInfo) */ { + public: + inline PluginInfo() : PluginInfo(nullptr) {} + ~PluginInfo() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(PluginInfo* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(PluginInfo)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR PluginInfo( + ::google::protobuf::internal::ConstantInitialized); + + inline PluginInfo(const PluginInfo& from) : PluginInfo(nullptr, from) {} + inline PluginInfo(PluginInfo&& from) noexcept + : PluginInfo(nullptr, std::move(from)) {} + inline PluginInfo& operator=(const PluginInfo& from) { + CopyFrom(from); + return *this; + } + inline PluginInfo& operator=(PluginInfo&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const PluginInfo& default_instance() { + return *internal_default_instance(); + } + static inline const PluginInfo* internal_default_instance() { + return reinterpret_cast( + &_PluginInfo_default_instance_); + } + static constexpr int kIndexInFileMessages = 12; + friend void swap(PluginInfo& a, PluginInfo& b) { a.Swap(&b); } + inline void Swap(PluginInfo* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(PluginInfo* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + PluginInfo* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const PluginInfo& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const PluginInfo& from) { PluginInfo::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(PluginInfo* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.PluginInfo"; } + + protected: + explicit PluginInfo(::google::protobuf::Arena* arena); + PluginInfo(::google::protobuf::Arena* arena, const PluginInfo& from); + PluginInfo(::google::protobuf::Arena* arena, PluginInfo&& from) noexcept + : PluginInfo(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kParametersFieldNumber = 5, + kInstanceIdFieldNumber = 1, + kNameFieldNumber = 2, + kIsBypassedFieldNumber = 4, + }; + // repeated .daw.api.PluginParameter parameters = 5; + int parameters_size() const; + private: + int _internal_parameters_size() const; + + public: + void clear_parameters() ; + ::daw::api::PluginParameter* mutable_parameters(int index); + ::google::protobuf::RepeatedPtrField<::daw::api::PluginParameter>* mutable_parameters(); + + private: + const ::google::protobuf::RepeatedPtrField<::daw::api::PluginParameter>& _internal_parameters() const; + ::google::protobuf::RepeatedPtrField<::daw::api::PluginParameter>* _internal_mutable_parameters(); + public: + const ::daw::api::PluginParameter& parameters(int index) const; + ::daw::api::PluginParameter* add_parameters(); + const ::google::protobuf::RepeatedPtrField<::daw::api::PluginParameter>& parameters() const; + // string instance_id = 1; + void clear_instance_id() ; + const std::string& instance_id() const; + template + void set_instance_id(Arg_&& arg, Args_... args); + std::string* mutable_instance_id(); + PROTOBUF_NODISCARD std::string* release_instance_id(); + void set_allocated_instance_id(std::string* value); + + private: + const std::string& _internal_instance_id() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_instance_id( + const std::string& value); + std::string* _internal_mutable_instance_id(); + + public: + // string name = 2; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); + + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + + public: + // bool is_bypassed = 4; + void clear_is_bypassed() ; + bool is_bypassed() const; + void set_is_bypassed(bool value); + + private: + bool _internal_is_bypassed() const; + void _internal_set_is_bypassed(bool value); + + public: + // @@protoc_insertion_point(class_scope:daw.api.PluginInfo) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 3, 4, 1, + 42, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const PluginInfo& from_msg); + ::google::protobuf::RepeatedPtrField< ::daw::api::PluginParameter > parameters_; + ::google::protobuf::internal::ArenaStringPtr instance_id_; + ::google::protobuf::internal::ArenaStringPtr name_; + bool is_bypassed_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class TrackInfo final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.TrackInfo) */ { + public: + inline TrackInfo() : TrackInfo(nullptr) {} + ~TrackInfo() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(TrackInfo* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(TrackInfo)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR TrackInfo( + ::google::protobuf::internal::ConstantInitialized); + + inline TrackInfo(const TrackInfo& from) : TrackInfo(nullptr, from) {} + inline TrackInfo(TrackInfo&& from) noexcept + : TrackInfo(nullptr, std::move(from)) {} + inline TrackInfo& operator=(const TrackInfo& from) { + CopyFrom(from); + return *this; + } + inline TrackInfo& operator=(TrackInfo&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const TrackInfo& default_instance() { + return *internal_default_instance(); + } + static inline const TrackInfo* internal_default_instance() { + return reinterpret_cast( + &_TrackInfo_default_instance_); + } + static constexpr int kIndexInFileMessages = 7; + friend void swap(TrackInfo& a, TrackInfo& b) { a.Swap(&b); } + inline void Swap(TrackInfo* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(TrackInfo* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + TrackInfo* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const TrackInfo& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const TrackInfo& from) { TrackInfo::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(TrackInfo* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.TrackInfo"; } + + protected: + explicit TrackInfo(::google::protobuf::Arena* arena); + TrackInfo(::google::protobuf::Arena* arena, const TrackInfo& from); + TrackInfo(::google::protobuf::Arena* arena, TrackInfo&& from) noexcept + : TrackInfo(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kPluginsFieldNumber = 9, + kTrackIdFieldNumber = 1, + kNameFieldNumber = 2, + kTypeFieldNumber = 3, + kVolumeDbFieldNumber = 5, + kPanFieldNumber = 6, + kIsMutedFieldNumber = 7, + kIsSoloedFieldNumber = 8, + }; + // repeated .daw.api.PluginInfo plugins = 9; + int plugins_size() const; + private: + int _internal_plugins_size() const; + + public: + void clear_plugins() ; + ::daw::api::PluginInfo* mutable_plugins(int index); + ::google::protobuf::RepeatedPtrField<::daw::api::PluginInfo>* mutable_plugins(); + + private: + const ::google::protobuf::RepeatedPtrField<::daw::api::PluginInfo>& _internal_plugins() const; + ::google::protobuf::RepeatedPtrField<::daw::api::PluginInfo>* _internal_mutable_plugins(); + public: + const ::daw::api::PluginInfo& plugins(int index) const; + ::daw::api::PluginInfo* add_plugins(); + const ::google::protobuf::RepeatedPtrField<::daw::api::PluginInfo>& plugins() const; + // string track_id = 1; + void clear_track_id() ; + const std::string& track_id() const; + template + void set_track_id(Arg_&& arg, Args_... args); + std::string* mutable_track_id(); + PROTOBUF_NODISCARD std::string* release_track_id(); + void set_allocated_track_id(std::string* value); + + private: + const std::string& _internal_track_id() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_track_id( + const std::string& value); + std::string* _internal_mutable_track_id(); + + public: + // string name = 2; + void clear_name() ; + const std::string& name() const; + template + void set_name(Arg_&& arg, Args_... args); + std::string* mutable_name(); + PROTOBUF_NODISCARD std::string* release_name(); + void set_allocated_name(std::string* value); + + private: + const std::string& _internal_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_name( + const std::string& value); + std::string* _internal_mutable_name(); + + public: + // .daw.api.TrackType type = 3; + void clear_type() ; + ::daw::api::TrackType type() const; + void set_type(::daw::api::TrackType value); + + private: + ::daw::api::TrackType _internal_type() const; + void _internal_set_type(::daw::api::TrackType value); + + public: + // float volume_db = 5; + void clear_volume_db() ; + float volume_db() const; + void set_volume_db(float value); + + private: + float _internal_volume_db() const; + void _internal_set_volume_db(float value); + + public: + // float pan = 6; + void clear_pan() ; + float pan() const; + void set_pan(float value); + + private: + float _internal_pan() const; + void _internal_set_pan(float value); + + public: + // bool is_muted = 7; + void clear_is_muted() ; + bool is_muted() const; + void set_is_muted(bool value); + + private: + bool _internal_is_muted() const; + void _internal_set_is_muted(bool value); + + public: + // bool is_soloed = 8; + void clear_is_soloed() ; + bool is_soloed() const; + void set_is_soloed(bool value); + + private: + bool _internal_is_soloed() const; + void _internal_set_is_soloed(bool value); + + public: + // @@protoc_insertion_point(class_scope:daw.api.TrackInfo) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 4, 8, 1, + 46, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const TrackInfo& from_msg); + ::google::protobuf::RepeatedPtrField< ::daw::api::PluginInfo > plugins_; + ::google::protobuf::internal::ArenaStringPtr track_id_; + ::google::protobuf::internal::ArenaStringPtr name_; + int type_; + float volume_db_; + float pan_; + bool is_muted_; + bool is_soloed_; + ::google::protobuf::internal::CachedSize _cached_size_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; +// ------------------------------------------------------------------- + +class ProjectState final : public ::google::protobuf::Message +/* @@protoc_insertion_point(class_definition:daw.api.ProjectState) */ { + public: + inline ProjectState() : ProjectState(nullptr) {} + ~ProjectState() PROTOBUF_FINAL; + +#if defined(PROTOBUF_CUSTOM_VTABLE) + void operator delete(ProjectState* msg, std::destroying_delete_t) { + SharedDtor(*msg); + ::google::protobuf::internal::SizedDelete(msg, sizeof(ProjectState)); + } +#endif + + template + explicit PROTOBUF_CONSTEXPR ProjectState( + ::google::protobuf::internal::ConstantInitialized); + + inline ProjectState(const ProjectState& from) : ProjectState(nullptr, from) {} + inline ProjectState(ProjectState&& from) noexcept + : ProjectState(nullptr, std::move(from)) {} + inline ProjectState& operator=(const ProjectState& from) { + CopyFrom(from); + return *this; + } + inline ProjectState& operator=(ProjectState&& from) noexcept { + if (this == &from) return *this; + if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ProjectState& default_instance() { + return *internal_default_instance(); + } + static inline const ProjectState* internal_default_instance() { + return reinterpret_cast( + &_ProjectState_default_instance_); + } + static constexpr int kIndexInFileMessages = 2; + friend void swap(ProjectState& a, ProjectState& b) { a.Swap(&b); } + inline void Swap(ProjectState* other) { + if (other == this) return; + if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) { + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ProjectState* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + ProjectState* New(::google::protobuf::Arena* arena = nullptr) const { + return ::google::protobuf::Message::DefaultConstruct(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const ProjectState& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom(const ProjectState& from) { ProjectState::MergeImpl(*this, from); } + + private: + static void MergeImpl( + ::google::protobuf::MessageLite& to_msg, + const ::google::protobuf::MessageLite& from_msg); + + public: + bool IsInitialized() const { + return true; + } + ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL; + #if defined(PROTOBUF_CUSTOM_VTABLE) + private: + static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg); + static ::uint8_t* _InternalSerialize( + const MessageLite& msg, ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream); + + public: + ::size_t ByteSizeLong() const { return ByteSizeLong(*this); } + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + return _InternalSerialize(*this, target, stream); + } + #else // PROTOBUF_CUSTOM_VTABLE + ::size_t ByteSizeLong() const final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + #endif // PROTOBUF_CUSTOM_VTABLE + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + void SharedCtor(::google::protobuf::Arena* arena); + static void SharedDtor(MessageLite& self); + void InternalSwap(ProjectState* other); + private: + template + friend ::absl::string_view( + ::google::protobuf::internal::GetAnyMessageName)(); + static ::absl::string_view FullMessageName() { return "daw.api.ProjectState"; } + + protected: + explicit ProjectState(::google::protobuf::Arena* arena); + ProjectState(::google::protobuf::Arena* arena, const ProjectState& from); + ProjectState(::google::protobuf::Arena* arena, ProjectState&& from) noexcept + : ProjectState(arena) { + *this = ::std::move(from); + } + const ::google::protobuf::internal::ClassData* GetClassData() const PROTOBUF_FINAL; + static void* PlacementNew_(const void*, void* mem, + ::google::protobuf::Arena* arena); + static constexpr auto InternalNewImpl_(); + static const ::google::protobuf::internal::ClassDataFull _class_data_; + + public: + ::google::protobuf::Metadata GetMetadata() const; + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + enum : int { + kTracksFieldNumber = 4, + kProjectIdFieldNumber = 1, + kProjectNameFieldNumber = 2, + kPlaybackStateFieldNumber = 3, + }; + // repeated .daw.api.TrackInfo tracks = 4; + int tracks_size() const; + private: + int _internal_tracks_size() const; + + public: + void clear_tracks() ; + ::daw::api::TrackInfo* mutable_tracks(int index); + ::google::protobuf::RepeatedPtrField<::daw::api::TrackInfo>* mutable_tracks(); + + private: + const ::google::protobuf::RepeatedPtrField<::daw::api::TrackInfo>& _internal_tracks() const; + ::google::protobuf::RepeatedPtrField<::daw::api::TrackInfo>* _internal_mutable_tracks(); + public: + const ::daw::api::TrackInfo& tracks(int index) const; + ::daw::api::TrackInfo* add_tracks(); + const ::google::protobuf::RepeatedPtrField<::daw::api::TrackInfo>& tracks() const; + // string project_id = 1; + void clear_project_id() ; + const std::string& project_id() const; + template + void set_project_id(Arg_&& arg, Args_... args); + std::string* mutable_project_id(); + PROTOBUF_NODISCARD std::string* release_project_id(); + void set_allocated_project_id(std::string* value); + + private: + const std::string& _internal_project_id() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_project_id( + const std::string& value); + std::string* _internal_mutable_project_id(); + + public: + // string project_name = 2; + void clear_project_name() ; + const std::string& project_name() const; + template + void set_project_name(Arg_&& arg, Args_... args); + std::string* mutable_project_name(); + PROTOBUF_NODISCARD std::string* release_project_name(); + void set_allocated_project_name(std::string* value); + + private: + const std::string& _internal_project_name() const; + inline PROTOBUF_ALWAYS_INLINE void _internal_set_project_name( + const std::string& value); + std::string* _internal_mutable_project_name(); + + public: + // .daw.api.PlaybackState playback_state = 3; + bool has_playback_state() const; + void clear_playback_state() ; + const ::daw::api::PlaybackState& playback_state() const; + PROTOBUF_NODISCARD ::daw::api::PlaybackState* release_playback_state(); + ::daw::api::PlaybackState* mutable_playback_state(); + void set_allocated_playback_state(::daw::api::PlaybackState* value); + void unsafe_arena_set_allocated_playback_state(::daw::api::PlaybackState* value); + ::daw::api::PlaybackState* unsafe_arena_release_playback_state(); + + private: + const ::daw::api::PlaybackState& _internal_playback_state() const; + ::daw::api::PlaybackState* _internal_mutable_playback_state(); + + public: + // @@protoc_insertion_point(class_scope:daw.api.ProjectState) + private: + class _Internal; + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 2, 4, 2, + 51, 2> + _table_; + + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from, + const ProjectState& from_msg); + ::google::protobuf::internal::HasBits<1> _has_bits_; + ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::RepeatedPtrField< ::daw::api::TrackInfo > tracks_; + ::google::protobuf::internal::ArenaStringPtr project_id_; + ::google::protobuf::internal::ArenaStringPtr project_name_; + ::daw::api::PlaybackState* playback_state_; + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_daw_5fapi_2eproto; +}; + +// =================================================================== + + + + +// =================================================================== + + +#ifdef __GNUC__ +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// ------------------------------------------------------------------- + +// Empty + +// ------------------------------------------------------------------- + +// StatusResponse + +// bool success = 1; +inline void StatusResponse::clear_success() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.success_ = false; +} +inline bool StatusResponse::success() const { + // @@protoc_insertion_point(field_get:daw.api.StatusResponse.success) + return _internal_success(); +} +inline void StatusResponse::set_success(bool value) { + _internal_set_success(value); + // @@protoc_insertion_point(field_set:daw.api.StatusResponse.success) +} +inline bool StatusResponse::_internal_success() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.success_; +} +inline void StatusResponse::_internal_set_success(bool value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.success_ = value; +} + +// string error_message = 2; +inline void StatusResponse::clear_error_message() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.error_message_.ClearToEmpty(); +} +inline const std::string& StatusResponse::error_message() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.StatusResponse.error_message) + return _internal_error_message(); +} +template +inline PROTOBUF_ALWAYS_INLINE void StatusResponse::set_error_message(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.error_message_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.StatusResponse.error_message) +} +inline std::string* StatusResponse::mutable_error_message() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_error_message(); + // @@protoc_insertion_point(field_mutable:daw.api.StatusResponse.error_message) + return _s; +} +inline const std::string& StatusResponse::_internal_error_message() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.error_message_.Get(); +} +inline void StatusResponse::_internal_set_error_message(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.error_message_.Set(value, GetArena()); +} +inline std::string* StatusResponse::_internal_mutable_error_message() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.error_message_.Mutable( GetArena()); +} +inline std::string* StatusResponse::release_error_message() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.StatusResponse.error_message) + return _impl_.error_message_.Release(); +} +inline void StatusResponse::set_allocated_error_message(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.error_message_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.error_message_.IsDefault()) { + _impl_.error_message_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.StatusResponse.error_message) +} + +// ------------------------------------------------------------------- + +// ProjectState + +// string project_id = 1; +inline void ProjectState::clear_project_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.project_id_.ClearToEmpty(); +} +inline const std::string& ProjectState::project_id() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.ProjectState.project_id) + return _internal_project_id(); +} +template +inline PROTOBUF_ALWAYS_INLINE void ProjectState::set_project_id(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.project_id_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.ProjectState.project_id) +} +inline std::string* ProjectState::mutable_project_id() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_project_id(); + // @@protoc_insertion_point(field_mutable:daw.api.ProjectState.project_id) + return _s; +} +inline const std::string& ProjectState::_internal_project_id() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.project_id_.Get(); +} +inline void ProjectState::_internal_set_project_id(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.project_id_.Set(value, GetArena()); +} +inline std::string* ProjectState::_internal_mutable_project_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.project_id_.Mutable( GetArena()); +} +inline std::string* ProjectState::release_project_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.ProjectState.project_id) + return _impl_.project_id_.Release(); +} +inline void ProjectState::set_allocated_project_id(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.project_id_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.project_id_.IsDefault()) { + _impl_.project_id_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.ProjectState.project_id) +} + +// string project_name = 2; +inline void ProjectState::clear_project_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.project_name_.ClearToEmpty(); +} +inline const std::string& ProjectState::project_name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.ProjectState.project_name) + return _internal_project_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE void ProjectState::set_project_name(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.project_name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.ProjectState.project_name) +} +inline std::string* ProjectState::mutable_project_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_project_name(); + // @@protoc_insertion_point(field_mutable:daw.api.ProjectState.project_name) + return _s; +} +inline const std::string& ProjectState::_internal_project_name() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.project_name_.Get(); +} +inline void ProjectState::_internal_set_project_name(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.project_name_.Set(value, GetArena()); +} +inline std::string* ProjectState::_internal_mutable_project_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.project_name_.Mutable( GetArena()); +} +inline std::string* ProjectState::release_project_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.ProjectState.project_name) + return _impl_.project_name_.Release(); +} +inline void ProjectState::set_allocated_project_name(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.project_name_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.project_name_.IsDefault()) { + _impl_.project_name_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.ProjectState.project_name) +} + +// .daw.api.PlaybackState playback_state = 3; +inline bool ProjectState::has_playback_state() const { + bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0; + PROTOBUF_ASSUME(!value || _impl_.playback_state_ != nullptr); + return value; +} +inline void ProjectState::clear_playback_state() { + ::google::protobuf::internal::TSanWrite(&_impl_); + if (_impl_.playback_state_ != nullptr) _impl_.playback_state_->Clear(); + _impl_._has_bits_[0] &= ~0x00000001u; +} +inline const ::daw::api::PlaybackState& ProjectState::_internal_playback_state() const { + ::google::protobuf::internal::TSanRead(&_impl_); + const ::daw::api::PlaybackState* p = _impl_.playback_state_; + return p != nullptr ? *p : reinterpret_cast(::daw::api::_PlaybackState_default_instance_); +} +inline const ::daw::api::PlaybackState& ProjectState::playback_state() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.ProjectState.playback_state) + return _internal_playback_state(); +} +inline void ProjectState::unsafe_arena_set_allocated_playback_state(::daw::api::PlaybackState* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + if (GetArena() == nullptr) { + delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.playback_state_); + } + _impl_.playback_state_ = reinterpret_cast<::daw::api::PlaybackState*>(value); + if (value != nullptr) { + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:daw.api.ProjectState.playback_state) +} +inline ::daw::api::PlaybackState* ProjectState::release_playback_state() { + ::google::protobuf::internal::TSanWrite(&_impl_); + + _impl_._has_bits_[0] &= ~0x00000001u; + ::daw::api::PlaybackState* released = _impl_.playback_state_; + _impl_.playback_state_ = nullptr; + if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) { + auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released); + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + if (GetArena() == nullptr) { + delete old; + } + } else { + if (GetArena() != nullptr) { + released = ::google::protobuf::internal::DuplicateIfNonNull(released); + } + } + return released; +} +inline ::daw::api::PlaybackState* ProjectState::unsafe_arena_release_playback_state() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.ProjectState.playback_state) + + _impl_._has_bits_[0] &= ~0x00000001u; + ::daw::api::PlaybackState* temp = _impl_.playback_state_; + _impl_.playback_state_ = nullptr; + return temp; +} +inline ::daw::api::PlaybackState* ProjectState::_internal_mutable_playback_state() { + ::google::protobuf::internal::TSanWrite(&_impl_); + if (_impl_.playback_state_ == nullptr) { + auto* p = ::google::protobuf::Message::DefaultConstruct<::daw::api::PlaybackState>(GetArena()); + _impl_.playback_state_ = reinterpret_cast<::daw::api::PlaybackState*>(p); + } + return _impl_.playback_state_; +} +inline ::daw::api::PlaybackState* ProjectState::mutable_playback_state() ABSL_ATTRIBUTE_LIFETIME_BOUND { + _impl_._has_bits_[0] |= 0x00000001u; + ::daw::api::PlaybackState* _msg = _internal_mutable_playback_state(); + // @@protoc_insertion_point(field_mutable:daw.api.ProjectState.playback_state) + return _msg; +} +inline void ProjectState::set_allocated_playback_state(::daw::api::PlaybackState* value) { + ::google::protobuf::Arena* message_arena = GetArena(); + ::google::protobuf::internal::TSanWrite(&_impl_); + if (message_arena == nullptr) { + delete (_impl_.playback_state_); + } + + if (value != nullptr) { + ::google::protobuf::Arena* submessage_arena = (value)->GetArena(); + if (message_arena != submessage_arena) { + value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena); + } + _impl_._has_bits_[0] |= 0x00000001u; + } else { + _impl_._has_bits_[0] &= ~0x00000001u; + } + + _impl_.playback_state_ = reinterpret_cast<::daw::api::PlaybackState*>(value); + // @@protoc_insertion_point(field_set_allocated:daw.api.ProjectState.playback_state) +} + +// repeated .daw.api.TrackInfo tracks = 4; +inline int ProjectState::_internal_tracks_size() const { + return _internal_tracks().size(); +} +inline int ProjectState::tracks_size() const { + return _internal_tracks_size(); +} +inline void ProjectState::clear_tracks() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.tracks_.Clear(); +} +inline ::daw::api::TrackInfo* ProjectState::mutable_tracks(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:daw.api.ProjectState.tracks) + return _internal_mutable_tracks()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::daw::api::TrackInfo>* ProjectState::mutable_tracks() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:daw.api.ProjectState.tracks) + ::google::protobuf::internal::TSanWrite(&_impl_); + return _internal_mutable_tracks(); +} +inline const ::daw::api::TrackInfo& ProjectState::tracks(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.ProjectState.tracks) + return _internal_tracks().Get(index); +} +inline ::daw::api::TrackInfo* ProjectState::add_tracks() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::google::protobuf::internal::TSanWrite(&_impl_); + ::daw::api::TrackInfo* _add = _internal_mutable_tracks()->Add(); + // @@protoc_insertion_point(field_add:daw.api.ProjectState.tracks) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::daw::api::TrackInfo>& ProjectState::tracks() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:daw.api.ProjectState.tracks) + return _internal_tracks(); +} +inline const ::google::protobuf::RepeatedPtrField<::daw::api::TrackInfo>& +ProjectState::_internal_tracks() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.tracks_; +} +inline ::google::protobuf::RepeatedPtrField<::daw::api::TrackInfo>* +ProjectState::_internal_mutable_tracks() { + ::google::protobuf::internal::TSanRead(&_impl_); + return &_impl_.tracks_; +} + +// ------------------------------------------------------------------- + +// LoadProjectRequest + +// string file_path = 1; +inline void LoadProjectRequest::clear_file_path() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.file_path_.ClearToEmpty(); +} +inline const std::string& LoadProjectRequest::file_path() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.LoadProjectRequest.file_path) + return _internal_file_path(); +} +template +inline PROTOBUF_ALWAYS_INLINE void LoadProjectRequest::set_file_path(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.file_path_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.LoadProjectRequest.file_path) +} +inline std::string* LoadProjectRequest::mutable_file_path() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_file_path(); + // @@protoc_insertion_point(field_mutable:daw.api.LoadProjectRequest.file_path) + return _s; +} +inline const std::string& LoadProjectRequest::_internal_file_path() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.file_path_.Get(); +} +inline void LoadProjectRequest::_internal_set_file_path(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.file_path_.Set(value, GetArena()); +} +inline std::string* LoadProjectRequest::_internal_mutable_file_path() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.file_path_.Mutable( GetArena()); +} +inline std::string* LoadProjectRequest::release_file_path() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.LoadProjectRequest.file_path) + return _impl_.file_path_.Release(); +} +inline void LoadProjectRequest::set_allocated_file_path(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.file_path_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.file_path_.IsDefault()) { + _impl_.file_path_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.LoadProjectRequest.file_path) +} + +// ------------------------------------------------------------------- + +// SaveProjectRequest + +// string file_path = 1; +inline void SaveProjectRequest::clear_file_path() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.file_path_.ClearToEmpty(); +} +inline const std::string& SaveProjectRequest::file_path() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.SaveProjectRequest.file_path) + return _internal_file_path(); +} +template +inline PROTOBUF_ALWAYS_INLINE void SaveProjectRequest::set_file_path(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.file_path_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.SaveProjectRequest.file_path) +} +inline std::string* SaveProjectRequest::mutable_file_path() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_file_path(); + // @@protoc_insertion_point(field_mutable:daw.api.SaveProjectRequest.file_path) + return _s; +} +inline const std::string& SaveProjectRequest::_internal_file_path() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.file_path_.Get(); +} +inline void SaveProjectRequest::_internal_set_file_path(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.file_path_.Set(value, GetArena()); +} +inline std::string* SaveProjectRequest::_internal_mutable_file_path() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.file_path_.Mutable( GetArena()); +} +inline std::string* SaveProjectRequest::release_file_path() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.SaveProjectRequest.file_path) + return _impl_.file_path_.Release(); +} +inline void SaveProjectRequest::set_allocated_file_path(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.file_path_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.file_path_.IsDefault()) { + _impl_.file_path_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.SaveProjectRequest.file_path) +} + +// ------------------------------------------------------------------- + +// PlaybackState + +// int32 bar = 1; +inline void PlaybackState::clear_bar() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.bar_ = 0; +} +inline ::int32_t PlaybackState::bar() const { + // @@protoc_insertion_point(field_get:daw.api.PlaybackState.bar) + return _internal_bar(); +} +inline void PlaybackState::set_bar(::int32_t value) { + _internal_set_bar(value); + // @@protoc_insertion_point(field_set:daw.api.PlaybackState.bar) +} +inline ::int32_t PlaybackState::_internal_bar() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.bar_; +} +inline void PlaybackState::_internal_set_bar(::int32_t value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.bar_ = value; +} + +// int32 beat = 2; +inline void PlaybackState::clear_beat() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.beat_ = 0; +} +inline ::int32_t PlaybackState::beat() const { + // @@protoc_insertion_point(field_get:daw.api.PlaybackState.beat) + return _internal_beat(); +} +inline void PlaybackState::set_beat(::int32_t value) { + _internal_set_beat(value); + // @@protoc_insertion_point(field_set:daw.api.PlaybackState.beat) +} +inline ::int32_t PlaybackState::_internal_beat() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.beat_; +} +inline void PlaybackState::_internal_set_beat(::int32_t value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.beat_ = value; +} + +// int32 tick = 3; +inline void PlaybackState::clear_tick() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.tick_ = 0; +} +inline ::int32_t PlaybackState::tick() const { + // @@protoc_insertion_point(field_get:daw.api.PlaybackState.tick) + return _internal_tick(); +} +inline void PlaybackState::set_tick(::int32_t value) { + _internal_set_tick(value); + // @@protoc_insertion_point(field_set:daw.api.PlaybackState.tick) +} +inline ::int32_t PlaybackState::_internal_tick() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.tick_; +} +inline void PlaybackState::_internal_set_tick(::int32_t value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.tick_ = value; +} + +// double bpm = 4; +inline void PlaybackState::clear_bpm() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.bpm_ = 0; +} +inline double PlaybackState::bpm() const { + // @@protoc_insertion_point(field_get:daw.api.PlaybackState.bpm) + return _internal_bpm(); +} +inline void PlaybackState::set_bpm(double value) { + _internal_set_bpm(value); + // @@protoc_insertion_point(field_set:daw.api.PlaybackState.bpm) +} +inline double PlaybackState::_internal_bpm() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.bpm_; +} +inline void PlaybackState::_internal_set_bpm(double value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.bpm_ = value; +} + +// bool is_playing = 6; +inline void PlaybackState::clear_is_playing() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.is_playing_ = false; +} +inline bool PlaybackState::is_playing() const { + // @@protoc_insertion_point(field_get:daw.api.PlaybackState.is_playing) + return _internal_is_playing(); +} +inline void PlaybackState::set_is_playing(bool value) { + _internal_set_is_playing(value); + // @@protoc_insertion_point(field_set:daw.api.PlaybackState.is_playing) +} +inline bool PlaybackState::_internal_is_playing() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.is_playing_; +} +inline void PlaybackState::_internal_set_is_playing(bool value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.is_playing_ = value; +} + +// ------------------------------------------------------------------- + +// SetTempoRequest + +// double bpm = 1; +inline void SetTempoRequest::clear_bpm() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.bpm_ = 0; +} +inline double SetTempoRequest::bpm() const { + // @@protoc_insertion_point(field_get:daw.api.SetTempoRequest.bpm) + return _internal_bpm(); +} +inline void SetTempoRequest::set_bpm(double value) { + _internal_set_bpm(value); + // @@protoc_insertion_point(field_set:daw.api.SetTempoRequest.bpm) +} +inline double SetTempoRequest::_internal_bpm() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.bpm_; +} +inline void SetTempoRequest::_internal_set_bpm(double value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.bpm_ = value; +} + +// ------------------------------------------------------------------- + +// TrackInfo + +// string track_id = 1; +inline void TrackInfo::clear_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.ClearToEmpty(); +} +inline const std::string& TrackInfo::track_id() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.TrackInfo.track_id) + return _internal_track_id(); +} +template +inline PROTOBUF_ALWAYS_INLINE void TrackInfo::set_track_id(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.TrackInfo.track_id) +} +inline std::string* TrackInfo::mutable_track_id() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_track_id(); + // @@protoc_insertion_point(field_mutable:daw.api.TrackInfo.track_id) + return _s; +} +inline const std::string& TrackInfo::_internal_track_id() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.track_id_.Get(); +} +inline void TrackInfo::_internal_set_track_id(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.Set(value, GetArena()); +} +inline std::string* TrackInfo::_internal_mutable_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.track_id_.Mutable( GetArena()); +} +inline std::string* TrackInfo::release_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.TrackInfo.track_id) + return _impl_.track_id_.Release(); +} +inline void TrackInfo::set_allocated_track_id(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.track_id_.IsDefault()) { + _impl_.track_id_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.TrackInfo.track_id) +} + +// string name = 2; +inline void TrackInfo::clear_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.ClearToEmpty(); +} +inline const std::string& TrackInfo::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.TrackInfo.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE void TrackInfo::set_name(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.TrackInfo.name) +} +inline std::string* TrackInfo::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:daw.api.TrackInfo.name) + return _s; +} +inline const std::string& TrackInfo::_internal_name() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.name_.Get(); +} +inline void TrackInfo::_internal_set_name(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.Set(value, GetArena()); +} +inline std::string* TrackInfo::_internal_mutable_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.name_.Mutable( GetArena()); +} +inline std::string* TrackInfo::release_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.TrackInfo.name) + return _impl_.name_.Release(); +} +inline void TrackInfo::set_allocated_name(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.TrackInfo.name) +} + +// .daw.api.TrackType type = 3; +inline void TrackInfo::clear_type() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.type_ = 0; +} +inline ::daw::api::TrackType TrackInfo::type() const { + // @@protoc_insertion_point(field_get:daw.api.TrackInfo.type) + return _internal_type(); +} +inline void TrackInfo::set_type(::daw::api::TrackType value) { + _internal_set_type(value); + // @@protoc_insertion_point(field_set:daw.api.TrackInfo.type) +} +inline ::daw::api::TrackType TrackInfo::_internal_type() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return static_cast<::daw::api::TrackType>(_impl_.type_); +} +inline void TrackInfo::_internal_set_type(::daw::api::TrackType value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.type_ = value; +} + +// float volume_db = 5; +inline void TrackInfo::clear_volume_db() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.volume_db_ = 0; +} +inline float TrackInfo::volume_db() const { + // @@protoc_insertion_point(field_get:daw.api.TrackInfo.volume_db) + return _internal_volume_db(); +} +inline void TrackInfo::set_volume_db(float value) { + _internal_set_volume_db(value); + // @@protoc_insertion_point(field_set:daw.api.TrackInfo.volume_db) +} +inline float TrackInfo::_internal_volume_db() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.volume_db_; +} +inline void TrackInfo::_internal_set_volume_db(float value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.volume_db_ = value; +} + +// float pan = 6; +inline void TrackInfo::clear_pan() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.pan_ = 0; +} +inline float TrackInfo::pan() const { + // @@protoc_insertion_point(field_get:daw.api.TrackInfo.pan) + return _internal_pan(); +} +inline void TrackInfo::set_pan(float value) { + _internal_set_pan(value); + // @@protoc_insertion_point(field_set:daw.api.TrackInfo.pan) +} +inline float TrackInfo::_internal_pan() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.pan_; +} +inline void TrackInfo::_internal_set_pan(float value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.pan_ = value; +} + +// bool is_muted = 7; +inline void TrackInfo::clear_is_muted() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.is_muted_ = false; +} +inline bool TrackInfo::is_muted() const { + // @@protoc_insertion_point(field_get:daw.api.TrackInfo.is_muted) + return _internal_is_muted(); +} +inline void TrackInfo::set_is_muted(bool value) { + _internal_set_is_muted(value); + // @@protoc_insertion_point(field_set:daw.api.TrackInfo.is_muted) +} +inline bool TrackInfo::_internal_is_muted() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.is_muted_; +} +inline void TrackInfo::_internal_set_is_muted(bool value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.is_muted_ = value; +} + +// bool is_soloed = 8; +inline void TrackInfo::clear_is_soloed() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.is_soloed_ = false; +} +inline bool TrackInfo::is_soloed() const { + // @@protoc_insertion_point(field_get:daw.api.TrackInfo.is_soloed) + return _internal_is_soloed(); +} +inline void TrackInfo::set_is_soloed(bool value) { + _internal_set_is_soloed(value); + // @@protoc_insertion_point(field_set:daw.api.TrackInfo.is_soloed) +} +inline bool TrackInfo::_internal_is_soloed() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.is_soloed_; +} +inline void TrackInfo::_internal_set_is_soloed(bool value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.is_soloed_ = value; +} + +// repeated .daw.api.PluginInfo plugins = 9; +inline int TrackInfo::_internal_plugins_size() const { + return _internal_plugins().size(); +} +inline int TrackInfo::plugins_size() const { + return _internal_plugins_size(); +} +inline void TrackInfo::clear_plugins() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.plugins_.Clear(); +} +inline ::daw::api::PluginInfo* TrackInfo::mutable_plugins(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:daw.api.TrackInfo.plugins) + return _internal_mutable_plugins()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::daw::api::PluginInfo>* TrackInfo::mutable_plugins() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:daw.api.TrackInfo.plugins) + ::google::protobuf::internal::TSanWrite(&_impl_); + return _internal_mutable_plugins(); +} +inline const ::daw::api::PluginInfo& TrackInfo::plugins(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.TrackInfo.plugins) + return _internal_plugins().Get(index); +} +inline ::daw::api::PluginInfo* TrackInfo::add_plugins() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::google::protobuf::internal::TSanWrite(&_impl_); + ::daw::api::PluginInfo* _add = _internal_mutable_plugins()->Add(); + // @@protoc_insertion_point(field_add:daw.api.TrackInfo.plugins) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::daw::api::PluginInfo>& TrackInfo::plugins() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:daw.api.TrackInfo.plugins) + return _internal_plugins(); +} +inline const ::google::protobuf::RepeatedPtrField<::daw::api::PluginInfo>& +TrackInfo::_internal_plugins() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.plugins_; +} +inline ::google::protobuf::RepeatedPtrField<::daw::api::PluginInfo>* +TrackInfo::_internal_mutable_plugins() { + ::google::protobuf::internal::TSanRead(&_impl_); + return &_impl_.plugins_; +} + +// ------------------------------------------------------------------- + +// AddTrackRequest + +// string name = 1; +inline void AddTrackRequest::clear_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.ClearToEmpty(); +} +inline const std::string& AddTrackRequest::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.AddTrackRequest.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE void AddTrackRequest::set_name(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.AddTrackRequest.name) +} +inline std::string* AddTrackRequest::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:daw.api.AddTrackRequest.name) + return _s; +} +inline const std::string& AddTrackRequest::_internal_name() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.name_.Get(); +} +inline void AddTrackRequest::_internal_set_name(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.Set(value, GetArena()); +} +inline std::string* AddTrackRequest::_internal_mutable_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.name_.Mutable( GetArena()); +} +inline std::string* AddTrackRequest::release_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.AddTrackRequest.name) + return _impl_.name_.Release(); +} +inline void AddTrackRequest::set_allocated_name(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.AddTrackRequest.name) +} + +// .daw.api.TrackType type = 2; +inline void AddTrackRequest::clear_type() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.type_ = 0; +} +inline ::daw::api::TrackType AddTrackRequest::type() const { + // @@protoc_insertion_point(field_get:daw.api.AddTrackRequest.type) + return _internal_type(); +} +inline void AddTrackRequest::set_type(::daw::api::TrackType value) { + _internal_set_type(value); + // @@protoc_insertion_point(field_set:daw.api.AddTrackRequest.type) +} +inline ::daw::api::TrackType AddTrackRequest::_internal_type() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return static_cast<::daw::api::TrackType>(_impl_.type_); +} +inline void AddTrackRequest::_internal_set_type(::daw::api::TrackType value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.type_ = value; +} + +// ------------------------------------------------------------------- + +// TrackIdRequest + +// string track_id = 1; +inline void TrackIdRequest::clear_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.ClearToEmpty(); +} +inline const std::string& TrackIdRequest::track_id() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.TrackIdRequest.track_id) + return _internal_track_id(); +} +template +inline PROTOBUF_ALWAYS_INLINE void TrackIdRequest::set_track_id(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.TrackIdRequest.track_id) +} +inline std::string* TrackIdRequest::mutable_track_id() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_track_id(); + // @@protoc_insertion_point(field_mutable:daw.api.TrackIdRequest.track_id) + return _s; +} +inline const std::string& TrackIdRequest::_internal_track_id() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.track_id_.Get(); +} +inline void TrackIdRequest::_internal_set_track_id(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.Set(value, GetArena()); +} +inline std::string* TrackIdRequest::_internal_mutable_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.track_id_.Mutable( GetArena()); +} +inline std::string* TrackIdRequest::release_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.TrackIdRequest.track_id) + return _impl_.track_id_.Release(); +} +inline void TrackIdRequest::set_allocated_track_id(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.track_id_.IsDefault()) { + _impl_.track_id_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.TrackIdRequest.track_id) +} + +// ------------------------------------------------------------------- + +// SetTrackVolumeRequest + +// string track_id = 1; +inline void SetTrackVolumeRequest::clear_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.ClearToEmpty(); +} +inline const std::string& SetTrackVolumeRequest::track_id() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.SetTrackVolumeRequest.track_id) + return _internal_track_id(); +} +template +inline PROTOBUF_ALWAYS_INLINE void SetTrackVolumeRequest::set_track_id(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.SetTrackVolumeRequest.track_id) +} +inline std::string* SetTrackVolumeRequest::mutable_track_id() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_track_id(); + // @@protoc_insertion_point(field_mutable:daw.api.SetTrackVolumeRequest.track_id) + return _s; +} +inline const std::string& SetTrackVolumeRequest::_internal_track_id() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.track_id_.Get(); +} +inline void SetTrackVolumeRequest::_internal_set_track_id(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.Set(value, GetArena()); +} +inline std::string* SetTrackVolumeRequest::_internal_mutable_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.track_id_.Mutable( GetArena()); +} +inline std::string* SetTrackVolumeRequest::release_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.SetTrackVolumeRequest.track_id) + return _impl_.track_id_.Release(); +} +inline void SetTrackVolumeRequest::set_allocated_track_id(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.track_id_.IsDefault()) { + _impl_.track_id_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.SetTrackVolumeRequest.track_id) +} + +// float volume_db = 2; +inline void SetTrackVolumeRequest::clear_volume_db() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.volume_db_ = 0; +} +inline float SetTrackVolumeRequest::volume_db() const { + // @@protoc_insertion_point(field_get:daw.api.SetTrackVolumeRequest.volume_db) + return _internal_volume_db(); +} +inline void SetTrackVolumeRequest::set_volume_db(float value) { + _internal_set_volume_db(value); + // @@protoc_insertion_point(field_set:daw.api.SetTrackVolumeRequest.volume_db) +} +inline float SetTrackVolumeRequest::_internal_volume_db() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.volume_db_; +} +inline void SetTrackVolumeRequest::_internal_set_volume_db(float value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.volume_db_ = value; +} + +// ------------------------------------------------------------------- + +// SetTrackPanRequest + +// string track_id = 1; +inline void SetTrackPanRequest::clear_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.ClearToEmpty(); +} +inline const std::string& SetTrackPanRequest::track_id() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.SetTrackPanRequest.track_id) + return _internal_track_id(); +} +template +inline PROTOBUF_ALWAYS_INLINE void SetTrackPanRequest::set_track_id(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.SetTrackPanRequest.track_id) +} +inline std::string* SetTrackPanRequest::mutable_track_id() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_track_id(); + // @@protoc_insertion_point(field_mutable:daw.api.SetTrackPanRequest.track_id) + return _s; +} +inline const std::string& SetTrackPanRequest::_internal_track_id() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.track_id_.Get(); +} +inline void SetTrackPanRequest::_internal_set_track_id(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.Set(value, GetArena()); +} +inline std::string* SetTrackPanRequest::_internal_mutable_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.track_id_.Mutable( GetArena()); +} +inline std::string* SetTrackPanRequest::release_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.SetTrackPanRequest.track_id) + return _impl_.track_id_.Release(); +} +inline void SetTrackPanRequest::set_allocated_track_id(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.track_id_.IsDefault()) { + _impl_.track_id_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.SetTrackPanRequest.track_id) +} + +// float pan = 2; +inline void SetTrackPanRequest::clear_pan() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.pan_ = 0; +} +inline float SetTrackPanRequest::pan() const { + // @@protoc_insertion_point(field_get:daw.api.SetTrackPanRequest.pan) + return _internal_pan(); +} +inline void SetTrackPanRequest::set_pan(float value) { + _internal_set_pan(value); + // @@protoc_insertion_point(field_set:daw.api.SetTrackPanRequest.pan) +} +inline float SetTrackPanRequest::_internal_pan() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.pan_; +} +inline void SetTrackPanRequest::_internal_set_pan(float value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.pan_ = value; +} + +// ------------------------------------------------------------------- + +// PluginInfo + +// string instance_id = 1; +inline void PluginInfo::clear_instance_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.instance_id_.ClearToEmpty(); +} +inline const std::string& PluginInfo::instance_id() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.PluginInfo.instance_id) + return _internal_instance_id(); +} +template +inline PROTOBUF_ALWAYS_INLINE void PluginInfo::set_instance_id(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.instance_id_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.PluginInfo.instance_id) +} +inline std::string* PluginInfo::mutable_instance_id() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_instance_id(); + // @@protoc_insertion_point(field_mutable:daw.api.PluginInfo.instance_id) + return _s; +} +inline const std::string& PluginInfo::_internal_instance_id() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.instance_id_.Get(); +} +inline void PluginInfo::_internal_set_instance_id(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.instance_id_.Set(value, GetArena()); +} +inline std::string* PluginInfo::_internal_mutable_instance_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.instance_id_.Mutable( GetArena()); +} +inline std::string* PluginInfo::release_instance_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.PluginInfo.instance_id) + return _impl_.instance_id_.Release(); +} +inline void PluginInfo::set_allocated_instance_id(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.instance_id_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.instance_id_.IsDefault()) { + _impl_.instance_id_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.PluginInfo.instance_id) +} + +// string name = 2; +inline void PluginInfo::clear_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.ClearToEmpty(); +} +inline const std::string& PluginInfo::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.PluginInfo.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE void PluginInfo::set_name(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.PluginInfo.name) +} +inline std::string* PluginInfo::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:daw.api.PluginInfo.name) + return _s; +} +inline const std::string& PluginInfo::_internal_name() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.name_.Get(); +} +inline void PluginInfo::_internal_set_name(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.Set(value, GetArena()); +} +inline std::string* PluginInfo::_internal_mutable_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.name_.Mutable( GetArena()); +} +inline std::string* PluginInfo::release_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.PluginInfo.name) + return _impl_.name_.Release(); +} +inline void PluginInfo::set_allocated_name(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.PluginInfo.name) +} + +// bool is_bypassed = 4; +inline void PluginInfo::clear_is_bypassed() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.is_bypassed_ = false; +} +inline bool PluginInfo::is_bypassed() const { + // @@protoc_insertion_point(field_get:daw.api.PluginInfo.is_bypassed) + return _internal_is_bypassed(); +} +inline void PluginInfo::set_is_bypassed(bool value) { + _internal_set_is_bypassed(value); + // @@protoc_insertion_point(field_set:daw.api.PluginInfo.is_bypassed) +} +inline bool PluginInfo::_internal_is_bypassed() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.is_bypassed_; +} +inline void PluginInfo::_internal_set_is_bypassed(bool value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.is_bypassed_ = value; +} + +// repeated .daw.api.PluginParameter parameters = 5; +inline int PluginInfo::_internal_parameters_size() const { + return _internal_parameters().size(); +} +inline int PluginInfo::parameters_size() const { + return _internal_parameters_size(); +} +inline void PluginInfo::clear_parameters() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.parameters_.Clear(); +} +inline ::daw::api::PluginParameter* PluginInfo::mutable_parameters(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:daw.api.PluginInfo.parameters) + return _internal_mutable_parameters()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::daw::api::PluginParameter>* PluginInfo::mutable_parameters() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:daw.api.PluginInfo.parameters) + ::google::protobuf::internal::TSanWrite(&_impl_); + return _internal_mutable_parameters(); +} +inline const ::daw::api::PluginParameter& PluginInfo::parameters(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.PluginInfo.parameters) + return _internal_parameters().Get(index); +} +inline ::daw::api::PluginParameter* PluginInfo::add_parameters() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::google::protobuf::internal::TSanWrite(&_impl_); + ::daw::api::PluginParameter* _add = _internal_mutable_parameters()->Add(); + // @@protoc_insertion_point(field_add:daw.api.PluginInfo.parameters) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::daw::api::PluginParameter>& PluginInfo::parameters() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:daw.api.PluginInfo.parameters) + return _internal_parameters(); +} +inline const ::google::protobuf::RepeatedPtrField<::daw::api::PluginParameter>& +PluginInfo::_internal_parameters() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.parameters_; +} +inline ::google::protobuf::RepeatedPtrField<::daw::api::PluginParameter>* +PluginInfo::_internal_mutable_parameters() { + ::google::protobuf::internal::TSanRead(&_impl_); + return &_impl_.parameters_; +} + +// ------------------------------------------------------------------- + +// PluginParameter + +// uint32 parameter_id = 1; +inline void PluginParameter::clear_parameter_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.parameter_id_ = 0u; +} +inline ::uint32_t PluginParameter::parameter_id() const { + // @@protoc_insertion_point(field_get:daw.api.PluginParameter.parameter_id) + return _internal_parameter_id(); +} +inline void PluginParameter::set_parameter_id(::uint32_t value) { + _internal_set_parameter_id(value); + // @@protoc_insertion_point(field_set:daw.api.PluginParameter.parameter_id) +} +inline ::uint32_t PluginParameter::_internal_parameter_id() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.parameter_id_; +} +inline void PluginParameter::_internal_set_parameter_id(::uint32_t value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.parameter_id_ = value; +} + +// string name = 2; +inline void PluginParameter::clear_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.ClearToEmpty(); +} +inline const std::string& PluginParameter::name() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.PluginParameter.name) + return _internal_name(); +} +template +inline PROTOBUF_ALWAYS_INLINE void PluginParameter::set_name(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.PluginParameter.name) +} +inline std::string* PluginParameter::mutable_name() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_name(); + // @@protoc_insertion_point(field_mutable:daw.api.PluginParameter.name) + return _s; +} +inline const std::string& PluginParameter::_internal_name() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.name_.Get(); +} +inline void PluginParameter::_internal_set_name(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.Set(value, GetArena()); +} +inline std::string* PluginParameter::_internal_mutable_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.name_.Mutable( GetArena()); +} +inline std::string* PluginParameter::release_name() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.PluginParameter.name) + return _impl_.name_.Release(); +} +inline void PluginParameter::set_allocated_name(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.name_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.name_.IsDefault()) { + _impl_.name_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.PluginParameter.name) +} + +// double value = 3; +inline void PluginParameter::clear_value() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.value_ = 0; +} +inline double PluginParameter::value() const { + // @@protoc_insertion_point(field_get:daw.api.PluginParameter.value) + return _internal_value(); +} +inline void PluginParameter::set_value(double value) { + _internal_set_value(value); + // @@protoc_insertion_point(field_set:daw.api.PluginParameter.value) +} +inline double PluginParameter::_internal_value() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.value_; +} +inline void PluginParameter::_internal_set_value(double value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.value_ = value; +} + +// ------------------------------------------------------------------- + +// SetPluginParameterRequest + +// string instance_id = 1; +inline void SetPluginParameterRequest::clear_instance_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.instance_id_.ClearToEmpty(); +} +inline const std::string& SetPluginParameterRequest::instance_id() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.SetPluginParameterRequest.instance_id) + return _internal_instance_id(); +} +template +inline PROTOBUF_ALWAYS_INLINE void SetPluginParameterRequest::set_instance_id(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.instance_id_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.SetPluginParameterRequest.instance_id) +} +inline std::string* SetPluginParameterRequest::mutable_instance_id() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_instance_id(); + // @@protoc_insertion_point(field_mutable:daw.api.SetPluginParameterRequest.instance_id) + return _s; +} +inline const std::string& SetPluginParameterRequest::_internal_instance_id() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.instance_id_.Get(); +} +inline void SetPluginParameterRequest::_internal_set_instance_id(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.instance_id_.Set(value, GetArena()); +} +inline std::string* SetPluginParameterRequest::_internal_mutable_instance_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.instance_id_.Mutable( GetArena()); +} +inline std::string* SetPluginParameterRequest::release_instance_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.SetPluginParameterRequest.instance_id) + return _impl_.instance_id_.Release(); +} +inline void SetPluginParameterRequest::set_allocated_instance_id(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.instance_id_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.instance_id_.IsDefault()) { + _impl_.instance_id_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.SetPluginParameterRequest.instance_id) +} + +// uint32 parameter_id = 2; +inline void SetPluginParameterRequest::clear_parameter_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.parameter_id_ = 0u; +} +inline ::uint32_t SetPluginParameterRequest::parameter_id() const { + // @@protoc_insertion_point(field_get:daw.api.SetPluginParameterRequest.parameter_id) + return _internal_parameter_id(); +} +inline void SetPluginParameterRequest::set_parameter_id(::uint32_t value) { + _internal_set_parameter_id(value); + // @@protoc_insertion_point(field_set:daw.api.SetPluginParameterRequest.parameter_id) +} +inline ::uint32_t SetPluginParameterRequest::_internal_parameter_id() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.parameter_id_; +} +inline void SetPluginParameterRequest::_internal_set_parameter_id(::uint32_t value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.parameter_id_ = value; +} + +// double value = 3; +inline void SetPluginParameterRequest::clear_value() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.value_ = 0; +} +inline double SetPluginParameterRequest::value() const { + // @@protoc_insertion_point(field_get:daw.api.SetPluginParameterRequest.value) + return _internal_value(); +} +inline void SetPluginParameterRequest::set_value(double value) { + _internal_set_value(value); + // @@protoc_insertion_point(field_set:daw.api.SetPluginParameterRequest.value) +} +inline double SetPluginParameterRequest::_internal_value() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.value_; +} +inline void SetPluginParameterRequest::_internal_set_value(double value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.value_ = value; +} + +// ------------------------------------------------------------------- + +// LoadPluginRequest + +// string file_path = 1; +inline void LoadPluginRequest::clear_file_path() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.file_path_.ClearToEmpty(); +} +inline const std::string& LoadPluginRequest::file_path() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.LoadPluginRequest.file_path) + return _internal_file_path(); +} +template +inline PROTOBUF_ALWAYS_INLINE void LoadPluginRequest::set_file_path(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.file_path_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.LoadPluginRequest.file_path) +} +inline std::string* LoadPluginRequest::mutable_file_path() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_file_path(); + // @@protoc_insertion_point(field_mutable:daw.api.LoadPluginRequest.file_path) + return _s; +} +inline const std::string& LoadPluginRequest::_internal_file_path() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.file_path_.Get(); +} +inline void LoadPluginRequest::_internal_set_file_path(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.file_path_.Set(value, GetArena()); +} +inline std::string* LoadPluginRequest::_internal_mutable_file_path() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.file_path_.Mutable( GetArena()); +} +inline std::string* LoadPluginRequest::release_file_path() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.LoadPluginRequest.file_path) + return _impl_.file_path_.Release(); +} +inline void LoadPluginRequest::set_allocated_file_path(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.file_path_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.file_path_.IsDefault()) { + _impl_.file_path_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.LoadPluginRequest.file_path) +} + +// ------------------------------------------------------------------- + +// VUMeterUpdate + +// string track_id = 1; +inline void VUMeterUpdate::clear_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.ClearToEmpty(); +} +inline const std::string& VUMeterUpdate::track_id() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.VUMeterUpdate.track_id) + return _internal_track_id(); +} +template +inline PROTOBUF_ALWAYS_INLINE void VUMeterUpdate::set_track_id(Arg_&& arg, + Args_... args) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.Set(static_cast(arg), args..., GetArena()); + // @@protoc_insertion_point(field_set:daw.api.VUMeterUpdate.track_id) +} +inline std::string* VUMeterUpdate::mutable_track_id() ABSL_ATTRIBUTE_LIFETIME_BOUND { + std::string* _s = _internal_mutable_track_id(); + // @@protoc_insertion_point(field_mutable:daw.api.VUMeterUpdate.track_id) + return _s; +} +inline const std::string& VUMeterUpdate::_internal_track_id() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.track_id_.Get(); +} +inline void VUMeterUpdate::_internal_set_track_id(const std::string& value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.Set(value, GetArena()); +} +inline std::string* VUMeterUpdate::_internal_mutable_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + return _impl_.track_id_.Mutable( GetArena()); +} +inline std::string* VUMeterUpdate::release_track_id() { + ::google::protobuf::internal::TSanWrite(&_impl_); + // @@protoc_insertion_point(field_release:daw.api.VUMeterUpdate.track_id) + return _impl_.track_id_.Release(); +} +inline void VUMeterUpdate::set_allocated_track_id(std::string* value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.track_id_.SetAllocated(value, GetArena()); + if (::google::protobuf::internal::DebugHardenForceCopyDefaultString() && _impl_.track_id_.IsDefault()) { + _impl_.track_id_.Set("", GetArena()); + } + // @@protoc_insertion_point(field_set_allocated:daw.api.VUMeterUpdate.track_id) +} + +// float peak_dbfs = 2; +inline void VUMeterUpdate::clear_peak_dbfs() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.peak_dbfs_ = 0; +} +inline float VUMeterUpdate::peak_dbfs() const { + // @@protoc_insertion_point(field_get:daw.api.VUMeterUpdate.peak_dbfs) + return _internal_peak_dbfs(); +} +inline void VUMeterUpdate::set_peak_dbfs(float value) { + _internal_set_peak_dbfs(value); + // @@protoc_insertion_point(field_set:daw.api.VUMeterUpdate.peak_dbfs) +} +inline float VUMeterUpdate::_internal_peak_dbfs() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.peak_dbfs_; +} +inline void VUMeterUpdate::_internal_set_peak_dbfs(float value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.peak_dbfs_ = value; +} + +// float rms_dbfs = 3; +inline void VUMeterUpdate::clear_rms_dbfs() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.rms_dbfs_ = 0; +} +inline float VUMeterUpdate::rms_dbfs() const { + // @@protoc_insertion_point(field_get:daw.api.VUMeterUpdate.rms_dbfs) + return _internal_rms_dbfs(); +} +inline void VUMeterUpdate::set_rms_dbfs(float value) { + _internal_set_rms_dbfs(value); + // @@protoc_insertion_point(field_set:daw.api.VUMeterUpdate.rms_dbfs) +} +inline float VUMeterUpdate::_internal_rms_dbfs() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.rms_dbfs_; +} +inline void VUMeterUpdate::_internal_set_rms_dbfs(float value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.rms_dbfs_ = value; +} + +// ------------------------------------------------------------------- + +// VUMeterData + +// repeated .daw.api.VUMeterUpdate updates = 1; +inline int VUMeterData::_internal_updates_size() const { + return _internal_updates().size(); +} +inline int VUMeterData::updates_size() const { + return _internal_updates_size(); +} +inline void VUMeterData::clear_updates() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.updates_.Clear(); +} +inline ::daw::api::VUMeterUpdate* VUMeterData::mutable_updates(int index) + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable:daw.api.VUMeterData.updates) + return _internal_mutable_updates()->Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField<::daw::api::VUMeterUpdate>* VUMeterData::mutable_updates() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_mutable_list:daw.api.VUMeterData.updates) + ::google::protobuf::internal::TSanWrite(&_impl_); + return _internal_mutable_updates(); +} +inline const ::daw::api::VUMeterUpdate& VUMeterData::updates(int index) const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:daw.api.VUMeterData.updates) + return _internal_updates().Get(index); +} +inline ::daw::api::VUMeterUpdate* VUMeterData::add_updates() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::google::protobuf::internal::TSanWrite(&_impl_); + ::daw::api::VUMeterUpdate* _add = _internal_mutable_updates()->Add(); + // @@protoc_insertion_point(field_add:daw.api.VUMeterData.updates) + return _add; +} +inline const ::google::protobuf::RepeatedPtrField<::daw::api::VUMeterUpdate>& VUMeterData::updates() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_list:daw.api.VUMeterData.updates) + return _internal_updates(); +} +inline const ::google::protobuf::RepeatedPtrField<::daw::api::VUMeterUpdate>& +VUMeterData::_internal_updates() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.updates_; +} +inline ::google::protobuf::RepeatedPtrField<::daw::api::VUMeterUpdate>* +VUMeterData::_internal_mutable_updates() { + ::google::protobuf::internal::TSanRead(&_impl_); + return &_impl_.updates_; +} + +// ------------------------------------------------------------------- + +// RealtimeCursorPosition + +// double time_in_seconds = 1; +inline void RealtimeCursorPosition::clear_time_in_seconds() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.time_in_seconds_ = 0; +} +inline double RealtimeCursorPosition::time_in_seconds() const { + // @@protoc_insertion_point(field_get:daw.api.RealtimeCursorPosition.time_in_seconds) + return _internal_time_in_seconds(); +} +inline void RealtimeCursorPosition::set_time_in_seconds(double value) { + _internal_set_time_in_seconds(value); + // @@protoc_insertion_point(field_set:daw.api.RealtimeCursorPosition.time_in_seconds) +} +inline double RealtimeCursorPosition::_internal_time_in_seconds() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.time_in_seconds_; +} +inline void RealtimeCursorPosition::_internal_set_time_in_seconds(double value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.time_in_seconds_ = value; +} + +// int64 absolute_ticks = 2; +inline void RealtimeCursorPosition::clear_absolute_ticks() { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.absolute_ticks_ = ::int64_t{0}; +} +inline ::int64_t RealtimeCursorPosition::absolute_ticks() const { + // @@protoc_insertion_point(field_get:daw.api.RealtimeCursorPosition.absolute_ticks) + return _internal_absolute_ticks(); +} +inline void RealtimeCursorPosition::set_absolute_ticks(::int64_t value) { + _internal_set_absolute_ticks(value); + // @@protoc_insertion_point(field_set:daw.api.RealtimeCursorPosition.absolute_ticks) +} +inline ::int64_t RealtimeCursorPosition::_internal_absolute_ticks() const { + ::google::protobuf::internal::TSanRead(&_impl_); + return _impl_.absolute_ticks_; +} +inline void RealtimeCursorPosition::_internal_set_absolute_ticks(::int64_t value) { + ::google::protobuf::internal::TSanWrite(&_impl_); + _impl_.absolute_ticks_ = value; +} + +#ifdef __GNUC__ +#pragma GCC diagnostic pop +#endif // __GNUC__ + +// @@protoc_insertion_point(namespace_scope) +} // namespace api +} // namespace daw + + +namespace google { +namespace protobuf { + +template <> +struct is_proto_enum<::daw::api::TrackType> : std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor<::daw::api::TrackType>() { + return ::daw::api::TrackType_descriptor(); +} + +} // namespace protobuf +} // namespace google + +// @@protoc_insertion_point(global_scope) + +#include "google/protobuf/port_undef.inc" + +#endif // daw_5fapi_2eproto_2epb_2eh diff --git a/src/backend/vcpkg.json b/src/backend/vcpkg.json new file mode 100644 index 0000000..5324f2b --- /dev/null +++ b/src/backend/vcpkg.json @@ -0,0 +1,10 @@ +{ + "dependencies": [ + "grpc", + "protobuf", + "zeromq", + "gtest" + ], + "version": "0.0.1", + "name": "ninaengine" +} \ No newline at end of file diff --git a/src/cmake_script/project_cpp_standard.cmake b/src/cmake_script/project_cpp_standard.cmake new file mode 100644 index 0000000..f9058aa --- /dev/null +++ b/src/cmake_script/project_cpp_standard.cmake @@ -0,0 +1,118 @@ +# 文件: cmake/CompilerSetup.cmake + +# ============================================================================== +# 函数:setup_project_options +# 描述:配置项目级的 C++ 标准、编译器警告、定义和依赖。 +# 此函数遵循现代 CMake 实践,将所有配置封装到一个 INTERFACE 库中。 +# +# 参数: +# standard - (必选) C++ 标准版本 (例如 17, 20, 23)。 +# INTERFACE_TARGET - (必选) 用于接收创建的 INTERFACE 库名称的变量名。 +# +# 用法: +# include(cmake/CompilerSetup.cmake) +# setup_project_options( +# STANDARD 20 +# INTERFACE_TARGET my_project_options +# ) +# # ... 定义你的可执行文件或库 +# add_executable(my_app main.cpp) +# # ... 将配置应用到目标上 +# target_link_libraries(my_app PRIVATE ${my_project_options}) +# ============================================================================== +function(setup_project_options) + # --- 参数解析 --- + set(options "") # 无单值选项 + set(oneValueArgs STANDARD INTERFACE_TARGET) # 定义接收单个值的参数 + set(multiValueArgs "") # 无多值选项 + cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + # --- 参数验证 --- + if(NOT ARG_STANDARD OR NOT ARG_INTERFACE_TARGET) + message(FATAL_ERROR "setup_project_options 必须提供 STANDARD 和 INTERFACE_TARGET 参数。") + endif() + + set(VALID_STANDARDS 11 14 17 20 23) + list(FIND VALID_STANDARDS ${ARG_STANDARD} _standard_index) + if(_standard_index EQUAL -1) + message(FATAL_ERROR "不支持的 C++ 标准: ${ARG_STANDARD}。有效值: ${VALID_STANDARDS}") + endif() + + # --- 创建 INTERFACE 库 --- + # 这是现代 CMake 的核心:创建一个虚拟目标来承载所有配置属性。 + add_library(${ARG_INTERFACE_TARGET} INTERFACE) + message(STATUS "创建配置接口库: ${ARG_INTERFACE_TARGET}") + + # --- 设置 C++ 标准 (应用到接口库) --- + target_compile_features(${ARG_INTERFACE_TARGET} INTERFACE cxx_std_${ARG_STANDARD}) + + # --- 设置通用编译定义和选项 --- + # 使用 target_compile_definitions 和 target_compile_options,并指定 INTERFACE + # 这样任何链接到此库的目标都会继承这些属性。 + + # --- 平台特定设置 --- + if(WIN32) + target_compile_definitions(${ARG_INTERFACE_TARGET} INTERFACE UNICODE _UNICODE) + message(STATUS "为 Windows 添加 UNICODE 定义") + endif() + + # --- 编译器特定设置 --- + if(MSVC) + # MSVC 特定选项 + target_compile_options(${ARG_INTERFACE_TARGET} INTERFACE + /W4 # 更高警告等级 + # /WX # 将警告视为错误 (可选,但推荐) + /EHsc + /utf-8 # 源码和执行字符集设为 UTF-8 + /Zc:__cplusplus # 修正 __cplusplus 宏 + /wd4100 # 禁用警告: 未使用的形参 + /wd4996 # 禁用警告: 使用了被标记为否决的函数 + ) + message(STATUS "为 MSVC 添加特定编译选项") + else() # GCC / Clang / AppleClang + # 通用于 GCC 和 Clang 的选项 + target_compile_options(${ARG_INTERFACE_TARGET} INTERFACE + -Wall + -Wextra + -Wpedantic # 更加严格的警告 + -Werror # 将所有警告视为错误 (可选,但推荐) + -Wno-unused-parameter + ) + + # C++17 及以上标准的额外警告 + if(${ARG_STANDARD} GREATER_EQUAL 17) + target_compile_options(${ARG_INTERFACE_TARGET} INTERFACE + -Wshadow + -Wnon-virtual-dtor + ) + endif() + + # 【核心修复】区分处理 AppleClang 和标准 Clang/GCC + # AppleClang 不支持 -finput-charset/-fexec-charset,并默认源码为 UTF-8 + if(NOT CMAKE_CXX_COMPILER_ID MATCHES "AppleClang") + target_compile_options(${ARG_INTERFACE_TARGET} INTERFACE + -finput-charset=UTF-8 + -fexec-charset=UTF-8 + ) + message(STATUS "为 GCC/Clang 添加 UTF-8 字符集选项") + else() + message(STATUS "检测到 AppleClang,源码假定为 UTF-8,跳过字符集选项") + endif() + message(STATUS "为 GCC/Clang 添加特定编译选项") + endif() + + # --- MinGW 特定设置 --- + if(MINGW) + # 为 C++17 及以上的 支持添加链接库 + if(${ARG_STANDARD} GREATER_EQUAL 17) + # 使用 target_link_libraries,这才是正确的方式 + target_link_libraries(${ARG_INTERFACE_TARGET} INTERFACE -lstdc++fs) + message(STATUS "为 MinGW C++${ARG_STANDARD} 添加 libstdc++fs 依赖 (用于 )") + endif() + endif() + + # --- 将 INTERFACE 库的名称返回给调用者 --- + set(${ARG_INTERFACE_TARGET} ${ARG_INTERFACE_TARGET} PARENT_SCOPE) + message(STATUS "C++${ARG_STANDARD} 项目配置完成,请链接到 ${ARG_INTERFACE_TARGET} 目标。") + +endfunction() \ No newline at end of file diff --git a/src/cmake_script/retrieve_files.cmake b/src/cmake_script/retrieve_files.cmake new file mode 100644 index 0000000..42855f0 --- /dev/null +++ b/src/cmake_script/retrieve_files.cmake @@ -0,0 +1,545 @@ +#[=======================================================================[ + 平台匹配检查函数 + 参数: + platform: 平台标识符 (windows|linux|mac|mobile|desktop) + is_match: 输出变量,表示当前平台是否匹配 +#]=======================================================================] +function(is_current_platform platform is_match) + # 设置默认值为TRUE(用于未知平台) + set(matches FALSE) + + if(platform STREQUAL "windows") + if(WIN32 OR CYGWIN) + set(matches TRUE) + endif() + elseif(platform STREQUAL "linux") + if(UNIX AND NOT APPLE) + set(matches TRUE) + endif() + elseif(platform STREQUAL "mac") + if(APPLE AND NOT IOS) + set(matches TRUE) + endif() + elseif(platform STREQUAL "ios") + if(IOS) + set(matches TRUE) + endif() + elseif(platform STREQUAL "android") + if(ANDROID) + set(matches TRUE) + endif() + # 添加对unix平台的支持 + elseif(platform STREQUAL "unix") + if(UNIX) + set(matches TRUE) + endif() + elseif(platform STREQUAL "mobile") + if(ANDROID OR IOS) + set(matches TRUE) + endif() + elseif(platform STREQUAL "desktop") + if(WIN32 OR (UNIX AND NOT APPLE) OR (APPLE AND NOT IOS)) + set(matches TRUE) + endif() + elseif(platform STREQUAL "web") + if(EMSCRIPTEN) + set(matches TRUE) + endif() + else() + # 未知平台标识,默认匹配 + set(matches TRUE) + endif() + + set(${is_match} ${matches} PARENT_SCOPE) +endfunction() + +#[=======================================================================[ + 主文件检索函数 + 参数: + path: 要检索的根目录路径 + extension: 文件扩展名列表 + out_files: 输出变量名,将包含筛选后的文件列表 +#]=======================================================================] +function(retrieve_files_custom path extension out_files) + # 1. 参数验证 + if(NOT IS_DIRECTORY "${path}") + message(WARNING "错误:目录 '${path}' 不存在") + return() + endif() + + message(STATUS "正在检索目录: ${path}") + + # 2. 构建文件匹配模式 + set(file_patterns "") + foreach(ext IN LISTS extension) + list(APPEND file_patterns "${path}/*.${ext}") + endforeach() + + # 3. 递归查找所有匹配的文件 + file(GLOB_RECURSE found_files + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + CONFIGURE_DEPENDS ${file_patterns} + ) + + # 4. 处理找到的文件 + set(filtered_files "") + foreach(current_file IN LISTS found_files) + # 4.1 获取文件所在目录 + get_filename_component(file_dir "${current_file}" DIRECTORY) + string(REPLACE "/" ";" dir_components "${file_dir}") + + # 4.2 检查平台兼容性 + set(should_skip_file FALSE) + set(found_platform_dir FALSE) + + foreach(dir_name IN LISTS dir_components) + # 检查是否是平台相关目录 + if(dir_name MATCHES "^(windows|linux|mac|ios|android|unix|mobile|desktop|web)$") + set(found_platform_dir TRUE) + is_current_platform(${dir_name} platform_matches) + if(NOT platform_matches) + set(should_skip_file TRUE) + break() + endif() + endif() + endforeach() + + # 如果文件需要跳过,继续处理下一个文件 + if(should_skip_file) + continue() + endif() + + # 4.3 添加符合条件的文件 + list(APPEND filtered_files "${current_file}") + + # 4.4 设置IDE文件分组 + # 计算相对路径作为分组名称 + get_filename_component(root_abs_path "${path}" ABSOLUTE) + get_filename_component(file_dir_abs_path "${file_dir}" ABSOLUTE) + file(RELATIVE_PATH group_path "${root_abs_path}" "${file_dir_abs_path}") + + # 处理根目录的特殊情况 + if(group_path STREQUAL ".") + set(group_name "") + else() + string(REPLACE "/" "\\" group_name "${group_path}") + endif() + + # 创建IDE分组 + source_group("${group_name}" FILES "${current_file}") + endforeach() + + # 5. 设置输出变量 + set(${out_files} ${filtered_files} PARENT_SCOPE) +endfunction() + +#[=======================================================================[ + 便捷封装函数 + 自动处理常见文件扩展名,针对不同平台添加特定文件类型 +#]=======================================================================] +function(retrieve_files path out_files) + # 设置基础文件类型 + set(file_extensions + "h" # 头文件 + "hpp" # C++头文件 + "ini" # 配置文件 + "cpp" # C++源文件 + "c" # C源文件 + "cc" + "ixx" # C++20模块文件 + ) + + # 针对Mac平台添加额外文件类型 + if(APPLE) + list(APPEND file_extensions "mm") # Objective-C++源文件 + endif() + + # 执行文件检索 + set(temp_files "") + retrieve_files_custom(${path} "${file_extensions}" temp_files) + + # 合并结果到输出变量 + set(${out_files} ${${out_files}} ${temp_files} PARENT_SCOPE) +endfunction() + +#[=======================================================================[ + Proto文件编译和gRPC绑定生成函数 + 参数: + TARGET_NAME: (必需) - 要创建的库目标名称 + PROTO_PATH: (必需) - 包含.proto文件的目录路径 + OUTPUT_PATH: (可选) - 生成文件的输出目录,默认为${CMAKE_CURRENT_BINARY_DIR}/generated + GRPC_ENABLED: (可选) - 是否生成gRPC绑定,默认为TRUE + PROTO_IMPORT_DIRS:(可选) - proto文件的额外导入目录列表 + EXPORT_MACRO: (可选) - 导出宏定义(用于Windows DLL导出) + + 例子: + compile_proto_files( + TARGET_NAME my_proto_lib + PROTO_PATH ${CMAKE_CURRENT_SOURCE_DIR}/protos + OUTPUT_PATH ${CMAKE_BINARY_DIR}/proto_gen + GRPC_ENABLED TRUE + PROTO_IMPORT_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/third_party/protos + ) +#]=======================================================================] +function(compile_proto_files) + # 定义预期的参数 + set(options GRPC_ENABLED) + set(oneValueArgs TARGET_NAME PROTO_PATH OUTPUT_PATH EXPORT_MACRO) + set(multiValueArgs PROTO_IMPORT_DIRS) + + # 解析传递给函数的参数 + cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + # 参数验证 + if(NOT ARG_TARGET_NAME) + message(FATAL_ERROR "**compile_proto_files**: **缺少必需参数** **TARGET_NAME**.") + endif() + if(NOT ARG_PROTO_PATH) + message(FATAL_ERROR "**compile_proto_files**: **缺少必需参数** **PROTO_PATH**.") + endif() + + # 设置默认值 + if(NOT DEFINED ARG_GRPC_ENABLED) + set(ARG_GRPC_ENABLED TRUE) + endif() + if(NOT ARG_OUTPUT_PATH) + set(ARG_OUTPUT_PATH "${CMAKE_CURRENT_BINARY_DIR}/generated") + endif() + + # 查找Protobuf和gRPC + find_package(Protobuf REQUIRED) + if(ARG_GRPC_ENABLED) + find_package(gRPC QUIET) + if(NOT gRPC_FOUND) + # 如果找不到gRPC包,尝试手动查找 + find_program(GRPC_CPP_PLUGIN grpc_cpp_plugin) + if(NOT GRPC_CPP_PLUGIN) + message(FATAL_ERROR "**compile_proto_files**: **找不到gRPC C++插件**. 请确保已安装gRPC.") + endif() + else() + set(GRPC_CPP_PLUGIN $) + endif() + endif() + + # 创建输出目录 + file(MAKE_DIRECTORY ${ARG_OUTPUT_PATH}) + + get_filename_component(PROTO_PATH "${ARG_PROTO_PATH}" ABSOLUTE) + + # 递归查找所有.proto文件 + file(GLOB_RECURSE PROTO_FILES + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + CONFIGURE_DEPENDS + "${PROTO_PATH}/*.proto" + ) + + if(NOT PROTO_FILES) + message(WARNING "**compile_proto_files**: 在 '${PROTO_PATH}' 中未找到任何.proto文件") + return() + endif() + + message(STATUS "找到 ${CMAKE_CURRENT_SOURCE_DIR} Proto文件: ${PROTO_FILES}") + + # 准备生成的文件列表 + set(PROTO_SRCS) + set(PROTO_HDRS) + set(GRPC_SRCS) + set(GRPC_HDRS) + + # 构建导入路径参数 + set(PROTO_IMPORT_ARGS) + list(APPEND PROTO_IMPORT_ARGS "-I${PROTO_PATH}") + foreach(IMPORT_DIR ${ARG_PROTO_IMPORT_DIRS}) + list(APPEND PROTO_IMPORT_ARGS "-I${IMPORT_DIR}") + endforeach() + + # 为每个proto文件生成代码 + foreach(PROTO_FILE ${PROTO_FILES}) + # 获取proto文件的绝对路径 + get_filename_component(PROTO_FILE_ABS "${PROTO_FILE}" ABSOLUTE BASE_DIR "${CMAKE_CURRENT_SOURCE_DIR}") + get_filename_component(PROTO_NAME_WE "${PROTO_FILE}" NAME_WE) + get_filename_component(PROTO_DIR "${PROTO_FILE}" DIRECTORY) + + # 计算相对路径以保持目录结构 + if(PROTO_DIR) + file(RELATIVE_PATH REL_DIR "${PROTO_PATH}" "${CMAKE_CURRENT_SOURCE_DIR}/${PROTO_DIR}") + set(OUTPUT_SUBDIR "${ARG_OUTPUT_PATH}/${REL_DIR}") + else() + set(OUTPUT_SUBDIR "${ARG_OUTPUT_PATH}") + endif() + + # 创建输出子目录 + file(MAKE_DIRECTORY ${OUTPUT_SUBDIR}) + + # 生成的文件路径 + set(PROTO_SRC "${OUTPUT_SUBDIR}/${PROTO_NAME_WE}.pb.cc") + set(PROTO_HDR "${OUTPUT_SUBDIR}/${PROTO_NAME_WE}.pb.h") + list(APPEND PROTO_SRCS ${PROTO_SRC}) + list(APPEND PROTO_HDRS ${PROTO_HDR}) + + # 基础protobuf生成命令 + set(PROTOC_ARGS + ${PROTO_IMPORT_ARGS} + "--cpp_out=${ARG_OUTPUT_PATH}" + "${PROTO_FILE_ABS}" + ) + + if(ARG_GRPC_ENABLED) + set(GRPC_SRC "${OUTPUT_SUBDIR}/${PROTO_NAME_WE}.grpc.pb.cc") + set(GRPC_HDR "${OUTPUT_SUBDIR}/${PROTO_NAME_WE}.grpc.pb.h") + list(APPEND GRPC_SRCS ${GRPC_SRC}) + list(APPEND GRPC_HDRS ${GRPC_HDR}) + + # 添加自定义命令生成protobuf和gRPC代码 + add_custom_command( + OUTPUT ${PROTO_SRC} ${PROTO_HDR} ${GRPC_SRC} ${GRPC_HDR} + COMMAND ${Protobuf_PROTOC_EXECUTABLE} + ${PROTOC_ARGS} + COMMAND ${Protobuf_PROTOC_EXECUTABLE} + ${PROTO_IMPORT_ARGS} + "--grpc_out=${ARG_OUTPUT_PATH}" + "--plugin=protoc-gen-grpc=${GRPC_CPP_PLUGIN}" + "${PROTO_FILE_ABS}" + DEPENDS ${PROTO_FILE_ABS} + COMMENT "生成Protobuf和gRPC代码: ${PROTO_FILE}" + VERBATIM + ) + else() + # 只生成protobuf代码 + add_custom_command( + OUTPUT ${PROTO_SRC} ${PROTO_HDR} + COMMAND ${Protobuf_PROTOC_EXECUTABLE} + ${PROTOC_ARGS} + DEPENDS ${PROTO_FILE_ABS} + COMMENT "生成Protobuf代码: ${PROTO_FILE}" + VERBATIM + ) + endif() + endforeach() + + # 创建库目标 + add_library(${ARG_TARGET_NAME} STATIC + ${PROTO_SRCS} + ${PROTO_HDRS} + ${GRPC_SRCS} + ${GRPC_HDRS} + ) + + # 设置包含目录 + target_include_directories(${ARG_TARGET_NAME} + PUBLIC + $ + $ + ) + + # 链接必要的库 + target_link_libraries(${ARG_TARGET_NAME} + PUBLIC + protobuf::libprotobuf + ) + + if(ARG_GRPC_ENABLED) + if(gRPC_FOUND) + target_link_libraries(${ARG_TARGET_NAME} + PUBLIC + gRPC::grpc++ + gRPC::grpc++_reflection + ) + else() + # 手动查找并链接gRPC库 + find_library(GRPC_LIBRARY grpc++) + find_library(GRPC_REFLECTION_LIBRARY grpc++_reflection) + if(GRPC_LIBRARY AND GRPC_REFLECTION_LIBRARY) + target_link_libraries(${ARG_TARGET_NAME} + PUBLIC + ${GRPC_LIBRARY} + ${GRPC_REFLECTION_LIBRARY} + ) + else() + message(WARNING "**compile_proto_files**: 无法找到gRPC库,请手动链接") + endif() + endif() + endif() + + # 设置导出宏(如果提供) + if(ARG_EXPORT_MACRO) + target_compile_definitions(${ARG_TARGET_NAME} + PRIVATE ${ARG_EXPORT_MACRO}_EXPORTS + INTERFACE ${ARG_EXPORT_MACRO}_IMPORTS + ) + endif() + + # 设置C++标准 + target_compile_features(${ARG_TARGET_NAME} PUBLIC cxx_std_11) + + # IDE文件分组 + source_group("Proto Files" FILES ${PROTO_FILES}) + source_group("Generated Files\\Protobuf" FILES ${PROTO_SRCS} ${PROTO_HDRS}) + if(ARG_GRPC_ENABLED) + source_group("Generated Files\\gRPC" FILES ${GRPC_SRCS} ${GRPC_HDRS}) + endif() + + # 输出信息 + message(STATUS "创建Proto库目标: ${ARG_TARGET_NAME}") + message(STATUS " Proto文件数量: ${CMAKE_CURRENT_SOURCE_DIR} list length: ${PROTO_FILES}") + message(STATUS " 输出目录: ${ARG_OUTPUT_PATH}") + message(STATUS " gRPC支持: ${ARG_GRPC_ENABLED}") +endfunction() + +#[=======================================================================[ +# 用于添加资源文件并在编译后复制到最终可执行文件所在目录 +# 注意:此函数依赖于 CMAKE_RUNTIME_OUTPUT_DIRECTORY 或 EXECUTABLE_OUTPUT_PATH +# 变量的设置,以确定可执行文件的输出目录。请确保在项目中设置了其中之一。 +# +# 参数: +# TARGET_NAME: (必需) - 关联的目标 (库或可执行文件) 的名称。 +# 资源复制命令将在 TARGET_NAME 构建后执行。 +# RESOURCE_FILES: (必需) - 一个或多个要复制的资源文件的路径列表 (相对或绝对) +# OUTPUT_SUBDIR: (可选) - 相对于可执行文件输出目录的子目录路径 (例如 "assets") +# +# 例子: +# # 确保设置了可执行文件输出目录 (通常在顶层 CMakeLists.txt) +# set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) +# +# # 添加库 +# add_library(my_lib STATIC src/my_lib.cpp) +# +# # 添加资源到 my_lib,但复制到最终可执行文件的输出目录下的 'config' 子目录 +# add_resource_file( +# TARGET_NAME my_lib +# RESOURCE_FILES config/settings.json config/defaults.ini +# OUTPUT_SUBDIR config +# ) +# +# # 添加可执行文件 +# add_executable(my_app main.cpp) +# target_link_libraries(my_app PRIVATE my_lib) +# +# # 添加 my_app 的资源,复制到可执行文件输出目录的根目录 +# add_resource_file( +# TARGET_NAME my_app +# RESOURCE_FILES assets/icon.png +# ) +#]=======================================================================] +function(add_resource_file) + # 定义预期的参数 + set(options "") # 无布尔选项 + set(oneValueArgs TARGET_NAME OUTPUT_SUBDIR) + set(multiValueArgs RESOURCE_FILES) + + # 解析传递给函数的参数 + cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + # --- 参数验证 --- + if(NOT ARG_TARGET_NAME) + message(FATAL_ERROR "**add_resource_file**: **缺少必需参数** **TARGET_NAME**.") + endif() + if(NOT ARG_RESOURCE_FILES) + message(FATAL_ERROR "**add_resource_file**: **缺少必需参数** **RESOURCE_FILES**.") + endif() + if(NOT TARGET ${ARG_TARGET_NAME}) + message(WARNING "**add_resource_file**: 目标 '${ARG_TARGET_NAME}' (尚)不存在。请确保在调用 add_executable/add_library('${ARG_TARGET_NAME}') 之后调用此函数。") + # 即使目标尚不存在,仍然尝试配置命令。CMake通常能处理好依赖关系。 + endif() + + # --- 确定最终可执行文件的目标基础目录 --- + set(DESTINATION_BASE "") + if(DEFINED CMAKE_RUNTIME_OUTPUT_DIRECTORY AND CMAKE_RUNTIME_OUTPUT_DIRECTORY) + set(DESTINATION_BASE "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}") + elseif(DEFINED EXECUTABLE_OUTPUT_PATH AND EXECUTABLE_OUTPUT_PATH) + # EXECUTABLE_OUTPUT_PATH 是旧变量,但也检查一下 + set(DESTINATION_BASE "${EXECUTABLE_OUTPUT_PATH}") + else() + # 如果是多配置生成器(如 Visual Studio, Xcode),需要考虑配置类型 + get_property(is_multi_config GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG) + if(is_multi_config) + # 对于多配置,没有单一的顶级运行时目录变量。 + # 可以考虑使用 $ 配合一个已知的可执行文件名,但这会使函数复杂化。 + # 最好的做法是要求用户设置 CMAKE_RUNTIME_OUTPUT_DIRECTORY_ + # 或者我们直接报错,强制用户设置 CMAKE_RUNTIME_OUTPUT_DIRECTORY + message(FATAL_ERROR "**add_resource_file**: **无法确定可执行文件输出目录**。请在您的项目中设置 **CMAKE_RUNTIME_OUTPUT_DIRECTORY** 变量 (例如 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY \"\${CMAKE_BINARY_DIR}/bin\"))。对于多配置生成器,可能需要设置 CMAKE_RUNTIME_OUTPUT_DIRECTORY_ 变量。") + else() + # 对于单配置生成器(如 Makefiles, Ninja),可以默认到 CMAKE_BINARY_DIR + set(DESTINATION_BASE "${CMAKE_BINARY_DIR}") + message(WARNING "**add_resource_file**: **未设置 CMAKE_RUNTIME_OUTPUT_DIRECTORY**。默认将资源复制到 CMAKE_BINARY_DIR ('${CMAKE_BINARY_DIR}')。强烈建议设置 CMAKE_RUNTIME_OUTPUT_DIRECTORY 以获得可预测的行为。") + endif() + # message(FATAL_ERROR "**add_resource_file**: **无法确定可执行文件输出目录**。请在您的项目中设置 **CMAKE_RUNTIME_OUTPUT_DIRECTORY** 变量 (例如 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY \"\${CMAKE_BINARY_DIR}/bin\"))。") + endif() + + # 处理子目录 + set(DESTINATION_DIR "${DESTINATION_BASE}") # 默认目标目录 + if(ARG_OUTPUT_SUBDIR) + # 清理子目录路径字符串 + string(STRIP "${ARG_OUTPUT_SUBDIR}" _subdir) + if(IS_ABSOLUTE "${_subdir}") + message(FATAL_ERROR "**add_resource_file**: **OUTPUT_SUBDIR** ('${ARG_OUTPUT_SUBDIR}') **必须是相对路径**。") + else() + # 移除可能存在的前导/后导斜杠,以便干净地拼接路径 + string(REGEX REPLACE "^[/\\\\]+" "" _subdir "${_subdir}") + string(REGEX REPLACE "[/\\\\]+$" "" _subdir "${_subdir}") + if(_subdir) # 仅当子目录清理后非空时才追加 + set(DESTINATION_DIR "${DESTINATION_BASE}/${_subdir}") + endif() + endif() + endif() + + # --- 准备源文件路径 --- + set(ABS_RESOURCE_FILES "") + foreach(RESOURCE_FILE ${ARG_RESOURCE_FILES}) + get_filename_component(RESOURCE_FILE_REALPATH "${RESOURCE_FILE}" REALPATH BASE_DIR "${CMAKE_CURRENT_SOURCE_DIR}") + # if(IS_ABSOLUTE "${RESOURCE_FILE}") + # # 如果已经是绝对路径,直接使用 + # list(APPEND ABS_RESOURCE_FILES "${RESOURCE_FILE}") + # else() + # # 如果是相对路径,相对于当前源目录进行解析 + # list(APPEND ABS_RESOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${RESOURCE_FILE}") + # endif() + list(APPEND ABS_RESOURCE_FILES "${RESOURCE_FILE_REALPATH}") + + # 检查文件是否存在 (在配置时发出警告,有助于早期发现错误) + # list(GET ABS_RESOURCE_FILES -1 _current_abs_file) # 获取刚才添加的绝对路径 + if(NOT EXISTS "${RESOURCE_FILE_REALPATH}") + message(WARNING "**add_resource_file**: **资源文件** '${RESOURCE_FILE}' (解析为 '${RESOURCE_FILE_REALPATH}') **在配置时不存在**。") + endif() + endforeach() + + # --- 添加自定义命令 --- + # 使用 add_custom_command 在目标构建完成后执行复制操作 + if(ABS_RESOURCE_FILES) # 确保有文件需要复制 + # 注意:DESTINATION_DIR 可能包含特定于配置的路径(例如,如果 CMAKE_RUNTIME_OUTPUT_DIRECTORY + # 设置为 ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)。 + # add_custom_command 的 COMMAND 参数在构建时执行,此时这些变量/生成器表达式已解析。 + add_custom_command( + TARGET ${ARG_TARGET_NAME} + POST_BUILD # 指定在目标构建之后执行 + # 步骤 1: 确保目标目录存在 (copy_if_different 不会创建目录) + COMMAND ${CMAKE_COMMAND} -E make_directory "${DESTINATION_DIR}" + # 步骤 2: 复制文件 + COMMAND ${CMAKE_COMMAND} -E copy_if_different # 使用CMake内置命令复制(仅当文件不同时) + ${ABS_RESOURCE_FILES} # 要复制的源文件列表(绝对路径) + "${DESTINATION_DIR}" # 最终可执行文件所在的目标目录 (带引号以处理空格) + COMMENT "为 ${ARG_TARGET_NAME} 将资源复制到可执行文件目录: ${DESTINATION_DIR}..." # 构建时显示的注释 + VERBATIM # 确保参数(尤其是路径和生成器表达式)被正确处理 + ) + else() + message(WARNING "**add_resource_file**: 没有有效的资源文件提供给目标 '${ARG_TARGET_NAME}'。") + endif() + + # --- 可选: 将资源文件添加到 IDE 项目结构中 --- + if(ABS_RESOURCE_FILES) + set(_source_group_name "Resource Files") # 基础组名 + if(ARG_OUTPUT_SUBDIR) + # 使用与目标目录结构匹配的组名 + string(STRIP "${ARG_OUTPUT_SUBDIR}" _clean_subdir) + string(REPLACE "\\" "/" _clean_subdir "${_clean_subdir}") # 统一使用正斜杠 + string(REGEX REPLACE "^[/]+" "" _clean_subdir "${_clean_subdir}") + string(REGEX REPLACE "[/]+$" "" _clean_subdir "${_clean_subdir}") + if(_clean_subdir) + set(_source_group_name "Resource Files/${_clean_subdir}") + endif() + endif() + # 使用 source_group 将文件添加到 IDE 的指定组下 + source_group(${_source_group_name} FILES ${ABS_RESOURCE_FILES}) + endif() + +endfunction() diff --git a/src/cmake_script/utils.cmake b/src/cmake_script/utils.cmake new file mode 100644 index 0000000..96784a6 --- /dev/null +++ b/src/cmake_script/utils.cmake @@ -0,0 +1,46 @@ + +# 定义一个函数来配置项目的默认设置 +# 这包括设置输出目录和项目根目录变量 +function(configure_project_defaults) + # 检查是否在顶层 CMakeLists.txt 中调用 (可选但推荐) + # 确保 CMAKE_SOURCE_DIR 和 CMAKE_CURRENT_SOURCE_DIR 相同 + if(NOT CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR) + message(WARNING "configure_project_defaults() 应该在项目的根 CMakeLists.txt 中调用。") + # 如果您确实需要在子目录中设置不同的根目录,请调整此逻辑 + endif() + + # --- 配置输出目录 --- + # 使用 CMAKE_BINARY_DIR 作为基础构建目录 + # ${CMAKE_BINARY_DIR} 指向您配置 CMake 时指定的构建目录 + # 例如,在 CLion 中通常是 cmake-build-debug 或 cmake-build-release + # 如果手动运行 cmake ..,它就是您运行 cmake 命令的目录 + + get_filename_component(ABS_BIN_DIR ${CMAKE_BINARY_DIR} ABSOLUTE) + + # **设置可执行文件输出路径**: + # 对于单配置生成器 (如 Makefiles, Ninja), 可执行文件将位于 /bin/ + # 对于多配置生成器 (如 Visual Studio, Xcode), CMake 通常会自动在此路径下附加配置名称 + # (例如 /bin/Debug/, /bin/Release/) + set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${ABS_BIN_DIR}/bin CACHE PATH "Directory for runtime executables") + message(STATUS "运行时输出目录设置为: ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}") + + # **设置库文件输出路径 (共享库和静态库)**: + # 规则同上,库文件将位于 /lib/ 或 /lib// + set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${ABS_BIN_DIR}/lib CACHE PATH "Directory for shared libraries") + set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${ABS_BIN_DIR}/lib CACHE PATH "Directory for static libraries") + message(STATUS "库输出目录设置为: ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}") + message(STATUS "存档输出目录设置为: ${CMAKE_ARCHIVE_OUTPUT_DIRECTORY}") + + # --- 提示 --- + # 这种全局设置输出目录的方法对于中小型项目是常见的。 + # 对于更复杂的项目或需要更细粒度控制的情况,可以考虑为每个目标(target)单独设置输出目录属性: + # 例如: + # add_executable(my_app main.cpp) + # set_target_properties(my_app PROPERTIES + # RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/executables" + # ) + # add_library(my_lib STATIC my_lib.cpp) + # set_target_properties(my_lib PROPERTIES + # ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/static_libs" + # ) +endfunction() \ No newline at end of file diff --git a/src/frontend/App.axaml b/src/frontend/App.axaml new file mode 100644 index 0000000..3bc709f --- /dev/null +++ b/src/frontend/App.axaml @@ -0,0 +1,15 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/frontend/App.axaml.cs b/src/frontend/App.axaml.cs new file mode 100644 index 0000000..1f8a855 --- /dev/null +++ b/src/frontend/App.axaml.cs @@ -0,0 +1,47 @@ +using Avalonia; +using Avalonia.Controls.ApplicationLifetimes; +using Avalonia.Data.Core; +using Avalonia.Data.Core.Plugins; +using System.Linq; +using Avalonia.Markup.Xaml; +using frontend.ViewModels; +using frontend.Views; + +namespace frontend; + +public partial class App : Application +{ + public override void Initialize() + { + AvaloniaXamlLoader.Load(this); + } + + public override void OnFrameworkInitializationCompleted() + { + if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop) + { + // Avoid duplicate validations from both Avalonia and the CommunityToolkit. + // More info: https://docs.avaloniaui.net/docs/guides/development-guides/data-validation#manage-validationplugins + DisableAvaloniaDataAnnotationValidation(); + desktop.MainWindow = new MainWindow + { + DataContext = new MainWindowViewModel(), + }; + } + + base.OnFrameworkInitializationCompleted(); + } + + private void DisableAvaloniaDataAnnotationValidation() + { + // Get an array of plugins to remove + var dataValidationPluginsToRemove = + BindingPlugins.DataValidators.OfType().ToArray(); + + // remove each entry found + foreach (var plugin in dataValidationPluginsToRemove) + { + BindingPlugins.DataValidators.Remove(plugin); + } + } +} \ No newline at end of file diff --git a/src/frontend/Assets/avalonia-logo.ico b/src/frontend/Assets/avalonia-logo.ico new file mode 100644 index 0000000..f7da8bb Binary files /dev/null and b/src/frontend/Assets/avalonia-logo.ico differ diff --git a/src/frontend/Program.cs b/src/frontend/Program.cs new file mode 100644 index 0000000..712b52c --- /dev/null +++ b/src/frontend/Program.cs @@ -0,0 +1,21 @@ +using Avalonia; +using System; + +namespace frontend; + +sealed class Program +{ + // Initialization code. Don't use any Avalonia, third-party APIs or any + // SynchronizationContext-reliant code before AppMain is called: things aren't initialized + // yet and stuff might break. + [STAThread] + public static void Main(string[] args) => BuildAvaloniaApp() + .StartWithClassicDesktopLifetime(args); + + // Avalonia configuration, don't remove; also used by visual designer. + public static AppBuilder BuildAvaloniaApp() + => AppBuilder.Configure() + .UsePlatformDetect() + .WithInterFont() + .LogToTrace(); +} \ No newline at end of file diff --git a/src/frontend/ViewLocator.cs b/src/frontend/ViewLocator.cs new file mode 100644 index 0000000..d58769f --- /dev/null +++ b/src/frontend/ViewLocator.cs @@ -0,0 +1,30 @@ +using System; +using Avalonia.Controls; +using Avalonia.Controls.Templates; +using frontend.ViewModels; + +namespace frontend; + +public class ViewLocator : IDataTemplate +{ + public Control? Build(object? param) + { + if (param is null) + return null; + + var name = param.GetType().FullName!.Replace("ViewModel", "View", StringComparison.Ordinal); + var type = Type.GetType(name); + + if (type != null) + { + return (Control)Activator.CreateInstance(type)!; + } + + return new TextBlock { Text = "Not Found: " + name }; + } + + public bool Match(object? data) + { + return data is ViewModelBase; + } +} \ No newline at end of file diff --git a/src/frontend/ViewModels/MainWindowViewModel.cs b/src/frontend/ViewModels/MainWindowViewModel.cs new file mode 100644 index 0000000..329edc9 --- /dev/null +++ b/src/frontend/ViewModels/MainWindowViewModel.cs @@ -0,0 +1,6 @@ +namespace frontend.ViewModels; + +public partial class MainWindowViewModel : ViewModelBase +{ + public string Greeting { get; } = "Welcome to Avalonia!"; +} \ No newline at end of file diff --git a/src/frontend/ViewModels/ViewModelBase.cs b/src/frontend/ViewModels/ViewModelBase.cs new file mode 100644 index 0000000..cd742d0 --- /dev/null +++ b/src/frontend/ViewModels/ViewModelBase.cs @@ -0,0 +1,7 @@ +using CommunityToolkit.Mvvm.ComponentModel; + +namespace frontend.ViewModels; + +public class ViewModelBase : ObservableObject +{ +} \ No newline at end of file diff --git a/src/frontend/Views/MainWindow.axaml b/src/frontend/Views/MainWindow.axaml new file mode 100644 index 0000000..23d9fcf --- /dev/null +++ b/src/frontend/Views/MainWindow.axaml @@ -0,0 +1,20 @@ + + + + + + + + + + diff --git a/src/frontend/Views/MainWindow.axaml.cs b/src/frontend/Views/MainWindow.axaml.cs new file mode 100644 index 0000000..daabb39 --- /dev/null +++ b/src/frontend/Views/MainWindow.axaml.cs @@ -0,0 +1,11 @@ +using Avalonia.Controls; + +namespace frontend.Views; + +public partial class MainWindow : Window +{ + public MainWindow() + { + InitializeComponent(); + } +} \ No newline at end of file diff --git a/src/frontend/app.manifest b/src/frontend/app.manifest new file mode 100644 index 0000000..f344e5f --- /dev/null +++ b/src/frontend/app.manifest @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + diff --git a/src/frontend/frontend.csproj b/src/frontend/frontend.csproj new file mode 100644 index 0000000..974ea02 --- /dev/null +++ b/src/frontend/frontend.csproj @@ -0,0 +1,32 @@ + + + WinExe + net9.0 + enable + true + app.manifest + true + + + + + + + + + + + + + + + None + All + + + + + + + + diff --git a/src/proto/daw_api.proto b/src/proto/daw_api.proto new file mode 100644 index 0000000..7be113c --- /dev/null +++ b/src/proto/daw_api.proto @@ -0,0 +1,147 @@ +syntax = "proto3"; + +package daw.api; + +// =================================================================== +// Service Definitions (gRPC Control Plane) +// =================================================================== + +service TransportService { + rpc Play(Empty) returns (StatusResponse); + rpc Pause(Empty) returns (StatusResponse); + rpc Stop(Empty) returns (StatusResponse); + rpc SetTempo(SetTempoRequest) returns (StatusResponse); +} + +service ProjectService { + rpc NewProject(Empty) returns (ProjectState); + rpc LoadProject(LoadProjectRequest) returns (ProjectState); + rpc SaveProject(SaveProjectRequest) returns (StatusResponse); +} + +service TrackService { + rpc AddTrack(AddTrackRequest) returns (TrackInfo); + rpc RemoveTrack(TrackIdRequest) returns (StatusResponse); + rpc SetTrackVolume(SetTrackVolumeRequest) returns (StatusResponse); + rpc SetTrackPan(SetTrackPanRequest) returns (StatusResponse); +} + +service PluginService { + rpc LoadPlugin(LoadPluginRequest) returns (PluginInfo); + rpc SetPluginParameter(SetPluginParameterRequest) returns (StatusResponse); +} + +// =================================================================== +// Message Definitions +// =================================================================== + +message Empty {} + +message StatusResponse { + bool success = 1; + string error_message = 2; +} + +message ProjectState { + string project_id = 1; + string project_name = 2; + PlaybackState playback_state = 3; + repeated TrackInfo tracks = 4; +} + +message LoadProjectRequest { + string file_path = 1; +} + +message SaveProjectRequest { + string file_path = 1; +} + +message PlaybackState { + int32 bar = 1; + int32 beat = 2; + int32 tick = 3; + double bpm = 4; + bool is_playing = 6; +} + +message SetTempoRequest { + double bpm = 1; +} + +enum TrackType { + AUDIO = 0; + MIDI = 1; +} + +message TrackInfo { + string track_id = 1; + string name = 2; + TrackType type = 3; + float volume_db = 5; + float pan = 6; + bool is_muted = 7; + bool is_soloed = 8; + repeated PluginInfo plugins = 9; +} + +message AddTrackRequest { + string name = 1; + TrackType type = 2; +} + +message TrackIdRequest { + string track_id = 1; +} + +message SetTrackVolumeRequest { + string track_id = 1; + float volume_db = 2; +} + +message SetTrackPanRequest { + string track_id = 1; + float pan = 2; +} + +message PluginInfo { + string instance_id = 1; + string name = 2; + bool is_bypassed = 4; + repeated PluginParameter parameters = 5; +} + +message PluginParameter { + uint32 parameter_id = 1; + string name = 2; + double value = 3; +} + +message SetPluginParameterRequest { + string instance_id = 1; + uint32 parameter_id = 2; + double value = 3; +} + +message LoadPluginRequest { + string file_path = 1; +} + +// =================================================================== +// ZeroMQ High-Frequency Data Messages +// =================================================================== + +message VUMeterUpdate { + string track_id = 1; + float peak_dbfs = 2; + float rms_dbfs = 3; +} + +message VUMeterData { + repeated VUMeterUpdate updates = 1; +} + +message RealtimeCursorPosition { + double time_in_seconds = 1; + int64 absolute_ticks = 2; +} \ No newline at end of file