Symbian3/SDK/Source/GUID-B71AC5E3-8AA8-55AD-916F-9E873926011B.dita
changeset 7 51a74ef9ed63
child 8 ae94777fff8f
equal deleted inserted replaced
6:43e37759235e 7:51a74ef9ed63
       
     1 <?xml version="1.0" encoding="utf-8"?>
       
     2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
       
     3 <!-- This component and the accompanying materials are made available under the terms of the License 
       
     4 "Eclipse Public License v1.0" which accompanies this distribution, 
       
     5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
       
     6 <!-- Initial Contributors:
       
     7     Nokia Corporation - initial contribution.
       
     8 Contributors: 
       
     9 -->
       
    10 <!DOCTYPE concept
       
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
       
    12 <concept id="GUID-B71AC5E3-8AA8-55AD-916F-9E873926011B" xml:lang="en"><title>Feature
       
    13 Manager Collection Overview</title><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    14 <p>The Feature Manager collection is a set of classes used to manipulate feature
       
    15 flags. </p>
       
    16 <section id="GUID-E1E8BB89-C634-51D3-BBA1-A98BCCA3BD44"><title>Purpose</title> <p>A
       
    17 feature is any piece of functionality which can be included in a phone at
       
    18 ROM build time or excluded from it. An excluded feature is often written to
       
    19 ROM at build time but excluded from the build by disabling it. </p> </section>
       
    20 <section id="GUID-E914F975-B33E-55D0-9F7A-8CA65C321296"><title>Architecture</title> <p>The
       
    21 feature management system uses the standard client server architecture. The
       
    22 relationship between the components is : </p> <fig id="GUID-CA8AE056-6988-5611-BFE0-9999C0F02FF7">
       
    23 <title>              Architecture of the feature management system       
       
    24     </title>
       
    25 <image href="GUID-CE79D1B9-2770-5494-A741-D98DE3EBFA05_d0e351566_href.png" placement="inline"/>
       
    26 </fig><p>  Feature Manager Client is not supplied with all versions of Symbian
       
    27 Platform. Feature Discovery, which is always supplied, provides a subset of
       
    28 the functionality of Feature Manager Client and offers superior performance
       
    29 under certain circumstances. </p><p> The data which the Feature Manager manages
       
    30 is stored as a collection of  XML files in the feature database. These files
       
    31 define a set of feature flags  which can be accessed using the Feature Manager
       
    32 API. The file <filepath>featureuid.xml</filepath> is the master record of
       
    33 all features in the database. You do not manipulate the feature database directly.
       
    34   </p><p> The feature manager database is also accessed by the tool <filepath>feat2hdr.pl</filepath> which
       
    35 is used at ROM build time to convert the data relating to each feature into
       
    36 .iby and .h files used by the source code of the  components which the features
       
    37 refer to.   </p> </section>
       
    38 <section id="GUID-A9D9B55D-8B3F-54E3-A272-0EF74757846F"><title>Description</title> <p> </p> <p>The
       
    39 Feature Manager provides the functionality to </p> <ul>
       
    40 <li id="GUID-946849BE-FD32-5C15-A14D-652962D7B907"><p>query features and report
       
    41 on them, </p> </li>
       
    42 <li id="GUID-97184F11-834D-510B-A9C5-685E87ADC256"><p>modify the status of
       
    43 features, and </p> </li>
       
    44 <li id="GUID-A7A9F8C0-21A1-5017-9DEA-334DA2345692"><p>set up notification
       
    45 of changes to features. </p> </li>
       
    46 </ul> </section>
       
    47 <section id="GUID-B0C40DD9-CE3F-5855-AD6C-C56140CB27FF"><title>Components</title> <ul>
       
    48 <li id="GUID-854A0F17-CC56-5673-9BA4-49E2D36AEEA2"><p>Feature Manager Client
       
    49 provides the complete functionality required for feature management. </p> </li>
       
    50 <li id="GUID-FEF9EA74-AC3B-507E-BFCA-599CEEBA3C4D"><p>Feature Manager Server
       
    51 maintains the table containing the list of features available on the device. </p> </li>
       
    52 <li id="GUID-EB3A9157-0659-5288-8FB8-18379EB2EE62"><p>Feature Discovery provides
       
    53 the functionality to discover if a feature or feature set is available but
       
    54 not to enable, disable or modify features. </p> </li>
       
    55 </ul> <p>Feature flags were formerly managed using the Feature Registry component,
       
    56 which has now been deprecated. The old Feature Registry API calls continue
       
    57 to be supported, but the old implementation has been scrapped in favour of
       
    58 wrapper functions which call Feature Manager. </p> </section>
       
    59 <section><title>Using Feature Manager</title> <p>Feature flags, which are
       
    60 held in the feature database, track changes to the status of features. It
       
    61 is important to know that modifications through Feature Manager do not modify
       
    62 the features themselves, though feature flags may be used by other components
       
    63 which actually modify features. </p> <p>The Feature Manager provides the functionality
       
    64 to: </p> <ul>
       
    65 <li id="GUID-9D4F29E1-3E82-5527-8F49-C77346235CF2"><p>report the availability
       
    66 of feature flags, </p> </li>
       
    67 <li id="GUID-6A2B037D-46C6-595A-A9BF-3FBEBE4A063B"><p>enable and disable feature
       
    68 flags, </p> </li>
       
    69 <li id="GUID-262022F4-D777-5FD1-961E-6FDF22E77BC0"><p>modify the status of
       
    70 feature flags and the data associated with them, and </p> </li>
       
    71 <li id="GUID-893BC294-3503-5020-A507-0CBC455CB269"><p>set up notification
       
    72 of changes to the status of feature flags. </p> </li>
       
    73 </ul> <p>The <xref href="GUID-1A22E574-831B-5D00-98BD-0DFFA9CC09A0.dita">Feature
       
    74 Manager Tutorial</xref> provides detailed instructions on how to perform these
       
    75 tasks. </p> </section>
       
    76 </conbody><related-links>
       
    77 <link href="GUID-1568493D-0384-5FBD-816B-60A4817CEF0C.dita"><linktext>Feature Manager
       
    78 Guide</linktext></link>
       
    79 <link href="GUID-6F716E31-490E-5CA1-871A-D8D1661E3078.dita"><linktext>Feature Manager
       
    80 Installation                 Tutorial</linktext></link>
       
    81 <link href="GUID-D01C4682-619E-501E-8992-9F7FA35D7682.dita"><linktext>Feature Manager
       
    82 Modification                 Tutorials</linktext></link>
       
    83 <link href="GUID-1A22E574-831B-5D00-98BD-0DFFA9CC09A0.dita"><linktext>Feature Manager
       
    84 Querying                 Tutorials</linktext></link>
       
    85 <link href="GUID-910780A3-D6AB-5EE2-966A-5F228AC5804F.dita"><linktext>Feature Manager
       
    86 Notification                 Tutorials</linktext></link>
       
    87 <link href="GUID-F2489DE2-18E2-5C5B-A174-49B5B7A64A7C.dita"><linktext>Feature Manager
       
    88 Reporting                 Tutorials</linktext></link>
       
    89 </related-links></concept>