1 // 2 // Copyright 2015 The ANGLE Project Authors. All rights reserved. 3 // Use of this source code is governed by a BSD-style license that can be 4 // found in the LICENSE file. 5 // 6 // DebugAnnotator11.h: D3D11 helpers for adding trace annotations. 7 // 8 9 #ifndef LIBANGLE_RENDERER_D3D_D3D11_DEBUGANNOTATOR11_H_ 10 #define LIBANGLE_RENDERER_D3D_D3D11_DEBUGANNOTATOR11_H_ 11 12 #include "libANGLE/LoggingAnnotator.h" 13 14 namespace rx 15 { 16 17 class DebugAnnotator11 : public angle::LoggingAnnotator 18 { 19 public: 20 DebugAnnotator11(); 21 ~DebugAnnotator11() override; 22 void beginEvent(const wchar_t *eventName) override; 23 void endEvent() override; 24 void setMarker(const wchar_t *markerName) override; 25 bool getStatus() override; 26 27 private: 28 void initializeDevice(); 29 30 bool mInitialized; 31 HMODULE mD3d11Module; 32 ID3DUserDefinedAnnotation *mUserDefinedAnnotation; 33 }; 34 35 } 36 37 #endif // LIBANGLE_RENDERER_D3D_D3D11_DEBUGANNOTATOR11_H_ 38