Point Cloud Library (PCL)  1.7.0
/tmp/buildd/pcl-1.7-1.7.0/tracking/include/pcl/tracking/impl/tracker.hpp
00001 #ifndef PCL_TRACKING_IMPL_TRACKER_H_
00002 #define PCL_TRACKING_IMPL_TRACKER_H_
00003 
00004 #include <pcl/common/eigen.h>
00005 #include <ctime>
00006 #include <pcl/tracking/boost.h>
00007 #include <pcl/tracking/tracker.h>
00008 
00009 template <typename PointInT, typename StateT> bool
00010 pcl::tracking::Tracker<PointInT, StateT>::initCompute ()
00011 {
00012   if (!PCLBase<PointInT>::initCompute ())
00013   {
00014     PCL_ERROR ("[pcl::%s::initCompute] PCLBase::Init failed.\n", getClassName ().c_str ());
00015     return (false);
00016   }
00017 
00018   // If the dataset is empty, just return
00019   if (input_->points.empty ())
00020   {
00021     PCL_ERROR ("[pcl::%s::compute] input_ is empty!\n", getClassName ().c_str ());
00022     // Cleanup
00023     deinitCompute ();
00024     return (false);
00025   }
00026 
00027   return (true);
00028 }
00029 
00030 template <typename PointInT, typename StateT> void
00031 pcl::tracking::Tracker<PointInT, StateT>::compute ()
00032 {
00033   if (!initCompute ())
00034     return;
00035   
00036   computeTracking ();
00037   deinitCompute ();
00038 }
00039 
00040 #endif