usbmgmt/usbmgr/device/classdrivers/acm/classimplementation/acmserver/inc/acmserverimpl.h
changeset 0 c9bc50fca66e
equal deleted inserted replaced
-1:000000000000 0:c9bc50fca66e
       
     1 /*
       
     2 * Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description:
       
    15 *
       
    16 */
       
    17 
       
    18 /**
       
    19  @file
       
    20  @internalTechnology
       
    21 */
       
    22 
       
    23 #ifndef __ACMSERVERIMPL_H__
       
    24 #define __ACMSERVERIMPL_H__
       
    25 
       
    26 #include <e32base.h>
       
    27 #include <c32comm.h>
       
    28 #include "acmserverclient.h"
       
    29 
       
    30 /**
       
    31 This is the 'body' of the RAcmServer - CAcmServerImpl handle-body system. 
       
    32 Handle-body enables us to alter the implementation of ACM control whilst 
       
    33 maintaining the same binary interface with clients.
       
    34 This class MUST NOT be used outside Symbian.
       
    35 Specifically, it is responsible for making sure that the ECACM CSY is loaded 
       
    36 (= ACM server running) and connecting an IPC channel to the ACM server.
       
    37 */
       
    38 NONSHARABLE_CLASS(CAcmServerImpl) : public CBase
       
    39 	{
       
    40 public:
       
    41 	static CAcmServerImpl* NewL();
       
    42 	~CAcmServerImpl();
       
    43 
       
    44 public:
       
    45 	TInt CreateFunctions(const TUint aNoAcms, const TUint8 aProtocolNum, const TDesC& aAcmControlIfcName, const TDesC& aAcmDataIfcName);
       
    46 	TInt DestroyFunctions(const TUint aNoAcms);
       
    47 
       
    48 private:
       
    49 	CAcmServerImpl();
       
    50 	void ConstructL();
       
    51 
       
    52 private:
       
    53 	RCommServ iCommServ;
       
    54 	RAcmServerClient iAcmServerClient;
       
    55 	};
       
    56 
       
    57 #endif // __ACMSERVERIMPL_H__