diff -r 000000000000 -r af10295192d8 linklayercontrol/networkinterfacemgr/inc/NIFUTL.H --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/linklayercontrol/networkinterfacemgr/inc/NIFUTL.H Tue Jan 26 15:23:49 2010 +0200 @@ -0,0 +1,171 @@ +/** +* Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + + + +/** + @file NIFUTL.H + @internalTechnology +*/ + +#if !defined(__NIFUTL_H__) +#define __NIFUTL_H__ + +#include +#ifndef __C32COMM_H__ +#include +#endif + +class MTimer +/** +Utility classes +@internalTechnology +*/ + { +public: +#if !defined(__EABI__) && !defined(__X86GCC__) + IMPORT_C MTimer(); +#endif + IMPORT_C void TimerDelete(); + IMPORT_C void TimerConstructL(TInt aPriority); + IMPORT_C void TimerAt(const TTime& aTime); + IMPORT_C void TimerAfter(TTimeIntervalMicroSeconds32 aInterval); + IMPORT_C void TimerLock(TTimerLockSpec aLock); + IMPORT_C void TimerCancel(); + + virtual void TimerComplete(TInt aStatus)=0; + +protected: + CTimer* iTimer; + }; + +class MBcaControlObserver + { +public: + virtual const TDesC& BcaStack() = 0; + virtual const TDesC& BcaName() = 0; + virtual void Stop(TInt aError) = 0; + virtual const TDesC& Port() = 0; + virtual TInt IapId() = 0; + virtual void InitializeComplete() = 0; + virtual void ShutdownComplete(TInt aError) = 0; + virtual void SetBca(BasebandChannelAdaptation::MBca* aBca) = 0; + }; + +class CCommReaderV2; +class CCommWriterV2; +class CScriptBcaControl; + +class MCommV2 : public MBcaControlObserver +/** +@internalTechnology +*/ + { + +friend class CCommReaderV2; +friend class CCommWriterV2; + +public: + IMPORT_C void CommDelete(); + IMPORT_C void CommConstructL(TInt aReadPriority, TInt aWritePriority); + IMPORT_C TInt CommOpen(const TDesC& aChannelId); + IMPORT_C void CommClose(); + IMPORT_C void CommCancel(); + IMPORT_C void CommWrite(const TDesC8& aDes); + IMPORT_C void CommWriteReady(); + IMPORT_C void CommWriteCancel(); + IMPORT_C TBool CommIsWriting() const; + IMPORT_C void CommRead(TDes8& aDes); + IMPORT_C void CommReadOneOrMore(TDes8& aDes); + IMPORT_C void CommReadReady(); + IMPORT_C void CommReadCancel(); + IMPORT_C TBool CommIsReading() const; + + virtual void CommReadComplete(TInt aStatus)=0; + virtual void CommWriteComplete(TInt aStatus)=0; + + //MBcaControlObserver + virtual const TDesC& BcaStack() = 0; + IMPORT_C virtual const TDesC& BcaName(); + virtual void Stop(TInt aError) = 0; + virtual TInt IapId() = 0; + virtual void InitializeComplete() = 0; + virtual void ShutdownComplete(TInt aError) = 0; + IMPORT_C virtual void SetBca(BasebandChannelAdaptation::MBca* aBca); + IMPORT_C virtual const TDesC& Port(); + +protected: +#if !defined(__EABI__) && !defined(__X86GCC__) + IMPORT_C MCommV2(); +#endif + +protected: + CScriptBcaControl* iBcaControl; + BasebandChannelAdaptation::MBca* iBca; + TName iChannelId; + CCommReaderV2* iCommReader; + CCommWriterV2* iCommWriter; + }; + +//The classes below are derecated and should be replaced with MCommV2 + +class CCommReader; +class CCommWriter; +class CCommLinkStatus; +class MComm +/** +@internalTechnology +*/ + { + +friend class CCommReader; +friend class CCommWriter; +friend class CCommLinkStatus; + +public: +#if !defined(__EABI__) && !defined(__X86GCC__) + IMPORT_C MComm(); +#endif + IMPORT_C void CommDelete(); + IMPORT_C void CommConstructL(TInt aReadPriority, TInt aWritePriority); + IMPORT_C TInt CommOpen(const TDesC& aName, TCommAccess aAccess); + IMPORT_C TInt CommOpen(const TDesC& aDll, const TDesC& aName, TCommAccess aAccess); + IMPORT_C TInt CommOpen(const TDesC& aDll, const TDesC& aName, TCommAccess aAccess, TCommRole aRole); + IMPORT_C void CommClose(); + IMPORT_C void CommCancel(); + IMPORT_C void CommWrite(const TDesC8& aDes); + IMPORT_C void CommWriteReady(); + IMPORT_C void CommWriteCancel(); + IMPORT_C TBool CommIsWriting() const; + IMPORT_C void CommRead(TDes8& aDes); + IMPORT_C void CommReadOneOrMore(TDes8& aDes); + IMPORT_C void CommReadReady(); + IMPORT_C void CommReadCancel(); + IMPORT_C TBool CommIsReading() const; + + virtual void CommReadComplete(TInt aStatus)=0; + virtual void CommWriteComplete(TInt aStatus)=0; + +protected: + RCommServ iCommServer; + RComm iCommPort; + CCommReader* iCommReader; + CCommWriter* iCommWriter; + CCommLinkStatus* iCommLinkStatus; + }; + +#endif