Search
Module:
Directory

   Desktop Functions:

   Smart Device Functions:


Show Recent Changes
Subscribe (RSS)
Misc. Pages
Comments
FAQ
Helpful Tools
Playground
Suggested Reading
Website TODO List
Download Visual Studio Add-In

Search Results for "MIXERCONTROL" in [All]

Structures

.
Summary
The MIXERCONTROLDETAILS_UNSIGNED structure retrieves and sets unsigned type control properties for an audio mixer control.
.

public struct MIXERCONTROLDETAILS_UNSIGNED

.

Structure MIXERCONTROLDETAILS_UNSIGNED

.
Documentation
[MIXERCONTROLDETAILS_UNSIGNED] on MSDN
.

public struct MIXERCONTROLDETAILS_UNSIGNED

.

Structure MIXERCONTROLDETAILS_UNSIGNED

.
Documentation
[MIXERCONTROLDETAILS_UNSIGNED] on MSDN
.
Summary
The MIXERCONTROLDETAILS_BOOLEAN structure retrieves and sets Boolean control properties for an audio mixer control.
.

  public struct MIXERCONTROLDETAILS_BOOLEAN

.

  Structure MIXERCONTROLDETAILS_BOOLEAN

.
Documentation
[MIXERCONTROLDETAILS_BOOLEAN] on MSDN
.
Summary
The MIXERCONTROLDETAILS_LISTTEXT structure retrieves list text, label text, and/or band-range information for multiple-item controls. This structure is used when the MIXER_GETCONTROLDETAILSF_LISTTEXT flag is specified in the mixerGetControlDetails function.
.

  public struct MIXERCONTROLDETAILS_LISTTEXT

.

  Public Structure MIXERCONTROLDETAILS_LISTTEXT

.
Documentation
[MIXERCONTROLDETAILS_LISTTEXT] on MSDN
.
Summary
The MIXERCONTROLDETAILS_SIGNED structure retrieves and sets signed type control properties for an audio mixer control.
.

  public struct MIXERCONTROLDETAILS_SIGNED

.

  Public Structure MIXERCONTROLDETAILS_SIGNED

.
Documentation
[MIXERCONTROLDETAILS_SIGNED] on MSDN
.

struct MIXERCONTROLDETAILS_UNSIGNED

.

Structure MIXERCONTROLDETAILS_UNSIGNED

.
Documentation
[MIXERCONTROLDETAILS_UNSIGNED] on MSDN
.

     private UInt32 cbmxctrl;       /* size in bytes of _one_ MIXERCONTROL */

.

     private IntPtr pamxctrl;       /* pointer to first MIXERCONTROL array */

.

     public MIXERCONTROL_CONTROLTYPE ControlType

.

        get { return (MIXERCONTROL_CONTROLTYPE)this.dwControlID; }

.

     /// <summary>size in bytes of _one_ MIXERCONTROL</summary>

.

     public UInt32 MixerControlItemSize

.

     /// <summary>pointer to first MIXERCONTROL array</summary>

.

     public IntPtr MixerControlArray

.

THIS IS MY CONVERSION FROM THE C# ABOVE. I have used an UInt32 instead of the MIXERCONTROL_CONTROLTYPE enum as I didn't bother converting it. Also I set dwLineID as an Integer as I was getting a negative number come back from the APIs.

.

    Private cbmxctrl As UInt32       '/* size in bytes of _one_ MIXERCONTROL */

.

    Private pamxctrl As IntPtr       '/* pointer to first MIXERCONTROL array */

.

    '/// <summary>size in bytes of _one_ MIXERCONTROL</summary>

.

    Public Property MixerControlItemSize As UInt32

.

    '/// <summary>pointer to first MIXERCONTROL array</summary>

.

    Public Property MixerControlArray As IntPtr

.

private const uint MIXERCONTROL_CT_CLASS_MASK   = 0xF0000000u;

.

private const uint MIXERCONTROL_CT_CLASS_CUSTOM = 0x00000000u;

.

private const uint MIXERCONTROL_CT_CLASS_METER  = 0x10000000u;

.

private const uint MIXERCONTROL_CT_CLASS_SWITCH = 0x20000000u;

.

private const uint MIXERCONTROL_CT_CLASS_NUMBER = 0x30000000u;

