#pragma once

#include <iostream>

#include <object.hpp>

namespace gb
{
class obj_loader
{
public:
    Object load_object(std::istream& stream);

private:
    enum class state
    {
        ready,
        ignore_once,
        ignore_line,
        object_name,
        vertex,
        vertex_texture,
        vertex_normal,
        face,
        end,
    };

    state m_state = state::ready;
};
}
