<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="http://blogs.forum.nokia.com/styles/rss.css" type="text/css"?>
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
>
 <channel>
  <title>David Caabeiro&#039;s Forum Nokia Blog</title>
  <link>http://blogs.forum.nokia.com/blog/david-caabeiros-forum-nokia-blog</link>
  <description>A Forum Nokia Blog</description>
  <pubDate>Mon, 23 Nov 2009 22:26:13 +0200</pubDate>
  <generator>http://www.lifetype.net</generator>
  <itunes:author>Forum Nokia</itunes:author>
  <itunes:category text="Technology">
    <itunes:category text="Tech News"/>
  </itunes:category>
  <itunes:image href="http://www.forum.nokia.com/piazza/blogs/imgs/forum_nokia_rss_logo.jpg"/>
    <item>
   <title>ARM RVCT 4.0 for Symbian Foundation available for free</title>
   <description>
    &lt;p&gt;
Today looks like an interesting day for Symbian programmers. Right after announcing EKA2 kernel availability as open source, the Symbian Foundation has published details for downloading a free version (some restrictions apply) of the ARM RVCT.
&lt;/p&gt;
&lt;p&gt;
For details, check out this &lt;a href=&quot;http://developer.symbian.org/wiki/index.php/Installing_ARM_RVCT_4.0&quot;&gt;page&lt;/a&gt;
&lt;/p&gt;
   </description>
   <link>http://blogs.forum.nokia.com/blog/david-caabeiros-forum-nokia-blog/2009/10/21/arm-rvct-4.0-for-symbian-foundation-available-for-free</link>
   <comments>http://blogs.forum.nokia.com/blog/david-caabeiros-forum-nokia-blog/2009/10/21/arm-rvct-4.0-for-symbian-foundation-available-for-free</comments>
   <guid>http://blogs.forum.nokia.com/blog/david-caabeiros-forum-nokia-blog/2009/10/21/arm-rvct-4.0-for-symbian-foundation-available-for-free</guid>
      <dc:creator>david.caabeiro</dc:creator>
      
    <category>Symbian C++</category>
         <pubDate>Wed, 21 Oct 2009 18:23:29 +0200</pubDate>
   <itunes:author>Forum Nokia</itunes:author>
   <itunes:subtitle>ARM RVCT 4.0 for Symbian Foundation available for free</itunes:subtitle>
   <source url="http://blogs.forum.nokia.com/rss.php?blogId=26729&amp;profile=rss20">David Caabeiro&#039;s Forum Nokia Blog</source>
     </item>
    <item>
   <title>ARound: LBS + sensors</title>
   <description>
    &lt;p&gt;
