#ifndef SND_H
#define SND_H

#include <windows.h>
#include "win\al.h"
#include "win\alc.h"
#include "win\alut.h"
#include <fstream>
#include <string>
#include <map>
#include <sstream>

class Snd  
{
public:
	void Play();
	void Move(float X, float Y, float Z);
	void Stop();

	Snd(const std::string &Filename, bool Looped = false);
	~Snd();

private:
	ALuint	mSourceID;
	ALfloat mVel[3];
	ALfloat mPos[3];
	bool	mLooped;
	bool Open(const std::string &Filename, bool Looped);
	void Close();
	bool LoadWavFile (const std::string &Filename);
};

extern bool			InitializeOpenAL();
extern void			DestroyOpenAL();

#endif 
