Konstantine Voytenko
BluSPAN project coordinator
Fishnest Ltd.
bluspan@gmail.com
Carbider | 20 January, 2009 11:41
RBuf8 buf8 ; RBuf16 buf16 ;
buf16.Copy(buf8);
HBufC8 *heap8;
HBufC *heap16 = CnvUtfConverter::ConvertToUnicodeFromUtf8L(*heap8);
TBuf8 sourceBuf8 ; TBuf16 destBuf16 ;
TInt len = sourceBuf8.Length();
aOutDest.FillZ(len/2 ); // necessary to set the size memcpy((TAny *)destBuf16.Ptr(), (TAny *)sourceBuf8.Ptr(), len);
RBuf8 source ; RBuf dest ; // the same as Rbuf16 TInt destLength ; source.Create(100 );
// Receive the 8 bit descriptor from socket that contains 16 bit data iActiveSocket->RecvOneOrMore(source, 0, iStatus, iLen );
destLength = source.Length() / 2 ; // 16 bit chars instead of 8 bit
dest.CleanupClosePushL() ; // to Cleanup Stack dest.Create( destLength );
//Conversion CBinaryConverter::copy8BitInto16BitDescriptorL(source, dest );
// Show the note CAknInformationNote *iInfNote ; iInfNote = new (ELeave) CAknInformationNote(); iInfNote->ExecuteLD(dest );
CleanupStack::PopAndDestroy(&dest); // Pop RBuf from the Cleanup Stack
Connectivity, S60, Symbian C++ |
Permalink |
Comments (3) |
Trackbacks (0)
Carbider | 28 May, 2008 14:47
It is interesting the PAN (Bluetooth Personal Area Networking) profile is listed at Symbian 9.2 abilities.
The PAN overview is here:
...symbian.com/developer/techlib/v9.2docs/...
And a small API mention is here:
...symbian.com/developer/techlib/v9.2docs/...
Despite the fact that there is no completely ready PAN API in S60 3rd there are some type definitions and constants related to the deal. They are defined at btsdp.h header file here:
...symbian.com/developer/techlib/v9.2docs/...
Here are some constants that seem to be tempting for my Bluetooth inquisitive mind:
These values represent identifiers of Bluetooth(c) services that could be advertised by device.
There is a Chat example that advertises the Serial Port service. I decided to try one's luck with PAN.
const TInt KServiceClass = 0x1101; // SerialPort
Chat example supplies the service's identifier constant by returning this value from function below:
The KServiceClass constant is assigned to '0x1101' by default. I've changed the function to this manner:
This gives me a possibility to supply the AttemptNumber parameter to the function - so to test all 3 service classes by turns.
In the similar manner I had rewritten the function that returns the service's symbolic name.
Each time I've started the chat server I’ve outputted the qualifying message in this way:
iLog.LogL( _L("Attempt#"), iAttemptNumber );
After building the application under Phone release (GCCE) I had signed it myself and sent to my device.
As a Contributor of the Month I have got one. It's a Nokia N95 8GB.
With that one I can test a lot. It really helps in development. And also that multimedia computer is cool one ;)
Then I started the app on the phone and turned on the PAN search service on the WinXP SP2 machine.
However after all three service classes were advertised one by one, the XP machine did not detect any.
Connectivity, S60, Symbian C++ |
Permalink |
Add comment |
Trackbacks (0)
Carbider | 21 February, 2008 12:32
As you know, I've worked a lot to figure out a way of how to realize the BNEP protocol on Symbian platform.
The simple idea of catching and processing all the TCP stream with help of IP hook is impossible until purchase non-publick API.
Also, the idea to create a networking interface or serial protocol modules (this blog entries:attempt-to-create-a-csy-module, serial-protocol-modules, symbian-networking-interface) failed to due to lack of examples.
Now, I'm moving like in a dark. And can't find a way to realize the BNEP.
Boss said me to try for 2 more weeks, to find out.
I do not see much sense if this blog ends with purchasing a non-publick API.
If anyone can provide an idea, let me know.
S60, Symbian C++ |
Permalink |
Comments (1) |
Trackbacks (0)