зеркало из https://github.com/mozilla/gecko-dev.git
87 строки
1.7 KiB
Plaintext
87 строки
1.7 KiB
Plaintext
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
|
* vim: sw=2 ts=8 et :
|
|
*/
|
|
/* 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/. */
|
|
|
|
using struct DxgiAdapterDesc from "mozilla/D3DMessageUtils.h";
|
|
using struct mozilla::null_t from "ipc/IPCMessageUtils.h";
|
|
using mozilla::gfx::FeatureStatus from "gfxTelemetry.h";
|
|
using mozilla::gfx::BackendType from "mozilla/gfx/Types.h";
|
|
using mozilla::gfx::IntSize from "mozilla/gfx/Point.h";
|
|
using gfxImageFormat from "mozilla/gfx/Types.h";
|
|
|
|
namespace mozilla {
|
|
namespace gfx {
|
|
|
|
struct D3D11DeviceStatus
|
|
{
|
|
bool isWARP;
|
|
bool textureSharingWorks;
|
|
uint32_t featureLevel;
|
|
DxgiAdapterDesc adapter;
|
|
};
|
|
|
|
struct DevicePrefs
|
|
{
|
|
FeatureStatus hwCompositing;
|
|
FeatureStatus d3d11Compositing;
|
|
FeatureStatus d3d9Compositing;
|
|
FeatureStatus oglCompositing;
|
|
FeatureStatus useD2D1;
|
|
};
|
|
|
|
struct ContentDeviceData
|
|
{
|
|
DevicePrefs prefs;
|
|
D3D11DeviceStatus d3d11;
|
|
};
|
|
|
|
// Represents the state of a feature that has failed to initialize.
|
|
struct FeatureFailure
|
|
{
|
|
FeatureStatus status;
|
|
nsCString message;
|
|
nsCString failureId;
|
|
};
|
|
|
|
// If a feature state has changed from Enabled -> Failure, this will be non-
|
|
// null.
|
|
union FeatureChange
|
|
{
|
|
null_t;
|
|
FeatureFailure;
|
|
};
|
|
|
|
union GPUDeviceStatus
|
|
{
|
|
null_t;
|
|
D3D11DeviceStatus;
|
|
};
|
|
|
|
struct GPUDeviceData
|
|
{
|
|
FeatureChange d3d11Compositing;
|
|
FeatureChange d3d9Compositing;
|
|
FeatureChange oglCompositing;
|
|
GPUDeviceStatus gpuDevice;
|
|
};
|
|
|
|
union GfxVarValue
|
|
{
|
|
BackendType;
|
|
bool;
|
|
gfxImageFormat;
|
|
IntSize;
|
|
};
|
|
|
|
struct GfxVarUpdate
|
|
{
|
|
size_t index;
|
|
GfxVarValue value;
|
|
};
|
|
|
|
} // namespace gfx
|
|
} // namespace mozilla
|