public RecordDriver() { id = -1; name = ""; nameLength = 0; guid = Guid.Empty; systemRate = 0; speakerMode = SPEAKERMODE.DEFAULT; speakerModeChannels = 0; state = DRIVER_STATE.DEFAULT; }
private static extern RESULT FMOD5_System_GetRecordDriverInfo (IntPtr system, int id, IntPtr name, int namelen, out Guid guid, out int systemrate, out SPEAKERMODE speakermode, out int speakermodechannels, out DRIVER_STATE state);
public RESULT getRecordDriverInfo(int id, StringBuilder name, int namelen, out Guid guid, out int systemrate, out SPEAKERMODE speakermode, out int speakermodechannels, out DRIVER_STATE state) { IntPtr stringMem = Marshal.AllocHGlobal(name.Capacity); RESULT result = FMOD5_System_GetRecordDriverInfo(rawPtr, id, stringMem, namelen, out guid, out systemrate, out speakermode, out speakermodechannels, out state); StringMarshalHelper.NativeToBuilder(name, stringMem); Marshal.FreeHGlobal(stringMem); return result; }
private static extern RESULT FMOD5_System_GetRecordDriverInfo(IntPtr system, int id, IntPtr name, int namelen, out Guid guid, out int systemrate, out SPEAKERMODE speakermode, out int speakermodechannels, out DRIVER_STATE state);
public RESULT getRecordDriverInfo(int id, StringBuilder name, int namelen, out Guid guid, out int systemrate, out SPEAKERMODE speakermode, out int speakermodechannels, out DRIVER_STATE state) { IntPtr intPtr = Marshal.AllocHGlobal(name.Capacity); RESULT result = System.FMOD5_System_GetRecordDriverInfo(this.rawPtr, id, intPtr, namelen, out guid, out systemrate, out speakermode, out speakermodechannels, out state); StringMarshalHelper.NativeToBuilder(name, intPtr); Marshal.FreeHGlobal(intPtr); return(result); }
private Tuple<string, int, int> GetDriverInfo(int driverIndex) { var name = new StringBuilder(1000); var guid = new Guid(); var samplingRate = 0; var speakerMode = new SPEAKERMODE(); var channelCount = 0; var driverState = new DRIVER_STATE(); this.fmodSystem.getRecordDriverInfo(driverIndex, name, 1000, out guid, out samplingRate, out speakerMode, out channelCount, out driverState); return new Tuple<string, int, int>(name.ToString(), samplingRate, channelCount); }
public RESULT getRecordDriverInfo(int id, out Guid guid, out int systemrate, out SPEAKERMODE speakermode, out int speakermodechannels, out DRIVER_STATE state) { return(FMOD5_System_GetRecordDriverInfo(handle, id, IntPtr.Zero, 0, out guid, out systemrate, out speakermode, out speakermodechannels, out state)); }
public RESULT getRecordDriverInfo(int id, out string name, int namelen, out Guid guid, out int systemrate, out SPEAKERMODE speakermode, out int speakermodechannels, out DRIVER_STATE state) { IntPtr intPtr = Marshal.AllocHGlobal(namelen); RESULT result = FMOD5_System_GetRecordDriverInfo(handle, id, intPtr, namelen, out guid, out systemrate, out speakermode, out speakermodechannels, out state); using (StringHelper.ThreadSafeEncoding threadSafeEncoding = StringHelper.GetFreeHelper()) { name = threadSafeEncoding.stringFromNative(intPtr); } Marshal.FreeHGlobal(intPtr); return(result); }