1*8975f5c5SAndroid Build Coastguard Worker //
2*8975f5c5SAndroid Build Coastguard Worker // Copyright 2017 The ANGLE Project Authors. All rights reserved.
3*8975f5c5SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be
4*8975f5c5SAndroid Build Coastguard Worker // found in the LICENSE file.
5*8975f5c5SAndroid Build Coastguard Worker //
6*8975f5c5SAndroid Build Coastguard Worker // LoggingAnnotator.cpp: DebugAnnotator implementing logging
7*8975f5c5SAndroid Build Coastguard Worker //
8*8975f5c5SAndroid Build Coastguard Worker
9*8975f5c5SAndroid Build Coastguard Worker #include "libANGLE/LoggingAnnotator.h"
10*8975f5c5SAndroid Build Coastguard Worker
11*8975f5c5SAndroid Build Coastguard Worker #include "libANGLE/trace.h"
12*8975f5c5SAndroid Build Coastguard Worker
13*8975f5c5SAndroid Build Coastguard Worker namespace angle
14*8975f5c5SAndroid Build Coastguard Worker {
15*8975f5c5SAndroid Build Coastguard Worker
getStatus(const gl::Context * context)16*8975f5c5SAndroid Build Coastguard Worker bool LoggingAnnotator::getStatus(const gl::Context *context)
17*8975f5c5SAndroid Build Coastguard Worker {
18*8975f5c5SAndroid Build Coastguard Worker return false;
19*8975f5c5SAndroid Build Coastguard Worker }
20*8975f5c5SAndroid Build Coastguard Worker
beginEvent(gl::Context * context,EntryPoint entryPoint,const char * eventName,const char * eventMessage)21*8975f5c5SAndroid Build Coastguard Worker void LoggingAnnotator::beginEvent(gl::Context *context,
22*8975f5c5SAndroid Build Coastguard Worker EntryPoint entryPoint,
23*8975f5c5SAndroid Build Coastguard Worker const char *eventName,
24*8975f5c5SAndroid Build Coastguard Worker const char *eventMessage)
25*8975f5c5SAndroid Build Coastguard Worker {
26*8975f5c5SAndroid Build Coastguard Worker ANGLE_TRACE_EVENT_BEGIN0("gpu.angle", eventName);
27*8975f5c5SAndroid Build Coastguard Worker }
28*8975f5c5SAndroid Build Coastguard Worker
endEvent(gl::Context * context,const char * eventName,EntryPoint entryPoint)29*8975f5c5SAndroid Build Coastguard Worker void LoggingAnnotator::endEvent(gl::Context *context, const char *eventName, EntryPoint entryPoint)
30*8975f5c5SAndroid Build Coastguard Worker {
31*8975f5c5SAndroid Build Coastguard Worker ANGLE_TRACE_EVENT_END0("gpu.angle", eventName);
32*8975f5c5SAndroid Build Coastguard Worker }
33*8975f5c5SAndroid Build Coastguard Worker
setMarker(gl::Context * context,const char * markerName)34*8975f5c5SAndroid Build Coastguard Worker void LoggingAnnotator::setMarker(gl::Context *context, const char *markerName)
35*8975f5c5SAndroid Build Coastguard Worker {
36*8975f5c5SAndroid Build Coastguard Worker ANGLE_TRACE_EVENT_INSTANT0("gpu.angle", markerName);
37*8975f5c5SAndroid Build Coastguard Worker }
38*8975f5c5SAndroid Build Coastguard Worker
logMessage(const gl::LogMessage & msg) const39*8975f5c5SAndroid Build Coastguard Worker void LoggingAnnotator::logMessage(const gl::LogMessage &msg) const
40*8975f5c5SAndroid Build Coastguard Worker {
41*8975f5c5SAndroid Build Coastguard Worker auto *plat = ANGLEPlatformCurrent();
42*8975f5c5SAndroid Build Coastguard Worker if (plat != nullptr)
43*8975f5c5SAndroid Build Coastguard Worker {
44*8975f5c5SAndroid Build Coastguard Worker switch (msg.getSeverity())
45*8975f5c5SAndroid Build Coastguard Worker {
46*8975f5c5SAndroid Build Coastguard Worker case gl::LOG_FATAL:
47*8975f5c5SAndroid Build Coastguard Worker case gl::LOG_ERR:
48*8975f5c5SAndroid Build Coastguard Worker plat->logError(plat, msg.getMessage().c_str());
49*8975f5c5SAndroid Build Coastguard Worker break;
50*8975f5c5SAndroid Build Coastguard Worker case gl::LOG_WARN:
51*8975f5c5SAndroid Build Coastguard Worker plat->logWarning(plat, msg.getMessage().c_str());
52*8975f5c5SAndroid Build Coastguard Worker break;
53*8975f5c5SAndroid Build Coastguard Worker case gl::LOG_INFO:
54*8975f5c5SAndroid Build Coastguard Worker plat->logInfo(plat, msg.getMessage().c_str());
55*8975f5c5SAndroid Build Coastguard Worker break;
56*8975f5c5SAndroid Build Coastguard Worker default:
57*8975f5c5SAndroid Build Coastguard Worker UNREACHABLE();
58*8975f5c5SAndroid Build Coastguard Worker }
59*8975f5c5SAndroid Build Coastguard Worker }
60*8975f5c5SAndroid Build Coastguard Worker gl::Trace(msg.getSeverity(), msg.getMessage().c_str());
61*8975f5c5SAndroid Build Coastguard Worker }
62*8975f5c5SAndroid Build Coastguard Worker
63*8975f5c5SAndroid Build Coastguard Worker } // namespace angle
64