MIXERCONTROL (Structures)
Last changed: StarTether-128.187.81.183

.
Summary
TODO - a short description

C# Definition:

[StructLayout(LayoutKind.Explicit, CharSet = CharSet.Auto, Size = 68 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)]
struct MIXERCONTROL
{
   [FieldOffset(0)]    public UInt32        cbStruct;    
   [FieldOffset(4)]    public UInt32        dwControlID;      
   [FieldOffset(8)]    public UInt32        dwControlType;    
   [FieldOffset(12)]    public UInt32        fdwControl;      
   [FieldOffset(16)]    public UInt32        cMultipleItems;    
   [MarshalAs(UnmanagedType.ByValTStr, SizeConst = MIXER_SHORT_NAME_CHARS)]
   [FieldOffset(20)]    public string        szShortName;
   [MarshalAs(UnmanagedType.ByValTStr, SizeConst = MIXER_LONG_NAME_CHARS)]
   [FieldOffset(20 + MIXER_SHORT_NAME_CHARS)]
   public string        szName;

   // Union "Bounds" start
   [FieldOffset(20 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)]
   public UnionBoundsSigned ubs;
   [FieldOffset(20 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)]
   public UnionBoundsUnsigned ubus;   //insatnce of UnionBoundsSigned struct
   /* [MarshalAs(UnmanagedType.ByValArray, SizeConst=6)]
    [FieldOffset(20 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)]
    public UInt32[]  dwReserved1;*/
   // Union "Bounds" end

   // Union "Metrics" start
   // additonal 6 DWORDs
   [FieldOffset(20 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS + 24)]
   public UInt32    cSteps;        
   [FieldOffset(20 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS + 24)]
   public UInt32    cbCustomData;      
   /* [MarshalAs(UnmanagedType.ByValArray, SizeConst=6)]
    [FieldOffset(20 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS + 24)]
    public UInt32[]    dwReserved2;*/
   // Union "Metrics" end
}

VB Definition:

<StructLayout(LayoutKind.Explicit, Size:=68 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
Structure MIXERCONTROL
  <FieldOffset(0)> Dim cbStruct As UInteger
  <FieldOffset(4)> Dim dwControlID As UInteger
  <FieldOffset(8)> Dim dwControlType As ControlType
  <FieldOffset(12)> Dim fdwControl As UInteger
  <FieldOffset(16)> Dim cMultipleItem As UInteger
  <FieldOffset(20), MarshalAs(UnmanagedType.ByValTStr, SizeConst:=MIXER_SHORT_NAME_CHARS)> _
  Dim szShortName As String
  <FieldOffset(20 + MIXER_SHORT_NAME_CHARS), MarshalAs(UnmanagedType.ByValTStr, sizeConst:=MIXER_LONG_NAME_CHARS)> _
  Dim szName As String

  'Union "Bounds"
  <FieldOffset(20 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim lMinimum As ULong
  <FieldOffset(28 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim lMaximum As ULong
  <FieldOffset(20 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim dwMinimum As UInteger
  <FieldOffset(24 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim dwMaximum As UInteger

  <FieldOffset(20 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim dwReserved1 As UInteger
  <FieldOffset(24 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim dwReserved2 As UInteger
  <FieldOffset(28 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim dwReserved3 As UInteger
  <FieldOffset(32 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim dwReserved4 As UInteger
  <FieldOffset(36 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim dwReserved5 As UInteger
  <FieldOffset(40 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim dwReserved6 As UInteger

  'Union "Metrics"
  <FieldOffset(44 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim cSteps As UInteger
  <FieldOffset(44 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim cbCustomData As UInteger

  <FieldOffset(44 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim dwReserved7 As UInteger
  <FieldOffset(48 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim dwReserved8 As UInteger
  <FieldOffset(52 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim dwReserved9 As UInteger
  <FieldOffset(56 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim dwReserved10 As UInteger
  <FieldOffset(60 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim dwReserved11 As UInteger
  <FieldOffset(64 + MIXER_SHORT_NAME_CHARS + MIXER_LONG_NAME_CHARS)> _
  Dim dwReserved12 As UInteger
End Structure

User-Defined Field Types:

None.

Notes:

None.

Documentation