Fixed ref counting bug, minor formatting
authorAnatoly Baksheev <no@email>
Fri, 5 Jul 2013 10:13:23 +0000 (14:13 +0400)
committerAnatoly Baksheev <no@email>
Fri, 5 Jul 2013 10:35:12 +0000 (14:35 +0400)
modules/viz/src/precomp.hpp
modules/viz/src/simple_widgets.cpp
modules/viz/src/viz3d_impl.cpp
modules/viz/src/widget.cpp

index ddbef3a..7f3588e 100644 (file)
@@ -1,6 +1,5 @@
 #pragma once
 
-#include <opencv2/core.hpp>
 #include <map>
 #include <ctime>
 #include <list>
 #endif
 
 
+#include <q/viz3d_impl.hpp>
+#include <opencv2/core.hpp>
 #include "opencv2/viz/widget_accessor.hpp"
 #include <opencv2/viz/widgets.hpp>
+#include <opencv2/calib3d.hpp>
index 45e5a97..fa7026c 100644 (file)
@@ -1,5 +1,4 @@
 #include "precomp.hpp"
-#include <opencv2/calib3d.hpp>
 
 ///////////////////////////////////////////////////////////////////////////////////////////////
 /// line widget implementation
@@ -135,15 +134,13 @@ temp_viz::ArrowWidget::ArrowWidget(const Point3f& pt1, const Point3f& pt2, const
     }    
 
     // Apply the transforms
-    vtkSmartPointer<vtkTransform> transform = 
-    vtkSmartPointer<vtkTransform>::New();
+    vtkSmartPointer<vtkTransform> transform = vtkSmartPointer<vtkTransform>::New();
     transform->Translate(startPoint);
     transform->Concatenate(matrix);
     transform->Scale(length, length, length);
 
     // Transform the polydata
-    vtkSmartPointer<vtkTransformPolyDataFilter> transformPD = 
-    vtkSmartPointer<vtkTransformPolyDataFilter>::New();
+    vtkSmartPointer<vtkTransformPolyDataFilter> transformPD = vtkSmartPointer<vtkTransformPolyDataFilter>::New();
     transformPD->SetTransform(transform);
     transformPD->SetInputConnection(arrowSource->GetOutputPort());
     
index ae2e062..4d51964 100644 (file)
@@ -1,5 +1,4 @@
 #include "precomp.hpp"
-#include <q/viz3d_impl.hpp>
 
 namespace temp_viz
 {
@@ -865,12 +864,10 @@ bool temp_viz::Viz3d::VizImpl::addPolygon (const cv::Mat& cloud, const Color& co
     return (true);
 }
 
-#include "opencv2/viz/widget_accessor.hpp"
-
 void temp_viz::Viz3d::VizImpl::showWidget(const String &id, const Widget &widget)
 {
     WidgetActorMap::iterator wam_itr = widget_actor_map_->find(id);
-    bool exists = !(wam_itr == widget_actor_map_->end());
+    bool exists = wam_itr != widget_actor_map_->end();
     if (exists)
     {
         // Remove it if it exists and add it again
@@ -883,14 +880,11 @@ void temp_viz::Viz3d::VizImpl::showWidget(const String &id, const Widget &widget
 bool temp_viz::Viz3d::VizImpl::removeWidget(const String &id)
 {
     WidgetActorMap::iterator wam_itr = widget_actor_map_->find(id);
-    bool exists = !(wam_itr == widget_actor_map_->end());
+    bool exists = wam_itr != widget_actor_map_->end();
     
     if (!exists)
-    {
-        std::cout << "[removeWidget] A widget with id <" << id << "> does not exist!" << std::endl;
-        return false;
-    }
-    
+        return std::cout << "[removeWidget] A widget with id <" << id << "> does not exist!" << std::endl, false;
+
     if (!removeActorFromRenderer (wam_itr->second.actor))
         return false;
     
index 0657c54..d35b10d 100644 (file)
@@ -136,6 +136,7 @@ void temp_viz::Widget::release()
     if (impl_ && CV_XADD(&impl_->ref_counter, -1) == 1)
     {
         delete impl_;
+        impl_ = 0;
     }
 }