.

private const uint MIXERCONTROL_CT_CLASS_SLIDER = 0x40000000u;

.

private const uint MIXERCONTROL_CT_CLASS_FADER  = 0x50000000u;

.

private const uint MIXERCONTROL_CT_CLASS_TIME   = 0x60000000u;

.

private const uint MIXERCONTROL_CT_CLASS_LIST   = 0x70000000u;

.

private const uint MIXERCONTROL_CT_SUBCLASS_MASK = 0x0F000000u;

.

private const uint MIXERCONTROL_CT_SC_SWITCH_BOOLEAN = 0x00000000u;

.

private const uint MIXERCONTROL_CT_SC_SWITCH_BUTTON  = 0x01000000u;

.

private const uint MIXERCONTROL_CT_SC_METER_POLLED = 0x00000000u;

.

private const uint MIXERCONTROL_CT_SC_TIME_MICROSECS = 0x00000000u;

.

private const uint MIXERCONTROL_CT_SC_TIME_MILLISECS = 0x01000000u;

.

private const uint MIXERCONTROL_CT_SC_LIST_SINGLE   = 0x00000000u;

.

private const uint MIXERCONTROL_CT_SC_LIST_MULTIPLE = 0x01000000u;

.

private const uint MIXERCONTROL_CT_UNITS_MASK     = 0x00FF0000u;

.

private const uint MIXERCONTROL_CT_UNITS_CUSTOM   = 0x00000000u;

.

private const uint MIXERCONTROL_CT_UNITS_BOOLEAN  = 0x00010000u;

.

private const uint MIXERCONTROL_CT_UNITS_SIGNED   = 0x00020000u;

.

private const uint MIXERCONTROL_CT_UNITS_UNSIGNED = 0x00030000u;

.

private const uint MIXERCONTROL_CT_UNITS_DECIBELS = 0x00040000u; /* in 10ths */

.

private const uint MIXERCONTROL_CT_UNITS_PERCENT  = 0x00050000u; /* in 10ths */

.

/// <summary>Commonly used control types for specifying MIXERCONTROL.dwControlType</summary>

.

public enum MIXERCONTROL_CONTROLTYPE : uint

.

     CUSTOM     =(MIXERCONTROL_CT_CLASS_CUSTOM | MIXERCONTROL_CT_UNITS_CUSTOM),

.

     BOOLEANMETER   =(MIXERCONTROL_CT_CLASS_METER | MIXERCONTROL_CT_SC_METER_POLLED | MIXERCONTROL_CT_UNITS_BOOLEAN),

.

     SIGNEDMETER    =(MIXERCONTROL_CT_CLASS_METER | MIXERCONTROL_CT_SC_METER_POLLED | MIXERCONTROL_CT_UNITS_SIGNED),

.

     UNSIGNEDMETER  =(MIXERCONTROL_CT_CLASS_METER | MIXERCONTROL_CT_SC_METER_POLLED | MIXERCONTROL_CT_UNITS_UNSIGNED),

.

     BOOLEAN    =(MIXERCONTROL_CT_CLASS_SWITCH | MIXERCONTROL_CT_SC_SWITCH_BOOLEAN | MIXERCONTROL_CT_UNITS_BOOLEAN),

.

     BUTTON     =(MIXERCONTROL_CT_CLASS_SWITCH | MIXERCONTROL_CT_SC_SWITCH_BUTTON | MIXERCONTROL_CT_UNITS_BOOLEAN),

.

     DECIBELS       =(MIXERCONTROL_CT_CLASS_NUMBER | MIXERCONTROL_CT_UNITS_DECIBELS),

.

     SIGNED     =(MIXERCONTROL_CT_CLASS_NUMBER | MIXERCONTROL_CT_UNITS_SIGNED),

.

     UNSIGNED       =(MIXERCONTROL_CT_CLASS_NUMBER | MIXERCONTROL_CT_UNITS_UNSIGNED),

.

     PERCENT    =(MIXERCONTROL_CT_CLASS_NUMBER | MIXERCONTROL_CT_UNITS_PERCENT),

.

     SLIDER     =(MIXERCONTROL_CT_CLASS_SLIDER | MIXERCONTROL_CT_UNITS_SIGNED),

