first commit
This commit is contained in:
42
include/framework/audio/stream_interface.h
Normal file
42
include/framework/audio/stream_interface.h
Normal file
@ -0,0 +1,42 @@
|
||||
/* -----------------------------------------------------------------------------
|
||||
GSFramework
|
||||
Copyright 2001-2013 Emmanuel Julien. All Rights Reserved.
|
||||
----------------------------------------------------------------------------- */
|
||||
|
||||
|
||||
#ifndef __AUDIOSTREAMINTERFACE__
|
||||
#define __AUDIOSTREAMINTERFACE__
|
||||
|
||||
|
||||
#include "audio/sample_format.h"
|
||||
|
||||
|
||||
namespace GS {
|
||||
|
||||
/*
|
||||
@short Audio stream interface.
|
||||
@author Emmanuel Julien (ejulien@nworks.fr)
|
||||
*/
|
||||
struct IAudioStream
|
||||
{
|
||||
SampleFormat format;
|
||||
|
||||
/// Return the stream data format (eg. "OGG").
|
||||
virtual const char *GetFormat() = 0;
|
||||
|
||||
virtual bool Seek(int t_ms = 0) = 0;
|
||||
virtual bool IsEOF() const = 0;
|
||||
|
||||
virtual size_t GetPCM(void *) = 0;
|
||||
virtual size_t GetPCMBufferSize() const = 0;
|
||||
|
||||
virtual bool Open(const char *uri) = 0;
|
||||
virtual void Close() = 0;
|
||||
|
||||
virtual ~IAudioStream() {}
|
||||
};
|
||||
|
||||
} // GS
|
||||
|
||||
|
||||
#endif // __AUDIOSTREAMINTERFACE__
|
||||
Reference in New Issue
Block a user