World of Might and Magic  0.2.0
Open reimplementation of Might and Magic 6 7 8 game engine
Файл OpenALSoundProvider.cpp

См. исходные тексты.

Классы

class  CallBackTimer
 
class  AudioTrackS16
 
class  AudioSample16
 

Функции

void log (const char *format,...)
 
bool CheckError ()
 
PAudioTrack CreateAudioTrack (const std::string &file_path)
 
PAudioSample CreateAudioSample (PMemBuffer buffer)
 

Функции

◆ log()

void log ( const char *  format,
  ... 
)

См. определение в файле OpenALSoundProvider.cpp строка 24

24  {
25  va_list va;
26  va_start(va, format);
27  vprintf(format, va);
28  va_end(va);
29 }

Используется в av_logger(), CheckError(), AudioTrackS16::DrainBuffers(), OpenALSoundProvider::Initialize(), OpenALSoundProvider::PlayTrack16() и OpenALSoundProvider::Stream16().

+ Граф вызова функции:

◆ CheckError()

bool CheckError ( )

См. определение в файле OpenALSoundProvider.cpp строка 31

31  {
32  ALenum code1 = alGetError();
33  if (code1 == AL_NO_ERROR) {
34  return false;
35  }
36 
37  const char *message = alGetString(code1);
38  log("al: error #%d \"%s\"\n", code1, message);
39 
40  return true;
41 }

Перекрестные ссылки alGetError(), alGetString() и log().

Используется в OpenALSoundProvider::alBufferLength(), AudioTrackS16::Close(), AudioSample16::Close(), OpenALSoundProvider::CreateStreamingTrack16(), OpenALSoundProvider::CreateTrack16(), OpenALSoundProvider::DeleteBuffer16(), OpenALSoundProvider::DeleteStreamingTrack(), AudioTrackS16::DrainBuffers(), AudioTrackS16::GetVolume(), OpenALSoundProvider::Initialize(), AudioTrackS16::Open(), AudioSample16::Open(), AudioTrackS16::Pause(), AudioTrackS16::Play(), AudioSample16::Play(), OpenALSoundProvider::PlayTrack16(), AudioSample16::SetPosition(), AudioTrackS16::SetVolume(), AudioSample16::SetVolume(), AudioSample16::Stop(), OpenALSoundProvider::Stream16() и AudioTrackS16::Update().

+ Граф вызовов:
+ Граф вызова функции:

◆ CreateAudioTrack()

PAudioTrack CreateAudioTrack ( const std::string file_path)

См. определение в файле OpenALSoundProvider.cpp строка 657

657  {
658  std::shared_ptr<AudioTrackS16> track = std::make_shared<AudioTrackS16>();
659 
661  if (!track->Open(source)) {
662  track = nullptr;
663  }
664 
665  return std::dynamic_pointer_cast<IAudioTrack, AudioTrackS16>(track);
666 }

Перекрестные ссылки CreateAudioFileDataSource().

Используется в AudioPlayer::MusicPlayTrack().

+ Граф вызовов:
+ Граф вызова функции:

◆ CreateAudioSample()

PAudioSample CreateAudioSample ( PMemBuffer  buffer)

См. определение в файле OpenALSoundProvider.cpp строка 873

873  {
874  std::shared_ptr<AudioSample16> sample = std::make_shared<AudioSample16>();
875 
877  if (!sample->Open(source)) {
878  sample = nullptr;
879  }
880 
881  return std::dynamic_pointer_cast<IAudioSample, AudioSample16>(sample);
882 }

Перекрестные ссылки CreateAudioBufferDataSource().

Используется в AudioPlayer::PlaySound().

+ Граф вызовов:
+ Граф вызова функции:
ALenum
int ALenum
Definition: al.h:65
source
GLsizei GLsizei GLchar * source
Definition: SDL_opengl_glext.h:680
message
GLuint GLsizei const GLchar * message
Definition: SDL_opengl_glext.h:2486
PAudioDataSource
std::shared_ptr< IAudioDataSource > PAudioDataSource
Definition: Media.h:20
CreateAudioBufferDataSource
PAudioDataSource CreateAudioBufferDataSource(PMemBuffer buffer)
Definition: MediaPlayer.cpp:1176
alGetString
const AL_API ALchar *AL_APIENTRY alGetString(ALenum param)
format
SDL_AudioFormat format
Definition: SDL_audio.h:194
buffer
EGLContext EGLenum EGLClientBuffer buffer
Definition: SDL_egl.h:952
CreateAudioFileDataSource
PAudioDataSource CreateAudioFileDataSource(const std::string &file_name)
Definition: MediaPlayer.cpp:1169
alGetError
AL_API ALenum AL_APIENTRY alGetError(void)
log
void log(const char *format,...)
Definition: OpenALSoundProvider.cpp:24