mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-17 08:57:26 +00:00
dawn_wire::server: Simplify ForwardToServer usage with C++17
This uses template parameter type deduction to pass the member function pointer and then extract the types that compose it. Which means that the member function pointer only needs to be written once. The order of arguments of the Server::On*Callback methods is changed to put the userdata first. This helps make template type deduction simpler. Bug: dawn:824 Change-Id: I4e2bc33dfd52a11620dea51b40508eca6c878d72 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/75071 Reviewed-by: Austin Eng <enga@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
This commit is contained in:
committed by
Dawn LUCI CQ
parent
2994d2e7b9
commit
31f12242da
@@ -17,7 +17,7 @@
|
||||
|
||||
namespace dawn_wire { namespace server {
|
||||
|
||||
void Server::OnQueueWorkDone(WGPUQueueWorkDoneStatus status, QueueWorkDoneUserdata* data) {
|
||||
void Server::OnQueueWorkDone(QueueWorkDoneUserdata* data, WGPUQueueWorkDoneStatus status) {
|
||||
ReturnQueueWorkDoneCallbackCmd cmd;
|
||||
cmd.queue = data->queue;
|
||||
cmd.requestSerial = data->requestSerial;
|
||||
@@ -38,10 +38,9 @@ namespace dawn_wire { namespace server {
|
||||
userdata->queue = ObjectHandle{queueId, queue->generation};
|
||||
userdata->requestSerial = requestSerial;
|
||||
|
||||
mProcs.queueOnSubmittedWorkDone(
|
||||
queue->handle, signalValue,
|
||||
ForwardToServer<decltype(&Server::OnQueueWorkDone)>::Func<&Server::OnQueueWorkDone>(),
|
||||
userdata.release());
|
||||
mProcs.queueOnSubmittedWorkDone(queue->handle, signalValue,
|
||||
ForwardToServer<&Server::OnQueueWorkDone>,
|
||||
userdata.release());
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user