RSoundPlugIn Class Reference

class RSoundPlugIn : public MWsClientClass

Client interface to the key or pointer click plug-in DLL.

The plug-in DLL implements the CClickMaker class.

CClickMaker

Inherits from

Public Member Functions
RSoundPlugIn()
RSoundPlugIn(RWsSession &)
IMPORT_C voidClose()
IMPORT_C TIntCommandReply(TInt, const TPtrC8 &)
IMPORT_C TIntConstruct(TUid)
IMPORT_C voidDestroy()
IMPORT_C TBoolIsLoaded(TBool &)
IMPORT_C TBoolKeyClickEnabled()
IMPORT_C TIntLoad(const TDesC &)
IMPORT_C TBoolPenClickEnabled()
IMPORT_C voidSetKeyClick(TBool)
IMPORT_C voidSetPenClick(TBool)
IMPORT_C TIntUnload()
Inherited Functions
MWsClientClass::AddToBitmapArray(const TInt)const
MWsClientClass::AsyncRequest(TRequestStatus &,TUint)const
MWsClientClass::CachedWindowSize(TSize &)const
MWsClientClass::DestroyWindowNativeSizeCacheEntry()
MWsClientClass::DestroyWindowSizeCacheEntry()
MWsClientClass::EnableWindowNativeSizeCacheL()
MWsClientClass::MWsClientClass()
MWsClientClass::MWsClientClass(RWsBuffer *)
MWsClientClass::MarkWindowSizeCacheDirty()
MWsClientClass::RefreshWindowSizeCache(const TSize &)const
MWsClientClass::SetWindowNativeSize(const TSize &)const
MWsClientClass::WindowNativeSize(TSize &)const
MWsClientClass::WindowNativeSizeCacheEnabled()const
MWsClientClass::WindowSizeCacheEnabled()const
MWsClientClass::Write(TUint)const
MWsClientClass::Write(const TAny *,TInt,TUint)const
MWsClientClass::Write(const TAny *,TInt,const TAny *,TInt,TUint)const
MWsClientClass::WriteInt(TInt,TUint)const
MWsClientClass::WritePoint(const TPoint &,TUint)const
MWsClientClass::WriteRect(const TRect &,TUint)const
MWsClientClass::WriteReply(TUint,const TIpcArgs *)const
MWsClientClass::WriteReply(const TAny *,TInt,TUint,const TIpcArgs *)const
MWsClientClass::WriteReply(const TAny *,TInt,const TAny *,TInt,TUint,const TIpcArgs *)const
MWsClientClass::WriteReplyByProvidingRemoteReadAccess(const TAny *,TInt,const TReadDescriptorType &,TUint)const
MWsClientClass::WriteReplyInt(TInt,TUint,const TIpcArgs *)const
MWsClientClass::WriteReplyIntP(TInt,const TWriteDescriptorType &,TUint)const
MWsClientClass::WriteReplyP(const TAny *,TInt,const TAny *,TInt,const TWriteDescriptorType &,TUint)const
MWsClientClass::WriteReplyP(const TAny *,TInt,const TWriteDescriptorType &,TUint)const
MWsClientClass::WriteReplyP(const TWriteDescriptorType &,TUint)const
MWsClientClass::WriteSize(const TSize &,TUint)const
MWsClientClass::WsHandle()const
Public Member Enumerations
enumanonymous { ESoundWrongPlugIn = KMinTInt }
Inherited Attributes
MWsClientClass::iBuffer
MWsClientClass::iWsHandle

Constructor & Destructor Documentation

RSoundPlugIn()

IMPORT_CRSoundPlugIn()

Default constructor.

RSoundPlugIn(RWsSession &)

IMPORT_CRSoundPlugIn(RWsSession &aWs)

C++ constructor.

After calling this function, Construct() must be called to complete construction.

Parameters

RWsSession & aWsConnected session with the window server.

Member Functions Documentation

Close()

IMPORT_C voidClose()

