#ifndef Player_H
#define Player_H

#ifdef WIN32
#include <io.h>
#include <stdio.h>
#include <windows.h>
#include <windowsx.h>
#include <mmsystem.h>
#include <Array.h>
#include "Sound.h"
#include <Critical.h>

#pragma comment( lib, "winmm.lib" )
#else
#include <Array.h>
#include "Sound.h"
#endif

using namespace Framework;

namespace GSL
{
	class GSLPlayer
	{
	private:
		RCArray< GSLSound > sounds;
		Critical cs;

	public:
		// Konstruktor
		GSLPlayer();
		// Destruktor
		~GSLPlayer();
		// nicht constant
		bool addSound( GSLSound *snd );
		void removeSound( GSLSound *zSnd );
#ifdef WIN32
		void sendSoundMSG( HWAVEOUT hOut, UINT uMsg, DWORD_PTR dwInstance, DWORD_PTR dwParam1, DWORD_PTR dwParam2 );
#endif
	};
}

#endif