#pragma once #include namespace charcoal { template class Pipeline { public: void add_batch(BatchType* batch) { m_batches.emplace_back(batch); } virtual void render() = 0; protected: ShaderProgramType m_shader_program; std::vector m_batches; }; }