23 #include <xplc/core.h> 27 #define MONIKER_SEPARATOR_CHAR ':' 35 MonikerService::~MonikerService() {
55 char* name = strdup(aName);
56 char* rest = strchr(name, MONIKER_SEPARATOR_CHAR);
66 if(strcmp(name, node->name) == 0) {
67 servmgr = XPLC_getServiceManager();
75 moniker = mutate<IMoniker>(obj);
105 if(strcmp(aName, node->name) == 0)
The basic interface which is included by all other XPLC interfaces and objects.
The XPLC service manager interface.
virtual unsigned int release()=0
Indicate that you are finished using this object.
virtual IObject * resolve(const char *moniker)=0
Given a moniker string, return the IObject it refers to, or NULL if no objects match.
The structure underlying UUIDs.
Various utility functions, macros and templates.
An interface for registering objects so they can be retrieved using a moniker.
#define UUID_MAP_ENTRY(iface)
Add an entry to an interface map.
#define UUID_MAP_BEGIN(component)
Start the interface map for "component".
virtual void registerObject(const char *, const UUID &)
Register an object to be retrieved with a moniker.
An interface for obtaining an IObject given a moniker string.
virtual IObject * resolve(const char *)
Given a moniker string, return the IObject it refers to, or NULL if no objects match.
virtual IObject * getObject(const UUID &)=0
Get the object corresponding to the given UUID.
#define UUID_MAP_END
Marks the end of an interface map.