2 * Header file of Pure API function declarations.
4 * Explicitly no copyright.
5 * You may recompile and redistribute these definitions as required.
7 * NOTE1: In some situations when compiling with MFC, you should
8 * enable the setting 'Not using precompiled headers' in Visual C++
9 * to avoid a compiler diagnostic.
11 * NOTE2: This file works through the use of deep magic. Calls to functions
12 * in this file are replaced with calls into the OCI runtime system
13 * when an instrumented version of this program is run.
15 * NOTE3: The static vars avoidGy_n (where n is a unique number) are used
16 * to prevent optimizing the functions away when compiler option
17 * /Gy is set. This is needed so that NOTE2 works properly.
28 static int avoidGy_10
;
29 static int avoidGy_11
;
30 static int avoidGy_12
;
31 static int avoidGy_13
;
32 static int avoidGy_14
;
33 static int avoidGy_15
;
34 static int avoidGy_16
;
35 static int avoidGy_17
;
36 static int avoidGy_18
;
37 static int avoidGy_19
;
38 static int avoidGy_20
;
39 static int avoidGy_21
;
40 static int avoidGy_22
;
41 static int avoidGy_23
;
42 static int avoidGy_24
;
43 static int avoidGy_25
;
44 static int avoidGy_26
;
45 static int avoidGy_27
;
46 static int avoidGy_28
;
47 static int avoidGy_29
;
48 static int avoidGy_30
;
49 static int avoidGy_31
;
50 static int avoidGy_32
;
51 static int avoidGy_33
;
52 static int avoidGy_34
;
53 static int avoidGy_35
;
54 static int avoidGy_36
;
55 static int avoidGy_37
;
56 static int avoidGy_38
;
57 static int avoidGy_39
;
58 static int avoidGy_40
;
59 static int avoidGy_41
;
60 static int avoidGy_42
;
61 static int avoidGy_43
;
62 static int avoidGy_44
;
63 static int avoidGy_45
;
64 static int avoidGy_46
;
65 static int avoidGy_47
;
66 static int avoidGy_48
;
67 static int avoidGy_49
;
68 static int avoidGy_50
;
69 static int avoidGy_51
;
70 static int avoidGy_52
;
71 static int avoidGy_53
;
72 static int avoidGy_54
;
73 static int avoidGy_55
;
74 static int avoidGy_56
;
75 static int avoidGy_57
;
76 static int avoidGy_58
;
77 static int avoidGy_59
;
78 static int avoidGy_60
;
79 static int avoidGy_PL_01
;
80 __declspec(dllexport
) int __cdecl
PurePrintf(const char *fmt
, ...) { avoidGy_1
++; fmt
; return 0; }
81 __declspec(dllexport
) int __cdecl
PurifyIsRunning(void) { avoidGy_2
++; return 0; }
82 __declspec(dllexport
) int __cdecl
PurifyPrintf(const char *fmt
, ...) { avoidGy_3
++; fmt
; return 0; }
83 __declspec(dllexport
) int __cdecl
PurifyNewInuse(void) { avoidGy_4
++; return 0; }
84 __declspec(dllexport
) int __cdecl
PurifyAllInuse(void) { avoidGy_5
++; return 0; }
85 __declspec(dllexport
) int __cdecl
PurifyClearInuse(void) { avoidGy_6
++; return 0; }
86 __declspec(dllexport
) int __cdecl
PurifyNewLeaks(void) { avoidGy_7
++; return 0; }
87 __declspec(dllexport
) int __cdecl
PurifyAllLeaks(void) { avoidGy_8
++; return 0; }
88 __declspec(dllexport
) int __cdecl
PurifyClearLeaks(void) { avoidGy_9
++; return 0; }
89 __declspec(dllexport
) int __cdecl
PurifyAllHandlesInuse(void) { avoidGy_10
++; return 0; }
90 __declspec(dllexport
) int __cdecl
PurifyNewHandlesInuse(void) { avoidGy_11
++; return 0; }
91 __declspec(dllexport
) int __cdecl
PurifyDescribe(void *addr
) { avoidGy_12
++; addr
; return 0; }
92 __declspec(dllexport
) int __cdecl
PurifyWhatColors(void *addr
, int size
) { avoidGy_13
++; addr
; size
; return 0; }
93 __declspec(dllexport
) int __cdecl
PurifyAssertIsReadable(const void *addr
, int size
) { avoidGy_14
++; addr
; size
; return 1; }
94 __declspec(dllexport
) int __cdecl
PurifyAssertIsWritable(const void *addr
, int size
) { avoidGy_15
++; addr
; size
; return 1; }
95 __declspec(dllexport
) int __cdecl
PurifyIsReadable(const void *addr
, int size
) { avoidGy_16
++; addr
; size
; return 1; }
96 __declspec(dllexport
) int __cdecl
PurifyIsWritable(const void *addr
, int size
) { avoidGy_17
++; addr
; size
; return 1; }
97 __declspec(dllexport
) int __cdecl
PurifyIsInitialized(const void *addr
, int size
) { avoidGy_18
++; addr
; size
; return 1; }
98 __declspec(dllexport
) int __cdecl
PurifyRed(void *addr
, int size
) { avoidGy_19
++; addr
; size
; return 0; }
99 __declspec(dllexport
) int __cdecl
PurifyGreen(void *addr
, int size
) { avoidGy_20
++; addr
; size
; return 0; }
100 __declspec(dllexport
) int __cdecl
PurifyYellow(void *addr
, int size
) { avoidGy_21
++; addr
; size
; return 0; }
101 __declspec(dllexport
) int __cdecl
PurifyBlue(void *addr
, int size
) { avoidGy_22
++; addr
; size
; return 0; }
102 __declspec(dllexport
) int __cdecl
PurifyMarkAsInitialized(void *addr
, int size
) { avoidGy_23
++; addr
; size
; return 0; }
103 __declspec(dllexport
) int __cdecl
PurifyMarkAsUninitialized(void *addr
, int size
) { avoidGy_24
++; addr
; size
; return 0; }
104 __declspec(dllexport
) int __cdecl
PurifyMarkForTrap(void *addr
, int size
) { avoidGy_25
++; addr
; size
; return 0; }
105 __declspec(dllexport
) int __cdecl
PurifyMarkForNoTrap(void *addr
, int size
) { avoidGy_26
++; addr
; size
; return 0; }
106 __declspec(dllexport
) int __cdecl
PurifyHeapValidate(unsigned int hHeap
, unsigned int dwFlags
, const void *addr
)
107 { avoidGy_27
++; hHeap
; dwFlags
; addr
; return 1; }
108 __declspec(dllexport
) int __cdecl
PurifySetLateDetectScanCounter(int counter
) { avoidGy_28
++; counter
; return 0; };
109 __declspec(dllexport
) int __cdecl
PurifySetLateDetectScanInterval(int seconds
) { avoidGy_29
++; seconds
; return 0; };
110 __declspec(dllexport
) int __cdecl
CoverageIsRunning(void) { avoidGy_30
++; return 0; }
111 __declspec(dllexport
) int __cdecl
CoverageDisableRecordingData(void) { avoidGy_31
++; return 0; }
112 __declspec(dllexport
) int __cdecl
CoverageStartRecordingData(void) { avoidGy_32
++; return 0; }
113 __declspec(dllexport
) int __cdecl
CoverageStopRecordingData(void) { avoidGy_33
++; return 0; }
114 __declspec(dllexport
) int __cdecl
CoverageClearData(void) { avoidGy_34
++; return 0; }
115 __declspec(dllexport
) int __cdecl
CoverageIsRecordingData(void) { avoidGy_35
++; return 0; }
116 __declspec(dllexport
) int __cdecl
CoverageAddAnnotation(char *str
) { avoidGy_36
++; str
; return 0; }
117 __declspec(dllexport
) int __cdecl
CoverageSaveData(void) { avoidGy_37
++; return 0; }
118 __declspec(dllexport
) int __cdecl
QuantifyIsRunning(void) { avoidGy_42
++; return 0; }
119 __declspec(dllexport
) int __cdecl
QuantifyDisableRecordingData(void) { avoidGy_43
++; return 0; }
120 __declspec(dllexport
) int __cdecl
QuantifyStartRecordingData(void) { avoidGy_44
++; return 0; }
121 __declspec(dllexport
) int __cdecl
QuantifyStopRecordingData(void) { avoidGy_45
++; return 0; }
122 __declspec(dllexport
) int __cdecl
QuantifyClearData(void) { avoidGy_46
++; return 0; }
123 __declspec(dllexport
) int __cdecl
QuantifyIsRecordingData(void) { avoidGy_47
++; return 0; }
124 __declspec(dllexport
) int __cdecl
QuantifyAddAnnotation(char *str
) { avoidGy_48
++; str
; return 0; }
125 __declspec(dllexport
) int __cdecl
QuantifySaveData(void) { avoidGy_49
++; return 0; }
126 __declspec(dllexport
) int __cdecl
PurelockIsRunning(void) { avoidGy_PL_01
++; return 0; }