adaptationlayer/bcaiscadapter/bcatoisc_dll/inc/bcatoisc.h
changeset 9 8486d82aef45
parent 0 63b37f68c1ce
equal deleted inserted replaced
8:6295dc2169f3 9:8486d82aef45
     1 /*
     1 /*
     2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
     2 * Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     4 * This component and the accompanying materials are made available
     5 * under the terms of the License "Eclipse Public License v1.0"
     5 * under the terms of the License "Eclipse Public License v1.0"
     6 * which accompanies this distribution, and is available
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
    17 
    17 
    18 
    18 
    19 
    19 
    20 #ifndef BCATOISC_H
    20 #ifndef BCATOISC_H
    21 #define BCATOISC_H
    21 #define BCATOISC_H
       
    22 
    22 #include <networking/bca.h>
    23 #include <networking/bca.h>
    23 #include <iscapi.h>
    24 #include <iscapi.h>
    24 #include <e32std.h>
    25 #include <e32std.h>
    25 #include <e32base.h>
    26 #include <e32base.h>
    26 #include <e32def.h>
    27 #include <e32def.h>
    27 
    28 
    28 
    29 #include <tisi.h>
    29         
    30 const TUint8 KMaxChannelNbr = 11;
    30 
    31 const TUint8 KNameLen = 4;
    31 
    32 
    32 /**
    33 /**
    33 * BCATOISC Panic code.
    34 * BCATOISC Panic code.
    34 * @internalComponent.
    35 * @internalComponent.
    35 */
    36 */
    59         public:
    60         public:
    60         
    61         
    61         CNotifyFlowControlMonitor(RIscApi& aIscApi);
    62         CNotifyFlowControlMonitor(RIscApi& aIscApi);
    62         void NotifyFlowControlStatus();
    63         void NotifyFlowControlStatus();
    63         void RequestFlowcontrolChange( TRequestStatus& aClientStatus );
    64         void RequestFlowcontrolChange( TRequestStatus& aClientStatus );
       
    65         void CompleteFlowcontrolChangeWithCancel();
    64         void RunL();
    66         void RunL();
    65         void DoCancel();
    67         void DoCancel();
    66         TInt GetFlowControlState();
    68         TInt GetFlowControlState();
    67         ~CNotifyFlowControlMonitor();
    69         ~CNotifyFlowControlMonitor();
    68         
    70         
    80         
    82         
    81         public:
    83         public:
    82         
    84         
    83         CNotifyWriteStatusMonitor(CBcaToIsc& aUser, RIscApi& aIscApi);
    85         CNotifyWriteStatusMonitor(CBcaToIsc& aUser, RIscApi& aIscApi);
    84         void Write( TRequestStatus& aStatus, const TDesC8& aBuf );
    86         void Write( TRequestStatus& aStatus, const TDesC8& aBuf );
    85         void SendAndComplete();
    87         void SendAndComplete(TInt error);
    86         void RunL();
    88         void RunL();
    87         void DoCancel();
    89         void DoCancel();
    88         ~CNotifyWriteStatusMonitor();
    90         ~CNotifyWriteStatusMonitor();
    89 
    91 
    90         private:
    92         private:
    98         };
   100         };
    99 
   101 
   100     /**
   102     /**
   101     * The interface between NIF and Isc Bearer Transport.     
   103     * The interface between NIF and Isc Bearer Transport.     
   102     */
   104     */
   103     NONSHARABLE_CLASS(CBcaToIsc): public CBase, 
   105     NONSHARABLE_CLASS(CBcaToIsc): 
   104                                   public MBca  // BCA is accessed via this interface by clients.
   106                                   public CActive,
       
   107                                   public MBca // BCA is accessed via this interface by clients.
   105         {
   108         {
   106         
   109 
   107         public:
   110         public:
   108             
   111             
   109         CBcaToIsc(); 
   112         CBcaToIsc(); 
   110         virtual ~CBcaToIsc();
   113         virtual ~CBcaToIsc();
   111             virtual void Release();
   114             virtual void Release();
   123         virtual void CancelRead();
   126         virtual void CancelRead();
   124         virtual void CancelWrite();
   127         virtual void CancelWrite();
   125         
   128         
   126         virtual void Ioctl(TRequestStatus& aStatus, TUint aOptLevel, TUint aOptName, TDes8& aOpt);
   129         virtual void Ioctl(TRequestStatus& aStatus, TUint aOptLevel, TUint aOptName, TDes8& aOpt);
   127         virtual void CancelIoctl();
   130         virtual void CancelIoctl();
   128           
   131 
       
   132         TInt SendNameAddReq( TUint16& aObjId, TUint16& aClientObjId );
       
   133         TInt SendNameRemoveReq();
       
   134         TInt SendPepCtrlResp(
       
   135             TUint8 aTrId,
       
   136             TUint8 aReceiverDev,
       
   137             TUint8 aReceiverObj,
       
   138             TUint8 aPipeHandle,
       
   139             TUint8 aPepCtrlId,
       
   140             TUint8 aPepType,
       
   141             TUint8 aResult );
       
   142         void HandleReceivedMsg( const TIsiReceiveC& aIsiMsg );
       
   143         void HandleNameServiceMsg( const TIsiReceiveC& aIsiMsg );
       
   144         void HandlePipeMsg( const TIsiReceiveC& aIsiMsg );
       
   145         void HandlePepCtrlReq( const TIsiReceiveC& aIsiMsg );
   129 
   146 
   130         // Ownership
   147         // Ownership
   131         CNotifyWriteStatusMonitor* iWriteStatusMonitor;
   148         CNotifyWriteStatusMonitor* iWriteStatusMonitor;
   132         CNotifyFlowControlMonitor* iFlowControlMonitor;
   149         CNotifyFlowControlMonitor* iFlowControlMonitor;
   133    
   150 
       
   151         protected:
       
   152         
       
   153         // from CActive
       
   154         void RunL();
       
   155         void DoCancel();
   134 
   156 
   135         private:
   157         private:
   136 
   158 
   137         RIscApi iIscApi;
   159         RIscApi iIscApi;
   138         // no ownership
   160         // no ownership
   139         TRequestStatus* iClientShutdownStatus;
   161         TRequestStatus* iClientShutdownStatus;
       
   162         TRequestStatus* iClientOpenStatus;
       
   163         
       
   164         HBufC8* iReceivedMessageBuffer;
       
   165         TPtr8 iMessageBufferPtr;
       
   166         TBuf8<KNameLen> iName;
       
   167         TBuf16<KMaxChannelNbr> iChannelList;
       
   168         
   140         TUint16 iReadLength;
   169         TUint16 iReadLength;
   141         TUint16 iChannelNumber;
   170         TUint16 iChannelNumber;
   142 
       
   143         };
   171         };
   144 
   172 
   145 } // namespace BasebandChannelAdaptation
   173 } // namespace BasebandChannelAdaptation
   146 
   174 
   147 #endif //BCATOISC_H
   175 #endif //BCATOISC_H