windows-nt/Source/XPSP1/NT/sdktools/spt/lib/sptlibp.h
2020-09-26 16:20:57 +08:00

66 lines
1.3 KiB
C

/*++
Copyright (c) 1995 Microsoft Corporation
Module Name:
sptlibp.h
Abstract:
private header for SPTLIB.DLL
Environment:
User mode only
Revision History:
4/10/2000 - created
--*/
#ifndef __SPTLIBP_H__
#define __SPTLIBP_H__
#pragma warning(push)
#pragma warning(disable:4200) // array[0] is not a warning for this file
#include "sptlib.h"
#include <stdio.h> // required for sscanf() function
#ifndef ARGUMENT_PRESENT
#define ARGUMENT_PRESENT(ArgumentPointer) (\
(CHAR *)(ArgumentPointer) != (CHAR *)(NULL) )
#endif
typedef struct {
SCSI_PASS_THROUGH Spt;
char SenseInfoBuffer[18];
char DataBuffer[0];
// Allocate buffer space after this
} SPT_WITH_BUFFERS, *PSPT_WITH_BUFFERS;
typedef enum _SPT_MODE_PAGE_SIZE {
SptModePageSizeUndefined = 0x00,
SptModePageSizeModeSense6 = 0x06,
SptModePageSizeModeSense10 = 0x0A
} SPT_MODE_PAGE_SIZE, *PSPT_MODE_PAGE_SIZE;
#define SPT_MODE_PAGE_INFO_SIGNATURE ((ULONGLONG)0x6567615165646f4d) // 'ModePage'
struct _SPT_MODE_PAGE_INFO {
ULONGLONG Signature;
ULONG IsInitialized;
SPT_MODE_PAGE_SIZE ModePageSize;
union {
UCHAR AsChar;
MODE_PARAMETER_HEADER Header6;
MODE_PARAMETER_HEADER10 Header10;
} H;
};
#pragma warning(pop)
#endif // __SPTLIBP_H__