/* ----------------------------------------------------------------------------- GSFramework Copyright 2001-2013 Emmanuel Julien. All Rights Reserved. ----------------------------------------------------------------------------- */ #ifndef __ISAMPLE__ #define __ISAMPLE__ #include "audio/sample_format.h" #include "time/ntime.h" namespace GS { /*! @short Sample base interface. @author Emmanuel Julien (ejulien@nworks.fr) */ struct ISample { /// Return the format identifier (eg. "WAV"). virtual const char *GetFormat() = 0; /// Get sample format. virtual bool GetSampleFormat(SampleFormat &) const = 0; /// Get sample duration. virtual Time GetDuration() const = 0; virtual ~ISample() {} }; } // GS #endif // __ISAMPLE__