From c2349ee3f40f7316a6006909759577fdc860d48b Mon Sep 17 00:00:00 2001 From: Thomas Harte Date: Sat, 19 Nov 2016 20:12:40 +0800 Subject: [PATCH] This thing has clearly becoma a real class. --- Outputs/CRT/Internals/ArrayBuilder.hpp | 34 ++++++++++++++------------ 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/Outputs/CRT/Internals/ArrayBuilder.hpp b/Outputs/CRT/Internals/ArrayBuilder.hpp index cf1b6c8a1..b9d84b28a 100644 --- a/Outputs/CRT/Internals/ArrayBuilder.hpp +++ b/Outputs/CRT/Internals/ArrayBuilder.hpp @@ -56,25 +56,27 @@ class ArrayBuilder { Submission submit(); private: - struct Buffer { - Buffer(size_t size, std::function submission_function); - ~Buffer(); + class Buffer { + public: + Buffer(size_t size, std::function submission_function); + ~Buffer(); - std::vector data; - size_t allocated_data; - size_t flushed_data; - size_t submitted_data; - bool is_full, was_reset; - GLuint buffer; + uint8_t *get_storage(size_t size); + uint8_t *reget_storage(size_t &size); - uint8_t *get_storage(size_t size); - uint8_t *reget_storage(size_t &size); + void flush(); + size_t submit(bool is_input); + void bind(); + void reset(); - void flush(); - size_t submit(bool is_input); - void bind(); - void reset(); - std::function submission_function_; + private: + bool is_full, was_reset; + GLuint buffer; + std::function submission_function_; + std::vector data; + size_t allocated_data; + size_t flushed_data; + size_t submitted_data; } output_, input_; uint8_t *get_storage(size_t size, Buffer &buffer);