This is debugging.h in view mode; [Download] [Up]
/* Copyright (c) 1991 NeXT Computer, Inc. All rights reserved. * * debugging.h - public interface for driver debugging module (DDM) This * interface is used by modules which generate DDM data (as * opposed to Apps which collect or analyze debugging data). * * HISTORY * 22-Feb-91 Doug Mitchell at NeXT * Created. */ /* * The DDM provides fast, cheap text logging functions. These * functions are typically invoked via macros which are defined to be * null unless the DDM_DEBUG cpp flag is defined true. Thus, a debug * configuration would typically define DDM_DEBUG true and a release * configuration would not define DDM_DEBUG. */ #import <kernserv/clock_timer.h> /* for ns_time_t */ #define IO_NUM_DDM_MASKS 4 /* * Bitmask used to filter storing of events. */ extern unsigned int IODDMMasks[IO_NUM_DDM_MASKS]; /* * Initialize. Client must call this once, before using any services. */ #ifdef KERNEL void IOInitDDM(int numBufs); #else void IOInitDDM(int numBufs, char *serverPortName); #endif /* * add one entry to debugging log. * This function is actually the same in User and Kernel space; the Kernel * prototype has no argument for backwards compatibility with callers who * did not specify all 6 arguments. */ #ifdef KERNEL extern void IOAddDDMEntry(); #else void IOAddDDMEntry(char *str, int arg1, int arg2, int arg3, int arg4, int arg5); #endif /* * Clear the debugging log. */ void IOClearDDM(); /* * Get/Set bit mask of IODebuggingMasks[index]. */ void IOSetDDMMask(int index, unsigned int bitmask); unsigned IOGetDDMMask(int index); /* * Obtain one sprintf'd entry from the debugging log. 'index' indicates * which entry to return, counting backwards from the last (latest) entry. * Returns nonzero if specified entry does not exist. */ int IOGetDDMEntry( int entry, /* desired entry*/ int outStringSize, /* memory available in outString*/ char *outString, /* result goes here*/ ns_time_t *timestamp, /* returned*/ int *cpuNum); /* returned*/ /* * return a malloc'd copy of instring. */ const char *IOCopyString(const char *instring); #if DDM_DEBUG #define IODEBUG(index, mask, x, a, b, c, d, e) { \ if(IODDMMasks[index] & mask) { \ IOAddDDMEntry(x, (int)a, (int)b, (int)c, \ (int)d, (int)e); \ } \ } #else #define IODEBUG(index, mask, x, a, b, c, d, e) #endif
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.