]> Creatis software - bbtk.git/blobdiff - packages/std/src/bbstdVectorFilterString.cxx
#3492 SaveLstPoints
[bbtk.git] / packages / std / src / bbstdVectorFilterString.cxx
index a08d7215e2eee5e5208ef0114a850121f3adb78f..d7ceec8a7f1c233e9fe73e96568bc32ca28b979d 100644 (file)
@@ -78,7 +78,6 @@ void VectorFilterString::FilterByFindinIn0()
 
 void VectorFilterString::InsertStringPos()
 {
-    printf("VectorFilterString::InsertStringPos Start\n" );
     std::vector<std::string> vOut0;
     std::vector<std::string> vOut1;
     std::vector<std::string> vOut2;
@@ -89,17 +88,12 @@ void VectorFilterString::InsertStringPos()
     std::vector<std::string> vOut7;
     std::vector<std::string> vOut8;
     std::vector<std::string> vOut9;
-
     int i,size      = bbGetInputIn0().size();
     std::string sk1 = bbGetInputsk1();
-    printf("VectorFilterString::InsertStringPos sk1=%s  sk2=%s \n", bbGetInputsk1().c_str() , bbGetInputsk2().c_str() );
     int pos         = atoi( bbGetInputsk2().c_str() );
-    
-    printf("VectorFilterString::InsertStringPos pos=%d  sk1=%s \n", pos, sk1.c_str() );
     for (i=0; i<size; i++)
     {
         vOut0.push_back( bbGetInputIn0()[i].insert(pos,sk1) );
-        printf("VectorFilterString::InsertStringPos i=%s   \n", vOut0[i].c_str() );
         if ( i < bbGetInputIn1().size() ) { vOut1.push_back( bbGetInputIn1()[i].insert(pos,sk1) ); }
         if ( i < bbGetInputIn2().size() ) { vOut2.push_back( bbGetInputIn2()[i].insert(pos,sk1) ); }
         if ( i < bbGetInputIn3().size() ) { vOut3.push_back( bbGetInputIn3()[i].insert(pos,sk1) ); }
@@ -110,7 +104,6 @@ void VectorFilterString::InsertStringPos()
         if ( i < bbGetInputIn8().size() ) { vOut8.push_back( bbGetInputIn8()[i].insert(pos,sk1) ); }
         if ( i < bbGetInputIn9().size() ) { vOut9.push_back( bbGetInputIn9()[i].insert(pos,sk1) ); }
     } // for i
-    
     bbSetOutputOut0( vOut0 );
     bbSetOutputOut1( vOut1 );
     bbSetOutputOut2( vOut2 );
@@ -121,7 +114,46 @@ void VectorFilterString::InsertStringPos()
     bbSetOutputOut7( vOut7 );
     bbSetOutputOut8( vOut8 );
     bbSetOutputOut9( vOut9 );
-printf("VectorFilterString::InsertStringPos End\n" );
+}
+
+void VectorFilterString::InvertLists()
+{
+    std::vector<std::string> vOut0;
+    std::vector<std::string> vOut1;
+    std::vector<std::string> vOut2;
+    std::vector<std::string> vOut3;
+    std::vector<std::string> vOut4;
+    std::vector<std::string> vOut5;
+    std::vector<std::string> vOut6;
+    std::vector<std::string> vOut7;
+    std::vector<std::string> vOut8;
+    std::vector<std::string> vOut9;
+    int i,size      = bbGetInputIn0().size();
+//    std::string sk1 = bbGetInputsk1();
+//    int pos         = atoi( bbGetInputsk2().c_str() );
+    for (i=size-1; i>=0; i--)
+    {
+            if ( i < bbGetInputIn0().size() ) { vOut0.push_back( bbGetInputIn0()[i] );  }
+            if ( i < bbGetInputIn1().size() ) { vOut1.push_back( bbGetInputIn1()[i] );  }
+            if ( i < bbGetInputIn2().size() ) { vOut2.push_back( bbGetInputIn2()[i] );  }
+            if ( i < bbGetInputIn3().size() ) { vOut3.push_back( bbGetInputIn3()[i] );  }
+            if ( i < bbGetInputIn4().size() ) { vOut4.push_back( bbGetInputIn4()[i] );  }
+            if ( i < bbGetInputIn5().size() ) { vOut5.push_back( bbGetInputIn5()[i] );  }
+            if ( i < bbGetInputIn6().size() ) { vOut6.push_back( bbGetInputIn6()[i] );  }
+            if ( i < bbGetInputIn7().size() ) { vOut7.push_back( bbGetInputIn7()[i] );  }
+            if ( i < bbGetInputIn8().size() ) { vOut8.push_back( bbGetInputIn8()[i] );  }
+            if ( i < bbGetInputIn9().size() ) { vOut9.push_back( bbGetInputIn9()[i] );  }
+    } // for i
+    bbSetOutputOut0( vOut0 );
+    bbSetOutputOut1( vOut1 );
+    bbSetOutputOut2( vOut2 );
+    bbSetOutputOut3( vOut3 );
+    bbSetOutputOut4( vOut4 );
+    bbSetOutputOut5( vOut5 );
+    bbSetOutputOut6( vOut6 );
+    bbSetOutputOut7( vOut7 );
+    bbSetOutputOut8( vOut8 );
+    bbSetOutputOut9( vOut9 );
 }
 
 
@@ -187,6 +219,13 @@ void VectorFilterString::Process()
     {
         InsertStringPos();
     }
+    
+    if (bbGetInputType()==4)
+    {
+        InvertLists();
+    }
+
+    
 }
 //===== 
 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)