2019-01-16 02:18:06 +00:00
|
|
|
// Copyright 2019 The Dawn Authors
|
|
|
|
//
|
|
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
// you may not use this file except in compliance with the License.
|
|
|
|
// You may obtain a copy of the License at
|
|
|
|
//
|
|
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
//
|
|
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
// See the License for the specific language governing permissions and
|
|
|
|
// limitations under the License.
|
|
|
|
|
2019-02-11 21:50:16 +00:00
|
|
|
#include "dawn_wire/WireClient.h"
|
2019-01-16 02:18:06 +00:00
|
|
|
#include "dawn_wire/client/Client.h"
|
|
|
|
|
|
|
|
namespace dawn_wire {
|
2019-02-11 21:50:16 +00:00
|
|
|
|
2019-07-19 16:01:48 +00:00
|
|
|
WireClient::WireClient(const WireClientDescriptor& descriptor)
|
|
|
|
: mImpl(new client::Client(descriptor.serializer, descriptor.memoryTransferService)) {
|
2019-02-11 21:50:16 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
WireClient::~WireClient() {
|
|
|
|
mImpl.reset();
|
|
|
|
}
|
|
|
|
|
2020-01-10 00:02:38 +00:00
|
|
|
WGPUDevice WireClient::GetDevice() const {
|
|
|
|
return mImpl->GetDevice();
|
2019-01-16 02:18:06 +00:00
|
|
|
}
|
2019-01-30 02:20:58 +00:00
|
|
|
|
2019-10-07 20:38:47 +00:00
|
|
|
const volatile char* WireClient::HandleCommands(const volatile char* commands, size_t size) {
|
2019-02-11 21:50:16 +00:00
|
|
|
return mImpl->HandleCommands(commands, size);
|
2019-01-30 02:20:58 +00:00
|
|
|
}
|
2019-02-11 21:50:16 +00:00
|
|
|
|
2019-10-24 22:27:27 +00:00
|
|
|
ReservedTexture WireClient::ReserveTexture(WGPUDevice device) {
|
2019-03-28 12:57:11 +00:00
|
|
|
return mImpl->ReserveTexture(device);
|
|
|
|
}
|
|
|
|
|
2020-04-15 02:00:14 +00:00
|
|
|
void WireClient::Disconnect() {
|
|
|
|
mImpl->Disconnect();
|
|
|
|
}
|
|
|
|
|
2019-07-19 16:01:48 +00:00
|
|
|
namespace client {
|
2020-11-03 14:24:05 +00:00
|
|
|
MemoryTransferService::MemoryTransferService() = default;
|
|
|
|
|
2019-07-19 16:01:48 +00:00
|
|
|
MemoryTransferService::~MemoryTransferService() = default;
|
|
|
|
|
|
|
|
MemoryTransferService::ReadHandle*
|
2019-10-24 22:27:27 +00:00
|
|
|
MemoryTransferService::CreateReadHandle(WGPUBuffer buffer, uint64_t offset, size_t size) {
|
2019-07-19 16:01:48 +00:00
|
|
|
return CreateReadHandle(size);
|
|
|
|
}
|
|
|
|
|
|
|
|
MemoryTransferService::WriteHandle*
|
2019-10-24 22:27:27 +00:00
|
|
|
MemoryTransferService::CreateWriteHandle(WGPUBuffer buffer, uint64_t offset, size_t size) {
|
2019-07-19 16:01:48 +00:00
|
|
|
return CreateWriteHandle(size);
|
|
|
|
}
|
|
|
|
|
2020-11-03 14:24:05 +00:00
|
|
|
MemoryTransferService::ReadHandle::ReadHandle() = default;
|
|
|
|
|
2019-07-19 16:01:48 +00:00
|
|
|
MemoryTransferService::ReadHandle::~ReadHandle() = default;
|
|
|
|
|
2020-11-03 14:24:05 +00:00
|
|
|
MemoryTransferService::WriteHandle::WriteHandle() = default;
|
|
|
|
|
2019-07-19 16:01:48 +00:00
|
|
|
MemoryTransferService::WriteHandle::~WriteHandle() = default;
|
|
|
|
} // namespace client
|
|
|
|
|
2019-01-16 02:18:06 +00:00
|
|
|
} // namespace dawn_wire
|