// Copyright (c) 2023 Dominic Masters
// 
// This software is released under the MIT License.
// https://opensource.org/licenses/MIT

#pragma once
#include "VNSceneParser.hpp"
#include "util/CodeGen.hpp"
#include "util/generator/SceneGenerator.hpp"

namespace Dawn {
  class VNSceneGen : public CodeGen {
    public:
      static void test(
        std::string eventName,
        struct VNSceneEvent *event,
        int32_t *eventIndex,
        std::vector<std::string> *eventInit,
        std::vector<std::string> *eventChain,
        std::vector<std::string> *includes
      );

      static void generate(
        std::vector<std::string> *out,
        struct VNScene *scene,
        std::string tabs
      );
  };
}