Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
EventTracingPriv.h
Go to the documentation of this file.
1/*
2 * Copyright 2017 Google Inc.
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7
8#ifndef EventTracingPriv_DEFINED
9#define EventTracingPriv_DEFINED
10
12
13/**
14 * Construct and install an SkEventTracer, based on the mode,
15 * defaulting to the --trace command line argument.
16 */
17void initializeEventTracingForTools(const char* mode = nullptr);
18
19/**
20 * Helper class used by internal implementations of SkEventTracer to manage categories.
21 */
23public:
24 SkEventTracingCategories() : fNumCategories(0) {}
25
26 uint8_t* getCategoryGroupEnabled(const char* name);
27 const char* getCategoryGroupName(const uint8_t* categoryEnabledFlag);
28
29private:
30 enum { kMaxCategories = 256 };
31
32 struct CategoryState {
33 uint8_t fEnabled;
34 const char* fName;
35 };
36
37 CategoryState fCategories[kMaxCategories];
38 int fNumCategories;
39 SkMutex fMutex;
40};
41
42#endif
void initializeEventTracingForTools(const char *mode=nullptr)
const char * fName
const char * getCategoryGroupName(const uint8_t *categoryEnabledFlag)
uint8_t * getCategoryGroupEnabled(const char *name)
const char * name
Definition fuchsia.cc:50