#pragma once
#include "pipeline.h"

class renderer_texture;

class texture_pipeline : public pipeline {
public:
    struct param {
        Eigen::Matrix4f projection_matrix;
    };
    bool init() override;
    void destroy() override;

    void set_param(const param& in_param);
    void set_texture(renderer_texture* in_texture) {
        texture = in_texture;
    }
protected:
    renderer_buffer* param_buffer = nullptr;
    renderer_texture* texture = nullptr;
};
