Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  LayersSurfaces.ipdlh   Sprache: unbekannt

 
/* 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/. */

include "gfxipc/ShadowLayerUtils.h";
include "mozilla/GfxMessageUtils.h";
include "mozilla/layers/LayersMessageUtils.h";
include "mozilla/layers/WebRenderMessageUtils.h";

using gfxPoint from "gfxPoint.h";
using nsIntRegion from "nsRegion.h";
using mozilla::StereoMode from "ImageTypes.h";
using struct mozilla::null_t from "mozilla/ipc/IPCCore.h";
using mozilla::WindowsHandle from "mozilla/ipc/IPCTypes.h";
using mozilla::gfx::YUVColorSpace from "mozilla/gfx/Types.h";
using mozilla::gfx::ChromaSubsampling from "mozilla/gfx/Types.h";
using mozilla::gfx::ColorDepth from "mozilla/gfx/Types.h";
using mozilla::gfx::ColorRange from "mozilla/gfx/Types.h";
using mozilla::gfx::ColorSpace2 from "mozilla/gfx/Types.h";
using mozilla::gfx::TransferFunction from "mozilla/gfx/Types.h";
using mozilla::gfx::SurfaceFormat from "mozilla/gfx/Types.h";
using mozilla::gfx::IntRect from "mozilla/gfx/Rect.h";
using mozilla::gfx::IntSize from "mozilla/gfx/Point.h";
using mozilla::gfx::Matrix4x4 from "mozilla/gfx/Matrix.h";
using mozilla::gfx::FenceInfo from "mozilla/gfx/FileHandleWrapper.h";
[RefCounted] using mozilla::gfx::FileHandleWrapper from "mozilla/gfx/FileHandleWrapper.h";
[MoveOnly] using mozilla::ipc::SharedMemory::Handle from "mozilla/ipc/SharedMemory.h";
using gfxImageFormat from "gfxTypes.h";
using mozilla::layers::MaybeVideoBridgeSource from "mozilla/layers/VideoBridgeUtils.h";
using mozilla::layers::RemoteTextureId from "mozilla/layers/LayersTypes.h";
using mozilla::layers::RemoteTextureOwnerId from "mozilla/layers/LayersTypes.h";
[RefCounted] using mozilla::layers::GpuFence from "mozilla/layers/GpuFence.h";
using mozilla::layers::GpuProcessTextureId from "mozilla/layers/LayersTypes.h";
using mozilla::layers::GpuProcessQueryId from "mozilla/layers/LayersTypes.h";
using mozilla::wr::ExternalImageSource from "mozilla/webrender/WebRenderTypes.h";
using mozilla::wr::ExternalImageId from "mozilla/webrender/WebRenderTypes.h";
using mozilla::layers::SurfaceDescriptorRemoteDecoderId from "mozilla/layers/LayersTypes.h";

