Sample Code

Windows Driver Samples/ AC97 Driver Sample/ C++/ prvprop.h/

//////////////////////////////////////////////////////////////////////////
// This header file is only used if you compile the driver with the switch
// INCLUDE_PRIVATE_PROPERTY defined. Additionally, this header file is
// also used by the property page sample.
//
// This header file defines the private property (the GUID) and the
// "messages" therin. It also defines the structure passed down.
//

//
// The GUID was generated with guidgen.exe
//

// This is the GUID for the private property request.
#define STATIC_KSPROPSETID_Private \
    0x2aa7a0b1L, 0x9f78, 0x4606, 0xb8, 0x82, 0x66, 0xb7, 0xf, 0x2, 0x26, 0x37
DEFINE_GUIDSTRUCT("2AA7A0B1-9F78-4606-B882-66B70F022637", KSPROPSETID_Private);
#define KSPROPSETID_Private DEFINE_GUIDNAMED(KSPROPSETID_Private)


// Define the method in the property. You can have multiple methods defined
// for one private property ...
const int KSPROPERTY_AC97_FEATURES = 1;
#ifdef PROPERTY_SHOW_SET
    const int KSPROPERTY_AC97_SAMPLE_SET = 2;
#endif

// This is the enum for the volume controls.
enum VolumeControl
{
    VolumeDisabled,
    Volume5bit,
    Volume6bit
};

// This is the enum for the DAC or ADC resolution.
enum Resolution
{
   Resolution16bit,
   Resolution18bit,
   Resolution20bit
};

// Structure passed in the private property request with method
// KSPROPERTY_AC97_FEATURES.
typedef struct
{
  VolumeControl MasterVolume;
  VolumeControl HeadphoneVolume;
  VolumeControl MonoOutVolume;
  Resolution    DAC;
  Resolution    ADC;
  int           n3DTechnique;
  BOOLEAN       bMicInPresent;
  BOOLEAN       bVSRPCM;
  BOOLEAN       bDSRPCM;
  BOOLEAN       bVSRMIC;
  BOOLEAN       bCenterDAC;
  BOOLEAN       bSurroundDAC;
  BOOLEAN       bLFEDAC;
} tAC97Features;

Our Services

  • What our customers say about us?

© 2011-2024 All Rights Reserved. Joya Systems. 4425 South Mopac Building II Suite 101 Austin, TX 78735 Tel: 800-DEV-KERNEL

Privacy Policy. Terms of use. Valid XHTML & CSS