1 // =========================================================================
2 // @author Leonardo Florez-Valencia (florez-l@javeriana.edu.co)
3 // =========================================================================
4 #ifndef __cpPlugins__Manager__h__
5 #define __cpPlugins__Manager__h__
8 #include <cpPlugins/Library.h>
14 class CPPLUGINS_EXPORT Manager
16 friend std::ostream& operator<<( std::ostream& out, const Manager& m )
25 typedef std::map< std::string, Library > TLibraries;
26 typedef std::map< std::string, std::string > TPlugins;
31 void Print( std::ostream& out ) const;
33 const TPlugins& GetPlugins( ) const;
36 void AddPath( const std::string& p );
37 void AddFile( const std::string& f );
39 std::shared_ptr< ProcessObject > Create( const std::string& name );
42 static bool m_Configured;
43 static TLibraries m_Libraries;
44 static TPlugins m_Plugins;
48 #endif // __cpPlugins__Manager__h__