namespace mozilla {
namespace layers {

[Comparable] struct SurfaceDescriptorD3D10 {
  nullable FileHandleWrapper handle;
  GpuProcessTextureId? gpuProcessTextureId;
  uint32_t arrayIndex;
  SurfaceFormat format;
  IntSize size;
  ColorSpace2 colorSpace;
  ColorRange colorRange;
  bool hasKeyedMutex;
  FenceInfo? fenceInfo;
  GpuProcessQueryId? gpuProcessQueryId;
};

[Comparable] struct SurfaceDescriptorDXGIYCbCr {
  nullable FileHandleWrapper handleY;
  nullable FileHandleWrapper handleCb;
  nullable FileHandleWrapper handleCr;
  IntSize size;
  IntSize sizeY;
  IntSize sizeCbCr;
  ColorDepth colorDepth;
  YUVColorSpace yUVColorSpace;
  ColorRange colorRange;
};

[Comparable] struct SurfaceDescriptorMacIOSurface {
  uint32_t surfaceId;
  bool isOpaque;
  YUVColorSpace yUVColorSpace;
  nullable GpuFence gpuFence;
};

[Comparable] struct SurfaceDescriptorDMABuf {
  uint32_t bufferType;
  uint32_t fourccFormat;
  uint64_t[] modifier;
  uint32_t flags;
  FileHandleWrapper[] fds;
  uint32_t[] width;
  uint32_t[] height;
  uint32_t[] widthAligned;
  uint32_t[] heightAligned;
  uint32_t[] format;
  uint32_t[] strides;
  uint32_t[] offsets;
  YUVColorSpace yUVColorSpace;
  ColorRange colorRange;
  ColorSpace2 colorPrimaries;
  TransferFunction transferFunction;
  FileHandleWrapper[] fence;
  uint32_t uid;
  FileDescriptor[] refCount;
  nullable FileHandleWrapper semaphoreFd;
};

[Comparable] struct SurfaceTextureDescriptor {
  uint64_t handle;
  IntSize size;
  SurfaceFormat format;
  bool continuous;
  bool forceBT709ColorSpace;
  Matrix4x4? transformOverride;
};

[Comparable] struct SurfaceDescriptorAndroidHardwareBuffer {
  uint64_t bufferId;
  IntSize size;
  SurfaceFormat format;
};

[Comparable] struct EGLImageDescriptor {
  uintptr_t image; // `EGLImage` is a `void*`.
  uintptr_t fence;
  IntSize size;
  bool hasAlpha;
};

[Comparable] struct SurfaceDescriptorSharedGLTexture {
  uint32_t texture;
  uint32_t target;
  uintptr_t fence;
  IntSize size;
  bool hasAlpha;
};

[Comparable] struct SurfaceDescriptorDcompSurface {
  FileDescriptor handle;
  IntSize size;
  SurfaceFormat format;
};

[Comparable] union RemoteDecoderVideoSubDescriptor {
  SurfaceDescriptorD3D10;
  SurfaceDescriptorDXGIYCbCr;
  SurfaceDescriptorDMABuf;
  SurfaceDescriptorMacIOSurface;
  SurfaceDescriptorDcompSurface;
  null_t;
};

[Comparable] struct SurfaceDescriptorRemoteDecoder {
  uint64_t handle;
  RemoteDecoderVideoSubDescriptor subdesc;
  MaybeVideoBridgeSource source;
  SurfaceDescriptorRemoteDecoderId id;
};

[Comparable] union SurfaceDescriptorGPUVideo {
  SurfaceDescriptorRemoteDecoder;
};

[Comparable] struct RGBDescriptor {
  IntSize size;
  SurfaceFormat format;
};

[Comparable] struct YCbCrDescriptor {
  IntRect display;
  IntSize ySize;
  uint32_t yStride;
  IntSize cbCrSize;
  uint32_t cbCrStride;
  uint32_t yOffset;
  uint32_t cbOffset;
  uint32_t crOffset;
  StereoMode stereoMode;
  ColorDepth colorDepth;
  YUVColorSpace yUVColorSpace;
  ColorRange colorRange;
  ChromaSubsampling chromaSubsampling;
};

[Comparable] union BufferDescriptor {
  RGBDescriptor;
  YCbCrDescriptor;
};

[Comparable] union MemoryOrShmem {
  uintptr_t;
  Shmem;
};

[Comparable] struct SurfaceDescriptorBuffer {
  BufferDescriptor desc;
  MemoryOrShmem data;
};

[Comparable] struct SurfaceDescriptorShared
{
  IntSize size;
  int32_t stride;
  SurfaceFormat format;
  Handle handle;
};

[Comparable] struct SurfaceDescriptorExternalImage
{
  ExternalImageSource source;
  ExternalImageId id;
};

[Comparable] struct SurfaceDescriptorRemoteTexture {
  RemoteTextureId textureId;
  RemoteTextureOwnerId ownerId;
};

[Comparable] union SurfaceDescriptor {
  SurfaceDescriptorBuffer;
  SurfaceDescriptorD3D10;
  SurfaceDescriptorDXGIYCbCr;
  SurfaceDescriptorDMABuf;
  SurfaceTextureDescriptor;
  SurfaceDescriptorAndroidHardwareBuffer;
  EGLImageDescriptor;
  SurfaceDescriptorMacIOSurface;
  SurfaceDescriptorSharedGLTexture;
  SurfaceDescriptorGPUVideo;
  SurfaceDescriptorRemoteTexture;
  SurfaceDescriptorDcompSurface;
  SurfaceDescriptorExternalImage;
  null_t;
};

} // namespace
} // namespace

[ Dauer der Verarbeitung: 0.17 Sekunden  (vorverarbeitet)  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge