Skip to content

Instantly share code, notes, and snippets.

@atsushieno
Created August 3, 2014 09:58
Show Gist options
  • Save atsushieno/38e4eb54441e561521ab to your computer and use it in GitHub Desktop.
Save atsushieno/38e4eb54441e561521ab to your computer and use it in GitHub Desktop.
using System;
using System.Runtime.InteropServices;
using sl_uint8_t = System.Byte;
using sl_int8_t = System.SByte;
using sl_uint16_t = System.UInt16;
using sl_int16_t = System.Int16;
using sl_uint32_t = System.UInt32;
using sl_int32_t = System.Int32;
using sl_int64_t = System.Int64;
using SLint8 = System.SByte;
using SLuint8 = System.Byte;
using SLint16 = System.Int16;
using SLuint16 = System.UInt16;
using SLint32 = System.Int32;
using SLuint32 = System.UInt32;
using SLboolean = System.UInt32;
using SLchar = System.Byte;
using SLmillibel = System.Int16;
using SLmillisecond = System.UInt32;
using SLmilliHertz = System.UInt32;
using SLmillimeter = System.Int32;
using SLmillidegree = System.Int32;
using SLpermille = System.Int16;
using SLmicrosecond = System.UInt32;
using SLresult = System.UInt32;
using SLInterfaceID = Pointer<SLInterfaceID_>;
using SLObjectItf = Pointer<Pointer<SLObjectItf_>>;
using SLDataLocator_URI = SLDataLocator_URI_;
using SLDataLocator_Address = SLDataLocator_Address_;
using SLDataLocator_IODevice = SLDataLocator_IODevice_;
using SLDataLocator_OutputMix = SLDataLocator_OutputMix;
using SLDataLocator_BufferQueue = SLDataLocator_BufferQueue;
using SLDataLocator_MIDIBufferQueue = SLDataLocator_MIDIBufferQueue;
using SLDataFormat_MIME = SLDataFormat_MIME_;
using SLDataFormat_PCM = SLDataFormat_PCM_;
using SLDataSource = SLDataSource_;
using SLDataSink = SLDataSink_;
using slObjectCallback = System.Action<Pointer<Pointer<SLObjectItf_>>, System.IntPtr, System.UInt32, System.UInt32, System.UInt32, System.IntPtr>;
using SLAudioInputDescriptor = SLAudioInputDescriptor_;
using SLAudioOutputDescriptor = SLAudioOutputDescriptor_;
using SLAudioIODeviceCapabilitiesItf = Pointer<Pointer<SLAudioIODeviceCapabilitiesItf_>>;
using slAvailableAudioInputsChangedCallback = System.Action<Pointer<Pointer<SLAudioIODeviceCapabilitiesItf_>>, System.IntPtr, System.UInt32, System.Int32, System.UInt32>;
using slAvailableAudioOutputsChangedCallback = System.Action<Pointer<Pointer<SLAudioIODeviceCapabilitiesItf_>>, System.IntPtr, System.UInt32, System.Int32, System.UInt32>;
using slDefaultDeviceIDMapChangedCallback = System.Action<Pointer<Pointer<SLAudioIODeviceCapabilitiesItf_>>, System.IntPtr, System.UInt32, System.Int32>;
using SLLEDDescriptor = SLLEDDescriptor_;
using SLHSL = SLHSL_;
using SLLEDArrayItf = Pointer<Pointer<SLLEDArrayItf_>>;
using SLVibraDescriptor = SLVibraDescriptor_;
using SLVibraItf = Pointer<Pointer<SLVibraItf_>>;
using SLMetadataInfo = SLMetadataInfo_;
using SLMetadataExtractionItf = Pointer<Pointer<SLMetadataExtractionItf_>>;
using SLMetadataTraversalItf = Pointer<Pointer<SLMetadataTraversalItf_>>;
using SLDynamicSourceItf = Pointer<Pointer<SLDynamicSourceItf_>>;
using SLOutputMixItf = Pointer<Pointer<SLOutputMixItf_>>;
using slMixDeviceChangeCallback = System.Action<Pointer<Pointer<SLOutputMixItf_>>, System.IntPtr>;
using SLPlayItf = Pointer<Pointer<SLPlayItf_>>;
using slPlayCallback = System.Action<Pointer<Pointer<SLPlayItf_>>, System.IntPtr, System.UInt32>;
using SLPrefetchStatusItf = Pointer<Pointer<SLPrefetchStatusItf_>>;
using slPrefetchCallback = System.Action<Pointer<Pointer<SLPrefetchStatusItf_>>, System.IntPtr, System.UInt32>;
using SLPlaybackRateItf = Pointer<Pointer<SLPlaybackRateItf_>>;
using SLSeekItf = Pointer<Pointer<SLSeekItf_>>;
using SLRecordItf = Pointer<Pointer<SLRecordItf_>>;
using slRecordCallback = System.Action<Pointer<Pointer<SLRecordItf_>>, System.IntPtr, System.UInt32>;
using SLEqualizerItf = Pointer<Pointer<SLEqualizerItf_>>;
using SLVolumeItf = Pointer<Pointer<SLVolumeItf_>>;
using SLDeviceVolumeItf = Pointer<Pointer<SLDeviceVolumeItf_>>;
using SLBufferQueueItf = Pointer<Pointer<SLBufferQueueItf_>>;
using slBufferQueueCallback = System.Action<Pointer<Pointer<SLBufferQueueItf_>>, System.IntPtr>;
using SLBufferQueueState = SLBufferQueueState_;
using SLPresetReverbItf = Pointer<Pointer<SLPresetReverbItf_>>;
using SLEnvironmentalReverbSettings = SLEnvironmentalReverbSettings_;
using SLEnvironmentalReverbItf = Pointer<Pointer<SLEnvironmentalReverbItf_>>;
using SLEffectSendItf = Pointer<Pointer<SLEffectSendItf_>>;
using SL3DGroupingItf = Pointer<Pointer<SL3DGroupingItf_>>;
using SL3DCommitItf = Pointer<Pointer<SL3DCommitItf_>>;
using SLVec3D = SLVec3D_;
using SL3DLocationItf = Pointer<Pointer<SL3DLocationItf_>>;
using SL3DDopplerItf = Pointer<Pointer<SL3DDopplerItf_>>;
using SL3DSourceItf = Pointer<Pointer<SL3DSourceItf_>>;
using SL3DMacroscopicItf = Pointer<Pointer<SL3DMacroscopicItf_>>;
using SLMuteSoloItf = Pointer<Pointer<SLMuteSoloItf_>>;
using SLDynamicInterfaceManagementItf = Pointer<Pointer<SLDynamicInterfaceManagementItf_>>;
using slDynamicInterfaceManagementCallback = System.Action<Pointer<Pointer<SLDynamicInterfaceManagementItf_>>, System.IntPtr, System.UInt32, System.UInt32, Pointer<SLInterfaceID_>>;
using SLMIDIMessageItf = Pointer<Pointer<SLMIDIMessageItf_>>;
using slMetaEventCallback = System.Action<Pointer<Pointer<SLMIDIMessageItf_>>, System.IntPtr, System.Byte, System.UInt32, Pointer<System.Byte>, System.UInt32, System.UInt16>;
using slMIDIMessageCallback = System.Action<Pointer<Pointer<SLMIDIMessageItf_>>, System.IntPtr, System.Byte, System.UInt32, Pointer<System.Byte>, System.UInt32, System.UInt16>;
using SLMIDIMuteSoloItf = Pointer<Pointer<SLMIDIMuteSoloItf_>>;
using SLMIDITempoItf = Pointer<Pointer<SLMIDITempoItf_>>;
using SLMIDITimeItf = Pointer<Pointer<SLMIDITimeItf_>>;
using SLAudioCodecDescriptor = SLAudioCodecDescriptor_;
using SLAudioCodecProfileMode = SLAudioCodecProfileMode_;
using SLAudioDecoderCapabilitiesItf = Pointer<Pointer<SLAudioDecoderCapabilitiesItf_>>;
using SLAudioEncoderSettings = SLAudioEncoderSettings_;
using SLAudioEncoderCapabilitiesItf = Pointer<Pointer<SLAudioEncoderCapabilitiesItf_>>;
using SLAudioEncoderItf = Pointer<Pointer<SLAudioEncoderItf_>>;
using SLBassBoostItf = Pointer<Pointer<SLBassBoostItf_>>;
using SLPitchItf = Pointer<Pointer<SLPitchItf_>>;
using SLRatePitchItf = Pointer<Pointer<SLRatePitchItf_>>;
using SLVirtualizerItf = Pointer<Pointer<SLVirtualizerItf_>>;
using SLVisualizationItf = Pointer<Pointer<SLVisualizationItf_>>;
using slVisualizationCallback = System.Action<System.IntPtr, ArrayOf<System.Byte>, ArrayOf<System.Byte>, System.UInt32>;
using SLEngineItf = Pointer<Pointer<SLEngineItf_>>;
using SLEngineCapabilitiesItf = Pointer<Pointer<SLEngineCapabilitiesItf_>>;
using SLThreadSyncItf = Pointer<Pointer<SLThreadSyncItf_>>;
using SLEngineOption = SLEngineOption_;
[StructLayout (LayoutKind.Sequential)]
struct SLInterfaceID_ //line:94, column:22
{
public SLuint32 time_low;
public SLuint16 time_mid;
public SLuint16 time_hi_and_version;
public SLuint16 clock_seq;
public ConstArrayOf<SLuint8> node;
}
[StructLayout (LayoutKind.Sequential)]
struct SLDataLocator_URI_ //line:259, column:16
{
public SLuint32 locatorType;
public Pointer<SLchar> URI;
}
[StructLayout (LayoutKind.Sequential)]
struct SLDataLocator_Address_ //line:265, column:16
{
public SLuint32 locatorType;
public System.IntPtr pAddress;
public SLuint32 length;
}
[StructLayout (LayoutKind.Sequential)]
struct SLDataLocator_IODevice_ //line:279, column:16
{
public SLuint32 locatorType;
public SLuint32 deviceType;
public SLuint32 deviceID;
public SLObjectItf device;
}
[StructLayout (LayoutKind.Sequential)]
struct SLDataLocator_OutputMix //line:287, column:16
{
public SLuint32 locatorType;
public SLObjectItf outputMix;
}
[StructLayout (LayoutKind.Sequential)]
struct SLDataLocator_BufferQueue //line:294, column:16
{
public SLuint32 locatorType;
public SLuint32 numBuffers;
}
[StructLayout (LayoutKind.Sequential)]
struct SLDataLocator_MIDIBufferQueue //line:300, column:16
{
public SLuint32 locatorType;
public SLuint32 tpqn;
public SLuint32 numBuffers;
}
[StructLayout (LayoutKind.Sequential)]
struct SLDataFormat_MIME_ //line:313, column:16
{
public SLuint32 formatType;
public Pointer<SLchar> mimeType;
public SLuint32 containerType;
}
[StructLayout (LayoutKind.Sequential)]
struct SLDataFormat_PCM_ //line:356, column:16
{
public SLuint32 formatType;
public SLuint32 numChannels;
public SLuint32 samplesPerSec;
public SLuint32 bitsPerSample;
public SLuint32 containerSize;
public SLuint32 channelMask;
public SLuint32 endianness;
}
[StructLayout (LayoutKind.Sequential)]
struct SLDataSource_ //line:366, column:16
{
public System.IntPtr pLocator;
public System.IntPtr pFormat;
}
[StructLayout (LayoutKind.Sequential)]
struct SLDataSink_ //line:372, column:16
{
public System.IntPtr pLocator;
public System.IntPtr pFormat;
}
[StructLayout (LayoutKind.Sequential)]
struct SLObjectItf_ //line:401, column:8
{
public System.Func<SLObjectItf, SLboolean, SLresult> Realize;
public System.Func<SLObjectItf, SLboolean, SLresult> Resume;
public System.Func<SLObjectItf, Pointer<SLuint32>, SLresult> GetState;
public System.Func<SLObjectItf, SLInterfaceID, System.IntPtr, SLresult> GetInterface;
public System.Func<SLObjectItf, slObjectCallback, System.IntPtr, SLresult> RegisterCallback;
public System.Action<SLObjectItf> AbortAsyncOperation;
public System.Action<SLObjectItf> Destroy;
public System.Func<SLObjectItf, SLint32, SLboolean, SLresult> SetPriority;
public System.Func<SLObjectItf, Pointer<SLint32>, Pointer<SLboolean>, SLresult> GetPriority;
public System.Func<SLObjectItf, SLint16, Pointer<SLInterfaceID>, SLboolean, SLresult> SetLossOfControlInterfaces;
}
[StructLayout (LayoutKind.Sequential)]
struct SLAudioInputDescriptor_ //line:480, column:16
{
public Pointer<SLchar> deviceName;
public SLint16 deviceConnection;
public SLint16 deviceScope;
public SLint16 deviceLocation;
public SLboolean isForTelephony;
public SLmilliHertz minSampleRate;
public SLmilliHertz maxSampleRate;
public SLboolean isFreqRangeContinuous;
public Pointer<SLmilliHertz> samplingRatesSupported;
public SLint16 numOfSamplingRatesSupported;
public SLint16 maxChannels;
}
[StructLayout (LayoutKind.Sequential)]
struct SLAudioOutputDescriptor_ //line:495, column:16
{
public Pointer<SLchar> pDeviceName;
public SLint16 deviceConnection;
public SLint16 deviceScope;
public SLint16 deviceLocation;
public SLboolean isForTelephony;
public SLmilliHertz minSampleRate;
public SLmilliHertz maxSampleRate;
public SLboolean isFreqRangeContinuous;
public Pointer<SLmilliHertz> samplingRatesSupported;
public SLint16 numOfSamplingRatesSupported;
public SLint16 maxChannels;
}
[StructLayout (LayoutKind.Sequential)]
struct SLAudioIODeviceCapabilitiesItf_ //line:542, column:8
{
public System.Func<SLAudioIODeviceCapabilitiesItf, Pointer<SLint32>, Pointer<SLuint32>, SLresult> GetAvailableAudioInputs;
public System.Func<SLAudioIODeviceCapabilitiesItf, SLuint32, Pointer<SLAudioInputDescriptor>, SLresult> QueryAudioInputCapabilities;
public System.Func<SLAudioIODeviceCapabilitiesItf, slAvailableAudioInputsChangedCallback, System.IntPtr, SLresult> RegisterAvailableAudioInputsChangedCallback;
public System.Func<SLAudioIODeviceCapabilitiesItf, Pointer<SLint32>, Pointer<SLuint32>, SLresult> GetAvailableAudioOutputs;
public System.Func<SLAudioIODeviceCapabilitiesItf, SLuint32, Pointer<SLAudioOutputDescriptor>, SLresult> QueryAudioOutputCapabilities;
public System.Func<SLAudioIODeviceCapabilitiesItf, slAvailableAudioOutputsChangedCallback, System.IntPtr, SLresult> RegisterAvailableAudioOutputsChangedCallback;
public System.Func<SLAudioIODeviceCapabilitiesItf, slDefaultDeviceIDMapChangedCallback, System.IntPtr, SLresult> RegisterDefaultDeviceIDMapChangedCallback;
public System.Func<SLAudioIODeviceCapabilitiesItf, SLuint32, Pointer<SLint32>, Pointer<SLuint32>, SLresult> GetAssociatedAudioInputs;
public System.Func<SLAudioIODeviceCapabilitiesItf, SLuint32, Pointer<SLint32>, Pointer<SLuint32>, SLresult> GetAssociatedAudioOutputs;
public System.Func<SLAudioIODeviceCapabilitiesItf, SLuint32, Pointer<SLint32>, Pointer<SLuint32>, SLresult> GetDefaultAudioDevices;
public System.Func<SLAudioIODeviceCapabilitiesItf, SLuint32, SLmilliHertz, Pointer<SLint32>, Pointer<SLint32>, SLresult> QuerySampleFormatsSupported;
}
[StructLayout (LayoutKind.Sequential)]
struct SLLEDDescriptor_ //line:611, column:16
{
public SLuint8 ledCount;
public SLuint8 primaryLED;
public SLuint32 colorMask;
}
[StructLayout (LayoutKind.Sequential)]
struct SLHSL_ //line:622, column:16
{
public SLmillidegree hue;
public SLpermille saturation;
public SLpermille lightness;
}
[StructLayout (LayoutKind.Sequential)]
struct SLLEDArrayItf_ //line:634, column:8
{
public System.Func<SLLEDArrayItf, SLuint32, SLresult> ActivateLEDArray;
public System.Func<SLLEDArrayItf, Pointer<SLuint32>, SLresult> IsLEDArrayActivated;
public System.Func<SLLEDArrayItf, SLuint8, Pointer<SLHSL>, SLresult> SetColor;
public System.Func<SLLEDArrayItf, SLuint8, Pointer<SLHSL>, SLresult> GetColor;
}
[StructLayout (LayoutKind.Sequential)]
struct SLVibraDescriptor_ //line:659, column:16
{
public SLboolean supportsFrequency;
public SLboolean supportsIntensity;
public SLmilliHertz minFrequency;
public SLmilliHertz maxFrequency;
}
[StructLayout (LayoutKind.Sequential)]
struct SLVibraItf_ //line:679, column:8
{
public System.Func<SLVibraItf, SLboolean, SLresult> Vibrate;
public System.Func<SLVibraItf, Pointer<SLboolean>, SLresult> IsVibrating;
public System.Func<SLVibraItf, SLmilliHertz, SLresult> SetFrequency;
public System.Func<SLVibraItf, Pointer<SLmilliHertz>, SLresult> GetFrequency;
public System.Func<SLVibraItf, SLpermille, SLresult> SetIntensity;
public System.Func<SLVibraItf, Pointer<SLpermille>, SLresult> GetIntensity;
}
[StructLayout (LayoutKind.Sequential)]
struct SLMetadataInfo_ //line:752, column:16
{
public SLuint32 size;
public SLuint32 encoding;
public ConstArrayOf<SLchar> langCountry;
public ConstArrayOf<SLuint8> data;
}
[StructLayout (LayoutKind.Sequential)]
struct SLMetadataExtractionItf_ //line:765, column:8
{
public System.Func<SLMetadataExtractionItf, Pointer<SLuint32>, SLresult> GetItemCount;
public System.Func<SLMetadataExtractionItf, SLuint32, Pointer<SLuint32>, SLresult> GetKeySize;
public System.Func<SLMetadataExtractionItf, SLuint32, SLuint32, Pointer<SLMetadataInfo>, SLresult> GetKey;
public System.Func<SLMetadataExtractionItf, SLuint32, Pointer<SLuint32>, SLresult> GetValueSize;
public System.Func<SLMetadataExtractionItf, SLuint32, SLuint32, Pointer<SLMetadataInfo>, SLresult> GetValue;
public System.Func<SLMetadataExtractionItf, SLuint32, System.IntPtr, SLuint32, Pointer<SLchar>, SLuint32, SLuint8, SLresult> AddKeyFilter;
public System.Func<SLMetadataExtractionItf, SLresult> ClearKeyFilter;
}
[StructLayout (LayoutKind.Sequential)]
struct SLMetadataTraversalItf_ //line:827, column:8
{
public System.Func<SLMetadataTraversalItf, SLuint32, SLresult> SetMode;
public System.Func<SLMetadataTraversalItf, Pointer<SLuint32>, SLresult> GetChildCount;
public System.Func<SLMetadataTraversalItf, SLuint32, Pointer<SLuint32>, SLresult> GetChildMIMETypeSize;
public System.Func<SLMetadataTraversalItf, SLuint32, Pointer<SLint32>, Pointer<SLuint32>, SLuint32, Pointer<SLchar>, SLresult> GetChildInfo;
public System.Func<SLMetadataTraversalItf, SLuint32, SLresult> SetActiveNode;
}
[StructLayout (LayoutKind.Sequential)]
struct SLDynamicSourceItf_ //line:864, column:8
{
public System.Func<SLDynamicSourceItf, Pointer<SLDataSource>, SLresult> SetSource;
}
[StructLayout (LayoutKind.Sequential)]
struct SLOutputMixItf_ //line:886, column:8
{
public System.Func<SLOutputMixItf, Pointer<SLint32>, Pointer<SLuint32>, SLresult> GetDestinationOutputDeviceIDs;
public System.Func<SLOutputMixItf, slMixDeviceChangeCallback, System.IntPtr, SLresult> RegisterDeviceChangeCallback;
public System.Func<SLOutputMixItf, SLint32, Pointer<SLuint32>, SLresult> ReRoute;
}
[StructLayout (LayoutKind.Sequential)]
struct SLPlayItf_ //line:937, column:8
{
public System.Func<SLPlayItf, SLuint32, SLresult> SetPlayState;
public System.Func<SLPlayItf, Pointer<SLuint32>, SLresult> GetPlayState;
public System.Func<SLPlayItf, Pointer<SLmillisecond>, SLresult> GetDuration;
public System.Func<SLPlayItf, Pointer<SLmillisecond>, SLresult> GetPosition;
public System.Func<SLPlayItf, slPlayCallback, System.IntPtr, SLresult> RegisterCallback;
public System.Func<SLPlayItf, SLuint32, SLresult> SetCallbackEventsMask;
public System.Func<SLPlayItf, Pointer<SLuint32>, SLresult> GetCallbackEventsMask;
public System.Func<SLPlayItf, SLmillisecond, SLresult> SetMarkerPosition;
public System.Func<SLPlayItf, SLresult> ClearMarkerPosition;
public System.Func<SLPlayItf, Pointer<SLmillisecond>, SLresult> GetMarkerPosition;
public System.Func<SLPlayItf, SLmillisecond, SLresult> SetPositionUpdatePeriod;
public System.Func<SLPlayItf, Pointer<SLmillisecond>, SLresult> GetPositionUpdatePeriod;
}
[StructLayout (LayoutKind.Sequential)]
struct SLPrefetchStatusItf_ //line:1014, column:8
{
public System.Func<SLPrefetchStatusItf, Pointer<SLuint32>, SLresult> GetPrefetchStatus;
public System.Func<SLPrefetchStatusItf, Pointer<SLpermille>, SLresult> GetFillLevel;
public System.Func<SLPrefetchStatusItf, slPrefetchCallback, System.IntPtr, SLresult> RegisterCallback;
public System.Func<SLPrefetchStatusItf, SLuint32, SLresult> SetCallbackEventsMask;
public System.Func<SLPrefetchStatusItf, Pointer<SLuint32>, SLresult> GetCallbackEventsMask;
public System.Func<SLPrefetchStatusItf, SLpermille, SLresult> SetFillUpdatePeriod;
public System.Func<SLPrefetchStatusItf, Pointer<SLpermille>, SLresult> GetFillUpdatePeriod;
}
[StructLayout (LayoutKind.Sequential)]
struct SLPlaybackRateItf_ //line:1063, column:8
{
public System.Func<SLPlaybackRateItf, SLpermille, SLresult> SetRate;
public System.Func<SLPlaybackRateItf, Pointer<SLpermille>, SLresult> GetRate;
public System.Func<SLPlaybackRateItf, SLuint32, SLresult> SetPropertyConstraints;
public System.Func<SLPlaybackRateItf, Pointer<SLuint32>, SLresult> GetProperties;
public System.Func<SLPlaybackRateItf, SLpermille, Pointer<SLuint32>, SLresult> GetCapabilitiesOfRate;
public System.Func<SLPlaybackRateItf, SLuint8, Pointer<SLpermille>, Pointer<SLpermille>, Pointer<SLpermille>, Pointer<SLuint32>, SLresult> GetRateRange;
}
[StructLayout (LayoutKind.Sequential)]
struct SLSeekItf_ //line:1107, column:8
{
public System.Func<SLSeekItf, SLmillisecond, SLuint32, SLresult> SetPosition;
public System.Func<SLSeekItf, SLboolean, SLmillisecond, SLmillisecond, SLresult> SetLoop;
public System.Func<SLSeekItf, Pointer<SLboolean>, Pointer<SLmillisecond>, Pointer<SLmillisecond>, SLresult> GetLoop;
}
[StructLayout (LayoutKind.Sequential)]
struct SLRecordItf_ //line:1160, column:8
{
public System.Func<SLRecordItf, SLuint32, SLresult> SetRecordState;
public System.Func<SLRecordItf, Pointer<SLuint32>, SLresult> GetRecordState;
public System.Func<SLRecordItf, SLmillisecond, SLresult> SetDurationLimit;
public System.Func<SLRecordItf, Pointer<SLmillisecond>, SLresult> GetPosition;
public System.Func<SLRecordItf, slRecordCallback, System.IntPtr, SLresult> RegisterCallback;
public System.Func<SLRecordItf, SLuint32, SLresult> SetCallbackEventsMask;
public System.Func<SLRecordItf, Pointer<SLuint32>, SLresult> GetCallbackEventsMask;
public System.Func<SLRecordItf, SLmillisecond, SLresult> SetMarkerPosition;
public System.Func<SLRecordItf, SLresult> ClearMarkerPosition;
public System.Func<SLRecordItf, Pointer<SLmillisecond>, SLresult> GetMarkerPosition;
public System.Func<SLRecordItf, SLmillisecond, SLresult> SetPositionUpdatePeriod;
public System.Func<SLRecordItf, Pointer<SLmillisecond>, SLresult> GetPositionUpdatePeriod;
}
[StructLayout (LayoutKind.Sequential)]
struct SLEqualizerItf_ //line:1222, column:8
{
public System.Func<SLEqualizerItf, SLboolean, SLresult> SetEnabled;
public System.Func<SLEqualizerItf, Pointer<SLboolean>, SLresult> IsEnabled;
public System.Func<SLEqualizerItf, Pointer<SLuint16>, SLresult> GetNumberOfBands;
public System.Func<SLEqualizerItf, Pointer<SLmillibel>, Pointer<SLmillibel>, SLresult> GetBandLevelRange;
public System.Func<SLEqualizerItf, SLuint16, SLmillibel, SLresult> SetBandLevel;
public System.Func<SLEqualizerItf, SLuint16, Pointer<SLmillibel>, SLresult> GetBandLevel;
public System.Func<SLEqualizerItf, SLuint16, Pointer<SLmilliHertz>, SLresult> GetCenterFreq;
public System.Func<SLEqualizerItf, SLuint16, Pointer<SLmilliHertz>, Pointer<SLmilliHertz>, SLresult> GetBandFreqRange;
public System.Func<SLEqualizerItf, SLmilliHertz, Pointer<SLuint16>, SLresult> GetBand;
public System.Func<SLEqualizerItf, Pointer<SLuint16>, SLresult> GetCurrentPreset;
public System.Func<SLEqualizerItf, SLuint16, SLresult> UsePreset;
public System.Func<SLEqualizerItf, Pointer<SLuint16>, SLresult> GetNumberOfPresets;
public System.Func<SLEqualizerItf, SLuint16, Pointer<Pointer<SLchar>>, SLresult> GetPresetName;
}
[StructLayout (LayoutKind.Sequential)]
struct SLVolumeItf_ //line:1294, column:8
{
public System.Func<SLVolumeItf, SLmillibel, SLresult> SetVolumeLevel;
public System.Func<SLVolumeItf, Pointer<SLmillibel>, SLresult> GetVolumeLevel;
public System.Func<SLVolumeItf, Pointer<SLmillibel>, SLresult> GetMaxVolumeLevel;
public System.Func<SLVolumeItf, SLboolean, SLresult> SetMute;
public System.Func<SLVolumeItf, Pointer<SLboolean>, SLresult> GetMute;
public System.Func<SLVolumeItf, SLboolean, SLresult> EnableStereoPosition;
public System.Func<SLVolumeItf, Pointer<SLboolean>, SLresult> IsEnabledStereoPosition;
public System.Func<SLVolumeItf, SLpermille, SLresult> SetStereoPosition;
public System.Func<SLVolumeItf, Pointer<SLpermille>, SLresult> GetStereoPosition;
}
[StructLayout (LayoutKind.Sequential)]
struct SLDeviceVolumeItf_ //line:1343, column:8
{
public System.Func<SLDeviceVolumeItf, SLuint32, Pointer<SLint32>, Pointer<SLint32>, Pointer<SLboolean>, SLresult> GetVolumeScale;
public System.Func<SLDeviceVolumeItf, SLuint32, SLint32, SLresult> SetVolume;
public System.Func<SLDeviceVolumeItf, SLuint32, Pointer<SLint32>, SLresult> GetVolume;
}
[StructLayout (LayoutKind.Sequential)]
struct SLBufferQueueState_ //line:1380, column:16
{
public SLuint32 count;
public SLuint32 playIndex;
}
[StructLayout (LayoutKind.Sequential)]
struct SLBufferQueueItf_ //line:1386, column:8
{
public System.Func<SLBufferQueueItf, System.IntPtr, SLuint32, SLresult> Enqueue;
public System.Func<SLBufferQueueItf, SLresult> Clear;
public System.Func<SLBufferQueueItf, Pointer<SLBufferQueueState>, SLresult> GetState;
public System.Func<SLBufferQueueItf, slBufferQueueCallback, System.IntPtr, SLresult> RegisterCallback;
}
[StructLayout (LayoutKind.Sequential)]
struct SLPresetReverbItf_ //line:1425, column:8
{
public System.Func<SLPresetReverbItf, SLuint16, SLresult> SetPreset;
public System.Func<SLPresetReverbItf, Pointer<SLuint16>, SLresult> GetPreset;
}
[StructLayout (LayoutKind.Sequential)]
struct SLEnvironmentalReverbSettings_ //line:1503, column:16
{
public SLmillibel roomLevel;
public SLmillibel roomHFLevel;
public SLmillisecond decayTime;
public SLpermille decayHFRatio;
public SLmillibel reflectionsLevel;
public SLmillisecond reflectionsDelay;
public SLmillibel reverbLevel;
public SLmillisecond reverbDelay;
public SLpermille diffusion;
public SLpermille density;
}
[StructLayout (LayoutKind.Sequential)]
struct SLEnvironmentalReverbItf_ //line:1525, column:8
{
public System.Func<SLEnvironmentalReverbItf, SLmillibel, SLresult> SetRoomLevel;
public System.Func<SLEnvironmentalReverbItf, Pointer<SLmillibel>, SLresult> GetRoomLevel;
public System.Func<SLEnvironmentalReverbItf, SLmillibel, SLresult> SetRoomHFLevel;
public System.Func<SLEnvironmentalReverbItf, Pointer<SLmillibel>, SLresult> GetRoomHFLevel;
public System.Func<SLEnvironmentalReverbItf, SLmillisecond, SLresult> SetDecayTime;
public System.Func<SLEnvironmentalReverbItf, Pointer<SLmillisecond>, SLresult> GetDecayTime;
public System.Func<SLEnvironmentalReverbItf, SLpermille, SLresult> SetDecayHFRatio;
public System.Func<SLEnvironmentalReverbItf, Pointer<SLpermille>, SLresult> GetDecayHFRatio;
public System.Func<SLEnvironmentalReverbItf, SLmillibel, SLresult> SetReflectionsLevel;
public System.Func<SLEnvironmentalReverbItf, Pointer<SLmillibel>, SLresult> GetReflectionsLevel;
public System.Func<SLEnvironmentalReverbItf, SLmillisecond, SLresult> SetReflectionsDelay;
public System.Func<SLEnvironmentalReverbItf, Pointer<SLmillisecond>, SLresult> GetReflectionsDelay;
public System.Func<SLEnvironmentalReverbItf, SLmillibel, SLresult> SetReverbLevel;
public System.Func<SLEnvironmentalReverbItf, Pointer<SLmillibel>, SLresult> GetReverbLevel;
public System.Func<SLEnvironmentalReverbItf, SLmillisecond, SLresult> SetReverbDelay;
public System.Func<SLEnvironmentalReverbItf, Pointer<SLmillisecond>, SLresult> GetReverbDelay;
public System.Func<SLEnvironmentalReverbItf, SLpermille, SLresult> SetDiffusion;
public System.Func<SLEnvironmentalReverbItf, Pointer<SLpermille>, SLresult> GetDiffusion;
public System.Func<SLEnvironmentalReverbItf, SLpermille, SLresult> SetDensity;
public System.Func<SLEnvironmentalReverbItf, Pointer<SLpermille>, SLresult> GetDensity;
public System.Func<SLEnvironmentalReverbItf, Pointer<SLEnvironmentalReverbSettings>, SLresult> SetEnvironmentalReverbProperties;
public System.Func<SLEnvironmentalReverbItf, Pointer<SLEnvironmentalReverbSettings>, SLresult> GetEnvironmentalReverbProperties;
}
[StructLayout (LayoutKind.Sequential)]
struct SLEffectSendItf_ //line:1626, column:8
{
public System.Func<SLEffectSendItf, System.IntPtr, SLboolean, SLmillibel, SLresult> EnableEffectSend;
public System.Func<SLEffectSendItf, System.IntPtr, Pointer<SLboolean>, SLresult> IsEnabled;
public System.Func<SLEffectSendItf, SLmillibel, SLresult> SetDirectLevel;
public System.Func<SLEffectSendItf, Pointer<SLmillibel>, SLresult> GetDirectLevel;
public System.Func<SLEffectSendItf, System.IntPtr, SLmillibel, SLresult> SetSendLevel;
public System.Func<SLEffectSendItf, System.IntPtr, Pointer<SLmillibel>, SLresult> GetSendLevel;
}
[StructLayout (LayoutKind.Sequential)]
struct SL3DGroupingItf_ //line:1670, column:8
{
public System.Func<SL3DGroupingItf, SLObjectItf, SLresult> Set3DGroup;
public System.Func<SL3DGroupingItf, Pointer<SLObjectItf>, SLresult> Get3DGroup;
}
[StructLayout (LayoutKind.Sequential)]
struct SL3DCommitItf_ //line:1692, column:8
{
public System.Func<SL3DCommitItf, SLresult> Commit;
public System.Func<SL3DCommitItf, SLboolean, SLresult> SetDeferred;
}
[StructLayout (LayoutKind.Sequential)]
struct SLVec3D_ //line:1707, column:16
{
public SLint32 x;
public SLint32 y;
public SLint32 z;
}
[StructLayout (LayoutKind.Sequential)]
struct SL3DLocationItf_ //line:1718, column:8
{
public System.Func<SL3DLocationItf, Pointer<SLVec3D>, SLresult> SetLocationCartesian;
public System.Func<SL3DLocationItf, SLmillidegree, SLmillidegree, SLmillimeter, SLresult> SetLocationSpherical;
public System.Func<SL3DLocationItf, Pointer<SLVec3D>, SLresult> Move;
public System.Func<SL3DLocationItf, Pointer<SLVec3D>, SLresult> GetLocationCartesian;
public System.Func<SL3DLocationItf, Pointer<SLVec3D>, Pointer<SLVec3D>, SLresult> SetOrientationVectors;
public System.Func<SL3DLocationItf, SLmillidegree, SLmillidegree, SLmillidegree, SLresult> SetOrientationAngles;
public System.Func<SL3DLocationItf, SLmillidegree, Pointer<SLVec3D>, SLresult> Rotate;
public System.Func<SL3DLocationItf, Pointer<SLVec3D>, Pointer<SLVec3D>, SLresult> GetOrientationVectors;
}
[StructLayout (LayoutKind.Sequential)]
struct SL3DDopplerItf_ //line:1771, column:8
{
public System.Func<SL3DDopplerItf, Pointer<SLVec3D>, SLresult> SetVelocityCartesian;
public System.Func<SL3DDopplerItf, SLmillidegree, SLmillidegree, SLmillimeter, SLresult> SetVelocitySpherical;
public System.Func<SL3DDopplerItf, Pointer<SLVec3D>, SLresult> GetVelocityCartesian;
public System.Func<SL3DDopplerItf, SLpermille, SLresult> SetDopplerFactor;
public System.Func<SL3DDopplerItf, Pointer<SLpermille>, SLresult> GetDopplerFactor;
}
[StructLayout (LayoutKind.Sequential)]
struct SL3DSourceItf_ //line:1809, column:8
{
public System.Func<SL3DSourceItf, SLboolean, SLresult> SetHeadRelative;
public System.Func<SL3DSourceItf, Pointer<SLboolean>, SLresult> GetHeadRelative;
public System.Func<SL3DSourceItf, SLmillimeter, SLmillimeter, SLresult> SetRolloffDistances;
public System.Func<SL3DSourceItf, Pointer<SLmillimeter>, Pointer<SLmillimeter>, SLresult> GetRolloffDistances;
public System.Func<SL3DSourceItf, SLboolean, SLresult> SetRolloffMaxDistanceMute;
public System.Func<SL3DSourceItf, Pointer<SLboolean>, SLresult> GetRolloffMaxDistanceMute;
public System.Func<SL3DSourceItf, SLpermille, SLresult> SetRolloffFactor;
public System.Func<SL3DSourceItf, Pointer<SLpermille>, SLresult> GetRolloffFactor;
public System.Func<SL3DSourceItf, SLpermille, SLresult> SetRoomRolloffFactor;
public System.Func<SL3DSourceItf, Pointer<SLpermille>, SLresult> GetRoomRolloffFactor;
public System.Func<SL3DSourceItf, SLuint8, SLresult> SetRolloffModel;
public System.Func<SL3DSourceItf, Pointer<SLuint8>, SLresult> GetRolloffModel;
public System.Func<SL3DSourceItf, SLmillidegree, SLmillidegree, SLmillibel, SLresult> SetCone;
public System.Func<SL3DSourceItf, Pointer<SLmillidegree>, Pointer<SLmillidegree>, Pointer<SLmillibel>, SLresult> GetCone;
}
[StructLayout (LayoutKind.Sequential)]
struct SL3DMacroscopicItf_ //line:1883, column:8
{
public System.Func<SL3DMacroscopicItf, SLmillimeter, SLmillimeter, SLmillimeter, SLresult> SetSize;
public System.Func<SL3DMacroscopicItf, Pointer<SLmillimeter>, Pointer<SLmillimeter>, Pointer<SLmillimeter>, SLresult> GetSize;
public System.Func<SL3DMacroscopicItf, SLmillidegree, SLmillidegree, SLmillidegree, SLresult> SetOrientationAngles;
public System.Func<SL3DMacroscopicItf, Pointer<SLVec3D>, Pointer<SLVec3D>, SLresult> SetOrientationVectors;
public System.Func<SL3DMacroscopicItf, SLmillidegree, Pointer<SLVec3D>, SLresult> Rotate;
public System.Func<SL3DMacroscopicItf, Pointer<SLVec3D>, Pointer<SLVec3D>, SLresult> GetOrientationVectors;
}
[StructLayout (LayoutKind.Sequential)]
struct SLMuteSoloItf_ //line:1929, column:8
{
public System.Func<SLMuteSoloItf, SLuint8, SLboolean, SLresult> SetChannelMute;
public System.Func<SLMuteSoloItf, SLuint8, Pointer<SLboolean>, SLresult> GetChannelMute;
public System.Func<SLMuteSoloItf, SLuint8, SLboolean, SLresult> SetChannelSolo;
public System.Func<SLMuteSoloItf, SLuint8, Pointer<SLboolean>, SLresult> GetChannelSolo;
public System.Func<SLMuteSoloItf, Pointer<SLuint8>, SLresult> GetNumChannels;
}
[StructLayout (LayoutKind.Sequential)]
struct SLDynamicInterfaceManagementItf_ //line:1984, column:8
{
public System.Func<SLDynamicInterfaceManagementItf, SLInterfaceID, SLboolean, SLresult> AddInterface;
public System.Func<SLDynamicInterfaceManagementItf, SLInterfaceID, SLresult> RemoveInterface;
public System.Func<SLDynamicInterfaceManagementItf, SLInterfaceID, SLboolean, SLresult> ResumeInterface;
public System.Func<SLDynamicInterfaceManagementItf, slDynamicInterfaceManagementCallback, System.IntPtr, SLresult> RegisterCallback;
}
[StructLayout (LayoutKind.Sequential)]
struct SLMIDIMessageItf_ //line:2044, column:8
{
public System.Func<SLMIDIMessageItf, Pointer<SLuint8>, SLuint32, SLresult> SendMessage;
public System.Func<SLMIDIMessageItf, slMetaEventCallback, System.IntPtr, SLresult> RegisterMetaEventCallback;
public System.Func<SLMIDIMessageItf, slMIDIMessageCallback, System.IntPtr, SLresult> RegisterMIDIMessageCallback;
public System.Func<SLMIDIMessageItf, SLuint32, SLresult> AddMIDIMessageCallbackFilter;
public System.Func<SLMIDIMessageItf, SLresult> ClearMIDIMessageCallbackFilter;
}
[StructLayout (LayoutKind.Sequential)]
struct SLMIDIMuteSoloItf_ //line:2080, column:8
{
public System.Func<SLMIDIMuteSoloItf, SLuint8, SLboolean, SLresult> SetChannelMute;
public System.Func<SLMIDIMuteSoloItf, SLuint8, Pointer<SLboolean>, SLresult> GetChannelMute;
public System.Func<SLMIDIMuteSoloItf, SLuint8, SLboolean, SLresult> SetChannelSolo;
public System.Func<SLMIDIMuteSoloItf, SLuint8, Pointer<SLboolean>, SLresult> GetChannelSolo;
public System.Func<SLMIDIMuteSoloItf, Pointer<SLuint16>, SLresult> GetTrackCount;
public System.Func<SLMIDIMuteSoloItf, SLuint16, SLboolean, SLresult> SetTrackMute;
public System.Func<SLMIDIMuteSoloItf, SLuint16, Pointer<SLboolean>, SLresult> GetTrackMute;
public System.Func<SLMIDIMuteSoloItf, SLuint16, SLboolean, SLresult> SetTrackSolo;
public System.Func<SLMIDIMuteSoloItf, SLuint16, Pointer<SLboolean>, SLresult> GetTrackSolo;
}
[StructLayout (LayoutKind.Sequential)]
struct SLMIDITempoItf_ //line:2138, column:8
{
public System.Func<SLMIDITempoItf, SLuint32, SLresult> SetTicksPerQuarterNote;
public System.Func<SLMIDITempoItf, Pointer<SLuint32>, SLresult> GetTicksPerQuarterNote;
public System.Func<SLMIDITempoItf, SLmicrosecond, SLresult> SetMicrosecondsPerQuarterNote;
public System.Func<SLMIDITempoItf, Pointer<SLmicrosecond>, SLresult> GetMicrosecondsPerQuarterNote;
}
[StructLayout (LayoutKind.Sequential)]
struct SLMIDITimeItf_ //line:2168, column:8
{
public System.Func<SLMIDITimeItf, Pointer<SLuint32>, SLresult> GetDuration;
public System.Func<SLMIDITimeItf, SLuint32, SLresult> SetPosition;
public System.Func<SLMIDITimeItf, Pointer<SLuint32>, SLresult> GetPosition;
public System.Func<SLMIDITimeItf, SLuint32, SLuint32, SLresult> SetLoopPoints;
public System.Func<SLMIDITimeItf, Pointer<SLuint32>, Pointer<SLuint32>, SLresult> GetLoopPoints;
}
[StructLayout (LayoutKind.Sequential)]
struct SLAudioCodecDescriptor_ //line:2278, column:16
{
public SLuint32 maxChannels;
public SLuint32 minBitsPerSample;
public SLuint32 maxBitsPerSample;
public SLmilliHertz minSampleRate;
public SLmilliHertz maxSampleRate;
public SLboolean isFreqRangeContinuous;
public Pointer<SLmilliHertz> pSampleRatesSupported;
public SLuint32 numSampleRatesSupported;
public SLuint32 minBitRate;
public SLuint32 maxBitRate;
public SLboolean isBitrateRangeContinuous;
public Pointer<SLuint32> pBitratesSupported;
public SLuint32 numBitratesSupported;
public SLuint32 profileSetting;
public SLuint32 modeSetting;
}
[StructLayout (LayoutKind.Sequential)]
struct SLAudioCodecProfileMode_ //line:2298, column:16
{
public SLuint32 profileSetting;
public SLuint32 modeSetting;
}
[StructLayout (LayoutKind.Sequential)]
struct SLAudioDecoderCapabilitiesItf_ //line:2308, column:8
{
public System.Func<SLAudioDecoderCapabilitiesItf, Pointer<SLuint32>, Pointer<SLuint32>, SLresult> GetAudioDecoders;
public System.Func<SLAudioDecoderCapabilitiesItf, SLuint32, Pointer<SLuint32>, Pointer<SLAudioCodecDescriptor>, SLresult> GetAudioDecoderCapabilities;
}
[StructLayout (LayoutKind.Sequential)]
struct SLAudioEncoderSettings_ //line:2331, column:16
{
public SLuint32 encoderId;
public SLuint32 channelsIn;
public SLuint32 channelsOut;
public SLmilliHertz sampleRate;
public SLuint32 bitRate;
public SLuint32 bitsPerSample;
public SLuint32 rateControl;
public SLuint32 profileSetting;
public SLuint32 levelSetting;
public SLuint32 channelMode;
public SLuint32 streamFormat;
public SLuint32 encodeOptions;
public SLuint32 blockAlignment;
}
[StructLayout (LayoutKind.Sequential)]
struct SLAudioEncoderCapabilitiesItf_ //line:2352, column:8
{
public System.Func<SLAudioEncoderCapabilitiesItf, Pointer<SLuint32>, Pointer<SLuint32>, SLresult> GetAudioEncoders;
public System.Func<SLAudioEncoderCapabilitiesItf, SLuint32, Pointer<SLuint32>, Pointer<SLAudioCodecDescriptor>, SLresult> GetAudioEncoderCapabilities;
}
[StructLayout (LayoutKind.Sequential)]
struct SLAudioEncoderItf_ //line:2377, column:8
{
public System.Func<SLAudioEncoderItf, Pointer<SLAudioEncoderSettings>, SLresult> SetEncoderSettings;
public System.Func<SLAudioEncoderItf, Pointer<SLAudioEncoderSettings>, SLresult> GetEncoderSettings;
}
[StructLayout (LayoutKind.Sequential)]
struct SLBassBoostItf_ //line:2399, column:8
{
public System.Func<SLBassBoostItf, SLboolean, SLresult> SetEnabled;
public System.Func<SLBassBoostItf, Pointer<SLboolean>, SLresult> IsEnabled;
public System.Func<SLBassBoostItf, SLpermille, SLresult> SetStrength;
public System.Func<SLBassBoostItf, Pointer<SLpermille>, SLresult> GetRoundedStrength;
public System.Func<SLBassBoostItf, Pointer<SLboolean>, SLresult> IsStrengthSupported;
}
[StructLayout (LayoutKind.Sequential)]
struct SLPitchItf_ //line:2432, column:8
{
public System.Func<SLPitchItf, SLpermille, SLresult> SetPitch;
public System.Func<SLPitchItf, Pointer<SLpermille>, SLresult> GetPitch;
public System.Func<SLPitchItf, Pointer<SLpermille>, Pointer<SLpermille>, SLresult> GetPitchCapabilities;
}
[StructLayout (LayoutKind.Sequential)]
struct SLRatePitchItf_ //line:2461, column:8
{
public System.Func<SLRatePitchItf, SLpermille, SLresult> SetRate;
public System.Func<SLRatePitchItf, Pointer<SLpermille>, SLresult> GetRate;
public System.Func<SLRatePitchItf, Pointer<SLpermille>, Pointer<SLpermille>, SLresult> GetRatePitchCapabilities;
}
[StructLayout (LayoutKind.Sequential)]
struct SLVirtualizerItf_ //line:2488, column:8
{
public System.Func<SLVirtualizerItf, SLboolean, SLresult> SetEnabled;
public System.Func<SLVirtualizerItf, Pointer<SLboolean>, SLresult> IsEnabled;
public System.Func<SLVirtualizerItf, SLpermille, SLresult> SetStrength;
public System.Func<SLVirtualizerItf, Pointer<SLpermille>, SLresult> GetRoundedStrength;
public System.Func<SLVirtualizerItf, Pointer<SLboolean>, SLresult> IsStrengthSupported;
}
[StructLayout (LayoutKind.Sequential)]
struct SLVisualizationItf_ //line:2528, column:8
{
public System.Func<SLVisualizationItf, slVisualizationCallback, System.IntPtr, SLmilliHertz, SLresult> RegisterVisualizationCallback;
public System.Func<SLVisualizationItf, Pointer<SLmilliHertz>, SLresult> GetMaxRate;
}
[StructLayout (LayoutKind.Sequential)]
struct SLEngineItf_ //line:2553, column:8
{
public System.Func<SLEngineItf, Pointer<SLObjectItf>, SLuint32, SLuint32, Pointer<SLInterfaceID>, Pointer<SLboolean>, SLresult> CreateLEDDevice;
public System.Func<SLEngineItf, Pointer<SLObjectItf>, SLuint32, SLuint32, Pointer<SLInterfaceID>, Pointer<SLboolean>, SLresult> CreateVibraDevice;
public System.Func<SLEngineItf, Pointer<SLObjectItf>, Pointer<SLDataSource>, Pointer<SLDataSink>, SLuint32, Pointer<SLInterfaceID>, Pointer<SLboolean>, SLresult> CreateAudioPlayer;
public System.Func<SLEngineItf, Pointer<SLObjectItf>, Pointer<SLDataSource>, Pointer<SLDataSink>, SLuint32, Pointer<SLInterfaceID>, Pointer<SLboolean>, SLresult> CreateAudioRecorder;
public System.Func<SLEngineItf, Pointer<SLObjectItf>, Pointer<SLDataSource>, Pointer<SLDataSource>, Pointer<SLDataSink>, Pointer<SLDataSink>, Pointer<SLDataSink>, SLuint32, Pointer<SLInterfaceID>, Pointer<SLboolean>, SLresult> CreateMidiPlayer;
public System.Func<SLEngineItf, Pointer<SLObjectItf>, SLuint32, Pointer<SLInterfaceID>, Pointer<SLboolean>, SLresult> CreateListener;
public System.Func<SLEngineItf, Pointer<SLObjectItf>, SLuint32, Pointer<SLInterfaceID>, Pointer<SLboolean>, SLresult> Create3DGroup;
public System.Func<SLEngineItf, Pointer<SLObjectItf>, SLuint32, Pointer<SLInterfaceID>, Pointer<SLboolean>, SLresult> CreateOutputMix;
public System.Func<SLEngineItf, Pointer<SLObjectItf>, Pointer<SLDataSource>, SLuint32, Pointer<SLInterfaceID>, Pointer<SLboolean>, SLresult> CreateMetadataExtractor;
public System.Func<SLEngineItf, Pointer<SLObjectItf>, System.IntPtr, SLuint32, SLuint32, Pointer<SLInterfaceID>, Pointer<SLboolean>, SLresult> CreateExtensionObject;
public System.Func<SLEngineItf, SLuint32, Pointer<SLuint32>, SLresult> QueryNumSupportedInterfaces;
public System.Func<SLEngineItf, SLuint32, SLuint32, Pointer<SLInterfaceID>, SLresult> QuerySupportedInterfaces;
public System.Func<SLEngineItf, Pointer<SLuint32>, SLresult> QueryNumSupportedExtensions;
public System.Func<SLEngineItf, SLuint32, Pointer<SLchar>, Pointer<SLint16>, SLresult> QuerySupportedExtension;
public System.Func<SLEngineItf, Pointer<SLchar>, Pointer<SLboolean>, SLresult> IsExtensionSupported;
}
[StructLayout (LayoutKind.Sequential)]
struct SLEngineCapabilitiesItf_ //line:2678, column:8
{
public System.Func<SLEngineCapabilitiesItf, Pointer<SLuint16>, SLresult> QuerySupportedProfiles;
public System.Func<SLEngineCapabilitiesItf, SLuint16, Pointer<SLint16>, Pointer<SLboolean>, Pointer<SLint16>, SLresult> QueryAvailableVoices;
public System.Func<SLEngineCapabilitiesItf, Pointer<SLint16>, SLresult> QueryNumberOfMIDISynthesizers;
public System.Func<SLEngineCapabilitiesItf, Pointer<SLint16>, Pointer<SLint16>, Pointer<SLint16>, SLresult> QueryAPIVersion;
public System.Func<SLEngineCapabilitiesItf, Pointer<SLuint32>, Pointer<SLuint32>, Pointer<SLLEDDescriptor>, SLresult> QueryLEDCapabilities;
public System.Func<SLEngineCapabilitiesItf, Pointer<SLuint32>, Pointer<SLuint32>, Pointer<SLVibraDescriptor>, SLresult> QueryVibraCapabilities;
public System.Func<SLEngineCapabilitiesItf, Pointer<SLboolean>, SLresult> IsThreadSafe;
}
[StructLayout (LayoutKind.Sequential)]
struct SLThreadSyncItf_ //line:2729, column:8
{
public System.Func<SLThreadSyncItf, SLresult> EnterCriticalSection;
public System.Func<SLThreadSyncItf, SLresult> ExitCriticalSection;
}
[StructLayout (LayoutKind.Sequential)]
struct SLEngineOption_ //line:2746, column:16
{
public SLuint32 feature;
public SLuint32 data;
}
class Marshal
{
// function slCreateEngine line:2752, column:21
[DllImport ("OpenSLES")]
internal static extern SLresult slCreateEngine (Pointer<SLObjectItf> pEngine, SLuint32 numOptions, Pointer<SLEngineOption> pEngineOptions, SLuint32 numInterfaces, Pointer<SLInterfaceID> pInterfaceIds, Pointer<SLboolean> pInterfaceRequired);
// function slQueryNumSupportedEngineInterfaces line:2761, column:21
[DllImport ("OpenSLES")]
internal static extern SLresult slQueryNumSupportedEngineInterfaces (Pointer<SLuint32> pNumSupportedInterfaces);
// function slQuerySupportedEngineInterfaces line:2765, column:21
[DllImport ("OpenSLES")]
internal static extern SLresult slQuerySupportedEngineInterfaces (SLuint32 index, Pointer<SLInterfaceID> pInterfaceId);
}
public struct Pointer<T>
{
public IntPtr Handle;
public static implicit operator IntPtr (Pointer<T> value) { return value.Handle; }
}
public struct ArrayOf<T> {}
public struct ConstArrayOf<T> {}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment