2016-08-13 22:18:50 +03:00
|
|
|
/* -*- 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";
|
2016-08-21 06:59:11 +03:00
|
|
|
using struct mozilla::null_t from "ipc/IPCMessageUtils.h";
|
2016-08-21 06:59:10 +03:00
|
|
|
using mozilla::gfx::FeatureStatus from "gfxTelemetry.h";
|
2016-08-04 21:33:44 +03:00
|
|
|
using mozilla::gfx::BackendType from "mozilla/gfx/Types.h";
|
2016-08-13 22:18:50 +03:00
|
|
|
using mozilla::gfx::IntSize from "mozilla/gfx/Point.h";
|
2016-08-24 21:02:00 +03:00
|
|
|
using gfxImageFormat from "mozilla/gfx/Types.h";
|
2016-08-13 22:18:50 +03:00
|
|
|
|
|
|
|
namespace mozilla {
|
|
|
|
namespace gfx {
|
|
|
|
|
2018-08-07 08:47:18 +03:00
|
|
|
union GfxPrefValue {
|
|
|
|
bool;
|
|
|
|
int32_t;
|
|
|
|
uint32_t;
|
|
|
|
float;
|
|
|
|
nsCString;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct GfxPrefSetting {
|
|
|
|
int32_t index;
|
|
|
|
GfxPrefValue value;
|
|
|
|
};
|
|
|
|
|
2016-08-21 06:59:11 +03:00
|
|
|
struct D3D11DeviceStatus
|
2016-08-13 22:18:50 +03:00
|
|
|
{
|
2016-08-21 06:59:11 +03:00
|
|
|
bool isWARP;
|
|
|
|
bool textureSharingWorks;
|
2016-08-21 06:59:11 +03:00
|
|
|
uint32_t featureLevel;
|
2016-08-13 22:18:50 +03:00
|
|
|
DxgiAdapterDesc adapter;
|
2017-07-19 06:09:00 +03:00
|
|
|
int32_t sequenceNumber;
|
2017-09-10 18:54:31 +03:00
|
|
|
bool useNV12;
|
2016-08-13 22:18:50 +03:00
|
|
|
};
|
|
|
|
|
2016-08-21 06:59:10 +03:00
|
|
|
struct DevicePrefs
|
|
|
|
{
|
|
|
|
FeatureStatus hwCompositing;
|
|
|
|
FeatureStatus d3d11Compositing;
|
|
|
|
FeatureStatus oglCompositing;
|
2017-06-24 00:23:12 +03:00
|
|
|
FeatureStatus advancedLayers;
|
2016-08-21 06:59:10 +03:00
|
|
|
FeatureStatus useD2D1;
|
|
|
|
};
|
|
|
|
|
2016-08-21 06:59:11 +03:00
|
|
|
struct ContentDeviceData
|
|
|
|
{
|
|
|
|
DevicePrefs prefs;
|
|
|
|
D3D11DeviceStatus d3d11;
|
|
|
|
};
|
|
|
|
|
2016-08-21 06:59:11 +03:00
|
|
|
// 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;
|
|
|
|
};
|
|
|
|
|
2016-08-26 23:37:00 +03:00
|
|
|
union GPUDeviceStatus
|
|
|
|
{
|
|
|
|
null_t;
|
|
|
|
D3D11DeviceStatus;
|
|
|
|
};
|
|
|
|
|
2016-08-21 06:59:11 +03:00
|
|
|
struct GPUDeviceData
|
|
|
|
{
|
|
|
|
FeatureChange d3d11Compositing;
|
|
|
|
FeatureChange oglCompositing;
|
2017-06-24 00:23:12 +03:00
|
|
|
FeatureChange advancedLayers;
|
2016-08-26 23:37:00 +03:00
|
|
|
GPUDeviceStatus gpuDevice;
|
2016-08-21 06:59:11 +03:00
|
|
|
};
|
|
|
|
|
2016-08-13 22:18:50 +03:00
|
|
|
union GfxVarValue
|
|
|
|
{
|
2016-08-04 21:33:44 +03:00
|
|
|
BackendType;
|
2016-08-04 21:33:44 +03:00
|
|
|
bool;
|
2016-08-24 21:02:00 +03:00
|
|
|
gfxImageFormat;
|
2016-08-13 22:18:50 +03:00
|
|
|
IntSize;
|
2016-11-02 23:57:18 +03:00
|
|
|
nsCString;
|
2017-12-16 18:13:30 +03:00
|
|
|
nsString;
|
2017-03-29 17:14:19 +03:00
|
|
|
int32_t;
|
2016-08-13 22:18:50 +03:00
|
|
|
};
|
|
|
|
|
|
|
|
struct GfxVarUpdate
|
|
|
|
{
|
|
|
|
size_t index;
|
|
|
|
GfxVarValue value;
|
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace gfx
|
|
|
|
} // namespace mozilla
|