]> Creatis software - bbtk.git/blobdiff - kernel/src/bbtkFactory.h
Add unfinished version of bbtkTranscriptor
[bbtk.git] / kernel / src / bbtkFactory.h
index 7a5476819d1452d9b2138abadca16b0d866abe40..a4f84e73f6f7d0c015484d8e1f05f0c28e7cdc44 100644 (file)
@@ -3,8 +3,8 @@
   Program:   bbtk
   Module:    $RCSfile: bbtkFactory.h,v $
   Language:  C++
-  Date:      $Date: 2008/01/22 15:02:00 $
-  Version:   $Revision: 1.1 $
+  Date:      $Date: 2008/02/14 11:38:58 $
+  Version:   $Revision: 1.6 $
                                                                                 
   Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
   l'Image). All rights reserved. See doc/license.txt or
@@ -35,9 +35,6 @@
 
 namespace bbtk
 {
-
-
-
   class BBTK_EXPORT Factory
   {
 
@@ -52,7 +49,8 @@ namespace bbtk
     void UnLoadPackage( const std::string& name );
     void PrintPackages(bool details = true, bool adaptors = false) const;
     void HelpPackage(const std::string& name, bool adaptors = false) const;
-    void HelpBlackBox(const std::string& name, bool full=true) const;
+    void HelpBlackBox(const std::string& name, std::string& package,
+                     bool full=true ) const;
     void ShowGraphTypes(const std::string& name) const;
     void InsertPackage( Package* );
     void RemovePackage( Package* );
@@ -71,26 +69,27 @@ namespace bbtk
                               const std::string& output,
                               BlackBox* to,
                               const std::string& input) const;
-    
+
     void WriteDotFilePackagesList(FILE *ff);
 
     void Reset();
     
-    // usefull in many places.
-    // -> should be factorized : bbtk::Util class?    
-    bool FileExists(std::string strFilename);
+    typedef enum
+      {
+       Packages,
+       Categories,
+       Initials
+      }
+      IndexEntryType;
+    void CreateHtmlIndex(IndexEntryType type, const std::string& filename);
+
   private:
-    /// the methods for LoadPackage
-    std::string ExtractPackageName(const std::string &name, 
-                                  std::string& path);
-    std::string ExpandLibName(const std::string &name, bool v);  
-    std::string MakeLibnameFromPath(std::string path, std::string pkgname);
+
     bool DoLoadPackage(std::string libname,
                       std::string pkgname,
                       std::string path,
                       bool v);
-    bool IsAtRoot(std::string cwd);     
-    private:
+
     /// The structure storing info on a package
     class PackageInfoType
     {
@@ -165,7 +164,15 @@ namespace bbtk
   
   inline void HelpBlackBox(const std::string& name, bool full=true) 
   {
-    GetGlobalFactory()->HelpBlackBox(name,full);
+    std::string package; 
+    GetGlobalFactory()->HelpBlackBox(name, package, full);
+  }
+
+  inline void HelpBlackBox(const std::string& name, std::string& package,
+                          bool full=true
+                          )
+  {
+    GetGlobalFactory()->HelpBlackBox(name, package, full);
   }