os/mm/devsoundextensions/mmfcustominterfaces/G711EncoderIntfc/G711EncoderIntfcProxy/src/G711EncoderIntfcProxy.cpp
First public contribution.
2 * Copyright (c) 2002-2004 Nokia Corporation and/or its subsidiary(-ies).
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".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
14 * Description: Interface proxy for G711 encoder.
21 #include "G711EncoderIntfcProxy.h"
22 #include "G711EncoderIntfcMsgs.h"
23 #include <CustomCommandUtility.h>
24 #include <CustomInterfaceUtility.h>
26 // EXTERNAL DATA STRUCTURES
28 // EXTERNAL FUNCTION PROTOTYPES
34 // LOCAL CONSTANTS AND MACROS
36 // MODULE DATA STRUCTURES
38 // LOCAL FUNCTION PROTOTYPES
40 // FORWARD DECLARATIONS
42 // ============================= LOCAL FUNCTIONS ===============================
44 // ================= MEMBER FUNCTIONS =======================
46 // -----------------------------------------------------------------------------
47 // CG711EncoderIntfcProxy::CG711EncoderIntfcProxy
48 // C++ default constructor can NOT contain any code, that
50 // -----------------------------------------------------------------------------
52 CG711EncoderIntfcProxy::CG711EncoderIntfcProxy(
53 TMMFMessageDestinationPckg aMessageHandler,
54 MCustomCommand& aCustomCommand,
55 CCustomInterfaceUtility* aCustomInterfaceUtility) :
56 iCustomCommand(aCustomCommand),
57 iMessageHandler(aMessageHandler),
58 iCustomInterfaceUtility(aCustomInterfaceUtility)
63 // -----------------------------------------------------------------------------
64 // CG711EncoderIntfcProxy::ConstructL
65 // Symbian 2nd phase constructor can leave.
66 // -----------------------------------------------------------------------------
68 void CG711EncoderIntfcProxy::ConstructL()
72 // -----------------------------------------------------------------------------
73 // CG711EncoderIntfcProxy::NewL
74 // Two-phased constructor.
75 // -----------------------------------------------------------------------------
77 EXPORT_C CG711EncoderIntfcProxy* CG711EncoderIntfcProxy::NewL(
78 TMMFMessageDestinationPckg aMessageHandler,
79 MCustomCommand& aCustomCommand,
80 CCustomInterfaceUtility* aCustomInterfaceUtility)
82 CG711EncoderIntfcProxy* self = new(ELeave) CG711EncoderIntfcProxy(
85 aCustomInterfaceUtility);
86 CleanupStack::PushL( self );
88 CleanupStack::Pop( self );
93 EXPORT_C CG711EncoderIntfcProxy::~CG711EncoderIntfcProxy()
95 iCustomInterfaceUtility->RemoveCustomInterface(iMessageHandler);
96 delete iCustomInterfaceUtility;
99 // ---------------------------------------------------------
100 // CG711EncoderIntfcProxy::SetEncoderMode
101 // Sends the custom command for this function to its message handler.
102 // (other items were commented in a header).
103 // ---------------------------------------------------------
105 EXPORT_C TInt CG711EncoderIntfcProxy::SetEncoderMode(TEncodeMode aEncodeMode)
107 TPckgBuf<TEncodeMode> pckgBuf(aEncodeMode);
108 TInt status = iCustomCommand.CustomCommandSync(iMessageHandler,
109 EG711eimSetEncoderMode,
116 // ---------------------------------------------------------
117 // CG711EncoderIntfcProxy::SetVadMode
118 // Sends the custom command for this function to its message handler.
119 // (other items were commented in a header).
120 // ---------------------------------------------------------
122 EXPORT_C TInt CG711EncoderIntfcProxy::SetVadMode(TBool aVadMode)
124 TPckgBuf<TBool> pckgBuf(aVadMode);
125 TInt status = iCustomCommand.CustomCommandSync(iMessageHandler,
132 // ---------------------------------------------------------
133 // CG711EncoderIntfcProxy::GetVadMode
134 // Sends the custom command for this function to its message handler.
135 // (other items were commented in a header).
136 // ---------------------------------------------------------
138 EXPORT_C TInt CG711EncoderIntfcProxy::GetVadMode(TBool& aVadMode)
140 TInt vadMode = EFalse;
141 TPckgBuf<TBool> pckgBuf(vadMode);
142 TInt status = iCustomCommand.CustomCommandSync(iMessageHandler,
147 if (status == KErrNone)
148 aVadMode = pckgBuf();