]> Creatis software - bbtk.git/commitdiff
no message
authorEduardo Davila <Eduardo.Davila@creatis.insa-lyon.fr>
Sat, 2 Jul 2011 08:00:34 +0000 (08:00 +0000)
committerEduardo Davila <Eduardo.Davila@creatis.insa-lyon.fr>
Sat, 2 Jul 2011 08:00:34 +0000 (08:00 +0000)
kernel/src/bbtkBlackBox.cxx
kernel/src/bbtkInterpreterVirtual.cxx
packages/std/src/bbstdGetVectorElement.h
packages/vtk/src/bbvtkGetVectorElement.h
packages/vtk/src/bbvtkMagnitud.cxx
packages/vtk/src/bbvtkStructuredPointsReader.cxx

index 805dd6f98a14d912a8d95b7a7e04b878d8dd9530..dc496cb8955ec63695b1f4129187d03ed525b2b5 100644 (file)
@@ -2,8 +2,8 @@
   Program:   bbtk
   Module:    $RCSfile: bbtkBlackBox.cxx,v $
   Language:  C++
-  Date:      $Date: 2011/03/03 14:37:57 $
-  Version:   $Revision: 1.52 $
+  Date:      $Date: 2011/07/02 08:00:34 $
+  Version:   $Revision: 1.53 $
 =========================================================================*/
 
 /* ---------------------------------------------------------------------
@@ -349,6 +349,7 @@ namespace bbtk
   //=========================================================================
   bool BlackBox::bbCanReact() const 
   { 
+
     return ( bbGlobalGetSomeBoxExecuting() 
 #ifdef USE_WXWIDGETS
             || Wx::IsSomeWindowAlive() 
@@ -453,8 +454,8 @@ namespace bbtk
          }
        }                                                               
     
-    if ( ( bbBoxProcessModeIsReactive()  ||
-          (c==bbGetInputConnectorMap().find("BoxExecute")->second))
+         
+    if ( ( bbBoxProcessModeIsReactive()  || (c==bbGetInputConnectorMap().find("BoxExecute")->second))
         && (bbCanReact() ) )
       {
        bbtkBlackBoxDebugMessage("change",2,
@@ -476,6 +477,7 @@ namespace bbtk
                             <<reaction<<")"
                             <<"]"<<std::endl);
 
+         
     OutputConnectorMapType::iterator i;
     for ( i  = bbGetOutputConnectorMap().begin(); 
          i != bbGetOutputConnectorMap().end(); ++i) 
@@ -489,15 +491,21 @@ namespace bbtk
        //        {
            i->second->SignalChange(GetThisPointer<BlackBox>(),i->first); 
            //    }
-      } 
+      } // for
 
-    if (reaction) bbGlobalProcessExecutionList();
+    if (reaction) 
+       { 
+               bbGlobalProcessExecutionList();
+       }  
 
     bbtkBlackBoxDebugMessage("change",5,
                             "<= BlackBox::bbSignalOutputModification()"
                             <<std::endl);
   }  
   //=========================================================================   
+       
+       
+       
   //=========================================================================  
   void BlackBox::bbSignalOutputModification(const std::string& output,
                                            bool reaction)
index d49124b09bbb407119b2ce2de452f84890b6c551..aa9e3cca9f05b5f97347e19fcd2af4f585364d4d 100644 (file)
@@ -1282,6 +1282,7 @@ namespace bbtk
     std::string upath;
     pkgname = Utilities::ExtractScriptName(name,upath);
 
+         
     bbtkMessage("interpreter",3,
                "package name:[" << pkgname
                 << "] path:[" << upath << "]" << std::endl);
@@ -1368,7 +1369,7 @@ namespace bbtk
            Filenames.clear();
            //int nbFiles = 
            Utilities::Explore(*i, false, Filenames);
-           
+
            for (std::vector<std::string>::iterator j = Filenames.begin(); 
                 j!= Filenames.end(); ++j)
              {
@@ -1957,6 +1958,7 @@ void InterpreterVirtual::SwitchToStream( std::stringstream* stream )
     tcsetattr(0,TCSANOW,&ter);
 #endif
     
+         
     mCommandLine = true;
     bool again = true;
     // bool insideComment = false; // for multiline comment  
index 53182c517522a9aa2117c9bd18149b8f9c7f4e83..d85ad988e6bd06aaf964d845e0ba2ec4e3e2d1ba 100644 (file)
@@ -2,8 +2,8 @@
   Program:   bbtk
   Module:    $RCSfile: bbstdGetVectorElement.h,v $
   Language:  C++
-  Date:      $Date: 2009/07/23 12:27:36 $
-  Version:   $Revision: 1.6 $
+  Date:      $Date: 2011/07/02 08:00:35 $
+  Version:   $Revision: 1.7 $
 =========================================================================*/
 
 /* ---------------------------------------------------------------------
@@ -45,6 +45,7 @@ namespace bbstd
     BBTK_TEMPLATE_BLACK_BOX_INTERFACE(GetVectorElement,bbtk::AtomicBlackBox,T);
     BBTK_DECLARE_INPUT(In,std::vector<T>);
     BBTK_DECLARE_INPUT(I,int);    
+       BBTK_DECLARE_INPUT(ErrorValue,T);    
     BBTK_DECLARE_OUTPUT(Out,T);
     BBTK_PROCESS(DoIt);
     void DoIt(); 
@@ -61,6 +62,7 @@ namespace bbstd
   typedef std::vector<T> Tvector;
   BBTK_TEMPLATE_INPUT(GetVectorElement, In,"Input",Tvector);
   BBTK_TEMPLATE_INPUT(GetVectorElement, I, "Input",int);  
+  BBTK_TEMPLATE_INPUT(GetVectorElement, ErrorValue, "ErrorValue",T);   
   BBTK_TEMPLATE_OUTPUT(GetVectorElement,Out,"Output",T);
   BBTK_END_DESCRIBE_TEMPLATE_BLACK_BOX(GetVectorElement);
   //=================================================================
@@ -69,8 +71,12 @@ namespace bbstd
   template <class T>
   void GetVectorElement<T>::DoIt()
   {
-   // unsigned int i = bbGetInputI();
-    bbSetOutputOut(bbGetInputIn()[bbGetInputI()]);
+         if (( bbGetInputI() < bbGetInputIn().size() )  &&  ( bbGetInputI() >= 0 ) )
+         {
+                 bbSetOutputOut( bbGetInputIn()[bbGetInputI()] );
+         } else {
+                 bbSetOutputOut( bbGetInputErrorValue() );
+         }             
   }
   //=================================================================
 
index 3bf6996d479a0f2e535107be8b6dd1fa64965496..6993b5cb8fad82ec833f2905618b70a021fb238b 100644 (file)
@@ -2,8 +2,8 @@
   Program:   bbtk
   Module:    $RCSfile: bbvtkGetVectorElement.h,v $
   Language:  C++
-  Date:      $Date: 2010/04/01 15:46:54 $
-  Version:   $Revision: 1.1 $
+  Date:      $Date: 2011/07/02 08:00:36 $
+  Version:   $Revision: 1.2 $
 =========================================================================*/
 
 /* ---------------------------------------------------------------------
@@ -44,7 +44,8 @@ namespace bbvtk
   {  
     BBTK_TEMPLATE_BLACK_BOX_INTERFACE(GetVectorElement,bbtk::AtomicBlackBox,T);
     BBTK_DECLARE_INPUT(In,std::vector<T>);
-    BBTK_DECLARE_INPUT(I,int);    
+    BBTK_DECLARE_INPUT(I,int);
+    BBTK_DECLARE_INPUT(ErrorValue,T);    
     BBTK_DECLARE_OUTPUT(Out,T);
     BBTK_PROCESS(DoIt);
     void DoIt(); 
@@ -61,7 +62,8 @@ namespace bbvtk
   BBTK_DESCRIPTION("Gets the i-th element from the input vector ("+bbtk::TypeName<std::vector<T> >());
   typedef std::vector<T> Tvector;
   BBTK_TEMPLATE_INPUT(GetVectorElement, In,"Input",Tvector);
-  BBTK_TEMPLATE_INPUT(GetVectorElement, I, "Input",int);  
+  BBTK_TEMPLATE_INPUT(GetVectorElement, I, "Input",int);
+  BBTK_TEMPLATE_INPUT(GetVectorElement, ErrorValue, "ErrorValue",T);
   BBTK_TEMPLATE_OUTPUT(GetVectorElement,Out,"Output",T);
   BBTK_END_DESCRIBE_TEMPLATE_BLACK_BOX(GetVectorElement);
   //=================================================================
@@ -70,8 +72,13 @@ namespace bbvtk
   template <class T>
   void GetVectorElement<T>::DoIt()
   {
-   // unsigned int i = bbGetInputI();
-    bbSetOutputOut(bbGetInputIn()[bbGetInputI()]);
+         if (( bbGetInputI() < bbGetInputIn().size() )  &&  ( bbGetInputI() >= 0 ) )
+         {
+                 bbSetOutputOut( bbGetInputIn()[bbGetInputI()] );
+         } else
+         {
+                 bbSetOutputOut( bbGetInputErrorValue() );
+         }             
   }
   //=================================================================
 
index 000320e775f8a59e8007e2fe949414f693ebc45a..cc4a2a288362ea70f9f2a5af3e3c9af8bcc6fa0d 100644 (file)
@@ -26,7 +26,9 @@ void Magnitud::Process()
 //    * TYPE is the C++ type of the input/output
 //      (the one provided in the attribute 'type' of the tag 'input')
 
-// ---------- 
+       
+       // ---------- 
+ if (bbGetInputIn()!=NULL) {
    vGreenToRedLut->SetHueRange(0.6667,0.0);
    vGreenToRedLut->Build();
   
@@ -314,8 +316,13 @@ void Magnitud::Process()
    //temp->GetData( vMultipleContourMapper->GetOutput() );
    //bbSetOutputOutTest( temp );
 
-// ---------- ]  
-}
+        
+ } // if
+        
+} // process
+       
+       
+       
 //===== 
 // 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)
 //===== 
index 9d3d6a06e70805a1e6cc5b5a0e8f61ef12550ab5..1c0b1822df124031386ac5d7629a1fe95c0011ed 100644 (file)
@@ -26,11 +26,15 @@ void StructuredPointsReader::Process()
 //    * TYPE is the C++ type of the input/output
 //      (the one provided in the attribute 'type' of the tag 'input')
 
-       
-       spr -> SetFileName( bbGetInputIn().c_str() );
-       sp = spr->GetOutput();
-       sp -> Update();
-       bbSetOutputOut( sp );
+       if ( bbGetInputIn().c_str()!="")
+       {
+               spr -> SetFileName( bbGetInputIn().c_str() );
+               sp = spr->GetOutput();
+               sp -> Update();
+               bbSetOutputOut( sp );
+       } else {
+               bbSetOutputOut( NULL );
+       }
        
 }
 //===== 
@@ -42,7 +46,8 @@ void StructuredPointsReader::bbUserSetDefaultValues()
 //  SET HERE THE DEFAULT INPUT/OUTPUT VALUES OF YOUR BOX 
 //    Here we initialize the input 'In' to 0
    bbSetInputIn("");
-  
+   bbSetOutputOut( NULL );
+
 }
 //===== 
 // 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)