diff --git a/main/Scene.h b/main/Scene.h index 9922584..f4ce342 100644 --- a/main/Scene.h +++ b/main/Scene.h @@ -46,6 +46,7 @@ class Scene void renderPixel(int x, int y, unsigned char * pixel); Color traceRay(const Ray & ray); std::vector getRayHits(const Ray & ray); + int parse(const char * fileName); /* rendering parameters */ int m_width; diff --git a/parser/parser.yy b/parser/parser.yy index 2ccc5b2..f303456 100644 --- a/parser/parser.yy +++ b/parser/parser.yy @@ -47,8 +47,6 @@ enum Node_Type Node_Options }; -static Scene * g_scene; - #define YYSTYPE refptr %} @@ -289,9 +287,8 @@ vector: LESS number COMMA number COMMA number GREATER { %% -int parse(Scene * scene, const char * fileName) +int Scene::parse(const char * fileName) { - g_scene = scene; yyin = fopen(fileName, "r"); if (yyin == NULL) { @@ -299,6 +296,7 @@ int parse(Scene * scene, const char * fileName) return -1; } yyparse(); + return 0; } Node::Node()