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

Remove group callbacks

parent 49a42173
No related branches found
No related tags found
1 merge request!92Resolves #143 by removing callbacks
Pipeline #12731 passed
......@@ -199,7 +199,8 @@ class Source : public ftl::Configurable {
SHARED_MUTEX &mutex() { return mutex_; }
std::function<void(int64_t, const cv::Mat &, const cv::Mat &)> &callback() { return callback_; }
void setCallback(std::function<void(int64_t, const cv::Mat &, const cv::Mat &)> cb) { callback_ = cb; }
void setCallback(std::function<void(int64_t, const cv::Mat &, const cv::Mat &)> cb);
void removeCallback() { callback_ = nullptr; }
private:
......
......@@ -11,7 +11,9 @@ Group::Group() : framesets_(kFrameBufferSize), head_(0) {
}
Group::~Group() {
for (auto s : sources_) {
s->removeCallback();
}
}
void Group::addSource(ftl::rgbd::Source *src) {
......
......@@ -355,3 +355,8 @@ bool Source::setChannel(ftl::rgbd::channel_t c) {
const ftl::rgbd::Camera Source::parameters(ftl::rgbd::channel_t chan) const {
return (impl_) ? impl_->parameters(chan) : parameters();
}
void Source::setCallback(std::function<void(int64_t, const cv::Mat &, const cv::Mat &)> cb) {
if (bool(callback_)) LOG(ERROR) << "Source already has a callback: " << getURI();
callback_ = cb;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment