SoundResource Class Reference

#include <SoundResource.h>

Inheritance diagram for SoundResource:

IResource List of all members.

Public Member Functions

 SoundResource (std::string name, std::string filename)
 ~SoundResource ()
std::string GetType ()
void Load ()
void Unload ()
ALuint GetBuffer ()

Static Public Attributes

static const std::string s_type = string("Sound")

Private Attributes

std::string m_filename
ALuint m_buffer

Detailed Description

Definition at line 12 of file SoundResource.h.


Constructor & Destructor Documentation

SoundResource::SoundResource ( std::string  name,
std::string  filename 
)

Definition at line 16 of file SoundResource.cpp.

References IResource::GetKey(), m_buffer, m_filename, Log::Message(), and Log::s_log.

00016                                                         : IResource(name) {
00017   m_filename = filename;
00018   m_buffer = AL_NONE;
00019 
00020   Log::s_log->Message("SoundResource %s created (Key: %s)", m_filename.c_str(), GetKey().c_str());
00021 }

SoundResource::~SoundResource (  ) 

Definition at line 23 of file SoundResource.cpp.

References m_buffer, m_filename, Log::Message(), Log::s_log, and Unload().

00023                               {
00024   if (m_buffer != AL_NONE) {
00025     Log::s_log->Message("Warning: %f sound resource deleted before unload", m_filename.c_str());
00026     Unload();
00027   }
00028   Log::s_log->Message("SoundResource %s destroyed", m_filename.c_str());
00029 }


Member Function Documentation

ALuint SoundResource::GetBuffer (  ) 

Definition at line 46 of file SoundResource.cpp.

References m_buffer.

Referenced by SoundEffect::InitializeSource().

00046                                 {
00047   return m_buffer;
00048 }

string SoundResource::GetType (  )  [virtual]

Implements IResource.

Definition at line 31 of file SoundResource.cpp.

References s_type.

00031                               {
00032   return s_type;
00033 }

void SoundResource::Load (  )  [virtual]

Implements IResource.

Definition at line 35 of file SoundResource.cpp.

References LoadOgg(), m_buffer, m_filename, Log::Message(), and Log::s_log.

00035                          {
00036   LoadOgg(m_filename.c_str(), &m_buffer);
00037   Log::s_log->Message("SoundResource %s loaded", m_filename.c_str());
00038 }

void SoundResource::Unload (  )  [virtual]

Implements IResource.

Definition at line 40 of file SoundResource.cpp.

References m_buffer, m_filename, Log::Message(), and Log::s_log.

Referenced by ~SoundResource().

00040                            {
00041   alDeleteBuffers(1, &m_buffer);
00042   m_buffer = AL_NONE;
00043   Log::s_log->Message("SoundResource %s unloaded", m_filename.c_str());
00044 }


Member Data Documentation

ALuint SoundResource::m_buffer [private]

Definition at line 28 of file SoundResource.h.

Referenced by GetBuffer(), Load(), SoundResource(), Unload(), and ~SoundResource().

std::string SoundResource::m_filename [private]

Definition at line 27 of file SoundResource.h.

Referenced by Load(), SoundResource(), Unload(), and ~SoundResource().

const string SoundResource::s_type = string("Sound") [static]

Definition at line 24 of file SoundResource.h.

Referenced by GetType(), SoundFactory::NewResource(), and SoundEffect::SoundEffect().


The documentation for this class was generated from the following files:
Generated on Mon Jan 8 22:34:15 2007 for CrownandCutlass by  doxygen 1.4.7