• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2019 The Dawn Authors
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 //     http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 
15 #include "dawn_wire/WireClient.h"
16 #include "dawn_wire/client/Client.h"
17 
18 namespace dawn_wire {
19 
WireClient(const WireClientDescriptor & descriptor)20     WireClient::WireClient(const WireClientDescriptor& descriptor)
21         : mImpl(new client::Client(descriptor.serializer, descriptor.memoryTransferService)) {
22     }
23 
~WireClient()24     WireClient::~WireClient() {
25         mImpl.reset();
26     }
27 
HandleCommands(const volatile char * commands,size_t size)28     const volatile char* WireClient::HandleCommands(const volatile char* commands, size_t size) {
29         return mImpl->HandleCommands(commands, size);
30     }
31 
ReserveTexture(WGPUDevice device)32     ReservedTexture WireClient::ReserveTexture(WGPUDevice device) {
33         return mImpl->ReserveTexture(device);
34     }
35 
ReserveSwapChain(WGPUDevice device)36     ReservedSwapChain WireClient::ReserveSwapChain(WGPUDevice device) {
37         return mImpl->ReserveSwapChain(device);
38     }
39 
ReserveDevice()40     ReservedDevice WireClient::ReserveDevice() {
41         return mImpl->ReserveDevice();
42     }
43 
ReclaimTextureReservation(const ReservedTexture & reservation)44     void WireClient::ReclaimTextureReservation(const ReservedTexture& reservation) {
45         mImpl->ReclaimTextureReservation(reservation);
46     }
47 
ReclaimSwapChainReservation(const ReservedSwapChain & reservation)48     void WireClient::ReclaimSwapChainReservation(const ReservedSwapChain& reservation) {
49         mImpl->ReclaimSwapChainReservation(reservation);
50     }
51 
ReclaimDeviceReservation(const ReservedDevice & reservation)52     void WireClient::ReclaimDeviceReservation(const ReservedDevice& reservation) {
53         mImpl->ReclaimDeviceReservation(reservation);
54     }
55 
Disconnect()56     void WireClient::Disconnect() {
57         mImpl->Disconnect();
58     }
59 
60     namespace client {
61         MemoryTransferService::MemoryTransferService() = default;
62 
63         MemoryTransferService::~MemoryTransferService() = default;
64 
65         MemoryTransferService::ReadHandle::ReadHandle() = default;
66 
67         MemoryTransferService::ReadHandle::~ReadHandle() = default;
68 
69         MemoryTransferService::WriteHandle::WriteHandle() = default;
70 
71         MemoryTransferService::WriteHandle::~WriteHandle() = default;
72     }  // namespace client
73 
74 }  // namespace dawn_wire
75