|
CPN
Computational Process Networks
|
#include <NodeLoader.h>
Collaboration diagram for CPN::NodeLoader:Public Member Functions | |
| NodeLoader () | |
| ~NodeLoader () | |
| void | LoadSharedLib (const std::string &libname) |
| void | LoadSharedLib (const std::vector< std::string > &list) |
| void | LoadNodeList (const std::string &filename) |
| void | LoadNodeList (const std::vector< std::string > &list) |
| void | SearchDirectory (const std::string &dirname) |
| void | SearchDirectory (const std::vector< std::string > &dirnames) |
| NodeFactory * | GetFactory (const std::string &nodename) |
| void | RegisterFactory (shared_ptr< NodeFactory > factory) |
Private Types | |
| typedef std::map< std::string, lt__handle * > | LibMap |
| typedef std::map< std::string, shared_ptr< NodeFactory > > | FactoryMap |
| typedef std::map< std::string, std::string > | NodeLibMap |
Private Member Functions | |
| void | InternalLoadLib (const std::string &lib) |
| void | InternalLoad (const std::string &sym) |
Private Attributes | |
| LibMap | libmap |
| FactoryMap | factorymap |
| NodeLibMap | nodelibmap |
This class encapsulates the necessary data and functions for loading up nodes.
Definition at line 45 of file NodeLoader.h.
|
private |
Definition at line 90 of file NodeLoader.h.
|
private |
Definition at line 88 of file NodeLoader.h.
|
private |
Definition at line 92 of file NodeLoader.h.
| CPN::NodeLoader::NodeLoader | ( | ) |
Definition at line 40 of file NodeLoader.cc.
| CPN::NodeLoader::~NodeLoader | ( | ) |
Definition at line 47 of file NodeLoader.cc.
References factorymap, and libmap.
| NodeFactory * CPN::NodeLoader::GetFactory | ( | const std::string & | nodename | ) |
Get the NodeFactory for the given node type
| nodename | the node type |
Definition at line 99 of file NodeLoader.cc.
References ASSERT, factorymap, and InternalLoad().
Here is the call graph for this function:
|
private |
Definition at line 144 of file NodeLoader.cc.
References CPN_DEFAULT_INIT_SYMBOL_STR, factorymap, InternalLoadLib(), and nodelibmap.
Referenced by GetFactory().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 116 of file NodeLoader.cc.
References libmap.
Referenced by InternalLoad(), and LoadSharedLib().
Here is the caller graph for this function:| void CPN::NodeLoader::LoadNodeList | ( | const std::string & | filename | ) |
Loads up a node list. A node list contains information about what shared libraries need to be loaded to get a given node.
| filename | the name of the nodelist file. |
Definition at line 68 of file NodeLoader.cc.
References Loader(), and nodelibmap.
Referenced by CPN::Kernel::Kernel(), LoadNodeList(), and SearchDirectory().
Here is the call graph for this function:
Here is the caller graph for this function:| void CPN::NodeLoader::LoadNodeList | ( | const std::vector< std::string > & | list | ) |
Definition at line 72 of file NodeLoader.cc.
References LoadNodeList().
Here is the call graph for this function:| void CPN::NodeLoader::LoadSharedLib | ( | const std::string & | libname | ) |
Loads a shared library for node init function searching.
| libname | the shared library file name |
Definition at line 57 of file NodeLoader.cc.
References InternalLoadLib().
Referenced by CPN::Kernel::Kernel(), and LoadSharedLib().
Here is the call graph for this function:
Here is the caller graph for this function:| void CPN::NodeLoader::LoadSharedLib | ( | const std::vector< std::string > & | list | ) |
Definition at line 62 of file NodeLoader.cc.
References LoadSharedLib().
Here is the call graph for this function:| void CPN::NodeLoader::RegisterFactory | ( | shared_ptr< NodeFactory > | factory | ) |
Manually register a node factory with the NodeLoader.
| factory | the factory |
Definition at line 110 of file NodeLoader.cc.
References factorymap.
| void CPN::NodeLoader::SearchDirectory | ( | const std::string & | dirname | ) |
Search a directory for .nodelist files to add to the node lists
| dirname | the directory to search |
Definition at line 78 of file NodeLoader.cc.
References Directory::End(), and LoadNodeList().
Referenced by CPN::Kernel::Kernel(), and SearchDirectory().
Here is the call graph for this function:
Here is the caller graph for this function:| void CPN::NodeLoader::SearchDirectory | ( | const std::vector< std::string > & | dirnames | ) |
Definition at line 93 of file NodeLoader.cc.
References SearchDirectory().
Here is the call graph for this function:
|
private |
Definition at line 91 of file NodeLoader.h.
Referenced by GetFactory(), InternalLoad(), RegisterFactory(), and ~NodeLoader().
|
private |
Definition at line 89 of file NodeLoader.h.
Referenced by InternalLoadLib(), and ~NodeLoader().
|
private |
Definition at line 93 of file NodeLoader.h.
Referenced by InternalLoad(), and LoadNodeList().
1.8.5