]> Creatis software - clitk.git/blobdiff - segmentation/clitkExtractLungGenericFilter.txx
now dump anatomical info (carina position) into a DB
[clitk.git] / segmentation / clitkExtractLungGenericFilter.txx
index 2bc8af880bc6fe3abc4ab4a017698aed6df55115..e942dcf857bd7423f78eb603b2bd85cfe727747f 100644 (file)
@@ -26,6 +26,7 @@ template<class ArgsInfoType>
 clitk::ExtractLungGenericFilter<ArgsInfoType>::ExtractLungGenericFilter():
   ImageToImageGenericFilter<Self>("ExtractLung") 
 {
+  this->SetFilterBase(NULL);
   // Default values
   cmdline_parser_clitkExtractLung_init(&mArgsInfo);
   InitializeImageType<3>();
@@ -78,6 +79,9 @@ void clitk::ExtractLungGenericFilter<ArgsInfoType>::UpdateWithInputImageType()
   // Create filter
   typedef clitk::ExtractLungFilter<ImageType, MaskImageType> FilterType;
   typename FilterType::Pointer filter = FilterType::New();
+
+  // Set the filter (needed for example for threaded monitoring)
+  this->SetFilterBase(filter);
     
   // Set global Options 
   filter->SetArgsInfo(mArgsInfo);
@@ -87,17 +91,11 @@ void clitk::ExtractLungGenericFilter<ArgsInfoType>::UpdateWithInputImageType()
   // Go !
   filter->Update();
   
-  // Check if error
-  if (filter->HasError()) {
-    SetLastError(filter->GetLastError());
-    // No output
-    return;
-  }
-
   // Write/Save results
   typename OutputImageType::Pointer output = filter->GetOutput();
   this->template SetNextOutput<OutputImageType>(output); 
   this->template SetNextOutput<typename FilterType::MaskImageType>(filter->GetTracheaImage()); 
+  filter->WriteAFDB();
 }
 //--------------------------------------------------------------------