25 #ifndef SFML_SOUNDFILEDEFAULT_HPP 26 #define SFML_SOUNDFILEDEFAULT_HPP 31 #include <SFML/Audio/SoundFile.hpp> 43 class SoundFileDefault :
public SoundFile
68 static bool IsFileSupported(
const std::string& Filename,
bool Read);
79 static bool IsFileSupported(
const char* Data, std::size_t SizeInBytes);
85 virtual std::size_t Read(Int16* Data, std::size_t NbSamples);
91 virtual void Write(
const Int16* Data, std::size_t NbSamples);
99 virtual bool OpenRead(
const std::string& Filename, std::size_t& NbSamples,
unsigned int& ChannelsCount,
unsigned int& SampleRate);
105 virtual bool OpenRead(
const char* Data, std::size_t SizeInBytes, std::size_t& NbSamples,
unsigned int& ChannelsCount,
unsigned int& SampleRate);
111 virtual bool OpenWrite(
const std::string& Filename,
unsigned int ChannelsCount,
unsigned int SampleRate);
122 static int GetFormatFromFilename(
const std::string& Filename);
128 static sf_count_t MemoryGetLength(
void* UserData);
129 static sf_count_t MemoryRead(
void* Ptr, sf_count_t Count,
void* UserData);
130 static sf_count_t MemorySeek(sf_count_t Offset,
int Whence,
void* UserData);
131 static sf_count_t MemoryTell(
void* UserData);
132 static sf_count_t MemoryWrite(
const void* Ptr, sf_count_t Count,
void* UserData);
139 const char* DataStart;
141 sf_count_t TotalSize;
148 MemoryInfos myMemory;
156 #endif // SFML_SOUNDFILEDEFAULT_HPP