#include <uloggerplugin.h>
class Ulogger::CPlugin : public CBase |
Base class for all ULogger plug-ins.
Public Member Enumerations | |
---|---|
enum | TPluginInterface { EOutput, EInput } |
Public Member Functions | |
---|---|
virtual | ~CPlugin() |
pure virtual TAny * | GetInterfaceL(TPluginInterface) |
CPlugin * | NewL(const TDesC8 &) |
ULogger is extensible through a plug-in framework that uses ECom for plug-in discovery. Deriving from this class means that all the ECom-specific logic is already provided for the plug-in implementer, out-of-the-box, leaving the plug-in code to deal with the domain-specific logic that the plug-in is supposed to implement only.
Among the plug-in types that are currently supported are output plug-ins (see class ULogger::MOutputPlugin in uloggeroutputplugin.h) and input plug-ins (see class ULogger::MInputPlugin in uloggerinputplugin.h).
Plug-ins must derive from this class in order to be compatible with ULogger.
TAny * | GetInterfaceL | ( | TPluginInterface | aInterfaceId | ) | [pure virtual] |
Return pointer to requested interface. If plug-in implements multiple interfaces, it should return pointer to proper interface trough this method.
Parameter | Description |
---|---|
aInterfaceId | Number of requested interface. |
Returns: Pointer to requested interface or NULL if requested interface is not supported.
Creates a CPlugin instance of the specified type and returns a pointer to it. The type is specified as the name of the ECom plug-in DLL (without the dll extension).
Parameter | Description |
---|---|
aCue | a descriptor containing the name of the plug-in to be created |
Returns: A pointer to the newly created CPlugin object.