-
Notifications
You must be signed in to change notification settings - Fork 21
Open
Description
Hi,
I am trying to get a constant publish frequency for Fovis using a Kinect Odometer. Fovis is currently using a changing publish frequency, but in our application we somehow need to make the publish frequency a constant (or approximately constant).
Is it a way to do it? I tried to read the code, but it seems the publishing routine is a callback, which is assigned to xxxxx, and I don't quite understand how it works.
Here is my currently understanding:
- In
odometer_base.hpp, the functionprocess()is a routine to process messages and publish them. - In
mono_depth_odometer.cpp, the functionimageCallbak()callsprocess()above; thenimageCallback()is called bydataCb(). - Then,
dataCb()is registered as a callback inmono_depth_odometer.hpp, with the following lines:
if (approx)
{
approximate_sync_.reset(new ApproximateSync(ApproximatePolicy(queue_size_),
image_sub_, depth_sub_, image_info_sub_, depth_info_sub_) );
approximate_sync_->registerCallback(boost::bind(&MonoDepthProcessor::dataCb, this, _1, _2, _3, _4));
}
else
{
exact_sync_.reset(new ExactSync(ExactPolicy(queue_size_),
image_sub_, depth_sub_, image_info_sub_, depth_info_sub_) );
exact_sync_->registerCallback(boost::bind(&MonoDepthProcessor::dataCb, this, _1, _2, _3, _4));
}
Is there a way a way to have a constant publish rate?
Metadata
Metadata
Assignees
Labels
No labels