]> Creatis software - bbtk.git/blobdiff - kernel/src/bbtkBlackBoxOutputDescriptor.h
*** empty log message ***
[bbtk.git] / kernel / src / bbtkBlackBoxOutputDescriptor.h
index eb1164f9f46abe2557c935e1c5acc98d40e2b52c..c4196715c4153718ece6783acfdbd098bbe6fefc 100644 (file)
@@ -3,8 +3,8 @@
   Program:   bbtk
   Module:    $RCSfile: bbtkBlackBoxOutputDescriptor.h,v $
   Language:  C++
-  Date:      $Date: 2008/01/22 15:02:00 $
-  Version:   $Revision: 1.1 $
+  Date:      $Date: 2008/02/06 14:14:22 $
+  Version:   $Revision: 1.2 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See Doc/License.txt or
 namespace bbtk
 {
   
-  
   class BBTK_EXPORT BlackBoxOutputDescriptor
   {
   public:
     /// Ctor with name and description
-    BlackBoxOutputDescriptor( const std::string& name,
+    BlackBoxOutputDescriptor( TypeInfo creator_type_info,
+                             const std::string& name,
                              const std::string& description,
                              bool copy_construct = true)
-      : mName(name), mDescription(description), 
+      : mCreatorTypeInfo(creator_type_info),
+       mName(name), mDescription(description), 
        mCopyConstruct(copy_construct) 
     {}
-    
+
+    /// Returns the TypeInfo of the BlackBoxDescriptor which created this descriptor
+    TypeInfo GetCreatorTypeInfo() { return mCreatorTypeInfo; }
     /// Returns the name of the output
     const std::string& GetName() const { return mName; }
     /// Returns the description of the output
@@ -67,7 +70,11 @@ namespace bbtk
     
   private:
     /// Default ctor is private
-    BlackBoxOutputDescriptor() : mName(""), mDescription("") {}
+    BlackBoxOutputDescriptor() : mCreatorTypeInfo(typeid(void)),
+                                mName(""), mDescription("") {}
+
+    /// The TypeInfo of the BlackBoxDescriptor which created this descriptor
+    TypeInfo mCreatorTypeInfo;
     /// The name of the output
     std::string mName;
     /// The description of the output