// // Copyright (c) Microsoft Corporation. All rights reserved. // // // File generated by WinMDIDL version 8.00.0021 // import "inspectable.idl"; import "AsyncInfo.idl"; import "EventToken.idl"; import "windowscontracts.idl"; import "Windows.Foundation.idl"; // Forward Declare namespace Windows { namespace Foundation { apicontract UniversalApiContract; } } namespace Windows { namespace System { namespace Diagnostics { namespace TraceReporting { typedef enum PlatformDiagnosticActionState PlatformDiagnosticActionState; typedef enum PlatformDiagnosticEscalationType PlatformDiagnosticEscalationType; typedef enum PlatformDiagnosticEventBufferLatencies PlatformDiagnosticEventBufferLatencies; typedef enum PlatformDiagnosticTracePriority PlatformDiagnosticTracePriority; typedef enum PlatformDiagnosticTraceSlotState PlatformDiagnosticTraceSlotState; typedef enum PlatformDiagnosticTraceSlotType PlatformDiagnosticTraceSlotType; interface IPlatformDiagnosticActionsStatics; interface IPlatformDiagnosticTraceInfo; interface IPlatformDiagnosticTraceRuntimeInfo; runtimeclass PlatformDiagnosticActions; runtimeclass PlatformDiagnosticTraceInfo; runtimeclass PlatformDiagnosticTraceRuntimeInfo; } } } } // Generic instantiations namespace Windows { namespace System { namespace Diagnostics { namespace TraceReporting { declare { interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IVectorView; } } } } } // Type definition namespace Windows { namespace System { namespace Diagnostics { namespace TraceReporting { [contract(Windows.Foundation.UniversalApiContract, 4.0)] enum PlatformDiagnosticActionState { Success = 0, FreeNetworkNotAvailable = 1, ACPowerNotAvailable = 2 }; [contract(Windows.Foundation.UniversalApiContract, 4.0)] enum PlatformDiagnosticEscalationType { OnCompletion = 0, OnFailure = 1 }; [contract(Windows.Foundation.UniversalApiContract, 4.0)] [flags] enum PlatformDiagnosticEventBufferLatencies { Normal = 0x1, CostDeferred = 0x2, Realtime = 0x4 }; [contract(Windows.Foundation.UniversalApiContract, 4.0)] enum PlatformDiagnosticTracePriority { Normal = 0, UserElevated = 1 }; [contract(Windows.Foundation.UniversalApiContract, 4.0)] enum PlatformDiagnosticTraceSlotState { NotRunning = 0, Running = 1, Throttled = 2 }; [contract(Windows.Foundation.UniversalApiContract, 4.0)] enum PlatformDiagnosticTraceSlotType { Alternative = 0, AlwaysOn = 1, Mini = 2 }; [contract(Windows.Foundation.UniversalApiContract, 4.0)] [exclusiveto(Windows.System.Diagnostics.TraceReporting.PlatformDiagnosticActions)] [uuid(C1145CFA-9292-4267-890A-9EA3ED072312)] interface IPlatformDiagnosticActionsStatics : IInspectable { HRESULT IsScenarioEnabled([in] GUID scenarioId, [out] [retval] boolean* isActive); HRESULT TryEscalateScenario([in] GUID scenarioId, [in] Windows.System.Diagnostics.TraceReporting.PlatformDiagnosticEscalationType escalationType, [in] HSTRING outputDirectory, [in] boolean timestampOutputDirectory, [in] boolean forceEscalationUpload, [in] Windows.Foundation.Collections.IMapView* triggers, [out] [retval] boolean* result); HRESULT DownloadLatestSettingsForNamespace([in] HSTRING partner, [in] HSTRING feature, [in] boolean isScenarioNamespace, [in] boolean downloadOverCostedNetwork, [in] boolean downloadOverBattery, [out] [retval] Windows.System.Diagnostics.TraceReporting.PlatformDiagnosticActionState* result); HRESULT GetActiveScenarioList([out] [retval] Windows.Foundation.Collections.IVectorView** scenarioIds); HRESULT ForceUpload([in] Windows.System.Diagnostics.TraceReporting.PlatformDiagnosticEventBufferLatencies latency, [in] boolean uploadOverCostedNetwork, [in] boolean uploadOverBattery, [out] [retval] Windows.System.Diagnostics.TraceReporting.PlatformDiagnosticActionState* result); HRESULT IsTraceRunning([in] Windows.System.Diagnostics.TraceReporting.PlatformDiagnosticTraceSlotType slotType, [in] GUID scenarioId, [in] UINT64 traceProfileHash, [out] [retval] Windows.System.Diagnostics.TraceReporting.PlatformDiagnosticTraceSlotState* slotState); HRESULT GetActiveTraceRuntime([in] Windows.System.Diagnostics.TraceReporting.PlatformDiagnosticTraceSlotType slotType, [out] [retval] Windows.System.Diagnostics.TraceReporting.PlatformDiagnosticTraceRuntimeInfo** traceRuntimeInfo); HRESULT GetKnownTraceList([in] Windows.System.Diagnostics.TraceReporting.PlatformDiagnosticTraceSlotType slotType, [out] [retval] Windows.Foundation.Collections.IVectorView** traceInfo); } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [exclusiveto(Windows.System.Diagnostics.TraceReporting.PlatformDiagnosticTraceInfo)] [uuid(F870ED97-D597-4BF7-88DC-CF5C7DC2A1D2)] interface IPlatformDiagnosticTraceInfo : IInspectable { [propget] HRESULT ScenarioId([out] [retval] GUID* value); [propget] HRESULT ProfileHash([out] [retval] UINT64* value); [propget] HRESULT IsExclusive([out] [retval] boolean* value); [propget] HRESULT IsAutoLogger([out] [retval] boolean* value); [propget] HRESULT MaxTraceDurationFileTime([out] [retval] INT64* value); [propget] HRESULT Priority([out] [retval] Windows.System.Diagnostics.TraceReporting.PlatformDiagnosticTracePriority* value); } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [exclusiveto(Windows.System.Diagnostics.TraceReporting.PlatformDiagnosticTraceRuntimeInfo)] [uuid(3D4D5E2D-01D8-4768-8554-1EB1CA610986)] interface IPlatformDiagnosticTraceRuntimeInfo : IInspectable { [propget] HRESULT RuntimeFileTime([out] [retval] INT64* value); [propget] HRESULT EtwRuntimeFileTime([out] [retval] INT64* value); } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [marshaling_behavior(agile)] [static(Windows.System.Diagnostics.TraceReporting.IPlatformDiagnosticActionsStatics, Windows.Foundation.UniversalApiContract, 4.0)] [threading(both)] runtimeclass PlatformDiagnosticActions { } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass PlatformDiagnosticTraceInfo { [default] interface Windows.System.Diagnostics.TraceReporting.IPlatformDiagnosticTraceInfo; } [contract(Windows.Foundation.UniversalApiContract, 4.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass PlatformDiagnosticTraceRuntimeInfo { [default] interface Windows.System.Diagnostics.TraceReporting.IPlatformDiagnosticTraceRuntimeInfo; } } } } }