//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 loyalsoft. All rights reserved.
// Homepage: http://www.game7000.com/
// Feedback: http://www.game7000.com/
//------------------------------------------------------------
using System;
namespace GameFramework.Sound
{
///
/// 声音代理辅助器接口。
///
public interface ISoundAgentHelper
{
///
/// 获取当前是否正在播放。
///
bool IsPlaying
{
get;
}
///
/// 获取声音长度。
///
float Length
{
get;
}
///
/// 获取或设置播放位置。
///
float Time
{
get;
set;
}
///
/// 获取或设置是否静音。
///
bool Mute
{
get;
set;
}
///
/// 获取或设置是否循环播放。
///
bool Loop
{
get;
set;
}
///
/// 获取或设置声音优先级。
///
int Priority
{
get;
set;
}
///
/// 获取或设置音量大小。
///
float Volume
{
get;
set;
}
///
/// 获取或设置声音音调。
///
float Pitch
{
get;
set;
}
///
/// 获取或设置声音立体声声相。
///
float PanStereo
{
get;
set;
}
///
/// 获取或设置声音空间混合量。
///
float SpatialBlend
{
get;
set;
}
///
/// 获取或设置声音最大距离。
///
float MaxDistance
{
get;
set;
}
///
/// 获取或设置声音多普勒等级。
///
float DopplerLevel
{
get;
set;
}
///
/// 重置声音代理事件。
///
event EventHandler ResetSoundAgent;
///
/// 播放声音。
///
/// 声音淡入时间,以秒为单位。
void Play(float fadeInSeconds);
///
/// 停止播放声音。
///
/// 声音淡出时间,以秒为单位。
void Stop(float fadeOutSeconds);
///
/// 暂停播放声音。
///
/// 声音淡出时间,以秒为单位。
void Pause(float fadeOutSeconds);
///
/// 恢复播放声音。
///
/// 声音淡入时间,以秒为单位。
void Resume(float fadeInSeconds);
///
/// 重置声音代理辅助器。
///
void Reset();
///
/// 设置声音资源。
///
/// 声音资源。
/// 是否设置声音资源成功。
bool SetSoundAsset(object soundAsset);
}
}