#ifndef GLTEST_WAVSOURCE_H
#define GLTEST_WAVSOURCE_H


#include <sndfile.h>
#include "ISndSource.h"

class WavSource: public ISndSource {
private:
	SNDFILE* _file;
	SF_INFO _info;

public:
	WavSource(std::string path);
	~WavSource();

public:
	int getChannelCount() const override final;
	int getSampleRate() const override final;
	std::size_t getSampleDepth() const override final;
	void readData(unsigned long frameCount, void* output) const override final;
};


#endif //GLTEST_WAVSOURCE_H
