]> Creatis software - bbtk.git/blobdiff - kernel/src/bbtkBlackBoxInputDescriptor.h
Factory debuging
[bbtk.git] / kernel / src / bbtkBlackBoxInputDescriptor.h
index 0462c0ccc9519749a2e45861e09fbe57b17d29ee..19c578f91514093d6635413b51b590e5f2f8a844 100644 (file)
@@ -3,8 +3,8 @@
   Program:   bbtk
   Module:    $RCSfile: bbtkBlackBoxInputDescriptor.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
@@ -34,8 +34,6 @@
 
 namespace bbtk
 {
-  
-  
   class BBTK_EXPORT BlackBoxInputDescriptor
   {
   public:
@@ -46,14 +44,18 @@ namespace bbtk
     
     
     /// Ctor with name and description
-    BlackBoxInputDescriptor( const std::string& name,
-                            const std::string& description,
-                            OptionType option = MANDATORY,
-                            bool copy_construct = true)
-      : mName(name), mDescription(description), 
+    BlackBoxInputDescriptor(TypeInfo creator_type_info,
+                           const std::string& name,
+                           const std::string& description,
+                           OptionType option = MANDATORY,
+                           bool copy_construct = true)
+      : mCreatorTypeInfo(creator_type_info),
+       mName(name), mDescription(description), 
        mOption(option), mCopyConstruct(copy_construct) 
     {}
     
+    /// Returns the TypeInfo of the BlackBoxDescriptor which created this descriptor
+    TypeInfo GetCreatorTypeInfo() { return mCreatorTypeInfo; }
     /// Returns the name of the input
     const std::string& GetName() const { return mName; }
     /// Returns the description of the input
@@ -74,8 +76,12 @@ namespace bbtk
     
   private:
     /// Default ctor is private
-    BlackBoxInputDescriptor() : mName(""), mDescription(""), 
+    BlackBoxInputDescriptor() : mCreatorTypeInfo(typeid(void)),
+                               mName(""), mDescription(""), 
                                mOption(OPTIONAL) {}
+
+    /// The TypeInfo of the BlackBoxDescriptor which created this descriptor
+    TypeInfo mCreatorTypeInfo;
     /// The name of the input
     std::string mName;
     /// The description of the input