36 bool destruct(
const context& ctx);
43 bool enable(
const context& ctx,
int texture_unit);
49 bool disable(
const context& ctx);
61 void set_color_scale(std::shared_ptr<const device_color_scale> color_scale);
67 void set_color_scales(
const std::vector<std::shared_ptr<const device_color_scale>>& color_scales);
73 return k_max_color_scale_count_;
87 static const size_t k_max_color_scale_count_ = 4;
89 static const size_t k_texture_width_ = 256;
94 cgv::data::time_point get_latest_color_scale_modification_time()
const;
102 bool create_texture(
const context& ctx);
107 std::vector<std::shared_ptr<const device_color_scale>> color_scales_;
109 texture texture_ = {
"uint8[R,G,B,A]" };
111 std::vector<device_color_scale_arguments> uniforms_;
113 uniform_buffer<device_color_scale_arguments> uniform_buffer_;
base class for all drawables, which is independent of the used rendering API.
the texture class encapsulates all functionality independent of the rendering api.