86 lines
1.8 KiB
C++
86 lines
1.8 KiB
C++
//+--------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
// Copyright (C) Microsoft Corporation, 1992 - 1992.
|
|
//
|
|
// File: dfdeb.hxx
|
|
//
|
|
// Contents: Docfile debug header
|
|
//
|
|
// Functions: DfDebug
|
|
// DfSetResLimit
|
|
// DfGetResLimit
|
|
// DfPrintAllocs
|
|
// HaveResource
|
|
// ModifyResLimit
|
|
//
|
|
// History: 13-May-92 DrewB Created
|
|
//
|
|
//---------------------------------------------------------------
|
|
|
|
#ifndef __DFDEB_HXX__
|
|
#define __DFDEB_HXX__
|
|
|
|
#if DBG == 1
|
|
|
|
// Resources that can be controlled
|
|
#define DBR_MEMORY 0
|
|
#define DBR_XSCOMMITS 1
|
|
#define DBR_FAILCOUNT 2
|
|
#define DBR_FAILLIMIT 3
|
|
#define DBR_FAILTYPES 4
|
|
|
|
// Resources that can be queried
|
|
#define DBRQ_MEMORY_ALLOCATED 5
|
|
|
|
// Internal resources
|
|
#define DBRI_ALLOC_LIST 6
|
|
#define DBRI_LOGFILE_LIST 7
|
|
|
|
// Control flags
|
|
#define DBRF_LOGGING 8
|
|
|
|
//Number of shared heaps allocated
|
|
#define DBRQ_HEAPS 9
|
|
|
|
// Control whether sifting is enabled
|
|
#define DBRF_SIFTENABLE 10
|
|
|
|
#define CDBRESOURCES 11
|
|
|
|
// Simulated failure types
|
|
typedef enum {
|
|
DBF_MEMORY = 1,
|
|
DBF_DISKFULL = 2,
|
|
DBF_DISKREAD = 4,
|
|
DBF_DISKWRITE = 8
|
|
} DBFAILURE;
|
|
|
|
// Logging control flags (e.g. DfSetResLimit(DBRF_LOGGING, DFLOG_MIN);)
|
|
|
|
#define DFLOG_OFF 0x00000000
|
|
|
|
#define DFLOG_ON 0x02000000
|
|
#define DFLOG_PIDTID 0x04000000
|
|
|
|
STDAPI_(void) DfDebug(ULONG ulLevel, ULONG ulMSFLevel);
|
|
|
|
STDAPI_(void) DfSetResLimit(UINT iRes, LONG lLimit);
|
|
STDAPI_(LONG) DfGetResLimit(UINT iRes);
|
|
|
|
STDAPI_(void) DfSetFailureType(LONG lTypes);
|
|
|
|
BOOL SimulateFailure(DBFAILURE failure);
|
|
|
|
STDAPI_(LONG) DfGetMemAlloced(void);
|
|
STDAPI_(void) DfPrintAllocs(void);
|
|
|
|
// Internal APIs
|
|
BOOL HaveResource(UINT iRes, LONG lRequest);
|
|
LONG ModifyResLimit(UINT iRes, LONG lChange);
|
|
|
|
#endif // DBG == 1
|
|
|
|
#endif // #ifndef __DFDEB_HXX__
|
|
|