X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=kernel%2Fsrc%2FbbtkFactory.h;h=a4f84e73f6f7d0c015484d8e1f05f0c28e7cdc44;hb=76f2826fd6b67d3a15fe72c1b50d5ee1af1960a1;hp=7a5476819d1452d9b2138abadca16b0d866abe40;hpb=a26195c366a89795288009cf7e20f11afa494970;p=bbtk.git diff --git a/kernel/src/bbtkFactory.h b/kernel/src/bbtkFactory.h index 7a54768..a4f84e7 100644 --- a/kernel/src/bbtkFactory.h +++ b/kernel/src/bbtkFactory.h @@ -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); }