• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 
2 /*
3  * Copyright 2010 Google Inc.
4  *
5  * Use of this source code is governed by a BSD-style license that can be
6  * found in the LICENSE file.
7  */
8 
9 #ifndef GrConfig_DEFINED
10 #define GrConfig_DEFINED
11 
12 #include "include/core/SkTypes.h"
13 
14 /**
15  *  Gr defines are set to 0 or 1, rather than being undefined or defined
16  */
17 
18 #if !defined(GR_CACHE_STATS)
19   #if defined(SK_DEBUG) || defined(SK_DUMP_STATS)
20       #define GR_CACHE_STATS  1
21   #else
22       #define GR_CACHE_STATS  0
23   #endif
24 #endif
25 
26 #if !defined(GR_GPU_STATS)
27   #if defined(SK_DEBUG) || defined(SK_DUMP_STATS) || GR_TEST_UTILS
28       #define GR_GPU_STATS    1
29   #else
30       #define GR_GPU_STATS    0
31   #endif
32 #endif
33 
34 #endif
35 
36 /**
37  *  GR_STRING makes a string of X where X is expanded before conversion to a string
38  *  if X itself contains macros.
39  */
40 #define GR_STRING(X) GR_STRING_IMPL(X)
41 #define GR_STRING_IMPL(X) #X
42 
43 /**
44  *  GR_CONCAT concatenates X and Y  where each is expanded before
45  *  contanenation if either contains macros.
46  */
47 #define GR_CONCAT(X,Y) GR_CONCAT_IMPL(X,Y)
48 #define GR_CONCAT_IMPL(X,Y) X##Y
49 
50 /**
51  *  Creates a string of the form "<filename>(<linenumber>) : "
52  */
53 #define GR_FILE_AND_LINE_STR __FILE__ "(" GR_STRING(__LINE__) ") : "
54