1 // Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of "Eclipse Public License v1.0"
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
21 #ifndef A2DP_OPTIMISATION_H
22 #define A2DP_OPTIMISATION_H
25 #include <bluetooth/hci/hcitypes.h>
27 class RHCIServerSession;
29 _LIT(KA2dpOptimiserUtilsPanic, "A2dpOptimClient");
31 NONSHARABLE_CLASS(RA2dpOptimiser)
33 API used for optimisation related to A2DP streaming
37 enum TA2dpOptimiserUtilsPanic
39 EApiUsedWhenHandleIsNotOpen = 0,
40 EHandleIsAlreadyOpen = 1,
43 enum TA2dpOptimiserFunctionIds
45 EHCIA2dpOptimiseAcl = 0,
46 EHCIA2dpRemoveAclOptimisation = 1,
50 IMPORT_C RA2dpOptimiser();
53 IMPORT_C void Close();
55 IMPORT_C void OptimiseAclForAudioStreaming(const TBTDevAddr& aDevAddr, TUint aPeakBandwidth, TUint aAccessLatency);
56 IMPORT_C void RemoveAclOptimisation(const TBTDevAddr& aDevAddr);
59 // private copy c'tor to prevent shallow copy of iHCIServerSession
60 RA2dpOptimiser(const RA2dpOptimiser&);
63 RHCIServerSession* iHCIServerSession;
65 TUint32 iReserved1; // Padding for possible future "per-copy" state.
68 #endif /* A2DP_OPTIMISATION_H */