mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-16 14:55:47 +00:00
6b5716d415
the goal of this PR is to provide the necessary infrastructure to handle errors on the GPU process side and send them back to the client side, triggering the uncaptured error events. Differential Revision: https://phabricator.services.mozilla.com/D98542
41 lines
1.1 KiB
C++
41 lines
1.1 KiB
C++
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#ifndef GPU_ValidationError_H_
|
|
#define GPU_ValidationError_H_
|
|
|
|
#include "nsWrapperCache.h"
|
|
#include "ObjectModel.h"
|
|
|
|
namespace mozilla {
|
|
namespace dom {
|
|
class GlobalObject;
|
|
} // namespace dom
|
|
namespace webgpu {
|
|
class Device;
|
|
|
|
class ValidationError final : public nsWrapperCache, public ChildOf<Device> {
|
|
nsCString mMessage;
|
|
|
|
public:
|
|
GPU_DECL_CYCLE_COLLECTION(ValidationError)
|
|
GPU_DECL_JS_WRAP(ValidationError)
|
|
ValidationError(Device* aParent, const nsACString& aMessage);
|
|
|
|
private:
|
|
virtual ~ValidationError();
|
|
void Cleanup() {}
|
|
|
|
public:
|
|
static already_AddRefed<ValidationError> Constructor(
|
|
const dom::GlobalObject& aGlobal, const nsAString& aString);
|
|
void GetMessage(nsAString& aMessage) const;
|
|
};
|
|
|
|
} // namespace webgpu
|
|
} // namespace mozilla
|
|
|
|
#endif // GPU_ValidationError_H_
|