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 // DebugAnnotator9.h: D3D9 helpers for adding trace annotations.
7 //
8 
9 #ifndef LIBANGLE_RENDERER_D3D_D3D9_DEBUGANNOTATOR9_H_
10 #define LIBANGLE_RENDERER_D3D_D3D9_DEBUGANNOTATOR9_H_
11 
12 #include "libANGLE/LoggingAnnotator.h"
13 
14 namespace rx
15 {
16 
17 class DebugAnnotator9 : public angle::LoggingAnnotator
18 {
19   public:
DebugAnnotator9()20     DebugAnnotator9() {}
21     void beginEvent(gl::Context *context,
22                     angle::EntryPoint entryPoint,
23                     const char *eventName,
24                     const char *eventMessage) override;
25     void endEvent(gl::Context *context,
26                   const char *eventName,
27                   angle::EntryPoint entryPoint) override;
28     void setMarker(const char *markerName) override;
29     bool getStatus() override;
30 
31   private:
32     static constexpr size_t kMaxMessageLength = 256;
33     wchar_t mWCharMessage[kMaxMessageLength];
34 };
35 
36 }  // namespace rx
37 
38 #endif  // LIBANGLE_RENDERER_D3D_D3D9_DEBUGANNOTATOR9_H_
39