#ifndef _SCENE_H
#define _SCENE_H

#include <iostream>
#include <vector>
#include "includes.h"
#include "Layer.h"

namespace PixelKit
{
	class Game;
	class Controls;
	
	class Scene : public Layer
	{
	public:
		/*!
		 * @brief Scene's constructor
		 * @param game A refere
		 *
		 *
		 */
		Scene(Game &game, int xSize, int ySize);
		~Scene() override;
		
		virtual void update(int timeInterval) override;
		virtual void sceneLoop(int timeInterval);
		
		virtual void didEnterStack(){};
		virtual void didGainFocus(){};
		virtual void didResignFocus(){};
		virtual void didLeaveStack(){};
		
	private:
		virtual void draw(SDL_Renderer *renderer);
	};
}

#endif