Ulogger::RULogger Class Reference

#include <uloggerclient.h>

Link against: uloggerclient.lib

class Ulogger::RULogger : public RSessionBase

Inherits from

  • Ulogger::RULogger
    Public Member Functions
    RULogger()
    ~RULogger()
    IMPORT_C TIntActivateInputPlugin(const TDesC8 &)
    IMPORT_C TIntActivateOutputPlugin(const TDesC8 &)
    IMPORT_C TIntConnect()
    IMPORT_C TIntDeActivateInputPlugin()
    IMPORT_C TIntGetActiveInputPlugin(TDes8 &)
    IMPORT_C TIntGetActiveOutputPlugin(TDes8 &)
    IMPORT_C TIntGetBufferMode(TInt &)
    IMPORT_C TIntGetBufferSize(TInt &)
    IMPORT_C TIntGetInstalledInputPlugins(CArrayPtrFlat< HBufC8 > &)
    IMPORT_C TIntGetInstalledOutputPlugins(CArrayPtrFlat< HBufC8 > &)
    IMPORT_C TIntGetNotificationSize(TInt &)
    IMPORT_C TIntGetPluginConfigurations(const TDesC8 &, RPointerArray< TPluginConfiguration > &)
    IMPORT_C TIntGetPrimaryFiltersEnabled(CArrayFixFlat< TUint8 > &)
    IMPORT_C TIntGetSecondaryFilteringEnabled(TBool &)
    IMPORT_C TIntGetSecondaryFiltersEnabled(RArray< TUint32 > &)
    IMPORT_C TIntRemovePluginConfigurations(const TDesC8 &)
    IMPORT_C TIntRestart()
    IMPORT_C TIntRunAsService(TBool)
    IMPORT_C TIntSetBufferMode(TInt)
    IMPORT_C TIntSetBufferSize(TInt)
    IMPORT_C TIntSetNotificationSize(TInt)
    IMPORT_C TIntSetPluginConfigurations(const TDesC8 &, const TPluginConfiguration &)
    IMPORT_C TIntSetPrimaryFiltersEnabled(const CArrayFixFlat< TUint8 > &, TBool)
    IMPORT_C TIntSetSecondaryFilteringEnabled(TBool)
    IMPORT_C TIntSetSecondaryFiltersEnabled(const RArray< TUint32 > &, TBool)
    IMPORT_C TIntStart()
    IMPORT_C TIntStop()
    IMPORT_C TVersionVersion()
    Inherited Attributes
    RHandleBase::iHandle
    Inherited Enumerations
    RHandleBase:TAttributes
    RSessionBase:TAttachMode
    Inherited Functions
    RHandleBase::Attributes()const
    RHandleBase::BTraceId()const
    RHandleBase::Close()
    RHandleBase::DoExtendedClose()
    RHandleBase::Duplicate(const RThread &,TOwnerType)
    RHandleBase::FullName()const
    RHandleBase::FullName(TDes &)const
    RHandleBase::Handle()const
    RHandleBase::HandleInfo(THandleInfo *)
    RHandleBase::Name()const
    RHandleBase::NotifyDestruction(TRequestStatus &)
    RHandleBase::Open(const TFindHandleBase &,TOwnerType)
    RHandleBase::OpenByName(const TDesC &,TOwnerType,TInt)
    RHandleBase::RHandleBase()
    RHandleBase::RHandleBase(TInt)
    RHandleBase::SetHandle(TInt)
    RHandleBase::SetHandleNC(TInt)
    RSessionBase::CreateSession(RServer2,const TVersion &)
    RSessionBase::CreateSession(RServer2,const TVersion &,TInt)
    RSessionBase::CreateSession(RServer2,const TVersion &,TInt,TIpcSessionType,const TSecurityPolicy *,TRequestStatus *)
    RSessionBase::CreateSession(const TDesC &,const TVersion &)
    RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt)
    RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt,TIpcSessionType,const TSecurityPolicy *,TRequestStatus *)
    RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt,TRequestStatus *)
    RSessionBase::Open(RMessagePtr2,TInt,TOwnerType)
    RSessionBase::Open(RMessagePtr2,TInt,const TSecurityPolicy &,TOwnerType)
    RSessionBase::Open(TInt,TOwnerType)
    RSessionBase::Open(TInt,const TSecurityPolicy &,TOwnerType)
    RSessionBase::Send(TInt)const
    RSessionBase::Send(TInt,const TIpcArgs &)const
    RSessionBase::SendReceive(TInt)const
    RSessionBase::SendReceive(TInt,TRequestStatus &)const
    RSessionBase::SendReceive(TInt,const TIpcArgs &)const
    RSessionBase::SendReceive(TInt,const TIpcArgs &,TRequestStatus &)const
    RSessionBase::SetReturnedHandle(TInt)
    RSessionBase::SetReturnedHandle(TInt,RHandleBase &)
    RSessionBase::SetReturnedHandle(TInt,const TSecurityPolicy &)
    RSessionBase::ShareAuto()
    RSessionBase::ShareProtected()

    Detailed Description

    Client-side session to the ULogger server. This class should be used to configure ULogger server.

    Constructor & Destructor Documentation

    RULogger ( )

    IMPORT_CRULogger()

    ~RULogger ( )

    IMPORT_C~RULogger()

    Member Function Documentation

    ActivateInputPlugin ( const TDesC8 & )

    IMPORT_C TIntActivateInputPlugin(const TDesC8 &aPluginName)

    Sets which input plug-in is to be used for sending messages to ULogger from a remote machine. This is only relevant for the remote control functionality of ULogger, which allows a remote machine to control the operation of ULogger, instead of a client on the device using RULogger. The plug-in that is passed to this method needs to be one of the plug-ins reported by GetInstalledInputPlugins.

    ParameterDescription
    aPluginNameThe name of the input plug-in to be activated.

    Returns: KErrNone, if sending the SetActiveInputPlugin message to the server was successful; KErrAlreadyExists, if aPluginName value was previously set; KErrNotFound, if aPluginName does not match the name of an existing Ulogger input plug-in; KErrNoMemory, if there is insufficient memory available; KErrArgument, if passed descriptor is empty; otherwise one of the other system-wide error codes.

    ActivateOutputPlugin ( const TDesC8 & )

    IMPORT_C TIntActivateOutputPlugin(const TDesC8 &aPluginName)

    Sets which output plug-in is to be used for outputting trace packets. The plug-in that is passed to this method needs to be one of the plug-ins reported by InstalledOutputPlugins();

    ParameterDescription
    aPluginNameThe name of the plug-in to be used, needs to be one of the names returned by InstalledOutputPlugins()

    Returns: KErrNone, if sending the SetActiveOutputPlugin message to the server was successful; KErrAlreadyExists, if aPluginName value was previously set; KErrNotFound, if aPluginName does not match the name of an existing Ulogger output plug-in; KErrNoMemory, if there is insufficient memory available; KErrArgument, if passed descriptor is empty; otherwise one of the other system-wide error codes.

    Connect ( )

    IMPORT_C TIntConnect()

    Connects a client to the ULogger server. If the server isn't already running it will be started. To end the server session, use Close().

    Returns: KErrNone, if successful, otherwise one of the other system-wide error codes returned by RProcess:Create() or RSessionBase::CreateSession().

    DeActivateInputPlugin ( )

    IMPORT_C TIntDeActivateInputPlugin()

    Deactivates the currently active input plug-in.

    Returns: KErrNone, if sending the DeActivateInputPlugin message to the server was successful; KErrNotFound, if no input plug-in has been set; otherwise one of the other system-wide error codes.

    GetActiveInputPlugin ( TDes8 & )

    IMPORT_C TIntGetActiveInputPlugin(TDes8 &aPluginName)

    Gets the active input plug-in.

    ParameterDescription
    aPluginNameThe 8-bit descriptor to be populated with the name of the active plug-in (max length: KMaxPath).

    Returns: KErrNone, if sending the ActiveInputPlugin message to the server was successful; KErrOverflow, if the passed-in descriptor is smaller than the length of the plug-in name; KErrNotFound, if no input plug-in has been set; otherwise one of the other system-wide error codes.

    GetActiveOutputPlugin ( TDes8 & )

    IMPORT_C TIntGetActiveOutputPlugin(TDes8 &aPluginName)

    Gets the active output plug-in.

    ParameterDescription
    aPluginNameThe 8-bit descriptor to be populated with the name of the active output plug-in (max length: KMaxPath).

    Returns: KErrNone, if sending the ActiveOutputPlugin message to the server was successful; KErrOverflow, if the passed-in descriptor is smaller than the length of the plug-in name; KErrNotFound, if no output plug-in has been set; otherwise one of the other system-wide error codes.

    GetBufferMode ( TInt & )

    IMPORT_C TIntGetBufferMode(TInt &aMode)

    Gets the trace buffer mode.

    ParameterDescription
    aModeThe TInt to be populated with the buffer mode: 1 if Straight 0 if Circular

    Returns: KErrNone, if sending the BufferMode message to the server was successful; otherwise one of the other system-wide error codes.

    GetBufferSize ( TInt & )

    IMPORT_C TIntGetBufferSize(TInt &aSize)

    Gets the size of the trace buffer in KB. See SetBufferSize() for an explanation of the trace buffer size.

    ParameterDescription
    aSizeThe TInt to be populated with the trace buffer size in KB.

    Returns: KErrNone, if sending the BufferSize message to the server was successful; otherwise one of the other system-wide error codes.

    GetInstalledInputPlugins ( CArrayPtrFlat< HBufC8 > & )

    IMPORT_C TIntGetInstalledInputPlugins(CArrayPtrFlat< HBufC8 > &aPluginNames)

    Gets all installed input plug-ins.

    ParameterDescription
    aPluginNamesThe array to be populated with the installed input plug-in names.

    Returns: KErrNone, if sending the GetInstalledInputPlugins message to the server was successful; otherwise one of the other system-wide error codes.

    GetInstalledOutputPlugins ( CArrayPtrFlat< HBufC8 > & )

    IMPORT_C TIntGetInstalledOutputPlugins(CArrayPtrFlat< HBufC8 > &aPluginNames)

    Gets all the installed output plug-ins.

    ParameterDescription
    aPluginNamesThe array to be populated with the installed plug-in filename and plug-in names.

    Returns: KErrNone, if sending the InstalledOutputPlugins message to the server was successful; KErrNoMemory, if there is insufficient memory available; otherwise one of the other system-wide error codes.

    GetNotificationSize ( TInt & )

    IMPORT_C TIntGetNotificationSize(TInt &aSize)

    Gets the data notification size. See SetNotificationSize() for an explanation of the data notification size.

    ParameterDescription
    aSizeThe TInt to be populated with the data notification size in KB.

    Returns: KErrNone, if sending the NotificationSize message to the server was successful; otherwise one of the other system-wide error codes.

    GetPluginConfigurations ( const TDesC8 &, RPointerArray< TPluginConfiguration > & )

    IMPORT_C TIntGetPluginConfigurations(const TDesC8 &aPluginName,
    RPointerArray< TPluginConfiguration > &aConfigurations
    )

    Gets all configurationas for the specified plug-in (output or input).

    ParameterDescription
    aPluginNameThe name of the plug-in. This is mapped to the plug-in file name, it can be retrieved by calling GetInstalledOutputPlugins and GetInstalledInputPlugins
    aConfigurationsThe array that is to be populated with plug-in configuration items. Ownership of any objects appended to this array is passed to the caller.

    Returns: KErrNone, if sending the PluginConfigurations message to the server was successful; KErrNotFound, if aPluginName does not match the name of an existing ULogger plug-in (output or input); KErrArgument, if aPluginName is an empty descriptor; otherwise one of the other system-wide error codes.

    GetPrimaryFiltersEnabled ( CArrayFixFlat< TUint8 > & )

    IMPORT_C TIntGetPrimaryFiltersEnabled(CArrayFixFlat< TUint8 > &aFilters)

    Gets all enabled primary filters.

    ParameterDescription
    aFiltersThe array to be populated with enabled filters

    Returns: KErrNone, if sending the PrimaryFiltersEnabled message to the server was successful; KErrCorrupt, if the ULogger configuration file is corrupt; otherwise one of the other system-wide error codes.

    GetSecondaryFilteringEnabled ( TBool & )

    IMPORT_C TIntGetSecondaryFilteringEnabled(TBool &aEnabled)

    Gets secondary filtering enabled value.

    ParameterDescription
    aEnabledThe boolean to be populated with the secondary filtering enabled value

    Returns: KErrNone, if sending the SecondaryFilteringEnabled message to the server was successful; otherwise one of the other system-wide error codes.

    GetSecondaryFiltersEnabled ( RArray< TUint32 > & )

    IMPORT_C TIntGetSecondaryFiltersEnabled(RArray< TUint32 > &aFilters)

    Gets all enabled secondary filters.

    ParameterDescription
    aFiltersThe array to be populated with enabled filters

    Returns: KErrNone, if sending the SecondaryFiltersEnabled message to the server was successful; KErrNoMemory, if there is insufficient memory available; KErrCorrupt, if the ULogger configuration file is corrupt; otherwise one of the other system-wide error codes.

    RemovePluginConfigurations ( const TDesC8 & )

    IMPORT_C TIntRemovePluginConfigurations(const TDesC8 &aPluginName)

    Removes all the configurations of the specified plug-in

    ParameterDescription
    aPluginNameThe plug-in name whose settings are to be removed

    Returns: KErrNone, if sending the RemovePluginConfigurations message to the server was successful; KErrNotFound, if aPluginName does not match the name of an existing ULogger plug-in (output or input) or the plug-in had no settings; KErrArgument, if aPluginName is an empty descriptor; otherwise one of the other system-wide error codes.

    Restart ( )

    IMPORT_C TIntRestart()

    Restarts server.

    Returns: KErrNone, if sending the Restart message to the server was successful; KErrCorrupt, if the ULogger configuration file is corrupt; KErrServerTerminated, if the server is no longer present; KErrServerBusy, if there are no message slots available; KErrNoMemory, if there is insufficient memory available; otherwise one of the other system-wide error codes.

    RunAsService ( TBool )

    IMPORT_C TIntRunAsService(TBoolaRunAsService)

    Not yet supported, does nothing and returns KErrNotSupported.

    Starts/stops running ULogger as a service. Running ULogger as a service means that ULogger is always active in the background, which is necessary if the objective is to connect to ULogger from a remote machine, so that ULogger is then listening for remote connections. If ULogger is not running as a service, it is only active when it is handling a client request or it is currenty logging traces (i.e. the Start() function was called).

    ParameterDescription
    aRunAsServiceThe flag to indicate whether the server should run as a service or not

    Returns: KErrNotSupported, as this function is not yet implemented in the server.

    SetBufferMode ( TInt )

    IMPORT_C TIntSetBufferMode(TIntaMode)

    Sets the trace buffer mode.

    ParameterDescription
    aModeThe buffer mode: 1 if Straight 0 if Circular

    Returns: KErrNone, if sending the SetBufferMode message to the server was successful; KErrArgument, if the specified mode is not one of 0 or 1; otherwise one of the other system-wide error codes.

    SetBufferSize ( TInt )

    IMPORT_C TIntSetBufferSize(TIntaSize)

    Sets the size of the trace buffer, specified in KB (default: 1024KB). The trace buffer is the buffer that UTrace uses to hold the trace packets before they are output (using the currently active output plug-in). See also the documentation of SetNotificationSize().

    ParameterDescription
    aSizeThe desired new trace buffer size in KB

    Returns: KErrNone, if sending the SetBufferSize message to the server was successful; KErrArgument, if aSize value is not in range [1-1024]; KErrGeneral, if aSize value is smaller than data notification size; otherwise one of the other system-wide error codes.

    SetNotificationSize ( TInt )

    IMPORT_C TIntSetNotificationSize(TIntaSize)

    Sets the data notification size, specified in KB (default: 512KB). The data notification size is a threshold on the trace buffer usage, above which the trace buffer is flushed, i.e. all the trace packets in the trace buffer are output using the active output plug-in. See also the documentation of SetBufferSize().

    ParameterDescription
    aSizeThe desired new data notification size in KB

    Returns: KErrNone, if sending the SetNotificationSize message to the server was successful; KErrArgument, if aSize value is not in range [0-1024]; KErrGeneral, if aSize value is greater than trace buffer size; otherwise one of the other system-wide error codes.

    SetPluginConfigurations ( const TDesC8 &, const TPluginConfiguration & )

    IMPORT_C TIntSetPluginConfigurations(const TDesC8 &aPluginName,
    const TPluginConfiguration &aConfiguration
    )

    Adds a configuration to a plug-in (output or input). This is specific to the plug-in.

    Example1: aPluginName="uloggerfileplugin", aConfiguration.SetKey("output_path"), aConfiguration.SetValue(_L("c:\\logs\\ulogger\\tracelogs.btl")) Example2: aPluginName="uloggerserialplugin", aConfiguration.SetKey("baudrate") , aConfiguration.SetValue("115200")

    ParameterDescription
    aPluginNameThe plug-in name (without the .dll extension)
    aConfigurationTPluginConfiguration (key-value type configuration)

    Returns: KErrNone, if sending the SetPluginConfigurations message to the server was successful; KErrNotFound, if aPluginName does not match the name of an existing ULogger plug-in (output or input); KErrArgument, if aPluginName is an empty descriptor; otherwise one of the other system-wide error codes.

    SetPrimaryFiltersEnabled ( const CArrayFixFlat< TUint8 > &, TBool )

    IMPORT_C TIntSetPrimaryFiltersEnabled(const CArrayFixFlat< TUint8 > &aFilters,
    TBoolaEnabled
    )

    Enables/disables the specified primary filters. This allows output of trace packets containing primary filter identifiers that match the enabled primary filters. Note: If a trace packet contains a secondary filter identifier, and secondary filtering is enabled, the matching secondary filter must also be enabled to allow this packet to be output.

    ParameterDescription
    aFiltersThe primary filters to enable/disable
    aEnabledThe boolean to specify the action. ETrue to enable and EFalse to disable.

    Returns: KErrNone, if sending the SetPrimaryFiltersEnabled message to the server was successful; KErrArgument, if the specified array of filters contains more than KMaxPrimaryFiltersLimit elements or the array is empty; KErrCorrupt, if the ULogger configuration file is corrupt; otherwise one of the other system-wide error codes.

    SetSecondaryFilteringEnabled ( TBool )

    IMPORT_C TIntSetSecondaryFilteringEnabled(TBoolaEnabled)

    Enables/disables filtering on secondary filters. When secondary filtering is enabled, only those trace packets containing a secondary filter identifier matching an enabled secondary filter are output (see SetSecondaryFiltersEnabled()). Note that trace packets must also contain a primary filter identifier matching an enabled primary filter in order to be output (see SetPrimaryFilterEnabled()).

    ParameterDescription
    aEnabledThe boolean to specify the action. ETrue to enable and EFalse to disable.

    Returns: KErrNone, if sending the SetSecondaryFilteringEnabled message to the server was successful; KErrCorrupt, if the ULogger configuration file is corrupt; otherwise one of the other system-wide error codes.

    SetSecondaryFiltersEnabled ( const RArray< TUint32 > &, TBool )

    IMPORT_C TIntSetSecondaryFiltersEnabled(const RArray< TUint32 > &aFilters,
    TBoolaEnabled
    )

    Enables/disables the specified secondary filters. This allows output of trace packets containing secondary filter identifiers that match the enabled secondary filters. Note1: Secondary filters are only relevant when secondary filtering is enabled (see SetSecondaryFilteringEnabled()). If secondary filtering is disabled, trace packets are logged regardless of any secondary filter identifiers. Note2: Enabling secondary filters will automatically enable secondary filtering. Note3: Primary filtering is always enabled and therefore there is no equivalent method for enabling/disabling primary filtering.

    ParameterDescription
    aFiltersThe secondary filters to enable/disable
    aEnabledThe boolean to specify the action. ETrue to enable and EFalse to disable.

    Returns: KErrNone, if sending the SetSecondaryFiltersEnabled message to the server was successful; KErrArgument, if the specified array of filters contains more than KMaxSecondaryFiltersLimit elements, the array is empty or number of currently set filters plus number of elements in aFilters array is greather than KMaxSecondaryFiltersLimit; KErrCorrupt, if the ULogger configuration file is corrupt; otherwise one of the other system-wide error codes.

    Start ( )

    IMPORT_C TIntStart()

    Starts outputting trace packets. Pre-requisite: This will only output trace packets containing filter identifers that match enabled filters. Use SetPrimaryFiltersEnabled(), SetSecondaryFiltersEnabled() and SetSecondaryFilteringEnabled() to enable the relevant filters.

    Returns: KErrNone, if sending the Start message to the server was successful; KErrCorrupt, if the ULogger configuration file is corrupt; KErrServerTerminated, if the server is no longer present; KErrServerBusy, if there are no message slots available; KErrNoMemory, if there is insufficient memory available; KErrInUse, if server was started previously; otherwise one of the other system-wide error codes.

    Stop ( )

    IMPORT_C TIntStop()

    Stops outputting trace packets.

    Returns: KErrNone, if sending the Stop message to the server was successful; KErrServerTerminated, if the server is no longer present; KErrServerBusy, if there are no message slots available; KErrNoMemory, if there is insufficient memory available; KErrNotReady, if ULogger wasn't started previously.

    Version ( )

    IMPORT_C TVersionVersion()

    Gets the client side version number.

    Returns: The client side version number.