#pragma once
#include "../includes.h"
#include "scene_elements.h"

class SceneParser;
class Scene {
	public:
		SceneParser* parser;

		Camera* camera;
		Image* image;
		map<string,Material*>* materials;
		list<Object*>* objects;
		map<string,Light*>* lights;
		list<glLib::Object::object*>* loaded_objects;

		bool valid;
		list<string*>* error_trace;

		DT_COL background_color[3];
	public:
		Scene(const char* path);
		~Scene();

		void print_error(int padding);
};