2012-09-29 22:01:15 +00:00
|
|
|
using System;
|
2012-08-09 09:45:04 +00:00
|
|
|
using System.IO;
|
2012-01-25 15:31:58 +00:00
|
|
|
using ANX.Framework.Audio;
|
2012-08-22 14:28:22 +00:00
|
|
|
using System.Collections.ObjectModel;
|
2012-09-29 22:01:15 +00:00
|
|
|
using ANX.Framework.Media;
|
2011-10-31 05:36:24 +00:00
|
|
|
|
2012-08-09 09:45:04 +00:00
|
|
|
// This file is part of the ANX.Framework created by the
|
|
|
|
// "ANX.Framework developer group" and released under the Ms-PL license.
|
|
|
|
// For details see: http://anxframework.codeplex.com/license
|
2011-10-31 05:36:24 +00:00
|
|
|
|
2012-09-29 22:01:15 +00:00
|
|
|
namespace ANX.Framework.NonXNA.SoundSystem
|
2011-10-31 05:36:24 +00:00
|
|
|
{
|
2012-01-25 15:31:58 +00:00
|
|
|
public interface ISoundSystemCreator : ICreator
|
|
|
|
{
|
2012-09-29 22:01:15 +00:00
|
|
|
float DistanceScale { get; set; }
|
|
|
|
float DopplerScale { get; set; }
|
|
|
|
float MasterVolume { get; set; }
|
|
|
|
float SpeedOfSound { get; set; }
|
|
|
|
|
|
|
|
IAudioListener CreateAudioListener();
|
2012-02-11 23:53:03 +00:00
|
|
|
|
|
|
|
IAudioEmitter CreateAudioEmitter();
|
|
|
|
|
2012-02-12 11:28:59 +00:00
|
|
|
ISoundEffect CreateSoundEffect(SoundEffect parent, Stream stream);
|
2012-01-25 15:31:58 +00:00
|
|
|
|
2012-02-12 11:28:59 +00:00
|
|
|
ISoundEffect CreateSoundEffect(SoundEffect parent, byte[] buffer, int offset,
|
|
|
|
int count, int sampleRate, AudioChannels channels, int loopStart,
|
|
|
|
int loopLength);
|
2011-10-31 05:36:24 +00:00
|
|
|
|
2012-02-12 11:28:59 +00:00
|
|
|
ISoundEffectInstance CreateSoundEffectInstance(ISoundEffect nativeSoundEffect);
|
2012-08-22 14:28:22 +00:00
|
|
|
|
|
|
|
IMicrophone CreateMicrophone(Microphone managedMicrophone);
|
|
|
|
|
|
|
|
ReadOnlyCollection<Microphone> GetAllMicrophones();
|
|
|
|
|
|
|
|
int GetDefaultMicrophone(ReadOnlyCollection<Microphone> allMicrophones);
|
2012-09-29 22:01:15 +00:00
|
|
|
|
|
|
|
ISong CreateSong(Song parentSong, Uri uri);
|
2012-10-03 20:47:56 +00:00
|
|
|
ISong CreateSong(Song parentSong, string filepath, int duration);
|
2012-09-30 08:28:17 +00:00
|
|
|
|
|
|
|
IDynamicSoundEffectInstance CreateDynamicSoundEffectInstance();
|
2012-01-25 15:31:58 +00:00
|
|
|
}
|
2011-10-31 05:36:24 +00:00
|
|
|
}
|