Recently I had the chance to play a bit with the new Sensor FW API, made publicly available few weeks ago. It&#039;s no secret that such functionality will certainly bring new possibilities and offers to the s60 ecosystem. One such example is mixing the live video stream from your camera with tags (provided by the user or some other external resource), thus providing extended information to the physical world. 
&lt;/p&gt;
&lt;p&gt;
Of course the field of augmented/mixed reality is not new, but current devices are starting to make this reasonable, with no need of backpacks head-mounted displays or add-on gadgets (though walking around while facing your screen might look a bit weird as well)
&lt;/p&gt;
&lt;p&gt;
The most obvious use case is making use of these placemarks when doing
tourism. You tap on a specific point of interest and you get detailed
information (either text or audio) about that place.
&lt;/p&gt;
&lt;p&gt;
Unfortunately I don&#039;t have a decent camera to make a proper video capture, so here are some screen captures taken on a weekend short walk, featuring the application with a basic UI. (Those attending the MWC will find the place familiar..)
&lt;/p&gt;
&lt;p&gt;
&lt;img src=&quot;http://blogs.forum.nokia.com//data/blogs/resources/26729/Screenshot0013.jpg&quot; alt=&quot;ARound01&quot; /&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;img src=&quot;http://blogs.forum.nokia.com//data/blogs/resources/26729/Screenshot0018.jpg&quot; alt=&quot;ARound02&quot; /&gt;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;&lt;img src=&quot;http://blogs.forum.nokia.com//data/blogs/resources/26729/Screenshot0023.jpg&quot; alt=&quot;ARound03&quot; /&gt; 
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
   </description>
   <link>http://blogs.forum.nokia.com/blog/david-caabeiros-forum-nokia-blog/2008/12/13/around-lbs-sensors</link>
   <comments>http://blogs.forum.nokia.com/blog/david-caabeiros-forum-nokia-blog/2008/12/13/around-lbs-sensors</comments>
   <guid>http://blogs.forum.nokia.com/blog/david-caabeiros-forum-nokia-blog/2008/12/13/around-lbs-sensors</guid>
      <dc:creator>david.caabeiro</dc:creator>
      
    <category>Location Based Services</category>
      
    <category>S60</category>
      
    <category>Symbian C++</category>
      
    <category>Sensors</category>
         <pubDate>Sat, 13 Dec 2008 16:19:42 +0100</pubDate>
   <itunes:author>Forum Nokia</itunes:author>
   <itunes:subtitle>ARound: LBS + sensors</itunes:subtitle>
   <source url="http://blogs.forum.nokia.com/rss.php?blogId=26729&amp;profile=rss20">David Caabeiro&#039;s Forum Nokia Blog</source>
     </item>
    <item>
   <title>WDF / 3GSM (P.I.P.S.)</title>
   <description>
    &lt;p&gt;Among the several talks in the Symbian WDF, I was quite interested in the one on PIPS. The presentation (by &lt;font class=&quot;size2&quot; face=&quot;arial,verdana,helvetica&quot; color=&quot;#000000&quot; size=&quot;2&quot;&gt;Erik Jacobson from Symbian) &lt;/font&gt;turned out to be pretty interesting and enlightening&lt;span style=&quot;FONT-STYLE: italic&quot;&gt;&lt;/span&gt;. Having worked in some porting projects in the past, and suffering many of the shortcomings of the estlib (now soon to be deprecated), there seems to be at last some good news for future porting developing. &lt;br /&gt;&lt;br /&gt;Here&#039;re some highlights:&lt;br /&gt;&lt;br /&gt;- select() is supported: this single addition makes the whole project worth to me :)&lt;br /&gt;- exec() / fork() are not supported, as they would require many changes in the kernel (use posix_spawn() instead)&lt;br /&gt;- Many IPC mechanisms supported: pipes, fifos, etc.&lt;br /&gt;- Signals and thus asynchronous I/O is not supported&lt;br /&gt;- dlsym() cannot be used with symbolic names, use ordinals instead (there could be some facility provided in the future though, to ease development)&lt;br /&gt;- Carbide.c++ v1.2 is intended to support PIPS development (v9.3+ will introduce new target types: STDEXE &amp;amp; STDDLL). Anyway you can always rely on the good old command line.&lt;br /&gt;&lt;br /&gt;PIPS was originally intended for v9.3, but given that most functionality works in v9.1, there will be a sis available to that OS version.&lt;br /&gt;To prove its effectiveness, an independent company ported the TightVNC client for both S60 and UIQ.&lt;br /&gt;&lt;br /&gt;To start to get a feeling out of it, I&#039;d recommend you keep an eye on the &lt;a href=&quot;http://developer.symbian.com/wiki/display/oe/P.I.P.S.+Home&quot;&gt;P.I.P.S. Home @ DevNet&lt;/a&gt; , starting with the freely downloadable booklet.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;img height=&quot;384&quot; alt=&quot;WDF PIPS&quot; width=&quot;512&quot; src=&quot;https://blogs.forum.nokia.com/file.html?id=366&amp;amp;file=wdf_3gsm2007.jpg&quot; /&gt;&lt;/p&gt;
   </description>
   <link>http://blogs.forum.nokia.com/blog/david-caabeiros-forum-nokia-blog/2007/02/13/wdf-3gsm-p.i.p.s.</link>
   <comments>http://blogs.forum.nokia.com/blog/david-caabeiros-forum-nokia-blog/2007/02/13/wdf-3gsm-p.i.p.s.</comments>
   <guid>http://blogs.forum.nokia.com/blog/david-caabeiros-forum-nokia-blog/2007/02/13/wdf-3gsm-p.i.p.s.</guid>
      <dc:creator>PushL</dc:creator>
      
    <category>Event</category>
      
    <category>Symbian C++</category>
         <pubDate>Tue, 13 Feb 2007 19:16:18 +0100</pubDate>
   <itunes:author>Forum Nokia</itunes:author>
   <itunes:subtitle>WDF / 3GSM (P.I.P.S.)</itunes:subtitle>
   <source url="http://blogs.forum.nokia.com/rss.php?blogId=26729&amp;profile=rss20">David Caabeiro&#039;s Forum Nokia Blog</source>
     </item>
    <item>
   <title>Writing secure servers with CPolicyServer</title>
   <description>
    Symbian v9 introduces new features, one of the most notable being PlatSec. Even though the SDK docs provide good information about related APIs, I haven&#039;t seen any sample code illustrating its use.&lt;br /&gt;&lt;br /&gt;The main purpose of a server is providing ordered access to a shared resource. In pre-9 releases, this was achieved by means of CServer/CSession (&amp;quot;Symbian OS Explained&amp;quot; provides an excellent overview about this topic). For controlling access to your server, V9 provides a policy framework which is built on top of the newer CServer2 class (for a thorough discussion about this topic, I recommend getting a copy of &amp;quot;Symbian OS Platform Security&amp;quot;)&lt;br /&gt;&lt;br /&gt;The following snippet shows the necessary changes to add to a sample server (A full working example is provided)&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;// Security policy&lt;br /&gt;const TUint KServerPolicyRangeCount = 2;&lt;br /&gt;&lt;br /&gt;const TInt KServerPolicyRanges[KServerPolicyRangeCount] =&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; 0,&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // range is 0 inclusive&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; EMaxService&amp;#160;&amp;#160;&amp;#160;&amp;#160; // range is 1-KMaxTInt inclusive&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;const TUint8 KServerPolicyElementsIndex[KServerPolicyRangeCount] =&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; 0,&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // applies to 0th range&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; CPolicyServer::ENotSupported&amp;#160;&amp;#160;&amp;#160; // applies to 1st range&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;const CPolicyServer::TPolicyElement KServerPolicyElements[] =&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; { _INIT_SECURITY_POLICY_V0(0x7FFFFFFF), CPolicyServer::EFailClient }&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;const CPolicyServer::TPolicy KServerPolicy =&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; CPolicyServer::EAlwaysPass, // specifies all connect attempts should pass&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; KServerPolicyRangeCount,&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; KServerPolicyRanges,&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; KServerPolicyElementsIndex,&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; KServerPolicyElements&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;The CPolicyServer constructor gets a policy table among its arguments, which represents the server policies:&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;CSimpleServer::CSimpleServer() : &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; CPolicyServer(EPriorityStandard, KServerPolicy, ESharableSessions)&lt;br /&gt;{}&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;In this example case, we&#039;re dealing with just one function. The &lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;KServerPolicyRanges&lt;/span&gt; elements represent the ranges of function numbers (obtained by RMessage2::Function() ) to be searched for. The index obtained is used in &lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;KServerPolicyElementsIndex&lt;/span&gt; to determine the policy to be applied (which is specified in the &lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;KServerPolicyElements&lt;/span&gt; array)&lt;br /&gt;&lt;br /&gt;So when a message is received with function number 0, the framework determines that it corresponds to the first entry of the ranges array, which determines the policy to use (in this case the check of a specific vendor id). In case of failure, the message is completed with &lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;KErrPermissionDenied&lt;/span&gt;. Other requests containing a different function number will return &lt;span style=&quot;FONT-WEIGHT: bold&quot;&gt;KErrNotSupported&lt;/span&gt; (as specified by the ENotSupported item in the policy array)&lt;br /&gt;&lt;br /&gt;
&lt;div style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;a href=&quot;http://www.pushl.com/nokia/20070205.zip&quot;&gt;Download source code&lt;/a&gt; &lt;/div&gt;
&lt;br /&gt;Other recommended reading: &lt;a href=&quot;http://developer.symbian.com/main/oslibrary/cpp_papers/advanced.jsp&quot;&gt;Transient Server Template&lt;/a&gt;
   </description>
   <link>http://blogs.forum.nokia.com/blog/david-caabeiros-forum-nokia-blog/2007/02/05/writing-secure-servers-with-cpolicyserver</link>
   <comments>http://blogs.forum.nokia.com/blog/david-caabeiros-forum-nokia-blog/2007/02/05/writing-secure-servers-with-cpolicyserver</comments>
   <guid>http://blogs.forum.nokia.com/blog/david-caabeiros-forum-nokia-blog/2007/02/05/writing-secure-servers-with-cpolicyserver</guid>
      <dc:creator>PushL</dc:creator>
      
    <category>Symbian C++</category>
         <pubDate>Mon, 05 Feb 2007 02:59:24 +0100</pubDate>
   <itunes:author>Forum Nokia</itunes:author>
   <itunes:subtitle>Writing secure servers with CPolicyServer</itunes:subtitle>
   <source url="http://blogs.forum.nokia.com/rss.php?blogId=26729&amp;profile=rss20">David Caabeiro&#039;s Forum Nokia Blog</source>
     </item>
   </channel>
</rss>