/*static char *SCCSID = "@(#)stats.h	6.2 91/01/14";*/
/*	SCCSID = "@(#)stats.h	6.2 91/01/14"
 *
 *	IBM/Microsoft Confidential
 *
 *	Copyright (c) IBM Corporation 1987, 1989
 *	Copyright (c) Microsoft Corporation 1987, 1989
 *
 *	All Rights Reserved
 *
 */

/*
 *  STATS.H
 *
 *    DESCRIPTION
 *    
 *      Prototype for statistics functions and structures.
 *
 *
 *  REVISION HISTORY (in reverse chronological order)
 *  -----------------------------------------------------------------------
 *  9/27/89     Brian Andrew    Initial Version
 *
 *
 *  TO DO
 *  -------------------------------------------------------------------------
 */

/*
 * Structure that holds the statistics.
 */

typedef struct
{
	/* Stats Signature (written by FSD) */

	ULONG st_sig;

	/* FS_ calls serviced */

	ULONG st_cfptr;
	ULONG st_chdir;
	ULONG st_close;
	ULONG st_fattr;
	ULONG st_finfo;
	ULONG st_fclose;
	ULONG st_ffirst;
	ULONG st_fnext;
	ULONG st_fsinfo;
	ULONG st_ioctl;
	ULONG st_mount;
	ULONG st_open;
	ULONG st_pinfo;
	ULONG st_pname;
	ULONG st_read;

	/* cache hit/miss counters */
	ULONG st_hits [3];
	ULONG st_misses [3];

	/* memory allocation count */
	ULONG alloc_faults;

} CDSTATS, FAR *PCDSTATS;


/*
 * FSCTL function definitions
 */

#define FSCTL_STATS_GET  0x8F00
#define FSCTL_STATS_CLR  0x8F01

/*
 *  Constants used to show what type of sector was requested.  
 */ 

#define DIR_SEC     0
#define PT_SEC      1
#define DATA_SEC    2

/*
 * Values for st_sig
 */

#define ST_SIG_VALID 0x12345678L


/* end of stats.h */
