Back to index

lightning-sunbird  0.9+nobinonly
pure.h
Go to the documentation of this file.
00001 /*
00002  * Header file of Pure API function declarations.
00003  *
00004  * Explicitly no copyright.
00005  * You may recompile and redistribute these definitions as required.
00006  *
00007  * Version 1.0
00008  */
00009 
00010 #if defined(c_plusplus) || defined(__cplusplus)
00011 extern "C" {
00012 #endif
00013 
00014 #define PURE_H_VERSION 1
00015 
00017 // API's Specific to Purify //
00019 
00020 // TRUE when Purify is running.
00021 int __cdecl PurifyIsRunning(void)                ;
00022 //
00023 // Print a string to the viewer.
00024 //
00025 int __cdecl PurePrintf(const char *fmt, ...)            ;
00026 int __cdecl PurifyPrintf(const char *fmt, ...)          ;
00027 //
00028 // Purify functions for leak and memory-in-use functionalty.
00029 //
00030 int __cdecl PurifyNewInuse(void)                 ;
00031 int __cdecl PurifyAllInuse(void)                 ;
00032 int __cdecl PurifyClearInuse(void)               ;
00033 int __cdecl PurifyNewLeaks(void)                 ;
00034 int __cdecl PurifyAllLeaks(void)                 ;
00035 int __cdecl PurifyClearLeaks(void)               ;
00036 //
00037 // Purify functions for handle leakage.
00038 //
00039 int __cdecl PurifyAllHandlesInuse(void)                 ;
00040 int __cdecl PurifyNewHandlesInuse(void)                 ;
00041 //
00042 // Functions that tell you about the state of memory.
00043 //
00044 int __cdecl PurifyDescribe(void *addr)                  ;
00045 int __cdecl PurifyWhatColors(void *addr, int size)      ;
00046 //
00047 // Functions to test the state of memory.  If the memory is not
00048 // accessable, an error is signaled just as if there were a memory
00049 // reference and the function returns false.
00050 //
00051 int __cdecl PurifyAssertIsReadable(const void *addr, int size) ;
00052 int __cdecl PurifyAssertIsWritable(const void *addr, int size) ;
00053 //
00054 // Functions to test the state of memory.  If the memory is not
00055 // accessable, these functions return false.  No error is signaled.
00056 //
00057 int __cdecl PurifyIsReadable(const void *addr, int size)       ;
00058 int __cdecl PurifyIsWritable(const void *addr, int size)       ;
00059 int __cdecl PurifyIsInitialized(const void *addr, int size)    ;
00060 //
00061 // Functions to set the state of memory.
00062 //
00063 void __cdecl PurifyMarkAsInitialized(void *addr, int size)     ;
00064 void __cdecl PurifyMarkAsUninitialized(void *addr, int size)   ;
00065 //
00066 // Functions to do late detection of ABWs, FMWs, IPWs.
00067 //
00068 #define PURIFY_HEAP_CRT                                 0xfffffffe
00069 #define PURIFY_HEAP_ALL                                 0xfffffffd
00070 #define PURIFY_HEAP_BLOCKS_LIVE                  0x80000000
00071 #define PURIFY_HEAP_BLOCKS_DEFERRED_FREE  0x40000000
00072 #define PURIFY_HEAP_BLOCKS_ALL                          (PURIFY_HEAP_BLOCKS_LIVE|PURIFY_HEAP_BLOCKS_DEFERRED_FREE)
00073 int __cdecl PurifyHeapValidate(unsigned int hHeap, unsigned int dwFlags, const void *addr) ;
00074 int __cdecl PurifySetLateDetectScanCounter(int counter);
00075 int __cdecl PurifySetLateDetectScanInterval(int seconds);
00076 
00077 
00079 // API's Specific to Quantify //
00081 
00082 // TRUE when Quantify is running.
00083 int __cdecl QuantifyIsRunning(void)                     ;
00084 
00085 //
00086 // Functions for controlling collection
00087 //
00088 int __cdecl QuantifyDisableRecordingData(void)          ;
00089 int __cdecl QuantifyStartRecordingData(void)            ;
00090 int __cdecl QuantifyStopRecordingData(void)             ;
00091 int __cdecl QuantifyClearData(void)                     ;
00092 int __cdecl QuantifyIsRecordingData(void)        ;
00093 
00094 // Add a comment to the dataset
00095 int __cdecl QuantifyAddAnnotation(char *)        ;
00096 
00097 // Save the current data, creating a "checkpoint" dataset
00098 int __cdecl QuantifySaveData(void)               ;
00099 
00101 // API's Specific to Coverage //
00103 
00104 // TRUE when Coverage is running.
00105 int __cdecl CoverageIsRunning(void)                     ;
00106 //
00107 // Functions for controlling collection
00108 //
00109 int __cdecl CoverageDisableRecordingData(void)          ;
00110 int __cdecl CoverageStartRecordingData(void)            ;
00111 int __cdecl CoverageStopRecordingData(void)             ;
00112 int __cdecl CoverageClearData(void)                     ;
00113 int __cdecl CoverageIsRecordingData(void)        ;
00114 // Add a comment to the dataset
00115 int __cdecl CoverageAddAnnotation(char *)        ;
00116 
00117 // Save the current data, creating a "checkpoint" dataset
00118 int __cdecl CoverageSaveData(void)               ;
00119 
00120 
00121 
00122 
00124 // API's Specific to Purelock //
00126 
00127 // TRUE when Purelock is running.
00128 int __cdecl PurelockIsRunning(void)                     ;
00129 
00130 
00131 
00132 
00133 #if defined(c_plusplus) || defined(__cplusplus)
00134 }
00135 #endif