diff --git a/components/rgbd-sources/include/ftl/rgbd/group.hpp b/components/rgbd-sources/include/ftl/rgbd/group.hpp index c1a7e4521356bda388242149c215f624a6cfdefd..8f1dd61a64ec9b9a520e35f4158ba881e6b96f0c 100644 --- a/components/rgbd-sources/include/ftl/rgbd/group.hpp +++ b/components/rgbd-sources/include/ftl/rgbd/group.hpp @@ -54,6 +54,14 @@ class Group { */ void addSource(ftl::rgbd::Source *); + /** + * Add another group to this one. All sources in the other group are made + * available to this group in a synchronised way. There is additional + * overhead in supporting this as additional data copies are required + * internally for all the source frames. + */ + void addGroup(ftl::rgbd::Group *); + /** * Provide a function to be called once per frame with a valid frameset * at the specified latency. The function may not be called under certain diff --git a/components/rgbd-sources/src/group.cpp b/components/rgbd-sources/src/group.cpp index 81e667aa4b7fd4e012769a068730edcaf3b0f2bc..8bb15f78b76ddb1948c38e6cc503ca386065df8b 100644 --- a/components/rgbd-sources/src/group.cpp +++ b/components/rgbd-sources/src/group.cpp @@ -100,6 +100,10 @@ void Group::addSource(ftl::rgbd::Source *src) { }); } +void Group::addGroup(Group *grp) { + +} + void Group::_retrieveJob(ftl::rgbd::Source *src) { try { src->retrieve();