.

     FADER      =(MIXERCONTROL_CT_CLASS_FADER | MIXERCONTROL_CT_UNITS_UNSIGNED),

.

     SINGLESELECT   =(MIXERCONTROL_CT_CLASS_LIST | MIXERCONTROL_CT_SC_LIST_SINGLE | MIXERCONTROL_CT_UNITS_BOOLEAN),

.

     MULTIPLESELECT =(MIXERCONTROL_CT_CLASS_LIST | MIXERCONTROL_CT_SC_LIST_MULTIPLE | MIXERCONTROL_CT_UNITS_BOOLEAN),

.

     MICROTIME      =(MIXERCONTROL_CT_CLASS_TIME | MIXERCONTROL_CT_SC_TIME_MICROSECS | MIXERCONTROL_CT_UNITS_UNSIGNED),

.

     MILLITIME      =(MIXERCONTROL_CT_CLASS_TIME | MIXERCONTROL_CT_SC_TIME_MILLISECS | MIXERCONTROL_CT_UNITS_UNSIGNED),

Constants

.

private const UInt32 MIXERCONTROL_CT_CLASS_FADER            = 0x50000000;

.

private const UInt32 MIXERCONTROL_CT_UNITS_UNSIGNED            = 0x00030000;

.

private const UInt32 MIXERCONTROL_CONTROLTYPE_FADER            = MIXERCONTROL_CT_CLASS_FADER | MIXERCONTROL_CT_UNITS_UNSIGNED;

.

private const UInt32 MIXERCONTROL_CONTROLTYPE_VOLUME        = MIXERCONTROL_CONTROLTYPE_FADER + 1;

winmm

.

   ref MixerControlDetails pmxcd, UInt32 fdwDetailsmixer);

.

Declare Function mixerGetControlDetails Lib "winmm.dll" (<MarshalAs(UnmanagedType.I4)> ByVal hmxobj As Integer, ByRef pmxcd As MIXERCONTROLDETAILS, ByVal fdwDetails As Integer) As Integer

.

public struct MIXERCONTROLDETAILS

.

     /// <summary>size in bytes of MIXERCONTROLDETAILS</summary>

.

private static extern Int32 mixerGetControlDetails(IntPtr hmxobj, ref MIXERCONTROLDETAILS pmxcd, uint fdwDetails);

.

public static Int32 mixerGetControlDetails(IntPtr hmxobj, ref MIXERCONTROLDETAILS pmxcd, MIXER_OBJECTF fdwDetails, MIXER_GETCONTROLDETAILSF getControlDetails)

.

   ref MixerControlDetails pmxcd, UInt32 fdwDetails);

.

Declare Function mixerSetControlDetails Lib "winmm.dll" (ByVal hmxobj As IntPtr, ByVal pmxcd As MIXERCONTROLDETAILS, ByVal fdwDetails As Integer) As Integer

.

public struct MIXERCONTROL

.

     public MIXERCONTROL_BOUNDS Bounds;

.

     public MIXERCONTROL_METRICS Metrics;

.

     /// <summary>size in bytes of <see cref="MIXERCONTROL">MIXERCONTROL</see></summary>

.

     /// <summary>MIXERCONTROL_CONTROLTYPE_xxx</summary>

.

     public MIXERCONTROL_CONTROLTYPE ControlType

.

        get { return (MIXERCONTROL_CONTROLTYPE)this.dwControlType; }

.

     /// <summary>MIXERCONTROL_CONTROLF_xxx</summary>

.

     public MIXERCONTROL_CONTROLF Control

.

        get { return (MIXERCONTROL_CONTROLF)this.fdwControl; }

.

     /// <summary>if MIXERCONTROL_CONTROLF_MULTIPLE set</summary>

.

public struct MIXERCONTROL_BOUNDS

.

public struct MIXERCONTROL_METRICS

.

Structure MIXERCONTROLDETAILS

.

private static extern Int32 mixerSetControlDetails(IntPtr hmxobj, ref MIXERCONTROLDETAILS pmxcd, uint fdwDetails);

.

public static Int32 mixerSetControlDetails(IntPtr hmxobj, ref MIXERCONTROLDETAILS pmxcd, MIXER_OBJECTF fdwDetails, MIXER_SETCONTROLDETAILSF setControlDetails)


 
Access PInvoke.net directly from VS: