Skip to content
Snippets Groups Projects
Commit d9a6d7ec authored by Nicolas Pope's avatar Nicolas Pope
Browse files

Allow frameset buffer adjustment

parent abc89122
No related branches found
No related tags found
1 merge request!316Resolves #343 GUI and Frame Refactor
...@@ -32,6 +32,7 @@ class BaseBuilder : public ftl::data::Generator { ...@@ -32,6 +32,7 @@ class BaseBuilder : public ftl::data::Generator {
void setID(uint32_t id) { id_ = id; } void setID(uint32_t id) { id_ = id; }
void setPool(ftl::data::Pool *p) { pool_ = p; } void setPool(ftl::data::Pool *p) { pool_ = p; }
void setBufferSize(size_t s) { bufferSize_ = s; }
inline ftl::Handle onFrameSet(const ftl::data::FrameSetCallback &cb) override { return cb_.on(cb); } inline ftl::Handle onFrameSet(const ftl::data::FrameSetCallback &cb) override { return cb_.on(cb); }
...@@ -51,6 +52,7 @@ class BaseBuilder : public ftl::data::Generator { ...@@ -51,6 +52,7 @@ class BaseBuilder : public ftl::data::Generator {
ftl::data::Pool *pool_; ftl::data::Pool *pool_;
int id_; int id_;
size_t size_; size_t size_;
size_t bufferSize_ = 1;
ftl::Handler<const ftl::data::FrameSetPtr&> cb_; ftl::Handler<const ftl::data::FrameSetPtr&> cb_;
ftl::data::ChangeType ctype_ = ftl::data::ChangeType::COMPLETED; ftl::data::ChangeType ctype_ = ftl::data::ChangeType::COMPLETED;
}; };
...@@ -139,8 +141,6 @@ class ForeignBuilder : public BaseBuilder { ...@@ -139,8 +141,6 @@ class ForeignBuilder : public BaseBuilder {
LockedFrameSet get(int64_t timestamp) override; LockedFrameSet get(int64_t timestamp) override;
void setBufferSize(size_t n) { bufferSize_ = n; }
private: private:
std::list<std::shared_ptr<ftl::data::FrameSet>> framesets_; // Active framesets std::list<std::shared_ptr<ftl::data::FrameSet>> framesets_; // Active framesets
//std::list<ftl::data::FrameSet*> allocated_; // Keep memory allocations //std::list<ftl::data::FrameSet*> allocated_; // Keep memory allocations
...@@ -153,7 +153,6 @@ class ForeignBuilder : public BaseBuilder { ...@@ -153,7 +153,6 @@ class ForeignBuilder : public BaseBuilder {
std::atomic<int> jobs_; std::atomic<int> jobs_;
volatile bool skip_; volatile bool skip_;
ftl::Handle main_id_; ftl::Handle main_id_;
size_t bufferSize_;
std::string name_; std::string name_;
......
...@@ -37,12 +37,12 @@ Receiver::Receiver(nlohmann::json &config, ftl::data::Pool *p) : ftl::Configurab ...@@ -37,12 +37,12 @@ Receiver::Receiver(nlohmann::json &config, ftl::data::Pool *p) : ftl::Configurab
builder_[i].setBufferSize(bsize); builder_[i].setBufferSize(bsize);
}*/ }*/
/*on("frameset_buffer_size", [this](const ftl::config::Event &e) { on("frameset_buffer_size", [this]() {
size_t bsize = value("frameset_buffer_size", 3); size_t bsize = value("frameset_buffer_size", 3);
for (auto &i : builders_) { for (auto &i : builders_) {
i.second.setBufferSize(bsize); i.second->setBufferSize(bsize);
} }
});*/ });
on("frame_mask", [this]() { on("frame_mask", [this]() {
frame_mask_ = value("frame_mask", 0xFFFFFFFFu); frame_mask_ = value("frame_mask", 0xFFFFFFFFu);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment