]> Creatis software - bbtk.git/blobdiff - kernel/src/bbtkBlackBoxInputConnector.h
no message
[bbtk.git] / kernel / src / bbtkBlackBoxInputConnector.h
index d8cd58c56ba0d38dd207a3efc124c8e3649b1ada..4d6a91fa62c0baa944a7a6c6bbe6fa004234c4df 100644 (file)
@@ -2,8 +2,8 @@
   Program:   bbtk
   Module:    $RCSfile: bbtkBlackBoxInputConnector.h,v $
   Language:  C++
-  Date:      $Date: 2008/10/17 08:18:12 $
-  Version:   $Revision: 1.4 $
+  Date:      $Date: 2009/06/08 14:50:03 $
+  Version:   $Revision: 1.8 $
 =========================================================================*/
 
 /* ---------------------------------------------------------------------
@@ -42,6 +42,7 @@
 #define __bbtkBlackBoxInputConnector_h__
 
 #include "bbtkConnection.h"
+#include "bbtkPimpl.h"
 #include <vector>
 
 namespace bbtk
@@ -58,29 +59,37 @@ namespace bbtk
     BlackBoxInputConnector(BlackBoxPointer b);
     /// Dtor
     ~BlackBoxInputConnector();    
+
     /// Sets a connection
     void SetConnection(Connection* c);
     /// Unsets the connection 
     /// The parameter is USELESS today but would be useful if we allow multiple connections on inputs
     void UnsetConnection(Connection* c);
-  
-    IOStatus BackwardUpdate();
-
     /// Returns the connection plugged into this input (const)
-    Connection* GetConnection() const { return mConnection; }
+    Connection* GetConnection() const;
     /// Returns true iff a connection is connected to it
-    bool IsConnected() const { return (mConnection != 0); }
-    /// Returns the status of the input (UPTODATE | MODIFIED)
-    const IOStatus& GetStatus() const { return mStatus; }
-    ///
-    BlackBoxPointer GetBlackBox() const { return mBox.lock(); } 
+    bool IsConnected() const;
+    
+
+    // Recursive execution
+    void RecursiveExecute();
+
+
+    /// Returns the status of the input 
+    IOStatus GetStatus() const;
+    /// Sets the status of the input 
+    void SetStatus(IOStatus s);
+    
+    /// Returns the black box which owns the connector
+    BlackBoxPointer GetBlackBox() const;
+
+
+    /// Private implementation
+    BBTK_DECLARE_PIMPL(BlackBoxInputConnector);
   private:
-    /// 
-    BlackBoxWeakPointer mBox;
-    /// The connection plugged into the input
-    Connection* mConnection;
-    /// The status of the input (UPTODATE | MODIFIED)
-    IOStatus mStatus;
+    /// Purposedly not implemented
+    BlackBoxInputConnector(const BlackBoxInputConnector&);
   };
   
 }