diff -r 000000000000 -r 29b1cd4cb562 bluetooth/btstack/sdp/sdppdu.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/bluetooth/btstack/sdp/sdppdu.cpp Fri Jan 15 08:13:17 2010 +0200 @@ -0,0 +1,88 @@ +// Copyright (c) 2000-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: +// + +#include "sdppdu.h" + +CSdpPdu::CSdpPdu(CSdpNetDbProvider* aSdpNetDbProv) + : iBuf(KSdpPduHeaderSize), //Reserve Space for PDU header + iNetDbProvider(aSdpNetDbProv) + { + } + +CSdpPdu::~CSdpPdu() + { + iLink.Deque(); + } + +void CSdpPdu::SetPduId(TUint8 aPduId) + { + iBuf[KSdpPduIdOffset] = aPduId; + } + +TUint8 CSdpPdu::PduId() + { + return iBuf[KSdpPduIdOffset]; + } + +void CSdpPdu::SetTransid(TUint16 aTransId) + { + BigEndian::Put16(&iBuf[KSdpPduTransIdOffset], aTransId); + } + +TUint16 CSdpPdu::TransId() + { + return BigEndian::Get16(&iBuf[KSdpPduTransIdOffset]); + } + +void CSdpPdu::SetLength() + { + BigEndian::Put16(&iBuf[KSdpPduParamLengthOffset], + static_cast(iBuf.Length()-KSdpPduHeaderSize)); + } + +void CSdpPdu::PutByte(TUint8 aByte) + { + iBuf.Append(aByte); + } + +void CSdpPdu::PutBigEndian16(TUint16 aShort) + { + TInt len = iBuf.Length(); + iBuf.SetLength(len+sizeof(aShort)); + BigEndian::Put16(&iBuf[len], aShort); + } + +void CSdpPdu::PutBigEndian32(TUint32 aLong) + { + TInt len = iBuf.Length(); + iBuf.SetLength(len+sizeof(aLong)); + BigEndian::Put32(&iBuf[len], aLong); + } + +void CSdpPdu::PutData(const TDesC8& aDes) + { + iBuf.Append(aDes); + } + +TDesC8& CSdpPdu::Data() + { + return iBuf; + } + +CSdpNetDbProvider* CSdpPdu::NetDbProvider() + { + return iNetDbProvider; + } +