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

Debug output for vision freeze

parent 19fc1aab
No related branches found
No related tags found
No related merge requests found
Pipeline #11352 passed
...@@ -191,6 +191,8 @@ void Streamer::_schedule() { ...@@ -191,6 +191,8 @@ void Streamer::_schedule() {
// Prevent new clients during processing. // Prevent new clients during processing.
shared_lock<shared_mutex> slk(mutex_); shared_lock<shared_mutex> slk(mutex_);
LOG(INFO) << "SCHEDULE FRAME";
for (auto s : sources_) { for (auto s : sources_) {
string uri = s.first; string uri = s.first;
...@@ -231,7 +233,9 @@ void Streamer::_schedule() { ...@@ -231,7 +233,9 @@ void Streamer::_schedule() {
LOG(INFO) << "GRAB Elapsed: " << elapsed.count();*/ LOG(INFO) << "GRAB Elapsed: " << elapsed.count();*/
// CHECK (Nick) Can state be an atomic instead? // CHECK (Nick) Can state be an atomic instead?
LOG(INFO) << "Wait to finish grab";
unique_lock<shared_mutex> lk(src->mutex); unique_lock<shared_mutex> lk(src->mutex);
LOG(INFO) << "Grab finished";
src->state |= ftl::rgbd::detail::kGrabbed; src->state |= ftl::rgbd::detail::kGrabbed;
_swap(*src); _swap(*src);
lk.unlock(); lk.unlock();
...@@ -290,8 +294,9 @@ void Streamer::_schedule() { ...@@ -290,8 +294,9 @@ void Streamer::_schedule() {
LOG(INFO) << "Stream Elapsed: " << elapsed.count();*/ LOG(INFO) << "Stream Elapsed: " << elapsed.count();*/
// CHECK (Nick) Could state be an atomic? // CHECK (Nick) Could state be an atomic?
LOG(INFO) << "Wait Tx frame";
unique_lock<shared_mutex> lk(src->mutex); unique_lock<shared_mutex> lk(src->mutex);
DLOG(2) << "Tx Frame: " << uri; LOG(INFO) << "Tx Frame: " << uri;
src->state |= ftl::rgbd::detail::kTransmitted; src->state |= ftl::rgbd::detail::kTransmitted;
_swap(*src); _swap(*src);
lk.unlock(); lk.unlock();
...@@ -305,8 +310,10 @@ void Streamer::_schedule() { ...@@ -305,8 +310,10 @@ void Streamer::_schedule() {
} }
// Wait for all jobs to complete before finishing frame // Wait for all jobs to complete before finishing frame
LOG(INFO) << "WAIT FRAME";
unique_lock<mutex> lk(job_mtx); unique_lock<mutex> lk(job_mtx);
job_cv.wait(lk, [&jobs]{ return jobs == 0; }); job_cv.wait(lk, [&jobs]{ return jobs == 0; });
LOG(INFO) << "END FRAME";
} }
Source *Streamer::get(const std::string &uri) { Source *Streamer::get(const std::string &uri) {
......
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