Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//---------------------------------------------------------------------------
//
// Module: shi.h
//
// Description: Shingle Instance Class
//
//
//@@BEGIN_MSINTERNAL
// Development Team:
// Mike McLaughlin
//
// History: Date Author Comment
//
//@@END_MSINTERNAL
//---------------------------------------------------------------------------
//
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
// PURPOSE.
//
// Copyright (c) 1996-1999 Microsoft Corporation. All Rights Reserved.
//
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
// Constants and Macros
//---------------------------------------------------------------------------
#define MAX_SYSAUDIO_DEFAULT_TYPE (KSPROPERTY_SYSAUDIO_MIXER_DEFAULT+1)
//---------------------------------------------------------------------------
// Class
//---------------------------------------------------------------------------
typedef class CShingleInstance : public CObj { public: CShingleInstance( ULONG ulFlags = 0 );
~CShingleInstance();
static NTSTATUS InitializeShingle( );
static VOID UninitializeShingle( );
static NTSTATUS InitializeShingleWorker( PVOID pReference1, PVOID pReference2 );
NTSTATUS Create( IN PDEVICE_NODE pDeviceNode, IN LPGUID pguidClass );
NTSTATUS SetDeviceNode( IN PDEVICE_NODE pDeviceNode );
PDEVICE_NODE GetDeviceNode( ) { return(pDeviceNode); };
private: NTSTATUS CreateCreateItem( IN PCWSTR pcwstrReference );
ENUMFUNC DestroyCreateItem( IN PKSOBJECT_CREATE_ITEM pCreateItem );
NTSTATUS CreateDeviceInterface( IN LPGUID pguidClass, IN PCWSTR pcwstrReference );
NTSTATUS EnableDeviceInterface( );
VOID DisableDeviceInterface( );
VOID DestroyDeviceInterface( );
ListDataAssertLess<KSOBJECT_CREATE_ITEM> lstCreateItem; UNICODE_STRING ustrSymbolicLinkName; WCHAR wstrReference[10]; PDEVICE_NODE pDeviceNode;
public: ULONG ulFlags;
DefineSignature(0x20494853); // SHI
} SHINGLE_INSTANCE, *PSHINGLE_INSTANCE;
//---------------------------------------------------------------------------
// Globals
//---------------------------------------------------------------------------
extern PSHINGLE_INSTANCE apShingleInstance[];
//---------------------------------------------------------------------------
|