Program: bbtk
Module: $RCSfile: bbtkFactory.h,v $
Language: C++
- Date: $Date: 2008/03/03 14:55:55 $
- Version: $Revision: 1.9 $
+ Date: $Date: 2008/03/28 13:42:17 $
+ Version: $Revision: 1.11 $
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 Executer;
+
class BBTK_EXPORT Factory
{
Factory();
~Factory();
-
+
void LoadPackage( const std::string& name );
void UnLoadPackage( const std::string& name );
void PrintPackages(bool details = true, bool adaptors = false) const;
IndexEntryType;
void CreateHtmlIndex(IndexEntryType type, const std::string& filename);
+ /// Sets the executer who created the factory (if any)
+ void SetExecuter(Executer *e) { mExecuter = e; }
+ /// Gets the executer who created the factory (if any)
+ Executer* GetExecuter() { return mExecuter; }
+ /// Gets the executer who created the factory (if any) - const
+ const Executer* GetExecuter() const { return mExecuter; }
+
+
private:
bool DoLoadPackage(std::string libname,
std::string pkgname,
std::string path);
+ public:
/// The structure storing info on a package
class PackageInfoType
{
};
/// The type of map of packages
typedef std::map< std::string, PackageInfoType > PackageMapType;
+
+ const PackageMapType& GetPackageMap() const { return mPackageMap; }
+
+ private:
/// The map of packages
PackageMapType mPackageMap;
+ /// The executer which created the factory (if any)
+ Executer* mExecuter;
+
void CloseAllPackages();
void ClosePackage(PackageMapType::iterator& i);
// class Factory
+
+ /*
/// SYSTEM METHOD : Global method returning the global factory object pointer
inline Factory*& GlobalFactoryPointer()
{
{
GetGlobalFactory()->WriteDotFilePackagesList(ff);
}
-
+ */
}// namespace bbtk