#ifndef PW_VISUAL_MESH_RENDERER_HPP
#define PW_VISUAL_MESH_RENDERER_HPP

#include <pw/core/matrix.hpp>
#include <pw/core/mesh.hpp>

#include <map>

namespace pw {

/**
 * @brief Connects mesh data with the render backend
 */
class vertex_array {
public:
	vertex_array();
	vertex_array(const geometry& m);

	~vertex_array();

	void create(const geometry &m);
	void release();

	void draw();
	bool ready() const;

protected:

	struct impl;
	std::unique_ptr<impl> _impl;

};

}

#endif
