diff -r ebc84c812384 -r 46218c8b8afa Symbian3/PDK/Source/GUID-0CFC2113-37F9-58B5-AF27-125C23C3087F.dita --- a/Symbian3/PDK/Source/GUID-0CFC2113-37F9-58B5-AF27-125C23C3087F.dita Thu Mar 11 15:24:26 2010 +0000 +++ b/Symbian3/PDK/Source/GUID-0CFC2113-37F9-58B5-AF27-125C23C3087F.dita Thu Mar 11 18:02:22 2010 +0000 @@ -1,156 +1,156 @@ - - - - - -driver1_dev.h// driver1_dev.h -// -// Copyright (c) 2009 Nokia Ltd. All rights reserved. -// - -/** -Kernel side interfaces to example Logical and Physical Device Drivers -*/ - -#ifndef __DRIVER1_DEV_H__ -#define __DRIVER1_DEV_H__ - -/** - Physical Device (factory class) for 'Driver1' -*/ -class DDevice1PddFactory : public DPhysicalDevice - { -public: - DDevice1PddFactory(); - ~DDevice1PddFactory(); - // Inherited from DPhysicalDevice - virtual TInt Install(); - virtual void GetCaps(TDes8& aDes) const; - virtual TInt Create(DBase*& aChannel, TInt aUnit, const TDesC8* aInfo, const TVersion& aVer); - virtual TInt Validate(TInt aUnit, const TDesC8* aInfo, const TVersion& aVer); -public: - TInt iHardwareInUse; -private: - enum TMinimumLDDVersion - { - EMinimumLddMajorVersion=1, - EMinimumLddMinorVersion=0, - EMinimumLddBuild=0 //Not used - }; -public: - TDynamicDfcQue* iDfcQ; - }; - - -/** - Logical Device (factory class) for 'Driver1' -*/ -class DDriver1Factory : public DLogicalDevice - { -public: - DDriver1Factory(); - ~DDriver1Factory(); - // Inherited from DLogicalDevice - virtual TInt Install(); - virtual void GetCaps(TDes8& aDes) const; - virtual TInt Create(DLogicalChannelBase*& aChannel); - }; - -class DDriver1; - -/** - Logical Channel class for 'Driver1' -*/ -class DDriver1Channel : public DLogicalChannel - { -public: - DDriver1Channel(); - virtual ~DDriver1Channel(); - // Inherited from DObject - virtual TInt RequestUserHandle(DThread* aThread, TOwnerType aType); - // Inherited from DLogicalChannelBase - virtual TInt DoCreate(TInt aUnit, const TDesC8* anInfo, const TVersion& aVer); - // Inherited from DLogicalChannel - virtual void HandleMsg(TMessageBase* aMsg); -private: - // Panic reasons - enum TPanic - { - ERequestAlreadyPending = 1 - }; - // Implementation for the differnt kinds of requests send through RBusLogicalChannel - TInt DoControl(TInt aFunction, TAny* a1, TAny* a2); - TInt DoRequest(TInt aReqNo, TRequestStatus* aStatus, TAny* a1, TAny* a2); - void DoCancel(TUint aMask); - // Accessor for the PDD - inline DDriver1* Pdd(); - // Methods for configuration - TInt GetConfig(TDes8* aConfigBuf); - TInt SetConfig(const TDesC8* aConfigBuf); - void CurrentConfig(RDriver1::TConfig& aConfig); - // Methods for processing a SendData request - TInt SendData(TRequestStatus* aStatus,const TDesC8* aData); - void SendDataCancel(); - void DoSendDataComplete(); - static void SendDataDfc(TAny* aPtr); - // Methods for processing a ReceiveData request - TInt ReceiveData(TRequestStatus* aStatus,TDes8* aBuffer); - void ReceiveDataCancel(); - void DoReceiveDataComplete(); - static void ReceiveDataDfc(TAny* aPtr); -public: - // Interface methods for use by PDD - virtual void SendDataComplete(TInt aResult); - virtual void ReceiveDataComplete(TInt aResult); -private: - DThread* iClient; - // Members used for processing a SendData request - TRequestStatus* iSendDataStatus; - TDfc iSendDataDfc; - TInt iSendDataResult; - TBuf8<256> iSendDataBuffer; - // Members used for processing a ReceiveData request - TDes8* iReceiveDataDescriptor; - TRequestStatus* iReceiveDataStatus; - TDfc iReceiveDataDfc; - TInt iReceiveDataResult; - TBuf8<256> iReceiveDataBuffer; - }; - -inline DDriver1* DDriver1Channel::Pdd() - { return (DDriver1*)iPdd; } - -/** - Interface to 'Driver1' physical device -*/ -class DDriver1 : public DBase - { -public: - /** - Structure for holding PDD capabilities information - */ - class TCaps - { - public: - TVersion iVersion; - }; -public: - virtual TInt BufferSize() const =0; - virtual TInt Speed() const =0; - virtual TInt SetSpeed(TInt aSpeed) =0; - virtual TInt SendData(const TDesC8& aData) =0; - virtual void SendDataCancel() =0; - virtual TInt ReceiveData(TDes8& aBuffer) =0; - virtual void ReceiveDataCancel() =0; -public: - DDriver1Channel* iLdd; - }; - -#endif + + + + + +driver1_dev.h// driver1_dev.h +// +// Copyright (c) 2009 Nokia Ltd. All rights reserved. +// + +/** +Kernel side interfaces to example Logical and Physical Device Drivers +*/ + +#ifndef __DRIVER1_DEV_H__ +#define __DRIVER1_DEV_H__ + +/** + Physical Device (factory class) for 'Driver1' +*/ +class DDevice1PddFactory : public DPhysicalDevice + { +public: + DDevice1PddFactory(); + ~DDevice1PddFactory(); + // Inherited from DPhysicalDevice + virtual TInt Install(); + virtual void GetCaps(TDes8& aDes) const; + virtual TInt Create(DBase*& aChannel, TInt aUnit, const TDesC8* aInfo, const TVersion& aVer); + virtual TInt Validate(TInt aUnit, const TDesC8* aInfo, const TVersion& aVer); +public: + TInt iHardwareInUse; +private: + enum TMinimumLDDVersion + { + EMinimumLddMajorVersion=1, + EMinimumLddMinorVersion=0, + EMinimumLddBuild=0 //Not used + }; +public: + TDynamicDfcQue* iDfcQ; + }; + + +/** + Logical Device (factory class) for 'Driver1' +*/ +class DDriver1Factory : public DLogicalDevice + { +public: + DDriver1Factory(); + ~DDriver1Factory(); + // Inherited from DLogicalDevice + virtual TInt Install(); + virtual void GetCaps(TDes8& aDes) const; + virtual TInt Create(DLogicalChannelBase*& aChannel); + }; + +class DDriver1; + +/** + Logical Channel class for 'Driver1' +*/ +class DDriver1Channel : public DLogicalChannel + { +public: + DDriver1Channel(); + virtual ~DDriver1Channel(); + // Inherited from DObject + virtual TInt RequestUserHandle(DThread* aThread, TOwnerType aType); + // Inherited from DLogicalChannelBase + virtual TInt DoCreate(TInt aUnit, const TDesC8* anInfo, const TVersion& aVer); + // Inherited from DLogicalChannel + virtual void HandleMsg(TMessageBase* aMsg); +private: + // Panic reasons + enum TPanic + { + ERequestAlreadyPending = 1 + }; + // Implementation for the differnt kinds of requests send through RBusLogicalChannel + TInt DoControl(TInt aFunction, TAny* a1, TAny* a2); + TInt DoRequest(TInt aReqNo, TRequestStatus* aStatus, TAny* a1, TAny* a2); + void DoCancel(TUint aMask); + // Accessor for the PDD + inline DDriver1* Pdd(); + // Methods for configuration + TInt GetConfig(TDes8* aConfigBuf); + TInt SetConfig(const TDesC8* aConfigBuf); + void CurrentConfig(RDriver1::TConfig& aConfig); + // Methods for processing a SendData request + TInt SendData(TRequestStatus* aStatus,const TDesC8* aData); + void SendDataCancel(); + void DoSendDataComplete(); + static void SendDataDfc(TAny* aPtr); + // Methods for processing a ReceiveData request + TInt ReceiveData(TRequestStatus* aStatus,TDes8* aBuffer); + void ReceiveDataCancel(); + void DoReceiveDataComplete(); + static void ReceiveDataDfc(TAny* aPtr); +public: + // Interface methods for use by PDD + virtual void SendDataComplete(TInt aResult); + virtual void ReceiveDataComplete(TInt aResult); +private: + DThread* iClient; + // Members used for processing a SendData request + TRequestStatus* iSendDataStatus; + TDfc iSendDataDfc; + TInt iSendDataResult; + TBuf8<256> iSendDataBuffer; + // Members used for processing a ReceiveData request + TDes8* iReceiveDataDescriptor; + TRequestStatus* iReceiveDataStatus; + TDfc iReceiveDataDfc; + TInt iReceiveDataResult; + TBuf8<256> iReceiveDataBuffer; + }; + +inline DDriver1* DDriver1Channel::Pdd() + { return (DDriver1*)iPdd; } + +/** + Interface to 'Driver1' physical device +*/ +class DDriver1 : public DBase + { +public: + /** + Structure for holding PDD capabilities information + */ + class TCaps + { + public: + TVersion iVersion; + }; +public: + virtual TInt BufferSize() const =0; + virtual TInt Speed() const =0; + virtual TInt SetSpeed(TInt aSpeed) =0; + virtual TInt SendData(const TDesC8& aData) =0; + virtual void SendDataCancel() =0; + virtual TInt ReceiveData(TDes8& aBuffer) =0; + virtual void ReceiveDataCancel() =0; +public: + DDriver1Channel* iLdd; + }; + +#endif \ No newline at end of file