Home | Namespaces | Hierarchy | Alphabetical List | Class list | Files | Namespace Members | Class members | File members

ik_ISoundSource.h

Go to the documentation of this file.
00001 // Copyright (C) 2002-2009 Nikolaus Gebhardt
00002 // This file is part of the "irrKlang" library.
00003 // For conditions of distribution and use, see copyright notice in irrKlang.h
00004 
00005 #ifndef __I_IRRKLANG_IRR_SOUND_SOURCE_H_INCLUDED__
00006 #define __I_IRRKLANG_IRR_SOUND_SOURCE_H_INCLUDED__
00007 
00008 #include "ik_IVirtualRefCounted.h"
00009 #include "ik_vec3d.h"
00010 #include "ik_EStreamModes.h"
00011 #include "ik_SAudioStreamFormat.h"
00012 
00013 
00014 namespace irrklang
00015 {
00016 
00018 
00021         class ISoundSource : public IVirtualRefCounted
00022         {
00023         public:
00024 
00026                 virtual const ik_c8* getName() = 0;
00027 
00029 
00032                 virtual void setStreamMode(E_STREAM_MODE mode) = 0;
00033 
00035 
00037                 virtual E_STREAM_MODE getStreamMode() = 0;
00038 
00040 
00045                 virtual ik_u32 getPlayLength() = 0;
00046 
00048 
00053                 virtual SAudioStreamFormat getAudioFormat() = 0;
00054 
00056                 /* If a sound is seekable depends on the file type and the audio format. For example MOD files
00057                 cannot be seeked currently.
00058                 \return Returns true of the sound source supports setPlayPosition() and false if not. 
00059                 Note: If the sound never has been played before, the sound engine will have to open
00060                 the file and try to get the information from there, so this call could take a bit depending
00061                 on the type of file. */
00062                 virtual bool getIsSeekingSupported() = 0;
00063 
00065 
00069 
00072 
00076 
00079 
00087 
00090 
00096 
00099 
00112 
00115 
00126 
00129 
00134 
00137 
00144 
00147 
00149 
00152 
00161 

irrKlang Audio Library
The irrKlang Engine Documentation © 2003-2007 by Nikolaus Gebhardt. Generated on Fri Jan 2 15:37:05 2009 by Doxygen (1.5.4)