tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

Utility.h (2348B)


      1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
      2 /* This Source Code Form is subject to the terms of the Mozilla Public
      3 * License, v. 2.0. If a copy of the MPL was not distributed with this
      4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      5 
      6 #ifndef GPU_UTIL_H_
      7 #define GPU_UTIL_H_
      8 
      9 #include "mozilla/dom/TypedArray.h"
     10 #include "mozilla/dom/WebGPUBinding.h"
     11 
     12 namespace mozilla {
     13 class ErrorResult;
     14 
     15 namespace dom {
     16 struct GPUComputePassDescriptor;
     17 enum class PredefinedColorSpace : uint8_t;
     18 template <typename T>
     19 class Sequence;
     20 using GPUExtent3D = RangeEnforcedUnsignedLongSequenceOrGPUExtent3DDict;
     21 using OwningGPUExtent3D =
     22    OwningRangeEnforcedUnsignedLongSequenceOrGPUExtent3DDict;
     23 }  // namespace dom
     24 namespace webgpu {
     25 namespace ffi {
     26 struct WGPUExtent3d;
     27 }  // namespace ffi
     28 
     29 void ConvertExtent3DToFFI(const dom::GPUExtent3D& aExtent,
     30                          ffi::WGPUExtent3d* aExtentFFI);
     31 
     32 void ConvertExtent3DToFFI(const dom::OwningGPUExtent3D& aExtent,
     33                          ffi::WGPUExtent3d* aExtentFFI);
     34 
     35 ffi::WGPUExtent3d ConvertExtent(const dom::GPUExtent3D& aExtent);
     36 
     37 ffi::WGPUExtent3d ConvertExtent(const dom::OwningGPUExtent3D& aExtent);
     38 
     39 ffi::WGPUCompareFunction ConvertCompareFunction(
     40    const dom::GPUCompareFunction& aCompare);
     41 
     42 ffi::WGPUTextureFormat ConvertTextureFormat(
     43    const dom::GPUTextureFormat& aFormat);
     44 
     45 ffi::WGPUTextureAspect ConvertTextureAspect(
     46    const dom::GPUTextureAspect& aAspect);
     47 
     48 ffi::WGPUVertexFormat ConvertVertexFormat(const dom::GPUVertexFormat& aFormat);
     49 
     50 ffi::WGPUMultisampleState ConvertMultisampleState(
     51    const dom::GPUMultisampleState& aDesc);
     52 
     53 ffi::WGPUBlendComponent ConvertBlendComponent(
     54    const dom::GPUBlendComponent& aDesc);
     55 
     56 ffi::WGPUStencilFaceState ConvertStencilFaceState(
     57    const dom::GPUStencilFaceState& aDesc);
     58 
     59 ffi::WGPUDepthStencilState ConvertDepthStencilState(
     60    const dom::GPUDepthStencilState& aDesc);
     61 
     62 ffi::WGPUPredefinedColorSpace ConvertPredefinedColorSpace(
     63    const dom::PredefinedColorSpace& aColorSpace);
     64 
     65 mozilla::Maybe<mozilla::Buffer<uint32_t>> GetDynamicOffsetsFromArray(
     66    const dom::Uint32Array& aDynamicOffsetsData,
     67    uint64_t aDynamicOffsetsDataStart, uint64_t aDynamicOffsetsDataLength,
     68    ErrorResult& aRv);
     69 
     70 }  // namespace webgpu
     71 }  // namespace mozilla
     72 
     73 #endif  // GPU_UTIL_H_