]> Creatis software - clitk.git/blobdiff - segmentation/clitkExtractLymphStationsGenericFilter.txx
New way to extract support
[clitk.git] / segmentation / clitkExtractLymphStationsGenericFilter.txx
index bc5c9366c1d57adefbb65dd5dfa4168402a01cc2..a27b4a629e41e2893b95513646ef599f5a790485 100644 (file)
@@ -68,8 +68,15 @@ SetOptionsFromArgsInfoToFilter(FilterType * f)
   f->SetWriteStepFlag(mArgsInfo.writeStep_flag);
   f->SetVerboseMemoryFlag(mArgsInfo.verboseMemory_flag);
   f->SetAFDBFilename(mArgsInfo.afdb_arg);  
-  f->SetDistanceMaxToAnteriorPartOfTheSpine(mArgsInfo.maxAntSpine_arg);
-  f->SetFuzzyThresholdForS8(mArgsInfo.fuzzyThresholdForS8_arg);
+  if (mArgsInfo.afdb_path_given) f->SetAFDBPath(mArgsInfo.afdb_path_arg);  
+  f->SetForceSupportsFlag(mArgsInfo.force_support_flag);
+  f->SetSupportLimitsFilename(mArgsInfo.support_limits_arg);
+  f->SetCheckSupportFlag(mArgsInfo.check_support_limits_flag);
+
+  // Station 8
+  //f->SetDistanceMaxToAnteriorPartOfTheSpine(mArgsInfo.S8_maxAntSpine_arg);
+  f->SetFuzzyThreshold("8", "Esophagus", mArgsInfo.S8_ft_Esophagus_arg);
+  //  f->SetInjectedThresholdForS8(mArgsInfo.tS8_injectedThreshold_arg);
 
   // Check multiple options for radius dilatation
   /*
@@ -80,30 +87,52 @@ SetOptionsFromArgsInfoToFilter(FilterType * f)
    */
   typename FilterType::MaskImagePointType p;
   p[0] = 7; p[1] = 5; p[2] = 0; // default value
-  if (mArgsInfo.esophagusDilatationForAnt_given == 3) {
+  if (mArgsInfo.S8_esophagusDilatationForAnt_given == 3) {
     for(uint i=0; i<3; i++)
-      p[i] = mArgsInfo.esophagusDilatationForAnt_arg[i];
+      p[i] = mArgsInfo.S8_esophagusDilatationForAnt_arg[i];
   }
   else {
-    if (mArgsInfo.esophagusDilatationForAnt_given == 1) {
+    if (mArgsInfo.S8_esophagusDilatationForAnt_given == 1) {
       for(uint i=0; i<3; i++)
-        p[i] = mArgsInfo.esophagusDilatationForAnt_arg[0];
+        p[i] = mArgsInfo.S8_esophagusDilatationForAnt_arg[0];
     }
   }
   f->SetEsophagusDiltationForAnt(p);
   
   p[0] = 5; p[1] = 10; p[2] = 1; // default value
-  if (mArgsInfo.esophagusDilatationForRight_given == 3) {
+  if (mArgsInfo.S8_esophagusDilatationForRight_given == 3) {
     for(uint i=0; i<3; i++)
-      p[i] = mArgsInfo.esophagusDilatationForRight_arg[i];
+      p[i] = mArgsInfo.S8_esophagusDilatationForRight_arg[i];
   }
   else {
-    if (mArgsInfo.esophagusDilatationForRight_given == 1) {
+    if (mArgsInfo.S8_esophagusDilatationForRight_given == 1) {
       for(uint i=0; i<3; i++)
-        p[i] = mArgsInfo.esophagusDilatationForRight_arg[0];
+        p[i] = mArgsInfo.S8_esophagusDilatationForRight_arg[0];
     }
   }
   f->SetEsophagusDiltationForRight(p);  
+  
+  for(uint i=0; i<mArgsInfo.station_given; i++)
+    f->AddComputeStation(mArgsInfo.station_arg[i]);
+
+  // Station 3A
+  
+  // Station 7
+  f->SetFuzzyThreshold("7", "Bronchi", mArgsInfo.S7_ft_Bronchi_arg);
+  f->SetFuzzyThreshold("7", "LeftSuperiorPulmonaryVein", mArgsInfo.S7_ft_LeftSuperiorPulmonaryVein_arg);
+  f->SetFuzzyThreshold("7", "RightSuperiorPulmonaryVein", mArgsInfo.S7_ft_RightSuperiorPulmonaryVein_arg);
+  f->SetFuzzyThreshold("7", "RightPulmonaryArtery", mArgsInfo.S7_ft_RightPulmonaryArtery_arg);
+  f->SetFuzzyThreshold("7", "LeftPulmonaryArtery", mArgsInfo.S7_ft_LeftPulmonaryArtery_arg);
+  f->SetFuzzyThreshold("7", "SVC", mArgsInfo.S7_ft_SVC_arg);
+  f->SetS7_UseMostInferiorPartOnlyFlag(mArgsInfo.S7_UseMostInferiorPartOnly_flag);
+
+  // Station 2RL
+
+  // Station 1RL
+
+  // Set RelativePositionList filenames
+  for(uint i=0; i<mArgsInfo.relpos_given; i++) 
+    f->AddRelativePositionListFilename(mArgsInfo.relpos_arg[i]);
 }
 //--------------------------------------------------------------------