Sets the handle to zero and frees the resource owned by the server.

CommandReply(TInt, const TPtrC8 &)

IMPORT_C TIntCommandReply(TIntaOpcode,
const TPtrC8 &aArgs
)

Sends a command to the plug-in DLL and may receive a response.

If the correct plug-in is loaded, its implementation of CommandReplyL() is called and its return code is returned by this function.

Specify an opcode of zero if you just want the identity of the plug-in DLL being used.

This function always causes a flush of the window server buffer.

Parameters

TInt aOpcodeOpcode understood by both the window server client and the plug-in DLL. If an opcode of zero is specified, this is intercepted by the window server, and the third UID of the plug-in is returned. This allows the caller to identify the plug-in DLL being used.
const TPtrC8 & aArgsPackaged arguments which are passed to the plug-in via the window server.

Construct(TUid)

IMPORT_C TIntConstruct(TUidaUid = KNullUid)

Second phase constructor.

Creates the server side resource and initialises the client's handle to it.

This function always causes a flush of the window server buffer.

panic
TW32Panic 17 in debug builds if called on an already constructed object.

Parameters

TUid aUid = KNullUidOptional UID. This can be ignored unless you intend to use the CommandReply() function. If you do intend to use CommandReply(), this should be the plug-in DLL's third UID. CommandReply() will return the value ESoundWrongPlugIn if the plug-in DLL identified by this UID is not loaded.

Destroy()

IMPORT_C voidDestroy()

Closes (by calling Close()) and deletes the object.

IsLoaded(TBool &)

IMPORT_C TBoolIsLoaded(TBool &aIsChangeable)const

Tests whether a key or pointer click plug-in DLL is currently loaded.

If one is currently loaded, aIsChangeAble returns whether or not it can be unloaded.

This function always causes a flush of the window server buffer.

Parameters

TBool & aIsChangeableIf a plug-in is currently loaded, this returns ETrue if it can be unloaded and EFalse if it cannot. This depends on whether the KEYCLICKPLUGINFIXED keyword is specified in wsini.ini for the plug-in.

KeyClickEnabled()

IMPORT_C TBoolKeyClickEnabled()const

Tests whether key clicks are enabled, as set by SetKeyClick().

This function always causes a flush of the window server buffer.

Load(const TDesC &)

IMPORT_C TIntLoad(const TDesC &aFileName)

Loads a new plug-in, replacing the existing one, if any.

This function always causes a flush of the window server buffer.

capability
WriteDeviceData

Parameters

const TDesC & aFileNameThe filename of the plug-in DLL to load.

PenClickEnabled()

IMPORT_C TBoolPenClickEnabled()const

Tests whether pointer clicks are enabled, as set by SetPenClick().

This function always causes a flush of the window server buffer.

SetKeyClick(TBool)

IMPORT_C voidSetKeyClick(TBoolaEnabled)

Sets whether key clicks should be enabled or disabled.

By default, key clicks are enabled.

capability
WriteDeviceData

Parameters

TBool aEnabledETrue to enable key clicks, EFalse to disable them.

SetPenClick(TBool)

IMPORT_C voidSetPenClick(TBoolaEnabled)

Sets whether pointer clicks should be enabled or disabled.

By default, pointer clicks are enabled.

capability
WriteDeviceData

Parameters

TBool aEnabledETrue to enable pointer clicks, EFalse to disable them.

Unload()

IMPORT_C TIntUnload()

Unloads the plug-in if one is currently loaded and if it can be unloaded.

This function always causes a flush of the window server buffer.

capability
WriteDeviceData

Member Enumerations Documentation

Enum anonymous

A possible return value for CommandReply().

Enumerators

ESoundWrongPlugIn = KMinTInt

The value returned by CommandReply() if no plug-in is loaded, or if the plug-in identified by the aUid parameter in Construct() is not loaded. Its value is set to KMinTInt so that it should not clash with any other expected return value from this function.