<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE SystemDefinition [
<!ELEMENT SystemDefinition ( systemModel )>
<!ATTLIST SystemDefinition
name CDATA #REQUIRED
schema CDATA #REQUIRED
>
<!-- all paths are relative to the environment variable specified by the root attribute, or SOURCEROOT if not. -->
<!-- System Model Section of DTD -->
<!ELEMENT systemModel (layer+)>
<!ELEMENT layer (block* | collection*)*>
<!-- Kernel Services, Base Services, OS Services, Etc -->
<!ATTLIST layer
name CDATA #REQUIRED
long-name CDATA #IMPLIED
levels NMTOKENS #IMPLIED
span CDATA #IMPLIED
>
<!ELEMENT block (subblock* | collection*)*>
<!-- Generic OS services, Comms Services, etc -->
<!ATTLIST block
levels NMTOKENS #IMPLIED
span CDATA #IMPLIED
level NMTOKEN #IMPLIED
name CDATA #REQUIRED
long-name CDATA #IMPLIED
>
<!ELEMENT subblock (collection)*>
<!-- Cellular Baseband Services, Networking Services, etc -->
<!ATTLIST subblock
name CDATA #REQUIRED
long-name CDATA #IMPLIED
>
<!ELEMENT collection (component)*>
<!-- Screen Driver, Content Handling, etc -->
<!ATTLIST collection
name CDATA #REQUIRED
long-name CDATA #IMPLIED
level NMTOKEN #IMPLIED
>
<!ELEMENT component (unit)*>
<!-- contains units or is a package or prebuilt -->
<!ATTLIST component
name CDATA #REQUIRED
long-name CDATA #IMPLIED
deprecated CDATA #IMPLIED
introduced CDATA #IMPLIED
contract CDATA #IMPLIED
plugin (Y|N) "N"
filter CDATA #IMPLIED
class NMTOKENS #IMPLIED
supports CDATA #IMPLIED
purpose ( optional | mandatory | development ) "optional"
>
<!ELEMENT unit EMPTY >
<!-- must be buildable (bld.inf) -->
<!-- bldFile may someday be removed in favour of mrp -->
<!ATTLIST unit
mrp CDATA #IMPLIED
filter CDATA #IMPLIED
bldFile CDATA #IMPLIED
root CDATA #IMPLIED
version NMTOKEN #IMPLIED
prebuilt NMTOKEN #IMPLIED
late (Y|N) #IMPLIED
priority CDATA #IMPLIED
>
]>
<SystemDefinition name="Symbian^3" schema="2.0.1">
<systemModel>
<layer name="adaptation" long-name="Adaptation" levels="low mw high">
<block name="stubs" level="high" long-name="Stubs" levels="stub">
<collection name="s60_stubs" level="stub">
<component name="audiostubs" long-name="Audio Stubs">
<unit bldFile="adaptation/stubs/audiostubs/group"/>
</component>
<component name="btaudioadaptation_stub" long-name="Bluetooth Audio Adaptation Stub">
<unit bldFile="adaptation/stubs/btaudioadaptation_stub/group"/>
</component>
<component name="drm_stubs" long-name="DRM Stubs">
<unit bldFile="adaptation/stubs/drm_stubs/group"/>
</component>
<component name="ocrsrv_stub" long-name="OCR Services Stub">
<unit bldFile="adaptation/stubs/ocrsrv_stub/group"/>
</component>
<component name="omasuplasnconverterstubimpl" long-name="OMA SUPL ASN Converter Stub Implementation">
<unit bldFile="adaptation/stubs/omasuplasnconverterstubimpl/group"/>
</component>
<component name="posmsgpluginreferenceimpl" long-name="POS Message Plugin Reference Implementation" plugin="Y">
<unit bldFile="adaptation/stubs/posmsgpluginreferenceimpl/group"/>
</component>
<component name="srsfenginestub" long-name="SRSF Engine Stub">
<unit bldFile="adaptation/stubs/srsfenginestub/group"/>
</component>
<component name="power_save_display_mode_stub" long-name="Power Save Display Mode Stub">
<unit bldFile="adaptation/stubs/power_save_display_mode_stub/group"/>
</component>
<component name="systemswstubs" long-name="System Software Stubs">
<unit bldFile="adaptation/stubs/systemswstubs/group"/>
</component>
<component name="tactileclickplugin_stub" long-name="Tactile Click Plugin Stub" plugin="Y">
<unit bldFile="adaptation/stubs/tactileclickplugin_stub/group"/>
</component>
<component name="wlanhwinit_stub" long-name="WLAN Hardware Init Stub">
<unit bldFile="adaptation/stubs/wlanhwinit_stub/group"/>
</component>
</collection>
</block>
<block name="beagleboard" level="low" long-name="Beagle Board" levels="hw-if">
<collection name="omap3530" long-name="OMAP 3530" level="hw-if">
<component name="omap3530_build" long-name="Beagle Board Common" introduced="^3" purpose="optional" filter="sf_build">
<unit bldFile="adaptation/beagleboard/omap3530" mrp="adaptation/beagleboard/omap3530/base_beagle.mrp"/>
</component>
<component name="omap3530_kernel" long-name="Beagle Board Kernel" introduced="^3" purpose="optional" filter="sf_build">
<unit bldFile="adaptation/beagleboard/omap3530/kernel"/>
</component>
<component name="beagleboard_Baseport" long-name="Beagle Board Baseport" introduced="^3" purpose="optional" filter="sf_build">
<unit bldFile="adaptation/beagleboard/omap3530/beagleboard"/>
</component>
</collection>
</block>
<block name="qemu" level="low" long-name="QEMU and Baseport" levels="hw-if">
<collection name="qemu_baseport" long-name="Baseport" level="hw-if">
<component name="syborg" long-name="Syborg" introduced="^2" purpose="optional" filter="sf_build">
<unit bldFile="adaptation/qemu/baseport/syborg" mrp="adaptation/qemu/baseport/syborg/syborg.mrp"/>
</component>
</collection>
</block>
</layer>
<layer name="os" long-name="OS" levels="hw services">
<block name="kernelhwsrv" level="hw" long-name="Kernel and Hardware Services" levels="hw-if adaptation framework test">
<collection name="brdbootldr" long-name="Board Boot Loader" level="hw-if">
<component name="ubootldr" long-name="Boot Loader" introduced="9.2" purpose="optional">
<unit mrp="os/kernelhwsrv/brdbootldr/ubootldr/base_ubootldr.mrp"/>
</component>
</collection>
<collection name="bsptemplate" long-name="Board Support Package Template" level="hw-if">
<component name="asspandvariant" long-name="Template ASSP and Variant" introduced="6.0" purpose="development">
<unit bldFile="os/kernelhwsrv/bsptemplate/asspandvariant/template_variant" mrp="os/kernelhwsrv/bsptemplate/asspandvariant/base_template.mrp"/>
</component>
</collection>
<collection name="kernel" long-name="Kernel Architecture" level="adaptation">
<component name="eka" long-name="Kernel Architecture" introduced="8.0" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/kernel/eka" mrp="os/kernelhwsrv/kernel/eka/base_e32.mrp"/>
</component>
</collection>
<collection name="kerneltest" long-name="Kernel Test" level="hw-if">
<component name="e32utils" long-name="E32 Utilities" purpose="development">
<unit bldFile="os/kernelhwsrv/kerneltest/e32utils/group" mrp="os/kernelhwsrv/kerneltest/e32utils/group/base_e32utils.mrp"/>
</component>
<component name="e32test" long-name="E32 Tests" purpose="development">
<unit bldFile="os/kernelhwsrv/kerneltest/e32test/group" mrp="os/kernelhwsrv/kerneltest/e32test/group/base_e32test.mrp"/>
</component>
<component name="f32test" long-name="File Server Tests" purpose="development">
<unit bldFile="os/kernelhwsrv/kerneltest/f32test/group" mrp="os/kernelhwsrv/kerneltest/f32test/group/base_f32test.mrp"/>
</component>
</collection>
<collection name="ldds" long-name="Logical Device Drivers" level="adaptation">
<component name="ethernetldd" long-name="Ethernet Drivers" purpose="optional">
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/ethernet" mrp="os/kernelhwsrv/kernel/eka/drivers/ethernet/base_e32_drivers_ethernet.mrp"/>
</component>
<component name="audioldd" long-name="Audio Drivers" introduced="8.1b" purpose="optional">
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/soundsc" mrp="os/kernelhwsrv/kernel/eka/drivers/soundsc/base_e32_drivers_sound.mrp"/>
</component>
<component name="serialldd" long-name="Serial Port Drivers" purpose="optional">
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/ecomm" mrp="os/kernelhwsrv/kernel/eka/drivers/ecomm/base_e32_drivers_ecomm.mrp"/>
</component>
<component name="legacydrivers" long-name="Legacy Drivers" purpose="optional">
<unit mrp="os/kernelhwsrv/kernel/eka/drivers/adc/base_e32_drivers_adc.mrp"/>
</component>
<component name="locmedia" long-name="Local Media Subsystem" introduced="8.1b" purpose="mandatory">
<!-- these are LDDs for storage media-->
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/locmedia" mrp="os/kernelhwsrv/kernel/eka/drivers/locmedia/base_e32_drivers_locmedia.mrp"/>
</component>
<component name="runmodedebugger" long-name="Run Mode Debugger" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/debug/group" mrp="os/kernelhwsrv/kernel/eka/drivers/debug/group/base_e32_drivers_debug.mrp"/>
</component>
<component name="btrace" long-name="Kernel Trace Tool" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/trace" mrp="os/kernelhwsrv/kernel/eka/drivers/trace/base_e32_drivers_trace.mrp"/>
</component>
<component name="cameraldd" long-name="Camera Drivers" introduced="^3" purpose="optional">
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/camerasc" mrp="os/kernelhwsrv/kernel/eka/drivers/camerasc/base_drivers_camerasc.mrp"/>
</component>
<component name="displayldd" long-name="Display Drivers" introduced="^3" purpose="optional">
<!-- owned and maintained by graphics package. To be moved there as soon as technical limitations are resolved -->
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/display" mrp="os/kernelhwsrv/kernel/eka/drivers/display/base_e32_drivers_display.mrp"/>
</component>
<component name="usbclientdrivers" long-name="USB Client Drivers" introduced="8.1b" purpose="optional">
<!-- owned and maintained by usb package. To be moved there as soon as technical limitations are resolved -->
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/usbc" mrp="os/kernelhwsrv/kernel/eka/drivers/usbc/base_e32_drivers_usbcli.mrp"/>
</component>
<component name="usbdescriptors" long-name="USB Descriptors" purpose="optional">
<!-- owned and maintained by usb package. To be moved there as soon as technical limitations are resolved -->
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/usbho/usbdescriptors" mrp="os/kernelhwsrv/kernel/eka/drivers/usbho/usbdescriptors/base_drivers_usbdescriptors.mrp"/>
</component>
<component name="usbdi_utils" long-name="USB DI Utils" purpose="optional">
<!-- owned and maintained by usb package. To be moved there as soon as technical limitations are resolved -->
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/usbho/usbdi_utils" mrp="os/kernelhwsrv/kernel/eka/drivers/usbho/usbdi_utils/base_drivers_usbdi_utils.mrp"/>
</component>
</collection>
<collection name="driversupport" long-name="Generic Driver Support" level="hw-if">
<component name="mediadrivers" long-name="Media Drivers" purpose="optional">
<!-- these are for storage media-->
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/media" mrp="os/kernelhwsrv/kernel/eka/drivers/media/base_e32_drivers_media.mrp"/>
</component>
<component name="genericboardsupport" long-name="Generic Board Support" purpose="optional">
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/bsp" mrp="os/kernelhwsrv/kernel/eka/drivers/bsp/base_e32_drivers_bsp.mrp"/>
</component>
</collection>
<collection name="userlibandfileserver" long-name="User Library and File Server" level="framework">
<component name="euser" long-name="User Library" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/kernel/eka/euser" mrp="os/kernelhwsrv/kernel/eka/euser/base_e32_euser.mrp"/>
</component>
<component name="compsupp" long-name="Compiler Runtime Support" filter="gt" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/kernel/eka/compsupp" mrp="os/kernelhwsrv/kernel/eka/compsupp/base_e32_compsupp.mrp"/>
</component>
<component name="fileserver" long-name="File Server" filter="gt" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/group" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/group/base_f32.mrp"/>
</component>
<component name="estart" long-name="Base Starter" filter="gt" purpose="optional">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/estart" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/estart/base_f32_estart.mrp"/>
</component>
<component name="domainmgr" long-name="Domain Manager" introduced="8.1b" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/domainmgr/group" mrp="os/kernelhwsrv/userlibandfileserver/domainmgr/group/base_domain.mrp"/>
</component>
</collection>
<collection name="filesystems" long-name="File Systems" level="framework">
<component name="romfs" long-name="ROM File System" filter="gt" purpose="optional" plugin="Y">
<unit mrp="os/kernelhwsrv/userlibandfileserver/fileserver/srom/base_f32_srom.mrp"/>
</component>
<component name="rofs" long-name="ROFS" filter="gt" purpose="optional" plugin="Y">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/srofs" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/srofs/base_f32_srofs.mrp"/>
</component>
<component name="usbmsfs" long-name="USB Mass Storage File System" filter="gt" purpose="optional" plugin="Y">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/smassstorage" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/smassstorage/base_f32_smassstorage.mrp"/>
</component>
<component name="usbhostmssrv" long-name="USB Host Mass Storage Server" filter="gt" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/shostmassstorage" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/shostmassstorage/base_f32_shostmassstorage.mrp"/>
</component>
<component name="fat32fs" long-name="FAT32 File System" filter="gt" purpose="optional" plugin="Y">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/sfat32" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/sfat32/base_f32_sfat32.mrp"/>
</component>
<component name="fatfs" long-name="FAT File System" filter="gt" purpose="optional" plugin="Y">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/sfat" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/sfat/base_f32_sfat.mrp"/>
</component>
<component name="compfs" long-name="Composite File System" filter="gt" purpose="optional" plugin="Y">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/scomp" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/scomp/base_f32_scomp.mrp"/>
</component>
</collection>
<collection name="halservices" long-name="HAL Services" level="framework">
<component name="hal" long-name="User-Side Hardware Abstraction" introduced="6.0" purpose="optional">
<unit bldFile="os/kernelhwsrv/halservices/hal" mrp="os/kernelhwsrv/halservices/hal/base_hal.mrp"/>
</component>
</collection>
<collection name="textmodeshell" long-name="Text Mode Shell" level="test">
<component name="e32wsrv" long-name="Text Window Server" purpose="optional">
<unit bldFile="os/kernelhwsrv/kernel/eka/ewsrv" mrp="os/kernelhwsrv/kernel/eka/ewsrv/base_e32_ewsrv.mrp"/>
</component>
<component name="textshell" long-name="Text Shell" filter="gt" purpose="development">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/etshell" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/etshell/base_f32_eshell.mrp"/>
</component>
</collection>
<collection name="baseapitest" long-name="Base API Tests" level="test"/>
<collection name="kernelhwsrv_info" long-name="Kernel and Hardware Services Info" level="test">
<component name="kernelhwsrv_metadata" long-name="Kernel and Hardware Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/kernelhwsrv/kernelhwsrv_info/kernelhwsrv_metadata/kernelhwsrv_metadata.mrp"/>
</component>
</collection>
</block>
<block name="boardsupport" level="hw" long-name="Board Support" levels="bsp test 2 3 config">
<collection name="emulator" long-name="Emulator" level="bsp">
<component name="emulatorbsp" long-name="Emulator BSP" purpose="optional">
<unit bldFile="os/boardsupport/emulator/emulatorbsp" mrp="os/boardsupport/emulator/emulatorbsp/base_wins.mrp"/>
</component>
</collection>
<collection name="haitest" long-name="HAI Test Suites" level="test">
<component name="bspsvs" long-name="BSP Verification Suite" introduced="^2" purpose="development">
<unit mrp="os/boardsupport/haitest/bspsvs/group/bspsvs.mrp"/>
</component>
</collection>
<collection name="boardsupport_info" long-name="Board Support Info" level="config">
<component name="boardsupport_metadata" long-name="Board Support Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/boardsupport/boardsupport_info/boardsupport_metadata/boardsupport_metadata.mrp"/>
</component>
</collection>
</block>
<block name="buildtools" level="hw" long-name="Build Tools" levels="bld mw fw ui">
<collection name="bldsystemtools" long-name="Build System Tools" level="bld">
<component name="sysdeftools" long-name="System Definition Tools" purpose="development" introduced="^2">
<unit mrp="os/buildtools/bldsystemtools/sysdeftools/group/sysdeftools.mrp"/>
</component>
<component name="commonbldutils" long-name="Common Utils" purpose="development">
<unit mrp="os/buildtools/bldsystemtools/commonbldutils/tools_utils_common.mrp"/>
</component>
</collection>
<collection name="toolsandutils" long-name="Tools and Utils" level="mw">
<component name="productionbldtools" long-name="Production Build Tools" filter="gt" purpose="development">
<unit mrp="os/buildtools/toolsandutils/productionbldtools/product_tools.mrp"/>
</component>
<component name="e32tools" long-name="E32 Tools" deprecated="^2" purpose="development" class="PC">
<unit bldFile="os/buildtools/toolsandutils/e32tools/group" mrp="os/buildtools/toolsandutils/e32tools/group/tools_e32tools.mrp"/>
</component>
<component name="autotest" long-name="Autotest" purpose="development">
<unit bldFile="os/buildtools/toolsandutils/autotest/group" mrp="os/buildtools/toolsandutils/autotest/group/tools_autotest.mrp"/>
</component>
</collection>
<collection name="sbsv1_os" long-name="Symbian Build System v1" level="fw">
<component name="e32toolp" long-name="E32 Perl Tools" purpose="development" filter="sf_build" class="PC">
<unit mrp="os/buildtools/sbsv1_os/e32toolp/group/tools_e32toolp.mrp" bldFile="os/buildtools/sbsv1_os/e32toolp/group"/>
</component>
</collection>
<collection name="imgtools_os" long-name="Image Tools" level="fw">
<component name="romkiteka2" long-name="ROMKIT EKA2" deprecated="^2" purpose="development">
<unit bldFile="os/buildtools/imgtools_os/romkiteka2/group" mrp="os/buildtools/imgtools_os/romkiteka2/group/tools_romkit.mrp"/>
</component>
</collection>
<collection name="misccomponents" long-name="Misc Components" level="mw">
<component name="emulatorlauncher" long-name="Emulator Launcher" filter="gt" purpose="development">
<unit bldFile="os/buildtools/misccomponents/emulatorlauncher/group" mrp="os/buildtools/misccomponents/emulatorlauncher/group/tools_sdk_eng_emulator_launcher.mrp"/>
</component>
</collection>
<collection name="buildtools_info" long-name="Build Tools Info" level="ui">
<component name="buildtools_metadata" long-name="Build Tools Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/buildtools/buildtools_info/buildtools_metadata/buildtools_metadata.mrp"/>
</component>
</collection>
</block>
<block name="ossrv" level="services" long-name="Generic OS Services" levels="physical-abstraction app-libs encoding translation data-services utilities">
<collection name="ossrv_pub" long-name="Generic OS Services Public Interfaces" level="utilities">
<component name="boost_apis" long-name="Boost APIs" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/boost_apis/group"/>
</component>
<component name="cpp_wrappers" long-name="Cpp wrappers" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/cpp_wrappers/group"/>
</component>
<component name="character_type_apis" long-name="Character Type APIs" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/character_type_apis/group"/>
</component>
<component name="compiler_specific_runtime_support" long-name="Compiler Specific Runtime Support" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/compiler_specific_runtime_support/group"/>
</component>
<component name="ossrv_configuration_api" long-name="Generic OS Services Configuration API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/configuration/group"/>
</component>
<component name="crypto_authentication_codes_and_hash_functions_api" long-name="Crypto Authentication Codes and Hash Functions API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/crypto_authentication_codes_and_hash_functions_api/group"/>
</component>
<component name="crypto_auxillary_functions_api" long-name="Crypto Auxillary Functions API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/crypto_auxillary_functions_api/group"/>
</component>
<component name="crypto_certificates_api" long-name="Crypto Certificates API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/crypto_certificates_api/group"/>
</component>
<component name="crypto_inputoutput_and_data_encoding_api" long-name="Crypto Input/Output and Data Encoding API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/crypto_inputoutput_and_data_encoding_api/group"/>
</component>
<component name="crypto_public_key_cryptography_and_key_agreement_api" long-name="Crypto Public Key Cryptography and Key Agreement API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/crypto_public_key_cryptography_and_key_agreement_api/group"/>
</component>
<component name="crypto_symmetric_ciphers_api" long-name="Crypto Symmetric Ciphers API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/crypto_symmetric_ciphers_api/group"/>
</component>
<component name="crypto_utility_functions_api" long-name="Crypto Utility Functions API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/crypto_utility_functions_api/group"/>
</component>
<component name="cryptogaphy_related_api" long-name="Cryptogaphy Related API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/cryptogaphy_related_api/group"/>
</component>
<component name="ossrv_debug_api" long-name="Generic OS Services Debug API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/debug/group"/>
</component>
<component name="ossrv_exceptions_api" long-name="Generic OS Services Exceptions API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/exceptions/group"/>
</component>
<component name="gboxed" long-name="GBoxed API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/gboxed/group"/>
</component>
<component name="glib_arrays" long-name="Glib Arrays API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_arrays/group"/>
</component>
<component name="glib_asynchronous_queues" long-name="Glib Asynchronous Queues API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_asynchronous_queues/group"/>
</component>
<component name="glib_atomic_operations" long-name="Glib Atomic Operations API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_atomic_operations/group"/>
</component>
<component name="glib_automatic_string_completion" long-name="Glib Automatic String Completion API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_automatic_string_completion/group"/>
</component>
<component name="glib_balanced_binary_trees" long-name="Glib Balanced Binary Trees API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_balanced_binary_trees/group"/>
</component>
<component name="glib_basic_types" long-name="Glib Basic Types API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_basic_types/group"/>
</component>
<component name="glib_caches" long-name="Glib Caches API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_caches/group"/>
</component>
<component name="glib_character_set_conversion" long-name="Glib Character Set Conversion API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_character_set_conversion/group"/>
</component>
<component name="glib_closures" long-name="Glib Closures API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_closures/group"/>
</component>
<component name="glib_commandline_option_parser" long-name="Glib Command Line Option Parser API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_commandline_option_parser/group"/>
</component>
<component name="glib_datasets" long-name="Glib Datasets API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_datasets/group"/>
</component>
<component name="glib_date_and_time_functions" long-name="Glib Date and Time Functions API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_date_and_time_functions/group"/>
</component>
<component name="glib_doubleended_queues" long-name="Glib Double-ended Queues API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_doubleended_queues/group"/>
</component>
<component name="glib_doublylinked_lists" long-name="Glib Doubly-Linked Lists API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_doublylinked_lists/group"/>
</component>
<component name="glib_dynamic_loading_of_modules" long-name="Glib Dynamic Loading of Modules API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_dynamic_loading_of_modules/group"/>
</component>
<component name="glib_enums_and_flags" long-name="Glib Enums and Flags API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_enums_and_flags/group"/>
</component>
<component name="glib_error_reporting" long-name="Glib Error Reporting API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_error_reporting/group"/>
</component>
<component name="glib_file_utilities" long-name="Glib File Utilities API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_file_utilities/group"/>
</component>
<component name="glib_generic_values" long-name="Glib Generic Values API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_generic_values/group"/>
</component>
<component name="glib_globstyle_pattern_matching" long-name="Glib Glob-Style Pattern Matching API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_globstyle_pattern_matching/group"/>
</component>
<component name="glib_hash_tables" long-name="Glib Hash Tables API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_hash_tables/group"/>
</component>
<component name="glib_hook_functions" long-name="Glib Hook Functions API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_hook_functions/group"/>
</component>
<component name="glib_internationalization" long-name="Glib Internationalization API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_internationalization/group"/>
</component>
<component name="glib_io_channels" long-name="Glib I/O Channels API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_io_channels/group"/>
</component>
<component name="glib_keyvalue_file_parser" long-name="Glib Key-Value File Parser API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_keyvalue_file_parser/group"/>
</component>
<component name="glib_lexical_scanner" long-name="Glib Lexical Scanner API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_lexical_scanner/group"/>
</component>
<component name="glib_main_event_loop" long-name="Glib Main Event Loop API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_main_event_loop/group"/>
</component>
<component name="glib_memory_allocation" long-name="Glib Memory Allocation API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_memory_allocation/group"/>
</component>
<component name="glib_memory_slices" long-name="Glib Memory Slices API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_memory_slices/group"/>
</component>
<component name="glib_message_logging" long-name="Glib Message Logging API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_message_logging/group"/>
</component>
<component name="glib_miscellaneous_utility_functions" long-name="Glib Miscellaneous Utility Functions API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_miscellaneous_utility_functions/group"/>
</component>
<component name="glib_nary_trees" long-name="Glib N-ary Trees API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_nary_trees/group"/>
</component>
<component name="glib_parameters_and_values" long-name="Glib Parameters and Values API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_parameters_and_values/group"/>
</component>
<component name="glib_quarks" long-name="Glib Quarks API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_quarks/group"/>
</component>
<component name="glib_random_numbers" long-name="Glib Random Numbers API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_random_numbers/group"/>
</component>
<component name="glib_relations_and_tuples" long-name="Glib Relations and Tuples API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_relations_and_tuples/group"/>
</component>
<component name="glib_shellrelated_utilities" long-name="Glib Shell-related Utilities API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_shellrelated_utilities/group"/>
</component>
<component name="glib_signals" long-name="Glib Signals API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_signals/group"/>
</component>
<component name="glib_simple_xml_subset_parser" long-name="Glib Simple XML Subset Parser API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_simple_xml_subset_parser/group"/>
</component>
<component name="glib_singlylinked_lists" long-name="Glib Singly-Linked Lists API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_singlylinked_lists/group"/>
</component>
<component name="glib_spawning_processes" long-name="Glib Spawning Processes API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_spawning_processes/group"/>
</component>
<component name="glib_standard_macros" long-name="Glib Standard Macros API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_standard_macros/group"/>
</component>
<component name="glib_string_utility_functions" long-name="Glib String Utility Functions API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_string_utility_functions/group"/>
</component>
<component name="glib_strings" long-name="Glib Strings API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_strings/group"/>
</component>
<component name="glib_thread_pools" long-name="Glib Thread Pools API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_thread_pools/group"/>
</component>
<component name="glib_threads" long-name="Glib Threads API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_threads/group"/>
</component>
<component name="glib_timers" long-name="Glib Timers API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_timers/group"/>
</component>
<component name="glib_unicode_manipulation" long-name="Glib Unicode Manipulation API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_unicode_manipulation/group"/>
</component>
<component name="glib_value_arrays" long-name="Glib Value Arrays API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_value_arrays/group"/>
</component>
<component name="glib_varargs_value_collection" long-name="Glib Varargs Value Collection API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/glib_varargs_value_collection/group"/>
</component>
<component name="gobject" long-name="GObject API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/gobject/group"/>
</component>
<component name="gparamspec" long-name="GParamSpec API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/gparamspec/group"/>
</component>
<component name="gtype" long-name="GType API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/gtype/group"/>
</component>
<component name="gtypemodule" long-name="GTypeModule API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/gtypemodule/group"/>
</component>
<component name="gtypeplugin" long-name="GTypePlugin API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/gtypeplugin/group"/>
</component>
<component name="io_stream_api" long-name="I/O stream API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/io_stream_api/group"/>
</component>
<component name="localization_function_api" long-name="Localization Function API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/localization_function_api/group"/>
</component>
<component name="math_operations_api" long-name="Math Operations API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/math_operations_api/group"/>
</component>
<component name="ossrv_memory_api" long-name="Generic OS Services Memory API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/memory/group"/>
</component>
<component name="no_namespace_headers" long-name="No Namespace Headers" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/no_namespace_headers/group"/>
</component>
<component name="openc_headers" long-name="OpenC headers" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/openc_headers/group"/>
</component>
<component name="openc_wrappers" long-name="OpenC wrappers" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/openc_wrappers/group"/>
</component>
<component name="ssl_general_api" long-name="SSL General API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/ssl_general_api/group"/>
</component>
<component name="ssl_protocol_methods_api" long-name="SSL Protocol Methods API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/ssl_protocol_methods_api/group"/>
</component>
<component name="standard_compressiondecompression_api" long-name="Standard Compression/Decompression API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/standard_compressiondecompression_api/group"/>
</component>
<component name="stl" long-name="STL API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/stl/group"/>
</component>
<component name="thread_api" long-name="Thread API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/thread_api/group"/>
</component>
<component name="type_attributes" long-name="Type Attributes API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/type_attributes/group"/>
</component>
<component name="typeinfo" long-name="Type Info API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/typeinfo/group"/>
</component>
<component name="utility_apis" long-name="Utility APIs" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/utility_apis/group"/>
</component>
<component name="wide_character_classapis" long-name="Wide character class/apis" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/wide_character_classapis/group"/>
</component>
<component name="dbus_api" long-name="Dbus API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/dbus/group"/>
</component>
<component name="dbus-glib" long-name="Dbus-glib API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/dbus-glib/group"/>
</component>
</collection>
<collection name="ossrv_plat" long-name="Generic OS Services Platform Interfaces" level="utilities">
<component name="libutils_apis" long-name="Utility Library APIs" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_plat/libutils/group"/>
</component>
</collection>
<collection name="stdlibs" long-name="Standard Libraries" level="translation">
<component name="libz" filter="s60" long-name="Z Compression Library">
<unit bldFile="os/ossrv/stdlibs/libz/group"/>
</component>
<component name="libcrypt" filter="s60" long-name="Crypt Library">
<unit bldFile="os/ossrv/stdlibs/libcrypt/group"/>
</component>
</collection>
<collection name="ssl" long-name="SSL" level="data-services">
<component name="libcrypto" filter="s60" long-name="Crypto Library">
<unit bldFile="os/ossrv/ssl/libcrypto/group"/>
</component>
<component name="libssl" filter="s60" purpose="development" long-name="SSL Library">
<unit bldFile="os/ossrv/ssl/libssl/group"/>
</component>
</collection>
<collection name="glib" long-name="GLib" level="utilities">
<component name="glibbackend" filter="s60" long-name="GLib Backend">
<unit bldFile="os/ossrv/glib/glibbackend/group"/>
</component>
<component name="libglib" filter="s60" long-name="GLib Library">
<unit bldFile="os/ossrv/glib/libglib/group"/>
</component>
<component name="libgthread" filter="s60" long-name="Libg Thread">
<unit bldFile="os/ossrv/glib/libgthread/group"/>
</component>
<component name="libgmodule" filter="s60" long-name="Libg Module">
<unit bldFile="os/ossrv/glib/libgmodule/group"/>
</component>
<component name="libgobject" filter="s60" long-name="Libg Object">
<unit bldFile="os/ossrv/glib/libgobject/group"/>
</component>
</collection>
<collection name="stdcpp" long-name="C++ Standard Library" level="translation">
<!-- collection is really a component. Needs to be moved down a directory -->
<component name="stdcpp_build" filter="s60" long-name="Stdcpp">
<unit bldFile="os/ossrv/stdcpp/group"/>
</component>
</collection>
<collection name="ofdbus" long-name="Open Foundation D-Bus" level="utilities">
<component name="dbus" filter="s60" long-name="D-Bus">
<unit bldFile="os/ossrv/ofdbus/dbus/group"/>
</component>
<component name="dbus-glib" filter="s60" long-name="D-Bus GLib">
<unit bldFile="os/ossrv/ofdbus/dbus-glib/group"/>
</component>
<component name="ofdbus_rom" filter="s60" long-name="D-Bus ROM">
<!-- Contains IBY for for dbus. Should remove #includes to above components and move this down a directory
Consider moving IBY file to one of the above as well and removing this component entirely -->
<unit bldFile="os/ossrv/ofdbus/group"/>
</component>
</collection>
<collection name="utilitylibraries" long-name="Utility Libraries" level="encoding">
<component name="libutils" filter="s60" long-name="Utility Library">
<unit bldFile="os/ossrv/utilitylibraries/libutils/group"/>
</component>
</collection>
<collection name="genericservices" long-name="Generic Services" level="utilities">
<component name="s60compatibilityheaders" long-name="S60 Compatibility Headers" filter="gt" purpose="optional">
<unit bldFile="os/ossrv/genericservices/s60compatibilityheaders/groupsymtb101sf" mrp="os/ossrv/genericservices/s60compatibilityheaders/groupsymtb101sf/tools_s60_header_compatsymtb101sf.mrp" version="tb101sf"/>
</component>
<component name="mimerecognitionfw" long-name="MIME Recognition Framework" purpose="mandatory">
<unit bldFile="os/ossrv/genericservices/mimerecognitionfw/group" mrp="os/ossrv/genericservices/mimerecognitionfw/group/app-framework_emime.mrp"/>
</component>
<component name="systemagent" long-name="System Agent" introduced="9.0" purpose="mandatory">
<unit bldFile="os/ossrv/genericservices/systemagent/group" mrp="os/ossrv/genericservices/systemagent/group/syslibs_sysagent2.mrp"/>
</component>
<component name="taskscheduler" long-name="Task Scheduler" introduced="6.0" purpose="optional">
<unit bldFile="os/ossrv/genericservices/taskscheduler/group" mrp="os/ossrv/genericservices/taskscheduler/group/syslibs_schsvr.mrp"/>
</component>
<component name="activebackupclient" long-name="Active Backup Client" purpose="optional">
<unit bldFile="os/ossrv/genericservices/activebackupclient/group" mrp="os/ossrv/genericservices/activebackupclient/group/connectivity_abclient.mrp"/>
</component>
<component name="syslibsdocs" long-name="Syslibs Documentation" purpose="development" class="doc">
<unit mrp="os/ossrv/genericservices/syslibsdocs/syslibs_documentation.mrp"/>
</component>
<component name="httputils" long-name="HTTP Utilities Library" introduced="6.2" purpose="optional">
<unit bldFile="os/ossrv/genericservices/httputils/group" mrp="os/ossrv/genericservices/httputils/group/application-protocols_inetprotutil.mrp"/>
</component>
</collection>
<collection name="syslibsapitest" long-name="SysLibs API Tests" level="utilities"/>
<collection name="compressionlibs" long-name="Compression Libraries" level="data-services">
<component name="ziplib" long-name="Zip Compression Library" introduced="6.0" purpose="mandatory">
<unit bldFile="os/ossrv/compressionlibs/ziplib/group" mrp="os/ossrv/compressionlibs/ziplib/group/syslibs_ezlib2.mrp"/>
</component>
</collection>
<collection name="genericopenlibs" long-name="Generic Open Libraries" level="translation">
<component name="cstdlib" long-name="C Standard Library" introduced="ER5" purpose="optional">
<unit bldFile="os/ossrv/genericopenlibs/cstdlib/group" mrp="os/ossrv/genericopenlibs/cstdlib/group/syslibs_stdlib.mrp"/>
</component>
<component name="cppstdlib" long-name="C++ Standard Library" introduced="^3" purpose="mandatory">
<unit bldFile="os/ossrv/genericopenlibs/cppstdlib/group" mrp="os/ossrv/genericopenlibs/cppstdlib/group/openenv_libstdcpp.mrp"/>
</component>
<component name="openenvcore" long-name="Open Environment Core" introduced="^2" purpose="mandatory">
<unit bldFile="os/ossrv/genericopenlibs/openenvcore/group" mrp="os/ossrv/genericopenlibs/openenvcore/group/openenv.mrp"/>
</component>
<component name="posixrealtimeextensions" long-name="POSIX Realtime Extensions" introduced="^3" purpose="optional">
<unit bldFile="os/ossrv/genericopenlibs/posixrealtimeextensions/group" mrp="os/ossrv/genericopenlibs/posixrealtimeextensions/group/oeaddons_librt.mrp"/>
</component>
</collection>
<collection name="lowlevellibsandfws" long-name="Low Level Libraries and Frameworks" level="app-libs">
<component name="pluginfw" long-name="Plugin Framework" introduced="6.2" purpose="mandatory">
<unit bldFile="os/ossrv/lowlevellibsandfws/pluginfw/Group" mrp="os/ossrv/lowlevellibsandfws/pluginfw/Group/syslibs_ecom3.mrp" version="3"/>
</component>
<component name="apputils" long-name="Application Utilities" introduced="ER5" purpose="mandatory">
<unit bldFile="os/ossrv/lowlevellibsandfws/apputils/group" mrp="os/ossrv/lowlevellibsandfws/apputils/group/syslibs_bafl.mrp"/>
</component>
<component name="genericusabilitylib" long-name="Generic Usability Library" introduced="^3" purpose="mandatory">
<unit bldFile="os/ossrv/lowlevellibsandfws/genericusabilitylib/group" mrp="os/ossrv/lowlevellibsandfws/genericusabilitylib/group/syslibs_euserhl.mrp"/>
</component>
</collection>
<collection name="ossrv_info" long-name="Generic OS Services Info" level="utilities">
<component name="ossrv_build" filter="s60" long-name="Generic OS Services Build">
<!-- exports should be moved to individual components -->
<unit bldFile="os/ossrv/group"/>
</component>
<component name="ossrv_metadata" long-name="Generic OS Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/ossrv/ossrv_info/ossrv_metadata/ossrv_metadata.mrp"/>
</component>
</collection>
</block>
<block name="persistentdata" level="services" long-name="Persistent Data Services" levels="adaptation hw-if plugin framework server app-if">
<collection name="featuremgmt" long-name="Feature Management" level="framework">
<component name="featuremgr" long-name="Feature Manager" introduced="^3" purpose="mandatory">
<unit bldFile="os/persistentdata/featuremgmt/featuremgr/group" mrp="os/persistentdata/featuremgmt/featuremgr/group/syslibs_featmgr.mrp"/>
</component>
<component name="featureregistry" long-name="Feature Registry" introduced="9.2" deprecated="^3" purpose="mandatory">
<unit bldFile="os/persistentdata/featuremgmt/featureregistry/group" mrp="os/persistentdata/featuremgmt/featureregistry/group/syslibs_featreg.mrp"/>
</component>
</collection>
<collection name="loggingservices" long-name="Logging Services" level="server">
<component name="eventlogger" long-name="Event Logger" introduced="6.0" purpose="optional">
<unit bldFile="os/persistentdata/loggingservices/eventlogger/group" mrp="os/persistentdata/loggingservices/eventlogger/group/syslibs_logeng.mrp"/>
</component>
<component name="filelogger" long-name="File Logger" introduced="ER5" purpose="optional">
<unit bldFile="os/persistentdata/loggingservices/filelogger/group" mrp="os/persistentdata/loggingservices/filelogger/group/comms-infras_flogger.mrp"/>
</component>
<component name="rfilelogger" long-name="RFile Logger" deprecated="^3" introduced="9.1" purpose="development">
<unit bldFile="os/persistentdata/loggingservices/rfilelogger/group" mrp="os/persistentdata/loggingservices/rfilelogger/group/testtools_utilities.mrp"/>
</component>
</collection>
<collection name="traceservices" long-name="Trace Services" level="server">
<component name="commsdebugutility" long-name="Comms Debug Utility" introduced="7.0s" purpose="optional">
<unit bldFile="os/persistentdata/traceservices/commsdebugutility/group" mrp="os/persistentdata/traceservices/commsdebugutility/group/comms-infras_commsdebugutility.mrp"/>
</component>
<component name="tracefw" long-name="Trace Framework" introduced="9.2" purpose="development">
<unit bldFile="os/persistentdata/traceservices/tracefw/ulogger/group" mrp="os/persistentdata/traceservices/tracefw/ulogger/group/tools_debug_trace.mrp"/>
</component>
</collection>
<collection name="persistentstorage" long-name="Persistent Storage" level="framework">
<component name="store" long-name="Store" purpose="optional">
<unit bldFile="os/persistentdata/persistentstorage/store/group" mrp="os/persistentdata/persistentstorage/store/group/syslibs_store.mrp"/>
</component>
<component name="dbms" long-name="DBMS" purpose="optional">
<unit bldFile="os/persistentdata/persistentstorage/dbms/group" mrp="os/persistentdata/persistentstorage/dbms/group/syslibs_dbms.mrp"/>
</component>
<component name="centralrepository" long-name="Central Repository" introduced="7.0s" purpose="mandatory">
<unit bldFile="os/persistentdata/persistentstorage/centralrepository/group" mrp="os/persistentdata/persistentstorage/centralrepository/group/syslibs_centralrepository.mrp"/>
</component>
<component name="sql" long-name="SQL" introduced="9.3" purpose="optional">
<unit bldFile="os/persistentdata/persistentstorage/sql/GROUP" mrp="os/persistentdata/persistentstorage/sql/GROUP/syslibs_sql.mrp"/>
</component>
<component name="sqlite3api" long-name="SQLite 3 API" introduced="^3" purpose="optional">
<unit bldFile="os/persistentdata/persistentstorage/sqlite3api/GROUP" mrp="os/persistentdata/persistentstorage/sqlite3api/GROUP/syslibs_sqlite3.mrp"/>
</component>
</collection>
<collection name="persistentdata_info" long-name="Persistent Data Services Info" level="app-if">
<component name="persistentdata_metadata" long-name="Persistent Data Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/persistentdata/persistentdata_info/persistentdata_metadata/persistentdata_metadata.mrp"/>
</component>
</collection>
</block>
<block name="devicesrv" level="services" long-name="Device Services" levels="adaptation hw-if plugin framework server app-if">
<collection name="devicesrv_pub" long-name="Device Services Public Interfaces" level="app-if">
<component name="platform_path_definitions_api" long-name="Platform Path Definitions API" filter="s60,bldmefirst" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/platform_path_definitions_api/group"/>
</component>
<component name="common_platform_security_definitions_api" long-name="Common Platform Security Definitions API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/common_platform_security_definitions_api/group"/>
</component>
<component name="feature_discovery_api" long-name="Feature Discovery API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/feature_discovery_api/group"/>
</component>
<component name="platform_environment_api" long-name="Platform Environment API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/platform_environment_api/group"/>
</component>
<component name="sensor_channel_api" long-name="Sensor Channel API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/sensor_channel_api/group"/>
</component>
<component name="sensor_definitions_api" long-name="Sensor Definitions API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/sensor_definitions_api/group"/>
</component>
<component name="version_info_api" long-name="Version Info API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/version_info_api/group"/>
</component>
<component name="accessory_monitoring_api" long-name="Accessory Monitoring API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/accessory_monitoring_api/group"/>
</component>
<component name="haptics_api" long-name="Haptics API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/haptics_api/group"/>
</component>
<component name="sensor_data_compensator_api" long-name="Sensor Data Compensator API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/sensor_data_compensator_api/group"/>
</component>
</collection>
<collection name="devicesrv_plat" long-name="Device Services Platform Interfaces" level="app-if">
<component name="configuration_file_parser_api" long-name="Configuration File Parser API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/configuration_file_parser_api/group"/>
</component>
<component name="dos_extension_plugin_api" long-name="DOS Extension Plug-In API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/dos_extension_plugin_api/group"/>
</component>
<component name="mediator_command_initiator_api" long-name="Mediator Command Initiator API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_command_initiator_api/group"/>
</component>
<component name="syslangutil_api" long-name="SysLangUtil API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/syslangutil_api/group"/>
</component>
<component name="wakeup_alarm_api" long-name="Wakeup Alarm API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/wakeup_alarm_api/group"/>
</component>
<component name="disk_and_memory_level_keys_api" long-name="Disk and Memory Level Keys API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/disk_and_memory_level_keys_api/group"/>
</component>
<component name="mediator_plugin_api" long-name="Mediator Plugin API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_plugin_api/group"/>
</component>
<component name="headset_status_api" long-name="Headset Status API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/headset_status_api/group"/>
</component>
<component name="system_startup_extension_plugin_api" long-name="System Startup Extension Plugin API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/system_startup_extension_plugin_api/group"/>
</component>
<component name="sensor_plugin_api" long-name="Sensor Plugin API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/sensor_plugin_api/group"/>
</component>
<component name="accessory_api" long-name="Accessory API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_api/group"/>
</component>
<component name="display_language_definition_api" long-name="Display Language Definition API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/display_language_definition_api/group"/>
</component>
<component name="mediator_command_responder_api" long-name="Mediator Command Responder API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_command_responder_api/group"/>
</component>
<component name="accessory_policy_definitions_api" long-name="Accessory Policy Definitions API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_policy_definitions_api/group"/>
</component>
<component name="hw_settings_api" long-name="Hardware Settings API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/hw_settings_api/group"/>
</component>
<component name="mediator_domain_definitions_api" long-name="Mediator Domain Definitions API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_domain_definitions_api/group"/>
</component>
<component name="sensor_extension_api" long-name="Sensor Extension API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/sensor_extension_api/group"/>
</component>
<component name="accessory_plugin_api" long-name="Accessory Plugin API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_plugin_api/group"/>
</component>
<component name="sae_api" long-name="SAE API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/sae_api/group"/>
</component>
<component name="accessory_control_api" long-name="Accessory Control API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_control_api/group"/>
</component>
<component name="mediator_static_registration_api" long-name="Mediator Static Registration API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_static_registration_api/group"/>
</component>
<component name="accessory_key_event_handling_api" long-name="Accessory Key Event Handling API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_key_event_handling_api/group"/>
</component>
<component name="mediator_notification_api" long-name="Mediator Notification API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_notification_api/group"/>
</component>
<component name="accessory_policy_utility_api" long-name="Accessory Policy Utility API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_policy_utility_api/group"/>
</component>
<component name="common_dsy_plugin_api" long-name="Common DSY Plugin API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/common_dsy_plugin_api/group"/>
</component>
<component name="remote_control_extension_api" long-name="Remote Control Extension API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/remote_control_extension_api/group"/>
</component>
<component name="sensor_channel_filter_api" long-name="Sensor Channel Filter API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/sensor_channel_filter_api/group"/>
</component>
<component name="dos_extension_api" long-name="DOS Extension API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/dos_extension_api/group"/>
</component>
<component name="accessory_audio_control_api" long-name="Accessory Audio Control API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_audio_control_api/group"/>
</component>
<component name="mediator_event_consumer_api" long-name="Mediator Event Consumer API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_event_consumer_api/group"/>
</component>
<component name="shared_data_api" long-name="Shared Data API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/shared_data_api/group"/>
</component>
<component name="accessory_settings_api" long-name="Accessory Settings API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_settings_api/group"/>
</component>
<component name="accessory_bluetooth_control_api" long-name="Accessory Bluetooth Control API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_bluetooth_control_api/group"/>
</component>
<component name="extended_version_info_api" long-name="Extended Version Info API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/extended_version_info_api/group"/>
</component>
<component name="mediator_event_provider_api" long-name="Mediator Event Provider API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_event_provider_api/group"/>
</component>
<component name="tv_out_config_api" long-name="TV Out Config API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/tv_out_config_api/group"/>
</component>
<component name="tspclientmapper_api" long-name="TSP Client Mapper API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/tspclientmapper_api/group"/>
</component>
<component name="powersave_api" long-name="Power Save API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/powersave_api/group"/>
</component>
<component name="powersave_definitions_api" long-name="Power Save Definitions API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/powersave_definitions_api/group"/>
</component>
<component name="powersave_plugin_api" long-name="Power Save Plugin API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/powersave_plugin_api/group"/>
</component>
<component name="extended_version_info_plugin_api" long-name="Extended Version Info Plugin API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/extended_version_info_plugin_api/group"/>
</component>
<component name="haptics_plugin_api" long-name="Haptics Plugin API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/haptics_plugin_api/group"/>
</component>
<component name="haptics_effect_data_getter_plugin_api" long-name="Haptics Effect Data Getter Plugin API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/haptics_effect_data_getter_plugin_api/group"/>
</component>
<component name="haptics_packetizer_plugin_api" long-name="Haptics Packetizer Plugin API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/haptics_packetizer_plugin_api/group"/>
</component>
<component name="tiltcompensation_api" long-name="Tilt Compensation API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/tiltcompensation_api/group"/>
</component>
<component name="disk_notification_handler_api" long-name="Disk Notification Handler API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/disk_notification_handler_api/group"/>
</component>
<component name="accessory_policy_usb_audio_api" long-name="Accessory Policy USB Audio API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_policy_usb_audio_api/group"/>
</component>
<component name="accessory_policy_hdmi_audio_api" long-name="Accessory Policy HDMI Audio API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_policy_hdmi_audio_api/group"/>
</component>
<component name="sensor_data_compensator_plugin_api" long-name="Sensor Data Compensator Plugin API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/sensor_data_compensator_plugin_api/group"/>
</component>
<component name="ddc_access_api" long-name="DDC Access API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/ddc_access_api/group"/>
</component>
<component name="tv_out_behaviour_api" long-name="TV Out Behaviour API" filter="s60" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/tv_out_behaviour_api/group"/>
</component>
</collection>
<collection name="accessoryservices" long-name="Accessory Services" level="framework">
<component name="accessorymonitor" filter="s60" long-name="Accessory Monitor">
<unit bldFile="os/devicesrv/accessoryservices/accessorymonitor/group"/>
</component>
<component name="accessoryremotecontrol" filter="s60" long-name="Accessory Remote Control">
<unit bldFile="os/devicesrv/accessoryservices/accessoryremotecontrol/group"/>
</component>
<component name="accessoryserver" filter="s60" long-name="Accessory Server">
<unit bldFile="os/devicesrv/accessoryservices/accessoryserver/group"/>
</component>
<component name="pluggeddisplay" filter="s60" long-name="Plugged Display" introduced="^3">
<unit bldFile="os/devicesrv/accessoryservices/pluggeddisplay/group"/>
</component>
<component name="headsetstatusapi" filter="s60" long-name="Headset Status API">
<unit bldFile="os/devicesrv/accessoryservices/headsetstatusapi/group"/>
</component>
<component name="tspclientmapper" filter="s60" long-name="TSP Client Mapper">
<unit bldFile="os/devicesrv/accessoryservices/tspclientmapper/group"/>
</component>
<component name="remotecontrolfw" long-name="Remote Control Framework" introduced="9.1" purpose="optional">
<unit bldFile="os/devicesrv/accessoryservices/remotecontrolfw/group" mrp="os/devicesrv/accessoryservices/remotecontrolfw/group/bluetooth_remotecontrol.mrp"/>
</component>
<component name="gid_pc_tool" filter="s60" long-name="Generic ID PC Tool" class="tool PC">
<unit bldFile="os/devicesrv/accessoryservices/gid_pc_tool/group"/>
</component>
</collection>
<collection name="commonservices" long-name="Common Services" level="app-if">
<component name="commonengine" filter="s60" long-name="Common Engine">
<unit bldFile="os/devicesrv/commonservices/commonengine/group"/>
</component>
<component name="commonengineresources" filter="s60" long-name="Common Engine Resources" class="config">
<unit bldFile="os/devicesrv/commonservices/commonengineresources/group"/>
</component>
<component name="platformenv" filter="s60" long-name="Platform Environment">
<unit bldFile="os/devicesrv/commonservices/platformenv/group"/>
</component>
<component name="sysutil" long-name="System Utilities" purpose="mandatory" introduced="ER5">
<unit bldFile="os/devicesrv/commonservices/sysutil/group" mrp="os/devicesrv/commonservices/sysutil/group/sysutil.mrp"/>
</component>
<component name="activitymanager" long-name="Activity Manager" purpose="mandatory" introduced="ER5">
<unit bldFile="os/devicesrv/commonservices/activitymanager/group" mrp="os/devicesrv/commonservices/activitymanager/group/activitymanager.mrp"/>
</component>
</collection>
<collection name="dosservices" long-name="Domestic Operating System Services" level="hw-if">
<component name="commondsy" filter="s60" long-name="Common DSY" plugin="Y">
<unit bldFile="os/devicesrv/dosservices/commondsy/group"/>
</component>
<component name="dosserver" filter="s60" long-name="Domestic OS Server">
<unit bldFile="os/devicesrv/dosservices/dosserver/group"/>
</component>
</collection>
<collection name="sensorservices" long-name="Sensor Services" level="framework">
<component name="sensorserver" filter="s60" long-name="Sensor Server">
<unit bldFile="os/devicesrv/sensorservices/sensorserver/group"/>
</component>
<component name="orientationssy" filter="s60" long-name="Orientation SSY" plugin="Y">
<unit bldFile="os/devicesrv/sensorservices/orientationssy/group"/>
</component>
<component name="tiltcompensationssy" filter="s60" long-name="Tilt Compensation SSY" plugin="Y">
<unit bldFile="os/devicesrv/sensorservices/tiltcompensationssy/group"/>
</component>
<component name="sensordatacompensator" filter="s60" long-name="Sensor Data Compensator">
<unit bldFile="os/devicesrv/sensorservices/sensordatacompensator/group"/>
</component>
</collection>
<collection name="hwrmhaptics" long-name="HWRM Haptics" level="plugin">
<component name="hapticseffectdatagetterfw" filter="s60" long-name="Haptics Effect Data Getter Framework">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticseffectdatagetterfw/group"/>
</component>
<component name="hapticspluginservice" filter="s60" long-name="Haptics Plugin Service">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticspluginservice/group"/>
</component>
<component name="hapticspacketizer" filter="s60" long-name="Haptics Packetizer">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticspacketizer/group"/>
</component>
<component name="hapticspluginmanager" filter="s60" long-name="Haptics Plugin Manager">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticspluginmanager/group"/>
</component>
<component name="hapticsserver" filter="s60" long-name="Haptics Server">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticsserver/group"/>
</component>
<component name="hapticsclient" filter="s60" long-name="Haptics Client">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticsclient/group"/>
</component>
<component name="hwrmhaptics_build" filter="s60" long-name="HWRM Haptics Build">
<!-- move these exports into the appropriate above components and delete this component-->
<unit bldFile="os/devicesrv/hwrmhaptics/group"/>
</component>
</collection>
<collection name="mediator" long-name="Mediator" level="app-if">
<!--collection is really a component. Move it down a directory -->
<component name="mediator_build" filter="s60" long-name="Mediator Build">
<unit bldFile="os/devicesrv/mediator/group"/>
</component>
</collection>
<collection name="psmservices" long-name="Power Save Mode Services" level="app-if">
<component name="psmserver" filter="s60" long-name="PSM Server">
<unit bldFile="os/devicesrv/psmservices/psmserver/group"/>
</component>
</collection>
<collection name="resourcemgmt" long-name="Resource Management" level="hw-if">
<component name="hwrmfmtxwatcherplugin" filter="s60" long-name="HWRM FM Transmitter Watcher Plugin" plugin="Y">
<unit bldFile="os/devicesrv/resourcemgmt/hwrmfmtxwatcherplugin/group"/>
</component>
<component name="hwrmtargetmodifierplugin" filter="s60" long-name="HWRM Target Modifier Plugin" plugin="Y">
<!-- uncomment the unit when configuration is in place, it's currently #included from resourcemgmt_build,
may need to -->
<!-- <unit bldFile="resourcemgmt/hwrmtargetmodifierplugin/group"/> -->
</component>
<component name="vibractrl" filter="s60" long-name="Vibra Control" deprecated="9.1">
<unit bldFile="os/devicesrv/resourcemgmt/vibractrl/group"/>
</component>
<component name="hwresourcesmgr" long-name="Hardware Resources Manager" introduced="^2" purpose="optional">
<unit bldFile="os/devicesrv/resourcemgmt/hwresourcesmgr/group" mrp="os/devicesrv/resourcemgmt/hwresourcesmgr/group/telephony_hwrm.mrp"/>
</component>
<component name="hwresourcesmgrconfig" long-name="Hardware Resources Manager Config" introduced="^3" purpose="optional" class="config">
<unit bldFile="os/devicesrv/resourcemgmt/hwresourcesmgrconfig" mrp="os/devicesrv/resourcemgmt/hwresourcesmgrconfig/telephony_hwrm-config.mrp"/>
</component>
<component name="resourcemgmt_build" filter="s60" long-name="Resource Management Build">
<!-- Move exports to a self-contained component.
This needs to be kept around until configuration is in place -->
<unit bldFile="os/devicesrv/resourcemgmt/group"/>
</component>
<component name="powerandmemorynotificationservice" long-name="Power and Memory Notification Service" introduced="6.0" purpose="mandatory">
<unit bldFile="os/devicesrv/resourcemgmt/powerandmemorynotificationservice/group" mrp="os/devicesrv/resourcemgmt/powerandmemorynotificationservice/group/syslibs_pwrcli.mrp"/>
</component>
</collection>
<collection name="sysstatemgmt" long-name="System State Management" level="server">
<component name="ssmmapperutility" filter="s60" long-name="SSM Mapper Utility" introduced="^3">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmmapperutility/group"/>
</component>
<component name="ssmpolicyplugins" filter="s60" long-name="SSM Policy Plugins" introduced="^3" plugin="Y">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmpolicyplugins/group"/>
</component>
<component name="ssmutilityplugins" filter="s60" long-name="SSM Utility Plugins" introduced="^3" plugin="Y">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmutilityplugins/group"/>
</component>
<component name="ssmcmdlists" filter="s60" long-name="SSM Command Lists" introduced="^3">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmcmdlists/group"/>
</component>
<component name="ssmcustcmds" filter="s60" long-name="SSM Custom Commands" introduced="^3">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmcustcmds/group"/>
</component>
<component name="syslangutil" filter="s60" long-name="System Language Utility" introduced="^3">
<unit bldFile="os/devicesrv/sysstatemgmt/syslangutil/group"/>
</component>
<component name="sysrestart" filter="s60" long-name="System Restart" introduced="^3">
<unit bldFile="os/devicesrv/sysstatemgmt/sysrestart/group"/>
</component>
<component name="sysuiprovider" filter="s60" long-name="System UI Provider" introduced="^3">
<unit bldFile="os/devicesrv/sysstatemgmt/sysuiprovider/group"/>
</component>
<component name="systemstarter" long-name="System Starter" introduced="9.1" deprecated="^3" purpose="mandatory">
<unit bldFile="os/devicesrv/sysstatemgmt/systemstarter/group" mrp="os/devicesrv/sysstatemgmt/systemstarter/group/app-framework_sysstart.mrp"/>
</component>
<component name="systemstatemgr" long-name="System State Manager" introduced="^3" purpose="mandatory">
<unit bldFile="os/devicesrv/sysstatemgmt/systemstatemgr/group" mrp="os/devicesrv/sysstatemgmt/systemstatemgr/group/app-framework_ssma.mrp"/>
</component>
<component name="systemstateplugins" long-name="System State Plugins" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/devicesrv/sysstatemgmt/systemstateplugins/group" mrp="os/devicesrv/sysstatemgmt/systemstateplugins/group/app-framework_ssplugins.mrp"/>
</component>
<component name="systemstatereferenceplugins" long-name="System State Reference Plugins" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/devicesrv/sysstatemgmt/systemstatereferenceplugins/group" mrp="os/devicesrv/sysstatemgmt/systemstatereferenceplugins/group/app-framework_ssrefplugins.mrp"/>
</component>
</collection>
<collection name="resourceinterfaces" long-name="Resource Interfaces" level="hw-if">
<component name="fmtransmittercontrol" long-name="FM Transmitter Control" introduced="^3" purpose="optional">
<unit bldFile="os/devicesrv/resourceinterfaces/fmtransmittercontrol/group" mrp="os/devicesrv/resourceinterfaces/fmtransmittercontrol/group/telephony_hwrmfmtx.mrp"/>
</component>
</collection>
<collection name="systemhealthmanagement" long-name="System Health Management" level="server">
<component name="systemhealthmgr" long-name="System Health Manager" introduced="^3" purpose="optional">
<unit bldFile="os/devicesrv/systemhealthmanagement/systemhealthmgr/group" mrp="os/devicesrv/systemhealthmanagement/systemhealthmgr/group/app-framework_shma.mrp"/>
</component>
</collection>
<collection name="devicesrvapitest" long-name="Devices Services API Tests" level="app-if"/>
<collection name="devicesrv_info" long-name="Device Services Info" level="app-if">
<component name="devicesrv_metadata" long-name="Device Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/devicesrv/devicesrv_info/devicesrv_metadata/devicesrv_metadata.mrp"/>
</component>
</collection>
</block>
<block name="security" level="services" long-name="OS Security" levels="physical-abstraction plugins libraries management services utilities">
<collection name="authorisation" long-name="Authorisation" level="utilities">
<component name="userpromptservice" long-name="User Prompt Service" introduced="^3" purpose="mandatory">
<unit bldFile="os/security/authorisation/userpromptservice/group" mrp="os/security/authorisation/userpromptservice/group/security_ups.mrp"/>
</component>
<component name="userpromptutils" long-name="User Prompt Utils" introduced="^3" purpose="optional">
<unit bldFile="os/security/authorisation/userpromptutils/group" mrp="os/security/authorisation/userpromptutils/group/security_ups_utils.mrp"/>
</component>
</collection>
<collection name="contentmgmt" long-name="Content Management" level="utilities">
<component name="contentaccessfwfordrm" long-name="Content Access Framework for DRM" introduced="9.1" purpose="mandatory">
<unit bldFile="os/security/contentmgmt/contentaccessfwfordrm/group" mrp="os/security/contentmgmt/contentaccessfwfordrm/group/security_caf2.mrp"/>
</component>
<component name="cafrecogniserconfig" long-name="CAF Recogniser Config" introduced="9.1" purpose="mandatory">
<unit bldFile="os/security/contentmgmt/cafrecogniserconfig" mrp="os/security/contentmgmt/cafrecogniserconfig/security_reccafconfig.mrp"/>
</component>
</collection>
<collection name="crypto" long-name="Crypto Libraries" level="libraries">
<component name="weakcryptospi" long-name="Weak Crypto SPI" filter="gt" introduced="^3" purpose="optional">
<unit bldFile="os/security/crypto/weakcryptospi/group" mrp="os/security/crypto/weakcryptospi/group/security_cryptospi_weak.mrp"/>
</component>
<component name="strongcryptospi" long-name="Strong Crypto SPI" filter="gt" introduced="^3" purpose="optional">
<unit bldFile="os/security/crypto/weakcryptospi/strong" mrp="os/security/crypto/weakcryptospi/group/security_cryptospi_strong.mrp"/>
</component>
</collection>
<collection name="cryptomgmtlibs" long-name="Crypto Management Libraries" level="management">
<component name="securityutils" long-name="Security Utils" introduced="8.0" purpose="optional">
<unit bldFile="os/security/cryptomgmtlibs/securityutils/group" mrp="os/security/cryptomgmtlibs/securityutils/group/security_common.mrp"/>
</component>
<component name="securitydocs" long-name="Security Documentation" purpose="development" class="doc">
<unit mrp="os/security/cryptomgmtlibs/securitydocs/security_documentation.mrp"/>
</component>
<component name="cryptotokenfw" long-name="Crypto Token Framework" introduced="7.0" purpose="optional">
<unit bldFile="os/security/cryptomgmtlibs/cryptotokenfw/group" mrp="os/security/cryptomgmtlibs/cryptotokenfw/group/security_cryptotokens.mrp"/>
</component>
<component name="securitycommonutils" long-name="Security Common Utils" introduced="8.0" purpose="mandatory">
<unit bldFile="os/security/cryptomgmtlibs/securitycommonutils/group" mrp="os/security/cryptomgmtlibs/securitycommonutils/group/security_commonutils.mrp"/>
</component>
</collection>
<collection name="securityanddataprivacytools" long-name="Security and Data Privacy Tools" level="services">
<component name="securityconfig" long-name="Security Config" introduced="9.1" purpose="optional">
<unit bldFile="os/security/securityanddataprivacytools/securityconfig/group" mrp="os/security/securityanddataprivacytools/securityconfig/group/security_config.mrp"/>
</component>
<component name="securitytools" long-name="Security Tools" introduced="^3" purpose="optional" class="PC">
<unit bldFile="os/security/securityanddataprivacytools/securitytools/group" mrp="os/security/securityanddataprivacytools/securitytools/group/security_tools.mrp"/>
</component>
</collection>
<collection name="cryptoplugins" long-name="Crypto Plugins" level="plugins">
<component name="cryptospiplugins" long-name="Crypto SPI Plugins" filter="gt" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/security/cryptoplugins/cryptospiplugins/group" mrp="os/security/cryptoplugins/cryptospiplugins/group/security_cryptospi_plugins.mrp"/>
</component>
</collection>
<collection name="cryptoservices" long-name="Crypto Services" level="plugins">
<component name="certificateandkeymgmt" long-name="Certificate and Key Management" introduced="6.0" purpose="optional">
<unit bldFile="os/security/cryptoservices/certificateandkeymgmt/group" mrp="os/security/cryptoservices/certificateandkeymgmt/group/security_certman.mrp"/>
</component>
<component name="filebasedcertificateandkeystores" long-name="File-based Certificate and Key Stores" introduced="8.0" purpose="optional">
<unit bldFile="os/security/cryptoservices/filebasedcertificateandkeystores/group" mrp="os/security/cryptoservices/filebasedcertificateandkeystores/group/security_filetokens.mrp"/>
</component>
<component name="browserrootcertificates" long-name="Browser Root Certificates" introduced="^2" purpose="optional" filter="sf_build">
<unit mrp="os/security/cryptoservices/browserrootcertificates/browserrootcerts.mrp"/>
</component>
<component name="rootcertificates" filter="sf_build" long-name="Root Certificates" introduced="7.0s" purpose="optional">
<!-- not in S60 codebase -->
<unit bldFile="os/security/cryptoservices/rootcertificates/group" mrp="os/security/cryptoservices/rootcertificates/group/rootcerts.mrp"/>
</component>
<component name="asnpkcs" long-name="ASN PKCS" introduced="8.0" purpose="optional">
<unit bldFile="os/security/cryptoservices/asnpkcs/group" mrp="os/security/cryptoservices/asnpkcs/group/security_asnpkcs.mrp"/>
</component>
</collection>
<collection name="security_info" long-name="OS Security Info" level="utilities">
<component name="security_metadata" long-name="OS Security Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/security/security_info/security_metadata/security_metadata.mrp"/>
</component>
</collection>
</block>
<block name="lbs" level="services" long-name="Locating Services" levels="hw-if data-acquisition adaptation management application-interface">
<collection name="datasourcemodules" long-name="Generic Positioning Plugins" level="data-acquisition">
<component name="defaultpositioningmodule" long-name="Default Positioning Module" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="os/lbs/datasourcemodules/defaultpositioningmodule/group" mrp="os/lbs/datasourcemodules/defaultpositioningmodule/group/lbs_default_positioning_module.mrp"/>
</component>
<component name="bluetoothgpspositioningmodule" long-name="Bluetooth GPS Positioning Module" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="os/lbs/datasourcemodules/bluetoothgpspositioningmodule/group" mrp="os/lbs/datasourcemodules/bluetoothgpspositioningmodule/group/lbs_bt_positioning_module.mrp"/>
</component>
<component name="simulationpositioningmodule" long-name="Simulation Positioning Module" introduced="^2" purpose="development" plugin="Y">
<unit bldFile="os/lbs/datasourcemodules/simulationpositioningmodule/group" mrp="os/lbs/datasourcemodules/simulationpositioningmodule/group/lbs_simulation_positioning_module.mrp"/>
</component>
<component name="gpspositioningmodule" long-name="GPS/A-GPS Positioning Module" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/lbs/datasourcemodules/gpspositioningmodule/group" mrp="os/lbs/datasourcemodules/gpspositioningmodule/group/lbs_agps_positioning_module.mrp"/>
</component>
<component name="networkpositioningmodule" long-name="Network Positioning Module" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/lbs/datasourcemodules/networkpositioningmodule/group" mrp="os/lbs/datasourcemodules/networkpositioningmodule/group/lbs_network_positioning_module.mrp"/>
</component>
<component name="locationapesuplpsy" long-name="APE SUPL PSY" introduced="^3" purpose="optional" filter="s60" plugin="Y">
<unit bldFile="os/lbs/datasourcemodules/locationapesuplpsy/group"/>
</component>
</collection>
<collection name="datasourceadaptation" long-name="Data Source Adaptation" level="adaptation">
<component name="gpsdatasourceadaptation" long-name="GPS Data Source Adaptation" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="os/lbs/datasourceadaptation/gpsdatasourceadaptation/group" mrp="os/lbs/datasourceadaptation/gpsdatasourceadaptation/group/lbs_gps_data_source_adaptation.mrp"/>
</component>
</collection>
<collection name="locationrequestmgmt" long-name="Location Request Management" level="application-interface">
<component name="locationserver" long-name="Location Server" introduced="9.2" purpose="optional">
<unit bldFile="os/lbs/locationrequestmgmt/locationserver/group" mrp="os/lbs/locationrequestmgmt/locationserver/group/lbs_locationserver.mrp"/>
</component>
<component name="networkrequesthandler" long-name="Network Request Handler" introduced="9.2" purpose="optional">
<unit bldFile="os/lbs/locationrequestmgmt/networkrequesthandler/group" mrp="os/lbs/locationrequestmgmt/networkrequesthandler/group/lbs_networkrequesthandler.mrp"/>
</component>
</collection>
<collection name="lbstest" long-name="Locating Services Tests" level="application-interface">
<component name="locationprotocoltest" long-name="Location Protocol Tests" introduced="9.2" purpose="development" plugin="Y">
<unit bldFile="os/lbs/lbstest/locationprotocoltest/group" mrp="os/lbs/lbstest/locationprotocoltest/group/lbs_networktest.mrp"/>
</component>
</collection>
<collection name="locationmgmt" long-name="Location Management" level="management">
<component name="locmonitor" long-name="Location Monitor" introduced="^3" purpose="optional">
<unit bldFile="os/lbs/locationmgmt/locmonitor/lbslocmonitorserver/group" mrp="os/lbs/locationmgmt/locmonitor/lbslocmonitorserver/group/lbs_locationmonitor.mrp"/>
</component>
<component name="agpslocationmgr" long-name="A-GPS Location Manager" introduced="9.2" purpose="optional">
<unit bldFile="os/lbs/locationmgmt/agpslocationmgr/group" mrp="os/lbs/locationmgmt/agpslocationmgr/group/lbs_agpslocationmanager.mrp"/>
</component>
<component name="networklocationmgr" long-name="Network Location Manager" introduced="9.2" purpose="optional">
<unit bldFile="os/lbs/locationmgmt/networklocationmgr/group" mrp="os/lbs/locationmgmt/networklocationmgr/group/lbs_networklocationmanager.mrp"/>
</component>
<component name="locationcore" long-name="Location Core" introduced="9.2" purpose="optional">
<unit bldFile="os/lbs/locationmgmt/locationcore/group" mrp="os/lbs/locationmgmt/locationcore/group/lbs_admin.mrp"/>
</component>
<component name="networkgateway" long-name="Network Gateway" introduced="9.2" purpose="optional">
<unit bldFile="os/lbs/locationmgmt/networkgateway/group" mrp="os/lbs/locationmgmt/networkgateway/group/lbs_networkgateway.mrp"/>
</component>
</collection>
<collection name="networkprotocolmodules" long-name="Network Protocol Modules" level="adaptation">
<component name="privacyprotocolmodule" long-name="Privacy Protocol Module" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="os/lbs/networkprotocolmodules/privacyprotocolmodule/group" mrp="os/lbs/networkprotocolmodules/privacyprotocolmodule/group/lbs_privacyprotocolmodule.mrp"/>
</component>
<component name="suplproxyprotocolmodule" long-name="SUPL Proxy Protocol Module" introduced="^3" purpose="optional" plugin="Y">
<!-- hack for Foundation builds needed while collection is reorganised into proper components -->
<unit bldFile="os/lbs/networkprotocolmodules/suplproxyprotocolmodule/sfgroup" mrp="os/lbs/networkprotocolmodules/suplproxyprotocolmodule/group/lbs_suplproxyprotocolmodule.mrp"/>
</component>
<component name="suplprotocolmodule" long-name="SUPL Protocol Module" introduced="^2" deprecated="^2" purpose="optional" plugin="Y">
<!-- hack for Foundation builds needed while collection is reorganised into proper components -->
<unit bldFile="os/lbs/networkprotocolmodules/suplprotocolmodule/sfgroup" mrp="os/lbs/networkprotocolmodules/suplprotocolmodule/group/lbs_suplprotocolmodule.mrp"/>
</component>
<component name="suplrrlpasn1" filter="sf_build" long-name="SUPL RRLP ASN1 Parser">
<!-- hack for Foundation builds needed while collection is reorganised into proper components -->
<unit bldFile="os/lbs/networkprotocolmodules/common/suplrrlpasn1/group"/>
</component>
<component name="suplrrlpprotocol" long-name="SUPL RRLP Protocol Module">
<!-- hack for Foundation builds needed while collection is reorganised into proper components -->
<unit bldFile="os/lbs/networkprotocolmodules/suplcontrolplaneprotocols/common/suplrrlpprotocol/sfgroup"/>
</component>
</collection>
<collection name="lbsapitest" long-name="Location API Tests" level="application-interface"/>
<collection name="lbs_info" long-name="Locating Services Info" level="application-interface">
<component name="lbs_metadata" long-name="Locating Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/lbs/lbs_info/lbs_metadata/lbs_metadata.mrp"/>
</component>
</collection>
</block>
<block name="commsfw" level="services" long-name="Communications Framework" levels="server support framework process app-if">
<collection name="commsprocess" long-name="Comms Process" level="process">
<component name="commsrootserver" long-name="Comms Root Server" introduced="7.0s" purpose="mandatory">
<unit bldFile="os/commsfw/commsprocess/commsrootserverconfig/group" mrp="os/commsfw/commsprocess/commsrootserverconfig/group/comms-infras_rootserver.mrp"/>
</component>
</collection>
<collection name="commsconfig" long-name="Comms Config" level="process">
<component name="commsdatabase" long-name="Comms Database" purpose="mandatory">
<unit bldFile="os/commsfw/commsfwtools/preparedefaultcommsdatabase/group" mrp="os/commsfw/commsfwtools/preparedefaultcommsdatabase/group/comms-infras_commsdat.mrp"/>
</component>
<component name="commsdatabaseshim" long-name="Comms Database Shim" introduced="8.1" purpose="mandatory">
<unit bldFile="os/commsfw/commsconfig/commsdatabaseshim/group" mrp="os/commsfw/commsconfig/commsdatabaseshim/group/comms-infras_commdbshim.mrp"/>
</component>
</collection>
<collection name="datacommsserver" long-name="Data Comms Server" level="framework">
<component name="esockserver" long-name="ESock Server" purpose="mandatory">
<unit bldFile="os/commsfw/datacommsserver/esockserver/group" mrp="os/commsfw/datacommsserver/esockserver/group/comms-infras_esock.mrp" version="3"/>
</component>
<component name="networkingdialogapi" long-name="Networking Dialog API" introduced="6.1" purpose="optional">
<unit bldFile="os/commsfw/datacommsserver/networkingdialogapi/group" mrp="os/commsfw/datacommsserver/networkingdialogapi/group/networking_dialog.mrp"/>
</component>
<component name="networkingdialogstub" long-name="Networking Dialog Stub" introduced="6.1" purpose="optional">
<unit bldFile="os/commsfw/datacommsserver/networkingdialogapi/default" mrp="os/commsfw/datacommsserver/networkingdialogapi/default/networking_dialog_default.mrp"/>
</component>
<component name="networkcontroller" long-name="Network Controller" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/commsfw/datacommsserver/networkcontroller/group" mrp="os/commsfw/datacommsserver/networkcontroller/group/networking_netcon.mrp"/>
</component>
</collection>
<collection name="serialserver" long-name="Serial Server" level="server">
<component name="serialportcsy" long-name="Serial Port CSY" introduced="ER5" purpose="optional" plugin="Y">
<unit bldFile="os/commsfw/serialserver/serialportcsy" mrp="os/commsfw/serialserver/serialportcsy/ser-comms_serialportcsy.mrp"/>
</component>
<component name="packetloopbackcsy" long-name="Packet Loopback CSY" introduced="8.1" purpose="development">
<unit bldFile="os/commsfw/serialserver/packetloopbackcsy/group" mrp="os/commsfw/serialserver/packetloopbackcsy/group/PacketLoopbackCSY.mrp"/>
</component>
<component name="c32serialserver" long-name="C32 Serial Server" introduced="ER5" purpose="mandatory">
<unit bldFile="os/commsfw/serialserver/c32serialserver/group" mrp="os/commsfw/serialserver/c32serialserver/group/ser-comms_c32.mrp"/>
</component>
<component name="c32serialserverconfig" long-name="C32 Serial Server Config" introduced="ER5" purpose="mandatory" class="config">
<unit bldFile="os/commsfw/serialserver/c32serialserverconfig" mrp="os/commsfw/serialserver/c32serialserverconfig/ser-comms_c32-config.mrp"/>
</component>
<component name="c32serialserverdocs" long-name="C32 Serial Server Documentation" purpose="development" class="doc">
<unit mrp="os/commsfw/serialserver/c32serialserverdocs/ser-comms_documentation.mrp"/>
</component>
</collection>
<collection name="commsfwutils" long-name="Comms Framework Utilities" level="framework">
<component name="commsbufs" long-name="Comms Buffers" introduced="^3" purpose="mandatory">
<unit bldFile="os/commsfw/commsfwutils/commsbufs/group" mrp="os/commsfw/commsfwutils/commsbufs/group/comms-infras_commsbufs.mrp"/>
</component>
</collection>
<collection name="commsfw_info" long-name="Comms Framework Info" level="app-if">
<component name="commsinfrastructuredocs" long-name="Comms Infrastructure Documentation" introduced="7.0" purpose="development" class="doc">
<unit mrp="os/commsfw/commsfw_info/commsinfrastructuredocs/comms-infras_documentation.mrp"/>
</component>
<component name="commsfw_metadata" long-name="Communications Framework Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/commsfw/commsfw_info/commsfw_metadata/commsfw_metadata.mrp"/>
</component>
</collection>
<collection name="commsfwsupport" long-name="Comms Framework Support" level="support">
<component name="commselements" long-name="Comms Elements" introduced="8.0" purpose="mandatory">
<unit bldFile="os/commsfw/commsfwsupport/commselements/group" mrp="os/commsfw/commsfwsupport/commselements/group/comms-infras_elements.mrp"/>
</component>
</collection>
<collection name="commsinfrastructureapitest" long-name="Comms-Infras API Tests" level="app-if">
<component name="commsinfrastructuresvs" long-name="Comms Infrastructure Verification Suite" introduced="^3" purpose="development">
<unit mrp="os/commsfw/commsinfrastructureapitest/commsinfrastructuresvs/group/commsinfrastructuresvs.mrp"/>
</component>
</collection>
<collection name="commsfwtools" long-name="Comms Framework Tools" level="app-if">
<component name="preparedefaultcommsdatabase" long-name="Prepare Default Comms Database" filter="gt" purpose="mandatory" class="config PC">
<unit bldFile="os/commsfw/commsfwtools/preparedefaultcommsdatabase/defaultcommdb/group" mrp="os/commsfw/commsfwtools/preparedefaultcommsdatabase/defaultcommdb/group/comms-infras_defaultcommdb.mrp"/>
</component>
<component name="installdefaultcommsdatabase" long-name="Install Default Comms Database" purpose="mandatory" class="PC">
<unit bldFile="os/commsfw/commsfwtools/preparedefaultcommsdatabase/installdefaultcommdb/group" mrp="os/commsfw/commsfwtools/preparedefaultcommsdatabase/installdefaultcommdb/group/comms-infras_installdefaultcommdb.mrp" priority="1010"/>
</component>
<component name="commstools" long-name="Comms Tools" introduced="^3" purpose="development" class="PC">
<unit bldFile="os/commsfw/commsfwtools/commstools/group" mrp="os/commsfw/commsfwtools/commstools/group/comms-infras_tools.mrp"/>
</component>
</collection>
</block>
<block name="networkingsrv" level="services" long-name="Networking Services" levels="adaptation hw-if plugin framework server app-if">
<collection name="esockapiextensions" long-name="ESock API Extensions" level="app-if">
<component name="internetsockets" long-name="Internet Sockets" introduced="ER5" purpose="mandatory">
<unit bldFile="os/networkingsrv/esockapiextensions/internetsockets/group" mrp="os/networkingsrv/esockapiextensions/internetsockets/group/networking_insock.mrp"/>
</component>
</collection>
<collection name="tcpiputils" long-name="TCP/IP Utilities" level="plugin">
<component name="dnd" long-name="DND" introduced="7.0" purpose="mandatory">
<unit bldFile="os/networkingsrv/tcpiputils/dnd/group" mrp="os/networkingsrv/tcpiputils/dnd/group/networking_dnd.mrp"/>
</component>
<component name="dhcp" long-name="DHCP" introduced="8.0" purpose="optional">
<unit bldFile="os/networkingsrv/tcpiputils/dhcp/group" mrp="os/networkingsrv/tcpiputils/dhcp/group/networking_dhcp.mrp"/>
</component>
<component name="networkaddressandporttranslation" long-name="Network Address and Port Translation" introduced="^2" purpose="mandatory" plugin="Y">
<unit bldFile="os/networkingsrv/tcpiputils/networkaddressandporttranslation/group" mrp="os/networkingsrv/tcpiputils/networkaddressandporttranslation/group/networking_napt.mrp"/>
</component>
<component name="punycodeconv" long-name="Punycode Converter" introduced="^3" purpose="mandatory">
<unit bldFile="os/networkingsrv/tcpiputils/punycodeconv/group" mrp="os/networkingsrv/tcpiputils/punycodeconv/group/networking_punycodeconverter.mrp"/>
</component>
</collection>
<collection name="linklayercontrol" long-name="Link Layer Control" level="hw-if">
<component name="nullagt" long-name="NULL AGT" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/linklayercontrol/nullagt/group" mrp="os/networkingsrv/linklayercontrol/nullagt/group/networking_nullagt.mrp"/>
</component>
<component name="genericscprparameters" long-name="Generic SCPR Parameters" introduced="^3" purpose="optional">
<unit bldFile="os/networkingsrv/linklayercontrol/genericscprparameters/group" mrp="os/networkingsrv/linklayercontrol/genericscprparameters/group/networking_genericscprparams.mrp"/>
</component>
<component name="mbmsparameters" long-name="MBMS Parameters" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/linklayercontrol/mbmsparameters/group" mrp="os/networkingsrv/linklayercontrol/mbmsparameters/group/networking_mbmsparams.mrp"/>
</component>
<component name="networkinterfacemgr" long-name="Network Interface Manager" introduced="ER5U" purpose="mandatory">
<unit bldFile="os/networkingsrv/linklayercontrol/networkinterfacemgr/group" mrp="os/networkingsrv/linklayercontrol/networkinterfacemgr/group/comms-infras_nifman.mrp" version="2"/>
</component>
</collection>
<collection name="linklayerprotocols" long-name="Link Layer Protocols" level="hw-if">
<component name="ethernetnif" long-name="Ethernet NIF" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/linklayerprotocols/ethernetnif/group" mrp="os/networkingsrv/linklayerprotocols/ethernetnif/group/networking_ether802.mrp"/>
</component>
<component name="pppnif" long-name="PPP NIF" introduced="ER5" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/linklayerprotocols/pppnif/group" mrp="os/networkingsrv/linklayerprotocols/pppnif/group/networking_ppp.mrp" version="2"/>
</component>
<component name="slipnif" long-name="SLIP NIF" purpose="development" plugin="Y">
<unit bldFile="os/networkingsrv/linklayerprotocols/slipnif/group" mrp="os/networkingsrv/linklayerprotocols/slipnif/group/networking_slip.mrp"/>
</component>
<component name="tunnelnif" long-name="Tunnel NIF" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/linklayerprotocols/tunnelnif/group" mrp="os/networkingsrv/linklayerprotocols/tunnelnif/group/networking_tunnelnif.mrp"/>
</component>
</collection>
<collection name="linklayerutils" long-name="Link Layer Utilities" level="hw-if">
<component name="packetlogger" long-name="Packet Logger" introduced="8.1" purpose="development">
<unit bldFile="os/networkingsrv/linklayerutils/packetlogger/group" mrp="os/networkingsrv/linklayerutils/packetlogger/group/networking_packetlogger.mrp"/>
</component>
</collection>
<collection name="networkcontrol" long-name="Network Control" level="plugin">
<component name="qoslib" long-name="QoS Library" introduced="7.0s" purpose="optional">
<unit bldFile="os/networkingsrv/networkcontrol/qoslib/group" mrp="os/networkingsrv/networkcontrol/qoslib/group/networking_qoslib.mrp"/>
</component>
<component name="pfqoslib" long-name="PF QoS Library" introduced="7.0s" purpose="optional">
<unit bldFile="os/networkingsrv/networkcontrol/pfqoslib/group" mrp="os/networkingsrv/networkcontrol/pfqoslib/group/networking_pfqoslib.mrp"/>
</component>
<component name="qosfwprt" long-name="QoS Framework PRT" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/networkcontrol/qosfwconfig/qos/group" mrp="os/networkingsrv/networkcontrol/qosfwconfig/qos/group/networking_qos.mrp"/>
</component>
<component name="qosipscpr" long-name="QoS IP SCPR" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/networkcontrol/qosipscpr/group" mrp="os/networkingsrv/networkcontrol/qosipscpr/group/networking_qosipscpr.mrp"/>
</component>
<component name="ipnetworklayer" long-name="IP Network Layer" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/networkcontrol/ipnetworklayer/group" mrp="os/networkingsrv/networkcontrol/ipnetworklayer/group/networking_ipproto.mrp"/>
</component>
<component name="iptransportlayer" long-name="IP Transport Layer" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/networkcontrol/iptransportlayer/group" mrp="os/networkingsrv/networkcontrol/iptransportlayer/group/networking_iptransport.mrp"/>
</component>
<component name="commsuserpromptmgr" long-name="Comms User Prompt Manager" introduced="^3" purpose="mandatory">
<unit bldFile="os/networkingsrv/networkcontrol/commsuserpromptmgr/group" mrp="os/networkingsrv/networkcontrol/commsuserpromptmgr/group/networking_netups.mrp"/>
</component>
</collection>
<collection name="networkprotocols" long-name="Network Protocols" level="plugin">
<component name="ipeventnotifier" long-name="IP Event Notifier" introduced="8.1" purpose="mandatory" plugin="Y">
<unit bldFile="os/networkingsrv/networkprotocols/ipeventnotifier/group" mrp="os/networkingsrv/networkprotocols/ipeventnotifier/group/networking_ipeventnotifier.mrp"/>
</component>
<component name="tcpipv4v6prt" long-name="TCP/IPv4/v6 PRT" introduced="7.0" purpose="mandatory" plugin="Y">
<unit bldFile="os/networkingsrv/networkprotocols/tcpipv4v6prt/group" mrp="os/networkingsrv/networkprotocols/tcpipv4v6prt/group/networking_tcpip6.mrp"/>
</component>
<component name="iphook" long-name="IP Hook" introduced="7.0" purpose="mandatory">
<unit bldFile="os/networkingsrv/networkprotocols/iphook/inhook6/group" mrp="os/networkingsrv/networkprotocols/iphook/inhook6/group/networking_inhook6.mrp"/>
</component>
<component name="mobileip" long-name="Mobile IP" introduced="8.1" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/networkprotocols/mobileip/group" mrp="os/networkingsrv/networkprotocols/mobileip/group/networking_mobileip.mrp"/>
</component>
<component name="dnsproxy" long-name="DNS Proxy" introduced="^3" purpose="optional">
<unit bldFile="os/networkingsrv/networkprotocols/dnsproxy/group" mrp="os/networkingsrv/networkprotocols/dnsproxy/group/networking_dnsproxy.mrp"/>
</component>
</collection>
<collection name="networksecurity" long-name="Network Security" level="framework">
<component name="tls" long-name="TLS" introduced="6.0" purpose="mandatory">
<unit bldFile="os/networkingsrv/networksecurity/tls/group" mrp="os/networkingsrv/networksecurity/tls/group/networking_tls.mrp"/>
</component>
<component name="tlsprovider" long-name="TLS Provider" introduced="8.1" purpose="mandatory">
<unit bldFile="os/networkingsrv/networksecurity/tlsprovider/group" mrp="os/networkingsrv/networksecurity/tlsprovider/group/security_tlsprovider.mrp"/>
</component>
<component name="ipsec" long-name="IPsec" introduced="7.0" purpose="optional">
<unit bldFile="os/networkingsrv/networksecurity/ipsec/group" mrp="os/networkingsrv/networksecurity/ipsec/group/networking_ipsec.mrp"/>
</component>
</collection>
<collection name="networkingtestandutils" long-name="Networking Test and Utils" level="app-if">
<component name="networkingexamples" long-name="Networking Examples" introduced="7.0" purpose="development">
<unit bldFile="os/networkingsrv/networkingtestandutils/networkingexamples/examplecode/group" mrp="os/networkingsrv/networkingtestandutils/networkingexamples/examplecode/group/networking_examplecode.mrp"/>
</component>
</collection>
<collection name="networkingsrv_info" long-name="Networking Services Info" level="app-if">
<component name="networkingrom" long-name="Networking ROM" purpose="mandatory">
<!-- production component: contains the IBY files -->
<unit bldFile="os/networkingsrv/networkingsrv_info/networkingrom/group" mrp="os/networkingsrv/networkingsrv_info/networkingrom/group/networking_general.mrp"/>
</component>
<component name="networkingdocs" long-name="Networking Documentation" purpose="development" class="doc">
<unit mrp="os/networkingsrv/networkingsrv_info/networkingdocs/networking_documentation.mrp"/>
</component>
<component name="networkingsrv_metadata" long-name="Networking Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/networkingsrv/networkingsrv_info/networkingsrv_metadata/networkingsrv_metadata.mrp"/>
</component>
</collection>
<collection name="pppcompressionplugins" long-name="PPP Compression Plugins" level="plugin">
<component name="predictorcompression" long-name="Predictor Compression" introduced="6.0" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/pppcompressionplugins/predictorcompression/group" mrp="os/networkingsrv/pppcompressionplugins/predictorcompression/group/networking_predcomp.mrp"/>
</component>
</collection>
</block>
<block name="wlan" level="services" long-name="WLAN" levels="hw low mid high tools test">
<collection name="wlan_plat" long-name="WLAN Platform Interfaces" level="test">
<component name="wlan_dbif_api" long-name="WLAN DBIF API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_dbif_api/group"/>
</component>
<component name="wlan_hal_api" long-name="WLAN HAL API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_hal_api/group"/>
</component>
<component name="wlan_management_api" long-name="WLAN Management API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_management_api/group"/>
</component>
<component name="wlan_device_settings_api" long-name="WLAN Device Settings API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_device_settings_api/group"/>
</component>
<component name="wlan_control_api" long-name="WLAN Control API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_control_api/group"/>
</component>
<component name="wlan_hw_initialization_data_api" long-name="WLAN Hardware Initialization Data API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_hw_initialization_data_api/group"/>
</component>
<component name="wlan_power_save_plugin_api" long-name="WLAN Power Save Plugin API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_power_save_plugin_api/group"/>
</component>
<component name="wlan_info_api" long-name="WLAN Info API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_info_api/group"/>
</component>
<component name="wlan_agent_hotspot_plugin_api" long-name="WLAN Agent Hotspot Plug-in API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_agent_hotspot_plugin_api/group"/>
</component>
<component name="wlan_osa_api" long-name="WLAN OSA API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_osa_api/group"/>
</component>
<component name="wlan_spia_api" long-name="WLAN SPIA API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_spia_api/group"/>
</component>
<component name="wlan_hpa_api" long-name="WLAN HPA API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_hpa_api/group"/>
</component>
<component name="wlan_eapol_plugin_api" long-name="WLAN EAPOL Plugin API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_eapol_plugin_api/group"/>
</component>
<component name="wlan_generic_plugin_api" long-name="WLAN Generic Plugin API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_generic_plugin_api/group"/>
</component>
<component name="wlan_aws_plugin_api" long-name="WLAN AWS Plugin API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_aws_plugin_api/group"/>
</component>
</collection>
<collection name="wlan_pub" long-name="WLAN Public Interfaces" level="test">
<component name="wlan_sdk_info_api" long-name="WLAN SDK Info API" filter="s60" class="api">
<unit bldFile="os/wlan/wlan_pub/wlan_sdk_info_api/group"/>
</component>
</collection>
<collection name="wlan_bearer" long-name="WLAN Bearer" level="hw">
<component name="wlanpsmplugin" filter="s60" long-name="WLAN PSM Plugin" plugin="Y">
<unit bldFile="os/wlan/wlan_bearer/wlanpsmplugin/group"/>
</component>
<component name="wlanagent" filter="s60" long-name="WLAN Agent">
<unit bldFile="os/wlan/wlan_bearer/wlanagent/group"/>
</component>
<component name="wlandbif_cd" filter="s60" long-name="WLAN CommsDat interface">
<unit bldFile="os/wlan/wlan_bearer/wlandbif_cd/group"/>
</component>
<!-- should follow component directory rules for stuff in wlan_symbian/ and put in a single component or split up properly -->
<component name="wlanengine" filter="s60" long-name="WLAN Engine">
<unit bldFile="os/wlan/wlan_bearer/wlanengine/wlan_symbian/wlanengine_symbian_3.1/group"/>
</component>
<component name="wlanldd" filter="s60" long-name="WLAN LDD">
<unit bldFile="os/wlan/wlan_bearer/wlanldd/wlan_symbian/wlanldd_symbian/group"/>
</component>
<component name="wlannwif" filter="s60" long-name="WLAN Network Interface">
<unit bldFile="os/wlan/wlan_bearer/wlannwif/group"/>
</component>
</collection>
<collection name="wlanapitest" long-name="WLAN API Tests" level="test"/>
<collection name="wlan_info" long-name="WLAN Info" level="test">
<component name="wlan_metadata" long-name="WLAN Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/wlan/wlan_info/wlan_metadata/wlan_metadata.mrp"/>
</component>
</collection>
</block>
<block name="cellularsrv" level="services" long-name="Cellular Baseband Services" levels="adaptation hw-if plugin framework server app-if">
<collection name="basebandabstraction" long-name="Baseband Abstraction" level="hw-if">
<component name="basebandchanneladaptor" long-name="Baseband Channel Adaptor" introduced="8.1" purpose="optional">
<unit bldFile="os/cellularsrv/basebandabstraction/basebandchanneladaptor/group" mrp="os/cellularsrv/basebandabstraction/basebandchanneladaptor/group/networking_bca.mrp"/>
</component>
</collection>
<collection name="basebandadaptationplugins" long-name="Baseband Adaptation Plugins" level="adaptation">
<component name="basebandchanneladaptorforc32" long-name="Baseband Channel Adaptor for C32" introduced="8.1" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/basebandadaptationplugins/basebandchanneladaptorforc32/group" mrp="os/cellularsrv/basebandadaptationplugins/basebandchanneladaptorforc32/group/networking_c32bca.mrp"/>
</component>
</collection>
<collection name="fax" long-name="Fax" level="server">
<component name="faxclientandserver" long-name="Fax Client and Server" purpose="optional">
<unit bldFile="os/cellularsrv/fax/faxclientandserver/Group" mrp="os/cellularsrv/fax/faxclientandserver/Group/telephony_fax.mrp"/>
</component>
</collection>
<collection name="smsprotocols" long-name="SMS Protocols" level="framework">
<component name="smsstack" long-name="SMS Stack" introduced="6.0" purpose="mandatory" plugin="Y">
<unit bldFile="os/cellularsrv/smsprotocols/smsstack/group" mrp="os/cellularsrv/smsprotocols/smsstack/group/nbprotocols_smsstackv2.mrp"/>
</component>
</collection>
<collection name="telephonyprotocols" long-name="Telephony Protocols" level="framework">
<component name="csdagt" long-name="CSD AGT" introduced="6.1" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyprotocols/csdagt/group" mrp="os/cellularsrv/telephonyprotocols/csdagt/group/networking_csdagt.mrp"/>
</component>
<component name="psdagt" long-name="PSD AGT" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyprotocols/psdagt/group" mrp="os/cellularsrv/telephonyprotocols/psdagt/group/networking_psdagt.mrp"/>
</component>
<component name="gprsumtsqosprt" long-name="GPRS/UMTS QoS PRT" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyprotocols/gprsumtsqosprt/group" mrp="os/cellularsrv/telephonyprotocols/gprsumtsqosprt/group/networking_guqos.mrp"/>
</component>
<component name="gprsumtsqosinterface" long-name="GPRS/UMTS QoS Interface" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyprotocols/gprsumtsqosinterface/group" mrp="os/cellularsrv/telephonyprotocols/gprsumtsqosinterface/group/networking_umtsif.mrp"/>
</component>
<component name="qosextnapi" long-name="QoS Extn API" introduced="9.2" purpose="optional">
<unit bldFile="os/cellularsrv/telephonyprotocols/qosextnapi/group" mrp="os/cellularsrv/telephonyprotocols/qosextnapi/group/networking_qosextnapi.mrp"/>
</component>
<component name="secondarypdpcontextumtsdriver" long-name="Secondary PDP context UMTS Driver" introduced="8.1" purpose="optional">
<unit bldFile="os/cellularsrv/telephonyprotocols/secondarypdpcontextumtsdriver/group" mrp="os/cellularsrv/telephonyprotocols/secondarypdpcontextumtsdriver/group/networking_spud.mrp"/>
</component>
<component name="qos3gppcpr" long-name="QoS 3GPP CPR" introduced="9.2" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyprotocols/qos3gppcpr/group" mrp="os/cellularsrv/telephonyprotocols/qos3gppcpr/group/networking_Qos3GPP.mrp"/>
</component>
<component name="pdplayer" long-name="PDP Layer" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyprotocols/pdplayer/group" mrp="os/cellularsrv/telephonyprotocols/pdplayer/group/networking_pdp.mrp"/>
</component>
<component name="rawipnif" long-name="Raw IP NIF" introduced="8.1" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyprotocols/rawipnif/group" mrp="os/cellularsrv/telephonyprotocols/rawipnif/group/networking_rawipnif.mrp"/>
</component>
</collection>
<collection name="telephonyserver" long-name="Telephony Server" level="server">
<component name="etelserverandcore" long-name="ETel Server and Core" purpose="mandatory">
<unit bldFile="os/cellularsrv/telephonyserver/etelserverandcore/group" mrp="os/cellularsrv/telephonyserver/etelserverandcore/group/telephony_etel.mrp"/>
</component>
<component name="etelmultimode" long-name="ETel Multimode" introduced="7.0" purpose="mandatory">
<unit bldFile="os/cellularsrv/telephonyserver/etelmultimode/group" mrp="os/cellularsrv/telephonyserver/etelmultimode/group/telephony_etelmm.mrp"/>
</component>
<component name="etelpacketdata" long-name="ETel Packet Data" introduced="7.0" purpose="mandatory">
<unit bldFile="os/cellularsrv/telephonyserver/etelpacketdata/group" mrp="os/cellularsrv/telephonyserver/etelpacketdata/group/telephony_etelpckt.mrp"/>
</component>
<component name="etelsimtoolkit" long-name="ETel SIM Toolkit" introduced="6.1" purpose="mandatory">
<unit bldFile="os/cellularsrv/telephonyserver/etelsimtoolkit/group" mrp="os/cellularsrv/telephonyserver/etelsimtoolkit/group/telephony_etelsat.mrp"/>
</component>
</collection>
<collection name="telephonyserverplugins" long-name="Telephony Server Plugins" level="plugin">
<component name="common_tsy" long-name="Common TSY" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyserverplugins/common_tsy/group" mrp="os/cellularsrv/telephonyserverplugins/common_tsy/group/telephony_commontsy.mrp"/>
</component>
<component name="licenseetsystub" long-name="Licensee TSY Stub" introduced="^2" purpose="development" filter="sf_build" plugin="Y">
<unit mrp="os/cellularsrv/telephonyserverplugins/licenseetsystub/group/licenseetsystub.mrp" bldFile="os/cellularsrv/telephonyserverplugins/licenseetsystub/group"/>
</component>
<component name="multimodetsy" long-name="Multimode TSY" purpose="development" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyserverplugins/multimodetsy/group" mrp="os/cellularsrv/telephonyserverplugins/multimodetsy/group/telephony_mmtsy.mrp"/>
</component>
<component name="ctsydispatchlayer" long-name="C-TSY Dispatch Layer" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyserverplugins/ctsydispatchlayer/group" mrp="os/cellularsrv/telephonyserverplugins/ctsydispatchlayer/group/telephony_dispatcher.mrp"/>
</component>
<component name="simatktsy" long-name="SIMATK TSY" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyserverplugins/simatktsy/group" mrp="os/cellularsrv/telephonyserverplugins/simatktsy/group/commonsimatktsy.mrp"/>
</component>
</collection>
<collection name="telephonyutils" long-name="Telephony Utilities" level="app-if">
<component name="dial" long-name="Dial" deprecated="9.1" purpose="optional">
<unit bldFile="os/cellularsrv/telephonyutils/dial/group" mrp="os/cellularsrv/telephonyutils/dial/group/telephony_dial.mrp"/>
</component>
<component name="telephonywatchers" long-name="Telephony Watchers" introduced="6.0" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyutils/telephonywatchers/group" mrp="os/cellularsrv/telephonyutils/telephonywatchers/group/telephony_watchers.mrp"/>
</component>
<component name="etel3rdpartyapi" long-name="ETel 3rd Party API" introduced="7.0" purpose="mandatory">
<unit bldFile="os/cellularsrv/telephonyutils/etel3rdpartyapi/Group" mrp="os/cellularsrv/telephonyutils/etel3rdpartyapi/Group/telephony_etel3rdparty.mrp"/>
</component>
</collection>
<collection name="cellularsrv_info" long-name="Cellular Baseband Services Info" level="app-if">
<component name="telephonyconfidentialdocs" long-name="Telephony Confidential Documentation" purpose="development" class="doc">
<unit mrp="os/cellularsrv/cellularsrv_info/telephonyconfidentialdocs/telephony_confidential.mrp"/>
</component>
<component name="telephonydocs" long-name="Telephony Documentation" purpose="development" class="doc">
<unit mrp="os/cellularsrv/cellularsrv_info/telephonydocs/telephony_documentation.mrp"/>
</component>
<component name="cellularsrv_metadata" long-name="Cellular Baseband Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/cellularsrv/cellularsrv_info/cellularsrv_metadata/cellularsrv_metadata.mrp"/>
</component>
</collection>
<collection name="hwpluginsimulation" long-name="Hardware Plugin Simulation" level="adaptation">
<component name="mocksy" long-name="MockSY" introduced="^2" purpose="development" plugin="Y">
<unit bldFile="os/cellularsrv/hwpluginsimulation/mocksy/group" mrp="os/cellularsrv/hwpluginsimulation/mocksy/group/telephony_tools_mocksy.mrp"/>
</component>
</collection>
<collection name="cellularsrvapitest" long-name="Telephony API Tests" level="app-if"/>
<collection name="wapstack" long-name="WAP Stack" level="app-if">
<component name="wapmessageapi" long-name="WAP Message API" purpose="development">
<unit mrp="os/cellularsrv/wapstack/wapmessageapi/group/wap-stack_wapmessage.mrp" bldFile="os/cellularsrv/wapstack/wapmessageapi/group"/>
</component>
</collection>
</block>
<block name="bt" level="services" long-name="Bluetooth" levels="adaptation hw-if plugin framework server app-if">
<collection name="bt_plat" long-name="Bluetooth Platform Interfaces" level="app-if">
<component name="bluetooth_audio_adaptation_api" long-name="Bluetooth Audio Adaptation API" filter="s60" class="api">
<unit bldFile="os/bt/bt_plat/bluetooth_audio_adaptation_api/group"/>
</component>
<component name="bluetooth_power_management_api" long-name="Bluetooth Power Management API" filter="s60" class="api">
<unit bldFile="os/bt/bt_plat/bluetooth_power_management_api/group"/>
</component>
<component name="at_command_handler_plugin_api" long-name="AT Command Handler Plugin API" filter="s60" class="api">
<unit bldFile="os/bt/bt_plat/at_command_handler_plugin_api/group"/>
</component>
</collection>
<collection name="bluetooth" long-name="Bluetooth Core" level="framework">
<component name="btstack" long-name="Bluetooth Stack" introduced="6.0" purpose="optional">
<unit bldFile="os/bt/bluetooth/btstack" mrp="os/bt/bluetooth/btstack/bluetooth_stack.mrp"/>
</component>
<component name="btcomm" long-name="Bluetooth CSY" introduced="6.0" purpose="optional" plugin="Y">
<unit bldFile="os/bt/bluetooth/btcomm" mrp="os/bt/bluetooth/btcomm/bluetooth_btcomm.mrp"/>
</component>
<component name="btsdp" long-name="Bluetooth SDP" introduced="6.1" purpose="optional">
<unit bldFile="os/bt/bluetooth/btsdp" mrp="os/bt/bluetooth/btsdp/bluetooth_sdp.mrp"/>
</component>
<component name="btextnotifiers" long-name="Bluetooth Notifiers Support" introduced="6.1" purpose="optional">
<unit bldFile="os/bt/bluetooth/btextnotifiers" mrp="os/bt/bluetooth/btextnotifiers/bluetooth_btextnotifiers.mrp"/>
</component>
<component name="gavdp" long-name="Bluetooth GAVDP" introduced="8.1" purpose="optional">
<unit bldFile="os/bt/bluetooth/gavdp/group" mrp="os/bt/bluetooth/gavdp/group/bluetooth_gavdp.mrp"/>
</component>
<component name="btlogger" long-name="Bluetooth Logging Engine" introduced="9.2" purpose="optional">
<unit bldFile="os/bt/bluetooth/btlogger/group" mrp="os/bt/bluetooth/btlogger/group/bluetooth_logger.mrp"/>
</component>
<component name="btdocs" long-name="Bluetooth Documentation" purpose="development" class="doc">
<unit mrp="os/bt/bluetooth/btdocs/bluetooth_documentation.mrp"/>
</component>
</collection>
<collection name="bluetoothmgmt" long-name="Bluetooth Management" level="plugin">
<component name="btmgr" long-name="Bluetooth Manager" introduced="6.0" purpose="optional">
<unit bldFile="os/bt/bluetoothmgmt/btmgr" mrp="os/bt/bluetoothmgmt/btmgr/bluetooth_manager.mrp"/>
</component>
<component name="btconfig" long-name="Bluetooth Config" purpose="optional" class="config">
<unit bldFile="os/bt/bluetoothmgmt/btconfig" mrp="os/bt/bluetoothmgmt/btconfig/bluetooth_config.mrp"/>
</component>
<component name="btrom" long-name="Bluetooth ROM" introduced="9.1" purpose="optional">
<unit bldFile="os/bt/bluetoothmgmt/btrom" mrp="os/bt/bluetoothmgmt/btrom/bluetooth_rom.mrp"/>
</component>
<component name="bluetoothclientlib" long-name="Bluetooth Client Library" introduced="6.0" purpose="optional">
<unit bldFile="os/bt/bluetoothmgmt/bluetoothclientlib" mrp="os/bt/bluetoothmgmt/bluetoothclientlib/bluetooth_user.mrp"/>
</component>
</collection>
<collection name="bluetoothcommsprofiles" long-name="Bluetooth Comms Profiles" level="app-if">
<component name="btpan" long-name="Bluetooth PAN Profile" introduced="8.1" purpose="optional" plugin="Y">
<unit bldFile="os/bt/bluetoothcommsprofiles/btpan/group" mrp="os/bt/bluetoothcommsprofiles/btpan/group/bluetooth_pan.mrp"/>
</component>
</collection>
<collection name="bthci" long-name="Host Controller Interface" level="server">
<component name="bthci2" long-name="Bluetooth HCI Framework 2" introduced="9.2" purpose="optional">
<unit bldFile="os/bt/bthci/bthci2/group" mrp="os/bt/bthci/bthci2/group/bluetooth_hci_v2_framework.mrp"/>
</component>
<component name="hciextensioninterface" long-name="Bluetooth HCI Extension Interface" introduced="6.1" purpose="optional">
<unit bldFile="os/bt/bthci/hciextensioninterface" mrp="os/bt/bthci/hciextensioninterface/bluetooth_hciproxy.mrp"/>
</component>
<component name="hci2implementations" long-name="Bluetooth HCI 2 Reference Implementations" introduced="9.2" purpose="optional" plugin="Y">
<unit bldFile="os/bt/bthci/hci2implementations/group" mrp="os/bt/bthci/hci2implementations/group/bluetooth_hci_v2_implementations.mrp"/>
</component>
</collection>
<collection name="irda" long-name="IrDA" level="plugin">
<component name="irdastack" long-name="IrDA Stack" purpose="optional">
<unit bldFile="os/bt/irda/irdastack/group" mrp="os/bt/irda/irdastack/group/infra-red_irda.mrp"/>
</component>
</collection>
<collection name="bluetoothapitest" long-name="Bluetooth API Tests" level="app-if"/>
<collection name="atext" long-name="AT Extensions" level="server">
<!-- collection is really a component. Need to move down a directory -->
<component name="atext_build" long-name="AT Extension Build" introduced="^3" purpose="optional" filter="s60">
<unit bldFile="os/bt/atext/group"/>
</component>
</collection>
<collection name="bt_info" long-name="Bluetooth Info" level="app-if">
<component name="bt_metadata" long-name="Bluetooth Metadata" introduced="^3" purpose="development" class="config PC">
<unit mrp="os/bt/bt_info/bt_metadata/bt_metadata.mrp"/>
</component>
</collection>
</block>
<block name="usb" level="services" long-name="USB" levels="adaptation hw-if plugin framework server app-if">
<collection name="usbldd" long-name="USB Logical Device Drivers" level="hw-if">
<!-- usbclientdrivers to be moved here from kernelhwsrv-->
</collection>
<collection name="usbmgmt" long-name="USB Management" level="server">
<component name="usbmgr" long-name="USB Manager" purpose="optional">
<unit bldFile="os/usb/usbmgmt/usbmgr/group" mrp="os/usb/usbmgmt/usbmgr/group/usb_manager.mrp" version="2"/>
</component>
<component name="usbclassandmgrdocs" long-name="USB Class and Manager Documentation" purpose="development" class="doc">
<unit mrp="os/usb/usbmgmt/usbclassandmgrdocs/usb_documentation.mrp"/>
</component>
</collection>
<collection name="usb_info" long-name="USB Info" level="app-if">
<component name="usb_metadata" long-name="USB Metadata" introduced="^3" purpose="development" class="config PC">
<unit mrp="os/usb/usb_info/usb_metadata/usb_metadata.mrp"/>
</component>
</collection>
</block>
<block name="mm" level="services" long-name="Multimedia" levels="adaptation hw-if device-fw devices middleware app-if">
<collection name="mm_pub" long-name="Multimedia Public Interfaces" level="app-if">
<component name="audio_effects_api" long-name="Audio Effects API" filter="s60" class="api">
<unit bldFile="os/mm/mm_pub/audio_effects_api/group"/>
</component>
<component name="audio_effects_presets_api" long-name="Audio Effects Presets API" filter="s60" class="api">
<unit bldFile="os/mm/mm_pub/audio_effects_presets_api/group"/>
</component>
<component name="drm_audio_player_api" long-name="DRM Audio Player API" filter="s60" class="api">
<unit bldFile="os/mm/mm_pub/drm_audio_player_api/group"/>
</component>
<component name="multimedia_extension_interfaces_api" long-name="Multimedia Extension Interfaces API" filter="s60" class="api">
<unit bldFile="os/mm/mm_pub/multimedia_extension_interfaces_api/group"/>
</component>
</collection>
<collection name="mm_plat" long-name="Multimedia Platform Interfaces" level="app-if">
<component name="aac_decoder_config_api" long-name="AAC Decoder Config API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/aac_decoder_config_api/group"/>
</component>
<component name="aac_decoder_config_msg_hdlr_api" long-name="AAC Decoder Config Msg Hdlr API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/aac_decoder_config_msg_hdlr_api/group"/>
</component>
<component name="aac_decoder_config_proxy_api" long-name="AAC Decoder Config Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/aac_decoder_config_proxy_api/group"/>
</component>
<component name="added_devsound_control_api" long-name="Added DevSound Control API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/added_devsound_control_api/group"/>
</component>
<component name="added_devsound_control_msg_hdlr_api" long-name="Added DevSound Control Msg Hdlr API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/added_devsound_control_msg_hdlr_api/group"/>
</component>
<component name="added_devsound_control_proxy_api" long-name="Added DevSound Control Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/added_devsound_control_proxy_api/group"/>
</component>
<component name="audio_effects_msg_hdlr_api" long-name="Audio Effects Message Handler API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/audio_effects_msg_hdlr_api/group"/>
</component>
<component name="audio_effects_proxy_api" long-name="Audio Effects Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/audio_effects_proxy_api/group"/>
</component>
<component name="audio_policy_header_api" long-name="Audio Policy Header API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/audio_policy_header_api/group"/>
</component>
<component name="audio_routing_api" long-name="Audio Routing API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/audio_routing_api/group"/>
</component>
<component name="audio_routing_msg_hdlr_api" long-name="Audio Routing Msg Hdlr API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/audio_routing_msg_hdlr_api/group"/>
</component>
<component name="audio_routing_proxy_api" long-name="Audio Routing Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/audio_routing_proxy_api/group"/>
</component>
<component name="custom_interface_builder_api" long-name="Custom Interface Builder API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/custom_interface_builder_api/group"/>
</component>
<component name="custom_interface_message_handler_factory_api" long-name="Custom Interface Message Handler Factory API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/custom_interface_message_handler_factory_api/group"/>
</component>
<component name="custom_interface_proxy_factory_api" long-name="Custom Interface Proxy Factory API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/custom_interface_proxy_factory_api/group"/>
</component>
<component name="custom_interface_utility_api" long-name="Custom Interface Utility API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/custom_interface_utility_api/group"/>
</component>
<component name="devsound_adaptation_api" long-name="DevSound Adaptation API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/devsound_adaptation_api/group"/>
</component>
<component name="display_posting_api" long-name="Display Posting API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/display_posting_api/group"/>
</component>
<component name="eaac_plus_decoder_interface_api" long-name="eAAC Plus Decoder Interface API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/eaac_plus_decoder_interface_api/group"/>
</component>
<component name="eaac_plus_decoder_interface_msg_hdlr_api" long-name="eAAC Plus Decoder Interface Message Handler API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/eaac_plus_decoder_interface_msg_hdlr_api/group"/>
</component>
<component name="eaac_plus_decoder_interface_proxy_api" long-name="eAAC Plus Decoder Interface Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/eaac_plus_decoder_interface_proxy_api/group"/>
</component>
<component name="error_concealment_interface_api" long-name="Error Concealment Interface API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/error_concealment_interface_api/group"/>
</component>
<component name="error_concealment_interface_msg_hdlr_api" long-name="Error Concealment Interface Message Handler API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/error_concealment_interface_msg_hdlr_api/group"/>
</component>
<component name="error_concealment_interface_proxy_api" long-name="Error Concealment Interface Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/error_concealment_interface_proxy_api/group"/>
</component>
<component name="fm_radio_adaptation_api" long-name="FM Radio Adaptation API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/fm_radio_adaptation_api/group"/>
</component>
<component name="g711_decoder_interface_api" long-name="G711 Decoder Interface API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/g711_decoder_interface_api/group"/>
</component>
<component name="g711_decoder_interface_msg_hdlr_api" long-name="G711 Decoder Interface Message Handler API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/g711_decoder_interface_msg_hdlr_api/group"/>
</component>
<component name="g711_decoder_interface_proxy_api" long-name="G711 Decoder Interface Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/g711_decoder_interface_proxy_api/group"/>
</component>
<component name="g711_encoder_interface_api" long-name="G711 Encoder Interface API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/g711_encoder_interface_api/group"/>
</component>
<component name="g711_encoder_interface_msg_hdlr_api" long-name="G711 Encoder Interface Message Handler API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/g711_encoder_interface_msg_hdlr_api/group"/>
</component>
<component name="g711_encoder_interface_proxy_api" long-name="G711 Encoder Interface Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/g711_encoder_interface_proxy_api/group"/>
</component>
<component name="g729_decoder_interface_api" long-name="G729 Decoder Interface API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/g729_decoder_interface_api/group"/>
</component>
<component name="g729_decoder_interface_msg_hdlr_api" long-name="G729 Decoder Interface Message Handler API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/g729_decoder_interface_msg_hdlr_api/group"/>
</component>
<component name="g729_decoder_interface_proxy_api" long-name="G729 Decoder Interface Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/g729_decoder_interface_proxy_api/group"/>
</component>
<component name="g729_encoder_interface_api" long-name="G729 Encoder Interface API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/g729_encoder_interface_api/group"/>
</component>
<component name="g729_encoder_interface_proxy_api" long-name="G729 Encoder Interface Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/g729_encoder_interface_proxy_api/group"/>
</component>
<component name="g729_encoder_interface_msg_hdlr_api" long-name="G729 Encoder Interface Message Handler API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/g729_encoder_interface_msg_hdlr_api/group"/>
</component>
<component name="global_audio_settings_api" long-name="Global Audio Settings API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/global_audio_settings_api/group"/>
</component>
<component name="global_audio_settings_definition_api" long-name="Global Audio Settings Definition API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/global_audio_settings_definition_api/group"/>
</component>
<component name="ilbc_decoder_interface_api" long-name="Ilbc Decoder Interface API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/ilbc_decoder_interface_api/group"/>
</component>
<component name="ilbc_decoder_interface_msg_hdlr_api" long-name="Ilbc Decoder Interface Message Handler API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/ilbc_decoder_interface_msg_hdlr_api/group"/>
</component>
<component name="ilbc_decoder_interface_proxy_api" long-name="Ilbc Decoder Interface Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/ilbc_decoder_interface_proxy_api/group"/>
</component>
<component name="ilbc_encoder_interface_api" long-name="Ilbc Encoder Interface API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/ilbc_encoder_interface_api/group"/>
</component>
<component name="ilbc_encoder_interface_msg_hdlr_api" long-name="Ilbc Encoder Interface Message Handler API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/ilbc_encoder_interface_msg_hdlr_api/group"/>
</component>
<component name="ilbc_encoder_interface_proxy_api" long-name="Ilbc Encoder Interface Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/ilbc_encoder_interface_proxy_api/group"/>
</component>
<component name="mdf_plugin_uids" long-name="MDF Plug-in UIDs" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/mdf_plugin_uids/group"/>
</component>
<component name="multimedia_fourcc_definitions_api" long-name="Multimedia FourCC Definitions API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/multimedia_fourcc_definitions_api/group"/>
</component>
<component name="nokia_audio_policy_header_api" long-name="Nokia Audio Policy Header API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/nokia_audio_policy_header_api/group"/>
</component>
<component name="nokia_multimedia_fourcc_definitions_api" long-name="Nokia Multimedia Fourcc Definitions API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/nokia_multimedia_fourcc_definitions_api/group"/>
</component>
<component name="ra8_decoder_interface_api" long-name="RA8 Decoder Interface API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/ra8_decoder_interface_api/group"/>
</component>
<component name="ra8_decoder_interface_msg_hdlr_api" long-name="RA8 Decoder Interface Message Handler API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/ra8_decoder_interface_msg_hdlr_api/group"/>
</component>
<component name="ra8_decoder_interface_proxy_api" long-name="RA8 Decoder Interface Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/ra8_decoder_interface_proxy_api/group"/>
</component>
<component name="rds_adaptation_api" long-name="RDS Adaptation API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/rds_adaptation_api/group"/>
</component>
<component name="restricted_audio_output_api" long-name="Restricted Audio Output API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/restricted_audio_output_api/group"/>
</component>
<component name="restricted_audio_output_msg_hdlr_api" long-name="Restricted Audio Output Message Handler API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/restricted_audio_output_msg_hdlr_api/group"/>
</component>
<component name="restricted_audio_output_proxy_api" long-name="Restricted Audio Output Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/restricted_audio_output_proxy_api/group"/>
</component>
<component name="sbc_encoder_interface_api" long-name="SBC Encoder Interface API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/sbc_encoder_interface_api/group"/>
</component>
<component name="sbc_encoder_interface_msg_hdlr_api" long-name="SBC Encoder Interface Message Handler API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/sbc_encoder_interface_msg_hdlr_api/group"/>
</component>
<component name="sbc_encoder_interface_proxy_api" long-name="SBC Encoder Interface Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/sbc_encoder_interface_proxy_api/group"/>
</component>
<component name="secure_output_mdf_custom_interface" long-name="Secure Output MDF Custom Interface" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/secure_output_mdf_custom_interface/group"/>
</component>
<component name="speech_encoder_config_api" long-name="Speech Encoder Config API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/speech_encoder_config_api/group"/>
</component>
<component name="speech_encoder_config_msg_hdlr_api" long-name="Speech Encoder Config Message Handler API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/speech_encoder_config_msg_hdlr_api/group"/>
</component>
<component name="speech_encoder_config_proxy_api" long-name="Speech Encoder Config Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/speech_encoder_config_proxy_api/group"/>
</component>
<component name="telephony_audio_routing_client_api" long-name="Telephony Audio Routing Client API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/telephony_audio_routing_client_api/group"/>
</component>
<component name="telephony_audio_routing_manager_api" long-name="Telephony Audio Routing Manager API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/telephony_audio_routing_manager_api/group"/>
</component>
<component name="video_buffer_management_mdf_custom_interface" long-name="Video Buffer Management MDF Custom Interface" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/video_buffer_management_mdf_custom_interface/group"/>
</component>
<component name="video_decoder_rotation_mdf_custom_interface" long-name="Video Decoder Rotation MDF Custom Interface" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/video_decoder_rotation_mdf_custom_interface/group"/>
</component>
<component name="video_decoder_scaling_mdf_custom_interface" long-name="Video Decoder Scaling MDF Custom Interface" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/video_decoder_scaling_mdf_custom_interface/group"/>
</component>
<component name="video_reclaim_extbuffers_ci" long-name="Video Reclaim Extbuffers Custom Interface" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/video_reclaim_extbuffers_ci/group"/>
</component>
<component name="video_window_control_custom_interface" long-name="Video Window Control Custom Interface" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/video_window_control_custom_interface/group"/>
</component>
<component name="wma_decoder_interface_api" long-name="WMA Decoder Interface API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/wma_decoder_interface_api/group"/>
</component>
<component name="wma_decoder_interface_msg_hdlr_api" long-name="WMA Decoder Interface Message Handler API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/wma_decoder_interface_msg_hdlr_api/group"/>
</component>
<component name="wma_decoder_interface_proxy_api" long-name="WMA Decoder Interface Proxy API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/wma_decoder_interface_proxy_api/group"/>
</component>
<component name="eaacplusutil_api" long-name="EAac Plus Util API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/eaacplusutil_api/group"/>
</component>
<component name="frametable_api" long-name="Frametable API" filter="s60" class="api">
<unit bldFile="os/mm/mm_plat/frametable_api/group"/>
</component>
</collection>
<collection name="devsoundextensions" long-name="Devsound Extensions" level="device-fw">
<component name="drmaudioplayer" filter="s60" long-name="DRM Audio Player">
<unit bldFile="os/mm/devsoundextensions/drmaudioplayer/group"/>
</component>
<component name="mmextfw" filter="s60" long-name="Multimedia Extension Framework">
<unit bldFile="os/mm/devsoundextensions/mmextfw/group"/>
</component>
<component name="audiorouting" filter="s60" long-name="Audio Routing">
<unit bldFile="os/mm/devsoundextensions/audiorouting/group"/>
</component>
<component name="effects" filter="s60" long-name="Effects">
<unit bldFile="os/mm/devsoundextensions/effects/group"/>
</component>
<component name="effectspresets" filter="s60" long-name="Effects Presets">
<unit bldFile="os/mm/devsoundextensions/effectspresets/group"/>
</component>
<component name="effectspresets_utils" filter="s60" long-name="Effects Presets Utils">
<!-- need to #include the lot from a single bld.inf
Also move to a standard component location, not under effectspresets -->
<unit bldFile="os/mm/devsoundextensions/effectspresets/AudioEqualizerUtility/group" filter="!dfs_build"/>
<unit bldFile="os/mm/devsoundextensions/effectspresets/EnvironmentalReverbUtility/group" filter="!dfs_build"/>
</component>
<component name="telephonyaudiorouting" filter="s60" long-name="Telephony Audio Routing">
<unit bldFile="os/mm/devsoundextensions/telephonyaudiorouting/group"/>
</component>
<component name="mmfcustominterfaces" filter="s60" long-name="MMF Custom Interfaces">
<unit bldFile="os/mm/devsoundextensions/mmfcustominterfaces/group"/>
</component>
<component name="addeddevsoundcontrol" filter="s60" long-name="Added DevSound Control">
<unit bldFile="os/mm/devsoundextensions/addeddevsoundcontrol/group"/>
</component>
<component name="globalaudiosettings" filter="s60" long-name="Global Audio Settings">
<unit bldFile="os/mm/devsoundextensions/globalaudiosettings/group"/>
</component>
<component name="restrictedaudiooutput" filter="s60" long-name="Restricted Audio Output">
<unit bldFile="os/mm/devsoundextensions/restrictedaudiooutput/group"/>
</component>
<component name="ciextnfactoryplugins" filter="s60" long-name="Custom Interface Extension Factory Plugins" plugin="Y">
<unit bldFile="os/mm/devsoundextensions/ciextnfactoryplugins/group"/>
</component>
</collection>
<collection name="mdfdevvideoextensions" long-name="MDF Dev Video Extensions" level="device-fw">
<component name="nga_mdf_postprocessor" long-name="NGA MDF Postprocessor" filter="s60">
<unit bldFile="os/mm/mdfdevvideoextensions/nga_mdf_postprocessor/group"/>
</component>
</collection>
<collection name="audio" long-name="Audio Codecs" level="middleware">
<component name="arm_cmmf_codecs" filter="s60" long-name="ARM CMMF Codecs" plugin="Y">
<unit bldFile="os/mm/audio/arm_cmmf_codecs/group"/>
</component>
</collection>
<collection name="video" long-name="Video Codecs" level="middleware">
<!-- empty -->
</collection>
<collection name="imagingandcamerafws" long-name="Imaging and Camera Frameworks" level="app-if">
<component name="imagingfws" long-name="Imaging Frameworks" introduced="7.0s" purpose="mandatory">
<unit bldFile="os/mm/imagingandcamerafws/imagingfws/group" mrp="os/mm/imagingandcamerafws/imagingfws/group/multimedia_icl.mrp"/>
</component>
<component name="camerafw" long-name="Camera Framework" introduced="7.0s" purpose="optional">
<unit bldFile="os/mm/imagingandcamerafws/camerafw/group" mrp="os/mm/imagingandcamerafws/camerafw/group/multimedia_ecam_framework.mrp"/>
</component>
</collection>
<collection name="mmlibs" long-name="Multimedia Libraries" level="middleware">
<component name="mmutilitylib" long-name="Multimedia Utility Library" introduced="8.1" purpose="mandatory">
<unit bldFile="os/mm/mmlibs/mmutilitylib/group" mrp="os/mm/mmlibs/mmutilitylib/group/multimedia_common.mrp"/>
</component>
<component name="mmfw" long-name="Multimedia Framework" introduced="7.0s" purpose="mandatory">
<unit bldFile="os/mm/mmlibs/mmfw/group" mrp="os/mm/mmlibs/mmfw/group/multimedia_mmf.mrp"/>
</component>
</collection>
<collection name="mmplugins" long-name="Multimedia Plugins" level="middleware">
<component name="imagingplugins" long-name="Imaging Plugins" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/mm/mmplugins/imagingplugins/group" mrp="os/mm/mmplugins/imagingplugins/group/multimedia_icl_plugin.mrp"/>
</component>
<component name="cameraplugins" long-name="Camera Plugins" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/mm/mmplugins/cameraplugins/group" mrp="os/mm/mmplugins/cameraplugins/group/multimedia_ecam_plugins.mrp"/>
</component>
<component name="lib3gp" long-name="3GP Library" introduced="^2" purpose="optional">
<unit bldFile="os/mm/mmplugins/lib3gp/group" mrp="os/mm/mmplugins/lib3gp/group/multimedia_3gplibrary.mrp"/>
</component>
<component name="mmfwplugins" long-name="Multimedia Framework Plugins" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/mm/mmplugins/mmfwplugins/group" mrp="os/mm/mmplugins/mmfwplugins/group/multimedia_mmf_plugin.mrp"/>
</component>
</collection>
<collection name="mm_info" long-name="Multimedia Info" level="app-if">
<component name="mmdocs" long-name="Multimedia Documentation" purpose="development" class="doc">
<unit mrp="os/mm/mm_info/mmdocs/multimedia_documentation.mrp"/>
</component>
<component name="mm_metadata" long-name="Multimedia Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/mm/mm_info/mm_metadata/mm_metadata.mrp"/>
</component>
</collection>
<collection name="mmresourcemgmt" long-name="Multimedia Resource Management" level="middleware">
<component name="mmresctrl" long-name="Multimedia Resource Controller" introduced="^2" purpose="development">
<unit bldFile="os/mm/mmresourcemgmt/mmresctrl/group" mrp="os/mm/mmresourcemgmt/mmresctrl/group/multimedia_a3f_refmmrc.mrp"/>
</component>
</collection>
<collection name="mmdevicefw" long-name="Multimedia Device Framework" level="device-fw">
<component name="mdf" long-name="Media Device Framework" introduced="9.2" purpose="mandatory">
<unit bldFile="os/mm/mmdevicefw/mdf/group" mrp="os/mm/mmdevicefw/mdf/group/multimedia_mdf.mrp"/>
</component>
<component name="speechrecogsupport" long-name="Speech Recognition Support" introduced="7.0s" purpose="mandatory">
<unit bldFile="os/mm/mmdevicefw/speechrecogsupport/group" mrp="os/mm/mmdevicefw/speechrecogsupport/group/multimedia_mmf_ASR.mrp"/>
</component>
</collection>
<collection name="mmswadaptation" long-name="Multimedia Software Adaptation" level="adaptation">
<component name="videorenderer" long-name="Video Renderer" introduced="^3" purpose="optional">
<unit bldFile="os/mm/mmswadaptation/videorenderer/group" mrp="os/mm/mmswadaptation/videorenderer/group/multimedia_videorenderer.mrp"/>
</component>
</collection>
<collection name="mmtestenv" long-name="Multimedia Test Environment" level="device-fw"/>
<collection name="omxil" long-name="OpenMAX IL" level="hw-if">
<component name="omxilapi" long-name="OpenMAX IL API" introduced="^3" purpose="optional">
<unit bldFile="os/mm/omxil/omxilapi/group" mrp="os/mm/omxil/omxilapi/group/multimedia_omx_il_api.mrp" version="1"/>
</component>
<component name="omxilcore" long-name="OpenMAX IL Core" introduced="^3" purpose="optional">
<unit bldFile="os/mm/omxil/omxilcore/group" mrp="os/mm/omxil/omxilcore/group/multimedia_omx_il_core.mrp" version="1"/>
</component>
<component name="omxilcomponentcommon" long-name="OpenMAX IL Component Framework" introduced="^3" purpose="optional">
<unit bldFile="os/mm/omxil/omxilcomponentcommon/group" mrp="os/mm/omxil/omxilcomponentcommon/group/multimedia_omx_il_comp.mrp" version="1"/>
</component>
<component name="omxilrefcomps" long-name="OpenMAX IL Reference Components" introduced="^3" purpose="optional">
<unit bldFile="os/mm/omxil/omxilrefcomps/ref_components/group" mrp="os/mm/omxil/omxilrefcomps/ref_components/group/multimedia_omx_il_comp_ref.mrp" version="1"/>
</component>
<component name="mmilapi" long-name="Multimedia Integration Layer API" introduced="^3" purpose="development">
<unit bldFile="os/mm/omxil/mmilapi/group" mrp="os/mm/omxil/mmilapi/group/multimedia_il_api.mrp"/>
</component>
</collection>
<collection name="devsound" long-name="Sound Device" level="devices">
<component name="devsoundapi" long-name="DevSound API" introduced="7.0s" purpose="mandatory">
<unit bldFile="os/mm/devsound/devsoundapi/group" mrp="os/mm/devsound/devsoundapi/group/multimedia_mdf_devsound_api.mrp"/>
</component>
<component name="a3fdevsound" long-name="A3F DevSound" introduced="^2" purpose="optional">
<unit bldFile="os/mm/devsound/a3fdevsound/group" mrp="os/mm/devsound/a3fdevsound/group/multimedia_a3f_devsound.mrp"/>
</component>
<component name="a3facf" long-name="A3F Audio Component Framework" introduced="^2" purpose="optional">
<unit bldFile="os/mm/devsound/a3facf/group" mrp="os/mm/devsound/a3facf/group/multimedia_a3f_acf.mrp"/>
</component>
<component name="devsoundpluginsupport" long-name="DevSound Plugin Support" introduced="7.0s" purpose="optional">
<unit bldFile="os/mm/devsound/devsoundpluginsupport/group" mrp="os/mm/devsound/devsoundpluginsupport/group/multimedia_mdf_devsound_pluginsupport.mrp"/>
</component>
<component name="refdevsound" long-name="Reference DevSound Plugins" introduced="7.0s" purpose="optional">
<unit bldFile="os/mm/devsound/devsoundrefplugin/group" mrp="os/mm/devsound/devsoundrefplugin/group/multimedia_mdf_devsound_refplugin.mrp"/>
</component>
<component name="btdevsound" long-name="Bluetooth DevSound Plugin" introduced="7.0s" purpose="development" plugin="Y">
<unit bldFile="os/mm/devsound/sounddevbt/group" mrp="os/mm/devsound/sounddevbt/group/multimedia_mdf_devsound_refbtplugin.mrp"/>
</component>
<component name="a3ftrace" long-name="A3F Trace Utility" introduced="^2" purpose="development">
<unit bldFile="os/mm/devsound/a3ftrace/group" mrp="os/mm/devsound/a3ftrace/group/multimedia_a3f_traces.mrp"/>
</component>
<component name="a3fsrvstart" long-name="A3F Server Start" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="os/mm/devsound/a3fsrvstart/group" mrp="os/mm/devsound/a3fsrvstart/group/multimedia_a3f_serverstart.mrp"/>
</component>
</collection>
<collection name="mmhais" long-name="Multimedia Hardware Adaptation Interfaces" level="adaptation">
<component name="devsoundhwdeviceapi" long-name="DevSound Hardware Device API" introduced="7.0s" purpose="optional">
<unit bldFile="os/mm/devsound/hwdevapi/group" mrp="os/mm/devsound/hwdevapi/group/multimedia_mdf_devsound_hwdev.mrp"/>
</component>
<component name="a3facl" long-name="A3F Audio Component Library" introduced="^2" purpose="development">
<unit bldFile="os/mm/mmhais/a3facl/group" mrp="os/mm/mmhais/a3facl/group/multimedia_a3f_acl.mrp"/>
</component>
<component name="a3fdevsoundcustomisation" long-name="A3F DevSound Customisation" introduced="^2" purpose="optional">
<unit bldFile="os/mm/mmhais/a3fdevsoundcustomisation/group" mrp="os/mm/mmhais/a3fdevsoundcustomisation/group/multimedia_a3f_devsoundadaptationinfo.mrp"/>
</component>
<component name="refacladapt" long-name="Reference ACL Adaptation" introduced="^2" purpose="optional">
<unit bldFile="os/mm/mmhais/refacladapt/group" mrp="os/mm/mmhais/refacladapt/group/multimedia_a3f_refacladaptation.mrp"/>
</component>
<component name="videohai" long-name="Video HAI" introduced="7.0s" purpose="mandatory">
<unit bldFile="os/mm/mmhais/videohai/group" mrp="os/mm/mmhais/videohai/group/multimedia_videohai.mrp"/>
</component>
<component name="dvbhreceiverhai" long-name="Mobile TV DVB-H Receiver HAI" introduced="^2" purpose="optional">
<unit bldFile="os/mm/mmhais/dvbhreceiverhai/hai/dvbh/group" mrp="os/mm/mmhais/dvbhreceiverhai/hai/dvbh/group/multimedia_mobiletv_dvbh_hai.mrp"/>
</component>
</collection>
</block>
<block name="imagingext" level="services" long-name="Imaging Extensions" levels="adaptation hw-if plugin framework server app-if">
<collection name="imagingext_pub" long-name="Imaging Extensions Public Interfaces" level="app-if">
<component name="exif_api" long-name="Exif API" filter="s60" class="api">
<unit bldFile="os/imagingext/imagingext_pub/exif_api/group" filter="!test"/>
</component>
</collection>
<collection name="imagingext_plat" long-name="Imaging Extensions Platform Interfaces" level="app-if">
<component name="jpeg2000_icl_plugin_api" long-name="JPEG2000 ICL plugin API" filter="s60" class="api">
<unit bldFile="os/imagingext/imagingext_plat/jpeg2000_icl_plugin_api/group"/>
</component>
<component name="extended_icl_jpeg_api" long-name="Extended ICL Jpeg API" filter="s60" class="api">
<unit bldFile="os/imagingext/imagingext_plat/extended_icl_jpeg_api/group" filter="!test"/>
</component>
<component name="h324_annex_k_custom_api" long-name="H324 Annex K Custom API" filter="s60" class="api">
<unit bldFile="os/imagingext/imagingext_plat/h324_annex_k_custom_api/group"/>
</component>
<component name="ecam_orientation_custom_api" long-name="ECam Orientation Custom API" filter="s60" class="api">
<unit bldFile="os/imagingext/imagingext_plat/ecam_orientation_custom_api/group"/>
</component>
<component name="ecam_ui_orientation_override_custom_api" long-name="ECam UI Orientation Override Custom API" filter="s60" class="api">
<unit bldFile="os/imagingext/imagingext_plat/ecam_ui_orientation_override_custom_api/group"/>
</component>
<component name="ecam_face_tracking_custom_api" long-name="ECam Face Tracking Custom API" filter="s60" class="api">
<unit bldFile="os/imagingext/imagingext_plat/ecam_face_tracking_custom_api/group"/>
</component>
<component name="ecam_use_case_hint_custom_api" long-name="ECam Use Case Hint Custom API" filter="s60" class="api">
<unit bldFile="os/imagingext/imagingext_plat/ecam_use_case_hint_custom_api/group"/>
</component>
</collection>
<collection name="imageadaptationextensions" long-name="Image Adaptation Extensions" level="app-if">
<component name="iclextjpegapi" filter="s60" long-name="ICL Extension JPEG API">
<unit bldFile="os/imagingext/imageadaptationextensions/iclextjpegapi/group"/>
</component>
<component name="imageadaptationextensions_build" filter="s60" long-name="Image Adaptation Extensions Build">
<!-- Move the export from this bld.inf into the above one and remove this component, or make this a ROM component -->
<unit bldFile="os/imagingext/imageadaptationextensions/group"/>
</component>
</collection>
<collection name="imagingmodules" long-name="Imaging Modules" level="hw-if">
<component name="exiflib" filter="s60" long-name="Exif Library">
<unit bldFile="os/imagingext/imagingmodules/exiflib/group"/>
</component>
<component name="jp2kcodec" filter="s60" long-name="JPEG2000 Decoder Plugin" plugin="Y">
<unit bldFile="os/imagingext/imagingmodules/jp2kcodec/group"/>
</component>
</collection>
</block>
<block name="graphics" level="services" long-name="Graphics" levels="adaptation engines internal-adaptations device-interface internal-utils app-if">
<collection name="graphicsaccelaration" long-name="Graphics Acceleration" level="adaptation">
<component name="vgi" filter="s60" long-name="VGI">
<unit bldFile="os/graphics/graphicsaccelaration/vgi/group"/>
</component>
</collection>
<collection name="m3g" long-name="Mobile 3D Graphics" level="internal-adaptations">
<component name="m3gcore11" filter="s60" long-name="M3G Core 1.1">
<unit bldFile="os/graphics/m3g/m3gcore11/group"/>
</component>
</collection>
<collection name="graphicsresourceservices" long-name="Graphics Resource Services" level="engines">
<component name="graphicsresource" long-name="Graphics Resource" introduced="^3" deprecated="^3" purpose="optional">
<unit bldFile="os/graphics/graphicsresourceservices/graphicsresource/group" mrp="os/graphics/graphicsresourceservices/graphicsresource/group/graphics_graphicsresource.mrp"/>
</component>
<component name="graphicsresourceadaptation" long-name="Graphics Resource Adaptation" introduced="^3" deprecated="^3" purpose="optional">
<unit bldFile="os/graphics/graphicsresourceservices/graphicsresourceadaptation/group" mrp="os/graphics/graphicsresourceservices/graphicsresourceadaptation/group/graphics_graphicsresourceadapter.mrp"/>
</component>
</collection>
<collection name="graphicsutils" long-name="Graphics Utils" level="engines">
<component name="commongraphicsheaders" long-name="Common Graphics Headers" introduced="^3" purpose="mandatory">
<unit bldFile="os/graphics/graphicsutils/commongraphicsheaders/group" mrp="os/graphics/graphicsutils/commongraphicsheaders/group/graphics_commonheader.mrp"/>
</component>
</collection>
<collection name="graphicshwdrivers" long-name="Graphics Hardware Drivers" level="adaptation">
<!-- displayldd to be moved here -->
<component name="surfacemgr" long-name="Surface Manager" introduced="^3" purpose="optional">
<unit bldFile="os/graphics/graphicshwdrivers/surfacemgr/group" mrp="os/graphics/graphicshwdrivers/surfacemgr/group/graphics_surfacemanager.mrp"/>
</component>
</collection>
<collection name="graphicscomposition" long-name="Graphics Composition" level="engines">
<component name="openwfcinterface" long-name="OpenWF Composition Interface" introduced="^3" purpose="optional">
<unit bldFile="os/graphics/graphicscomposition/openwfcinterface/group" mrp="os/graphics/graphicscomposition/openwfcinterface/group/graphics_openwfcinterface.mrp"/>
</component>
<component name="openwfcompositionengine" long-name="OpenWF Composition Engine" introduced="^3" purpose="development">
<unit bldFile="os/graphics/graphicscomposition/openwfcompositionengine/group" mrp="os/graphics/graphicscomposition/openwfcompositionengine/group/graphics_openwfcompositionengine.mrp"/>
</component>
<component name="openwfsupport" long-name="OpenWF Support" introduced="^3" purpose="optional">
<unit bldFile="os/graphics/graphicscomposition/openwfsupport/group" mrp="os/graphics/graphicscomposition/openwfsupport/group/graphics_openwfsupport.mrp"/>
</component>
<component name="surfaceupdate" long-name="Surface Update" introduced="^3" purpose="optional">
<unit bldFile="os/graphics/graphicscomposition/surfaceupdate/group" mrp="os/graphics/graphicscomposition/surfaceupdate/group/graphics_surfaceupdate.mrp"/>
</component>
</collection>
<collection name="graphicstest" long-name="Graphics Test" level="app-if">
<component name="uibench" long-name="UI Bench" introduced="9.2" purpose="development">
<unit bldFile="os/graphics/graphicstest/uibench/group" mrp="os/graphics/graphicstest/uibench/group/graphics_ui_bench.mrp"/>
</component>
</collection>
<collection name="graphics_plat" long-name="Graphics Platform Interfaces" level="app-if">
<component name="m3g_core_api" filter="sf_build" long-name="M3G Core API" class="api">
<unit bldFile="os/graphics/graphics_plat/m3g_core_api/group"/>
</component>
</collection>
<collection name="graphics_info" long-name="Graphics Info" level="app-if">
<component name="graphicsdocs" long-name="Graphics Documentation" purpose="development" class="doc">
<unit mrp="os/graphics/graphics_info/graphicsdocs/graphics_documentation.mrp"/>
</component>
<component name="graphics_metadata" long-name="Graphics Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/graphics/graphics_info/graphics_metadata/graphics_metadata.mrp"/>
</component>
</collection>
<collection name="windowing" long-name="Windowing" level="app-if">
<component name="windowserver" long-name="Window Server" purpose="mandatory">
<unit bldFile="os/graphics/windowing/windowserver/group" mrp="os/graphics/windowing/windowserver/group/graphics_wserv.mrp"/>
</component>
<component name="windowserverplugins" long-name="Window Server Plugins" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/graphics/windowing/windowserverplugins/group" mrp="os/graphics/windowing/windowserverplugins/group/graphics_wserv_std_plugins.mrp"/>
</component>
</collection>
<collection name="printingservices" long-name="Printing Services" level="app-if">
<component name="printerdriversupport" long-name="Printer Driver Support" purpose="optional">
<unit bldFile="os/graphics/printingservices/printerdriversupport/group" mrp="os/graphics/printingservices/printerdriversupport/group/graphics_pdrstore.mrp"/>
</component>
<component name="printerdrivers" long-name="Printer Drivers" purpose="optional" plugin="Y">
<unit bldFile="os/graphics/printingservices/printerdrivers/group" mrp="os/graphics/printingservices/printerdrivers/group/graphics_printdrv.mrp"/>
</component>
</collection>
<collection name="fbs" long-name="Font and Bitmap Server" level="device-interface">
<component name="fontandbitmapserver" long-name="Font and Bitmap Server" purpose="mandatory">
<unit bldFile="os/graphics/fbs/fontandbitmapserver/group" mrp="os/graphics/fbs/fontandbitmapserver/group/graphics_fbserv.mrp"/>
</component>
</collection>
<collection name="opengles" long-name="OpenGLES" level="internal-adaptations">
<component name="openglesinterface" long-name="OpenGL ES Interface" introduced="8.0" purpose="optional">
<unit bldFile="os/graphics/opengles/openglesinterface/group" mrp="os/graphics/opengles/openglesinterface/group/graphics_openglesheaders.mrp"/>
</component>
<component name="opengles_stub" filter="sf_build" long-name="OpenGL ES Stub" purpose="optional" introduced="^2">
<unit bldFile="os/graphics/opengles/openglesinterface/group/opengles_stub"/>
</component>
</collection>
<collection name="openvg" long-name="OpenVG" level="internal-adaptations">
<component name="openvginterface" long-name="OpenVG Interface" introduced="^2" purpose="optional">
<unit bldFile="os/graphics/openvg/openvginterface/group" mrp="os/graphics/openvg/openvginterface/group/graphics_openvgheaders.mrp"/>
</component>
<component name="openvg11" filter="s60" long-name="OpenVG 1.1">
<!-- this needs to be moved to it's own component directory, ie openvg/openvg11 -->
<unit bldFile="os/graphics/openvg/openvginterface/group/openvg11"/>
</component>
<component name="sfopenvg" filter="sf_build" long-name="Khronos OpenVG Reference Implementation" introduced="^2" purpose="optional">
<unit bldFile="os/graphics/openvg/openvgrefimplementation/sfopenvg/group"/>
</component>
</collection>
<collection name="egl" long-name="EGL" level="internal-adaptations">
<component name="eglinterface" long-name="EGL Interface" introduced="^2" purpose="optional">
<unit bldFile="os/graphics/egl/eglinterface/group" mrp="os/graphics/egl/eglinterface/group/graphics_eglheaders.mrp"/>
</component>
<component name="eglswitch" long-name="EGL Switch" introduced="^3" purpose="optional">
<unit bldFile="os/graphics/egl/eglswitch/group" mrp="os/graphics/egl/eglswitch/group/graphics_eglswitch.mrp"/>
</component>
<component name="eglrefimpl" long-name="EGL Reference Implementation" introduced="^3" purpose="optional">
<unit bldFile="os/graphics/egl/eglrefimpl/group" mrp="os/graphics/egl/eglrefimpl/group/graphics_eglrefimpl.mrp"/>
</component>
<component name="egltest" long-name="EGL Tests" introduced="^3" purpose="development">
<unit bldFile="os/graphics/egl/egltest/group" mrp="os/graphics/egl/egltest/group/graphics_egltest.mrp"/>
</component>
</collection>
<collection name="graphicsdeviceinterface" long-name="Graphics Device Interface" level="device-interface">
<component name="gdi" long-name="GDI" purpose="mandatory">
<unit bldFile="os/graphics/graphicsdeviceinterface/gdi/group" mrp="os/graphics/graphicsdeviceinterface/gdi/group/graphics_gdi.mrp"/>
</component>
<component name="bitgdi" long-name="BitGDI" purpose="mandatory">
<unit bldFile="os/graphics/graphicsdeviceinterface/bitgdi/group" mrp="os/graphics/graphicsdeviceinterface/bitgdi/group/graphics_bitgdi.mrp"/>
</component>
<component name="colourpalette" long-name="Colour Palette" introduced="7.0s" purpose="optional">
<unit bldFile="os/graphics/graphicsdeviceinterface/colourpalette/group" mrp="os/graphics/graphicsdeviceinterface/colourpalette/group/graphics_palette.mrp"/>
</component>
<component name="screendriver" long-name="Screen Driver" introduced="6.1" purpose="optional" plugin="Y">
<unit bldFile="os/graphics/graphicsdeviceinterface/screendriver/group" mrp="os/graphics/graphicsdeviceinterface/screendriver/group/graphics_screendriver.mrp"/>
</component>
<component name="directgdi" long-name="DirectGDI" introduced="^3" deprecated="^3" purpose="optional">
<unit bldFile="os/graphics/graphicsdeviceinterface/directgdi/group" mrp="os/graphics/graphicsdeviceinterface/directgdi/group/graphics_directgdi.mrp"/>
</component>
<component name="directgdiinterface" long-name="DirectGDI Interface" introduced="^3" deprecated="^3" purpose="optional">
<unit bldFile="os/graphics/graphicsdeviceinterface/directgdiinterface/group" mrp="os/graphics/graphicsdeviceinterface/directgdiinterface/group/graphics_directgdiheaders.mrp"/>
</component>
<component name="directgdiadaptation" long-name="DirectGDI Adaptation" introduced="^3" deprecated="^3" purpose="optional">
<unit bldFile="os/graphics/graphicsdeviceinterface/directgdiadaptation/group" mrp="os/graphics/graphicsdeviceinterface/directgdiadaptation/group/graphics_directgdiadapter.mrp"/>
</component>
</collection>
<collection name="graphicstools" long-name="Graphics Tools" level="internal-utils">
<component name="gdi_tools" long-name="GDI Tools" purpose="development" class="PC">
<unit bldFile="os/graphics/graphicstools/gdi_tools/group" mrp="os/graphics/graphicstools/gdi_tools/group/graphics_gditools.mrp"/>
</component>
</collection>
<collection name="graphicsapitest" long-name="Graphics API Tests" level="app-if"/>
</block>
<block name="textandloc" level="services" long-name="Text and Localisation Services" levels="encoding util fonts tools text">
<collection name="textandloc_plat" long-name="Text and Localisation Platform Interfaces" level="text">
<component name="findutil_api" long-name="Find Utility API" filter="s60" class="api">
<unit bldFile="os/textandloc/textandloc_plat/findutil_api/group"/>
</component>
<component name="japanese_language_utilities_api" long-name="Japanese Language Utilities API" filter="s60" class="api">
<unit bldFile="os/textandloc/textandloc_plat/japanese_language_utilities_api/group"/>
</component>
<component name="sortutil_api" long-name="Sorting Utility API" filter="s60" class="api">
<unit bldFile="os/textandloc/textandloc_plat/sortutil_api/group"/>
</component>
</collection>
<collection name="textandloc_pub" long-name="Text and Localisation Public Interfaces" level="text">
<component name="directory_localizer_api" long-name="Directory Localizer API" filter="s60" class="api">
<unit bldFile="os/textandloc/textandloc_pub/directory_localizer_api/group"/>
</component>
</collection>
<collection name="charconvfw" long-name="Character Conversion" level="encoding">
<component name="charconv_fw" long-name="Character Encoding and Conversion Framework" purpose="optional">
<unit bldFile="os/textandloc/charconvfw/charconv_fw/group" mrp="os/textandloc/charconvfw/charconv_fw/group/syslibs_charconv.mrp"/>
</component>
<component name="charconvplugins" long-name="Character Encoding and Conversion Plugins" purpose="optional" plugin="Y">
<unit bldFile="os/textandloc/charconvfw/charconvplugins/group" mrp="os/textandloc/charconvfw/charconvplugins/group/syslibs_charconv_plugins.mrp"/>
</component>
<component name="fatfilenameconversionplugins" long-name="FAT Filename Conversion Plugins" introduced="9.1" purpose="optional" plugin="Y">
<unit bldFile="os/textandloc/charconvfw/fatfilenameconversionplugins/group" mrp="os/textandloc/charconvfw/fatfilenameconversionplugins/group/syslibs_FATCharsetConv.mrp"/>
</component>
</collection>
<collection name="fontandtxtsrv" long-name="Font and Text Services" level="fonts">
<component name="iculayoutengine" long-name="ICU Layout Engine" introduced="9.2" purpose="optional" plugin="Y">
<unit bldFile="os/textandloc/fontservices/textshaperplugin/group" mrp="os/textandloc/fontservices/textshaperplugin/group/graphics_iculayoutengine.mrp"/>
</component>
<component name="fontstore" long-name="Font Store" purpose="mandatory">
<unit bldFile="os/textandloc/fontservices/fontstore/group" mrp="os/textandloc/fontservices/fontstore/group/graphics_fntstore.mrp"/>
</component>
<component name="textrendering" long-name="Text Rendering" purpose="mandatory" class="placeholder">
<!-- placeholder for text code from GDI -->
</component>
<component name="freetypefontrasteriser" long-name="FreeType Font Rasteriser" purpose="optional" plugin="Y">
<unit bldFile="os/textandloc/fontservices/freetypefontrasteriser/group" mrp="os/textandloc/fontservices/freetypefontrasteriser/group/graphics_freetype.mrp"/>
</component>
<component name="referencefonts" long-name="Reference Fonts" introduced="6.0" purpose="optional">
<unit bldFile="os/textandloc/fontservices/referencefonts/group" mrp="os/textandloc/fontservices/referencefonts/group/graphics_fonts.mrp"/>
</component>
</collection>
<collection name="textlayout" long-name="Text Layout" level="text">
<component name="texthandling" long-name="Text Handling" purpose="optional">
<unit bldFile="os/textandloc/textrendering/texthandling/group" mrp="os/textandloc/textrendering/texthandling/group/app-framework_etext.mrp"/>
</component>
<component name="textformatting" long-name="Text Formatting" purpose="optional">
<unit bldFile="os/textandloc/textrendering/textformatting/group" mrp="os/textandloc/textrendering/textformatting/group/app-framework_form.mrp"/>
</component>
</collection>
<collection name="textandlocutils" long-name="Text and Localisation Utils" level="util">
<!-- components in this collection need to be moved to the right collection.
Either move into the units' directories, or create a new textandlocutils directory -->
<component name="numbergrouping" filter="s60" long-name="Number Grouping">
<unit bldFile="os/textandloc/charconvfw/numbergrouping/group"/>
</component>
<component name="jplangutil" filter="s60" long-name="Japanese Language Utilities">
<unit bldFile="os/textandloc/charconvfw/jplangutil/group"/>
</component>
<component name="sortutil" filter="s60" long-name="Sorting Utility">
<unit bldFile="os/textandloc/charconvfw/sortutil/group"/>
</component>
<component name="inlinetext" filter="s60" long-name="Inline Text">
<unit bldFile="os/textandloc/charconvfw/inlinetext/group"/>
</component>
<component name="nearestlangutil" long-name="Nearest Language Util" introduced="^2" purpose="mandatory" class="placeholder">
<!-- placeholder for split from bafl -->
</component>
<component name="numberformatting" long-name="Number Formatting" introduced="7.0s" purpose="optional">
<unit bldFile="os/textandloc/textrendering/numberformatting/group" mrp="os/textandloc/textrendering/numberformatting/group/app-framework_numberconversion.mrp"/>
</component>
</collection>
<collection name="localesupport" long-name="Locale Support" level="util">
<component name="reflocales" long-name="Reference Locales" purpose="optional" plugin="Y">
<unit bldFile="os/textandloc/localisation/localesupport" mrp="os/textandloc/localisation/localesupport/mmpfiles/base_loce32.mrp"/>
</component>
<component name="initlocale" long-name="Initialise Locale" introduced="^2" purpose="mandatory" class="placeholder">
<!-- placeholder for split from bafl -->
</component>
</collection>
<collection name="textandloctools" long-name="Text and Localisation Tools" level="tools">
<component name="fontcompiler" long-name="Font Compiler" purpose="development" class="placeholder PC">
<!-- placeholder for split from GDI Tools -->
</component>
<component name="bitmapfonttools" long-name="Bitmap Font Tools" purpose="development" class="PC">
<unit bldFile="os/graphics/graphicstools/bitmapfonttools/group" mrp="os/graphics/graphicstools/bitmapfonttools/group/graphics_gdtran.mrp"/>
</component>
</collection>
<collection name="textandloc_info" long-name="Text and Localisation Info" level="text">
<component name="textandloc_metadata" long-name="Text and Localisation Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/textandloc/textandloc_info/textandloc_metadata/textandloc_metadata.mrp"/>
</component>
</collection>
</block>
<block name="xmlsrv" level="services" long-name="XML Services" levels="plugin server framework generic specific">
<collection name="xmlsrv_plat" long-name="XML Services Platform Interfaces" level="specific">
<component name="xmlsrv_plat_build" long-name="XML Services Platform Interface Build" filter="s60" class="api">
<!-- need to fix the configuration used here.
Either destribute to other components or use the new feature flags confguration mechanisms.
Remove this component and uncomment the other units when fixed-->
<unit bldFile="os/xmlsrv/xmlsrv_plat/group"/>
</component>
<component name="xml_encryption_api" long-name="XML Encryption API" filter="s60" class="api placeholder">
<!-- <unit bldFile="xmlsrv_plat/xml_encryption_api/group"/> -->
</component>
<component name="xml_signature_api" long-name="XML Signature API" filter="s60" class="api placeholder">
<!-- <unit bldFile="xmlsrv_plat/xml_signature_api/group"/> -->
</component>
<component name="xml_security_engine_utils_api" long-name="XML Security Engine Utils API" filter="s60" class="api placeholder">
<!-- <unit bldFile="xmlsrv_plat/xml_security_engine_utils_api/group"/> -->
</component>
</collection>
<collection name="xmlsecurityengine" long-name="XML Security Engine" level="framework">
<component name="xmlseccertman" filter="s60" long-name="XML Security Certificate Manager">
<unit bldFile="os/xmlsrv/xmlsecurityengine/xmlseccertman/group"/>
</component>
<component name="xmlsec" filter="s60" long-name="XML Security">
<unit bldFile="os/xmlsrv/xmlsecurityengine/xmlsec/group"/>
</component>
<component name="xmlseccrypto" filter="s60" long-name="XML Security Crypto">
<unit bldFile="os/xmlsrv/xmlsecurityengine/xmlseccrypto/group"/>
</component>
<component name="xmlsecwrapper" filter="s60" long-name="XML Security Wrapper">
<unit bldFile="os/xmlsrv/xmlsecurityengine/xmlsecwrapper/group"/>
</component>
</collection>
<collection name="xml" long-name="XML" level="generic">
<component name="xmlfw" long-name="XML Framework" introduced="7.0s" purpose="optional">
<unit bldFile="os/xmlsrv/xml/xmlfw/group" mrp="os/xmlsrv/xml/xmlfw/group/syslibs_xml.mrp"/>
</component>
<component name="libxml2libs" long-name="Libxml2 Libraries" introduced="^3" purpose="optional">
<unit bldFile="os/xmlsrv/xml/libxml2libs/group" mrp="os/xmlsrv/xml/libxml2libs/group/syslibs_libxml2.mrp"/>
</component>
<component name="legacyminidomparser" long-name="Legacy Mini-DOM Parser" introduced="7.0s" purpose="optional">
<unit bldFile="os/xmlsrv/xml/legacyminidomparser/GROUP" mrp="os/xmlsrv/xml/legacyminidomparser/GROUP/syslibs_legacyminidomparser.mrp"/>
</component>
<component name="xmldomandxpath" long-name="XML DOM and XPath" introduced="^3" purpose="optional">
<unit bldFile="os/xmlsrv/xml/xmldomandxpath/group" mrp="os/xmlsrv/xml/xmldomandxpath/group/syslibs_xmldom.mrp"/>
</component>
<component name="xmlexpatparser" long-name="XML Expat Parser" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/xmlsrv/xml/xmlexpatparser/group" mrp="os/xmlsrv/xml/xmlexpatparser/group/syslibs_xmlparser.mrp"/>
</component>
<component name="xmllibxml2parser" long-name="XML Libxml2 Parser" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/xmlsrv/xml/xmllibxml2parser/group" mrp="os/xmlsrv/xml/xmllibxml2parser/group/syslibs_xmlparser2.mrp"/>
</component>
<component name="wbxmlparser" long-name="WBXML Parser" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/xmlsrv/xml/wbxmlparser/group" mrp="os/xmlsrv/xml/wbxmlparser/group/syslibs_wbxmlparser.mrp"/>
</component>
</collection>
<collection name="xmlsrv_info" long-name="XML Services Info" level="specific">
<component name="xmlsrv_metadata" long-name="XML Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/xmlsrv/xmlsrv_info/xmlsrv_metadata/xmlsrv_metadata.mrp"/>
</component>
</collection>
</block>
<block name="deviceplatformrelease" level="services" long-name="Device Platform Release" levels="bld mid top">
<collection name="s60extras" long-name="S60 Extras" level="mid">
<!-- collection is really a component. Need to move down a directory -->
<component name="s60extras_build" filter="s60" long-name="S60 Extras Build" purpose="development" class="config">
<unit bldFile="os/deviceplatformrelease/S60Extras/group"/>
</component>
</collection>
<collection name="locfiles" long-name="Locale Files" level="mid">
<component name="locfiles_build" filter="s60" long-name="S60 Locale Files Build" purpose="development" class="config">
<!-- need to move component down a directory -->
<unit bldFile="os/deviceplatformrelease/locfiles/group"/>
</component>
<component name="locfiles_set1" long-name="Locale Files Set 1" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set1"/>
</component>
<component name="locfiles_set2" long-name="Locale Files Set 2" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set2"/>
</component>
<component name="locfiles_set3" long-name="Locale Files Set 3" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set3"/>
</component>
<component name="locfiles_set4" long-name="Locale Files Set 4" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set4"/>
</component>
<component name="locfiles_set5" long-name="Locale Files Set 5" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set5"/>
</component>
<component name="locfiles_set6" long-name="Locale Files Set 6" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set6"/>
</component>
<!-- is the a problem with SF builds with the following? -->
<component name="locfiles_set7" long-name="Locale Files Set 7" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set7"/>
</component>
<component name="locfiles_set8" long-name="Locale Files Set 8" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set8"/>
</component>
<component name="locfiles_set9" long-name="Locale Files Set 9" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set9"/>
</component>
<component name="locfiles_set10" long-name="Locale Files Set 10" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set10"/>
</component>
<component name="locfiles_set11" long-name="Locale Files Set 11" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set11"/>
</component>
<component name="locfiles_set12" long-name="Locale Files Set 12" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set12"/>
</component>
<component name="locfiles_set13" long-name="Locale Files Set 13" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set13"/>
</component>
<component name="locfiles_set14" long-name="Locale Files Set 14" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set14"/>
</component>
<component name="locfiles_set15" long-name="Locale Files Set 15" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set15"/>
</component>
<component name="locfiles_set16" long-name="Locale Files Set 16" filter="s60" class="config">
<unit bldFile="os/deviceplatformrelease/locfiles/group/set16"/>
</component>
</collection>
<collection name="version" long-name="Version" level="top">
<!-- collection is really a component. Need to move down a directory -->
<component name="version_build" filter="s60" long-name="Version Build" purpose="development" class="config">
<unit bldFile="os/deviceplatformrelease/Version/group"/>
</component>
</collection>
<collection name="helps_loc2" long-name="Helps Locale 2" level="top">
<!-- collection is really a component. Need to move down a directory -->
<component name="helps_loc2_build" long-name="Helps Locale 2 Build" filter="s60">
<unit bldFile="os/deviceplatformrelease/helps_loc2/group"/>
</component>
</collection>
<collection name="sf_config" long-name="SF Config" level="mid">
<component name="config" filter="s60" long-name="Config" purpose="development" class="config"/>
<component name="cenrep" filter="sf_build" long-name="ConE Central Repository Config" purpose="development" class="config">
<!-- will shoudl give the id/path something more unique than cenrep -->
<unit bldFile="os/deviceplatformrelease/sf_config/cenrep/group"/>
</component>
<component name="rombuild_syborg" filter="sf_build" long-name="Syborg iMaker Config" purpose="development" introduced="^3" class="config">
<unit bldFile="os/deviceplatformrelease/sf_config/rombuild/syborg/group"/>
</component>
<component name="rombuild_zoom2" filter="sf_build" long-name="Zoom2 iMaker Config" purpose="development" introduced="^3" class="config">
<unit bldFile="os/deviceplatformrelease/sf_config/rombuild/zoom2/group"/>
</component>
</collection>
<!-- should be located locally in buildplatforms/group. NB. This is a different package! -->
<collection name="s60bld" long-name="S60 Build">
<component name="buildplatforms" filter="s60" long-name="Build Platforms">
<unit bldFile="tools/buildplatforms/group"/>
</component>
</collection>
<collection name="symbianosbld" long-name="Symbian OS Build" level="bld">
<component name="cedarutils" long-name="Cedar Utils" purpose="development">
<unit mrp="os/deviceplatformrelease/symbianosbld/cedarutils/tools_utils_cedar.mrp"/>
</component>
<component name="productionbldcbrconfig" long-name="Production Build CBR Config" filter="gt" purpose="development" class="config">
<unit mrp="os/deviceplatformrelease/symbianosbld/productionbldcbrconfig/product_cbr_config.mrp"/>
</component>
<component name="foundation_s60_packages" long-name="Foundation S60 Packages" introduced="^3" deprecated="^3" purpose="development" class="config PC">
<unit mrp="os/deviceplatformrelease/symbianosbld/foundation_s60_packages/foundation_s60_packages.mrp"/>
</component>
</collection>
<collection name="foundation_system" long-name="Foundation System" level="top">
<component name="system_model" long-name="System Model" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/deviceplatformrelease/foundation_system/system_model/system_model.mrp"/>
</component>
</collection>
<collection name="deviceplatformrelease_info" long-name="Device Platform Release Info" level="top">
<component name="deviceplatformrelease_metadata" long-name="Device Platform Release Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/deviceplatformrelease/deviceplatformrelease_info/deviceplatformrelease_metadata/deviceplatformrelease_metadata.mrp"/>
</component>
</collection>
</block>
<block name="osrndtools" level="services" long-name="OS R&D tools" levels="fw trace">
<collection name="stif" long-name="STIF" level="fw">
<component name="stif_plat" filter="s60" long-name="STIF Platform Interfaces" purpose="development" class="api">
<unit bldFile="os/osrndtools/stif/stif_plat/group"/>
</component>
<component name="testinterface" filter="s60" long-name="Test Interface" purpose="development">
<unit bldFile="os/osrndtools/stif/testinterface/group"/>
</component>
<component name="testserver" filter="s60" long-name="Test Server" purpose="development">
<unit bldFile="os/osrndtools/stif/testserver/group"/>
</component>
<component name="testengine" filter="s60" long-name="Test Engine" purpose="development">
<unit bldFile="os/osrndtools/stif/testengine/group"/>
</component>
<component name="testserverstarter" filter="s60" long-name="Test Server Starter" purpose="development">
<unit bldFile="os/osrndtools/stif/testserverstarter/group"/>
</component>
<component name="stiftfwif" filter="s60" long-name="STIF Test Framework Interface" purpose="development">
<unit bldFile="os/osrndtools/stif/stiftfwif/group"/>
</component>
<component name="consoleui" filter="s60" long-name="Console UI" purpose="development">
<unit bldFile="os/osrndtools/stif/consoleui/group"/>
</component>
<component name="testcombiner" filter="s60" long-name="Test Combiner" purpose="development">
<unit bldFile="os/osrndtools/stif/testcombiner/group"/>
</component>
<component name="demomodule" filter="s60" long-name="Demo Module" purpose="development">
<unit bldFile="os/osrndtools/stif/demomodule/group"/>
</component>
<component name="atslogger" filter="s60" long-name="ATS Logger" purpose="development">
<unit bldFile="os/osrndtools/stif/atslogger/group"/>
</component>
<component name="atsinterface" filter="s60" long-name="ATS Interface" purpose="development">
<unit bldFile="os/osrndtools/stif/atsinterface/group"/>
</component>
<component name="testscripter" filter="s60" long-name="Test Scripter" purpose="development">
<unit bldFile="os/osrndtools/stif/testscripter/group"/>
</component>
<component name="suevent" filter="s60" long-name="SU Event" purpose="development">
<unit bldFile="os/osrndtools/stif/suevent/group"/>
</component>
<component name="stifkerneltestclassbase" filter="s60" long-name="STIF Kernel Test Class Base" purpose="development">
<!-- uncomment the unit when configuration is in place, it's currently #included from stif_build -->
<!-- <unit bldFile="stif/stifkerneltestclassbase/group"/>-->
</component>
<component name="stif_build" filter="s60" long-name="STIF Build" purpose="development">
<!-- move exports into self-contained component. Remove this when configuration is in place-->
<unit bldFile="os/osrndtools/stif/group"/>
</component>
</collection>
<collection name="memspy" long-name="Memspy" level="trace">
<component name="memspy_plat" filter="s60" long-name="Memspy Platform Interfaces" purpose="development" class="api">
<unit bldFile="os/osrndtools/memspy/memspy_plat/group"/>
</component>
<component name="driver" filter="s60" long-name="Memspy Driver" purpose="development">
<unit bldFile="os/osrndtools/memspy/driver/group"/>
</component>
<component name="memspy_engine" filter="s60" long-name="Memspy Engine" purpose="development">
<unit bldFile="os/osrndtools/memspy/engine/group"/>
</component>
<component name="commandline" filter="s60" long-name="Memspy Command Line" purpose="development">
<unit bldFile="os/osrndtools/memspy/commandline/group"/>
</component>
<component name="console" filter="s60" long-name="Memspy Console" purpose="development">
<unit bldFile="os/osrndtools/memspy/console/group"/>
</component>
<component name="memspy_build" filter="s60" long-name="Memspy Build" purpose="development">
<!-- move exports into self-contained component.-->
<unit bldFile="os/osrndtools/memspy/group"/>
</component>
</collection>
<collection name="hti" long-name="Harmonized Test Interface" level="trace">
<component name="hti_plat" filter="s60" long-name="HTI Platform Interfaces" purpose="development" class="api">
<unit bldFile="os/osrndtools/hti/hti_plat/group"/>
</component>
<component name="hticfg" filter="s60" long-name="HTI Config" purpose="development">
<unit bldFile="os/osrndtools/hti/hticfg/group"/>
</component>
<component name="htiautostart" filter="s60" long-name="HTI Autostart" purpose="development">
<unit bldFile="os/osrndtools/hti/htiautostart/group"/>
</component>
<component name="htiframework" filter="s60" long-name="HTI Framework" purpose="development">
<unit bldFile="os/osrndtools/hti/htiframework/group"/>
</component>
<component name="hticommplugins" filter="s60" long-name="HTI Communication Plugins" purpose="development" plugin="Y">
<!-- need to #include these from a single unit or separate into component at the right directory level -->
<unit bldFile="os/osrndtools/hti/HtiCommPlugins/HtiBtCommPlugin/group"/>
<unit bldFile="os/osrndtools/hti/HtiCommPlugins/HtiIPCommPlugin/group"/>
<unit bldFile="os/osrndtools/hti/HtiCommPlugins/HtiSerialCommPlugin/group"/>
<unit bldFile="os/osrndtools/hti/HtiCommPlugins/HtiUsbSerialCommPlugin/group"/>
</component>
<component name="htiserviceplugins" filter="s60" long-name="HTI Service Plugins" purpose="development" plugin="Y">
<!-- need to #include these from a single unit or separate into component at the right directory level -->
<unit bldFile="os/osrndtools/hti/HtiServicePlugins/HtiAppServicePlugin/group"/>
<unit bldFile="os/osrndtools/hti/HtiServicePlugins/HtiEchoServicePlugin/group"/>
<unit bldFile="os/osrndtools/hti/HtiServicePlugins/HtiFtpServicePlugin/group"/>
<unit bldFile="os/osrndtools/hti/HtiServicePlugins/HtiIpProxyServicePlugin/group"/>
<unit bldFile="os/osrndtools/hti/HtiServicePlugins/HtiStifTfServicePlugin/group"/>
</component>
<component name="htifilehlp" filter="s60" long-name="HTI File Help" purpose="development">
<unit bldFile="os/osrndtools/hti/htifilehlp/group"/>
</component>
<component name="htiwatchdog" filter="s60" long-name="HTI Watchdog" purpose="development">
<unit bldFile="os/osrndtools/hti/htiwatchdog/group"/>
</component>
<component name="hti_build" filter="s60" long-name="HTI Build" purpose="development">
<!-- move exports into self-contained component.-->
<unit bldFile="os/osrndtools/hti/group"/>
</component>
</collection>
<collection name="osrndtools_info" long-name="OS R&D tools Info" level="trace">
<component name="osrndtools_metadata" long-name="OS R&D tools Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/osrndtools/osrndtools_info/osrndtools_metadata/osrndtools_metadata.mrp"/>
</component>
</collection>
</block>
</layer>
<layer name="mw" long-name="Middleware" levels="generic specific">
<block name="appsupport" level="generic" long-name="Generic Application Support" levels="system plugin framework server generic specific">
<collection name="appsupport_pub" long-name="Generic Application Support Public Interfaces" level="specific">
<component name="flash_viewer_framework_api" long-name="Flash Viewer Framework API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_pub/flash_viewer_framework_api/group"/>
</component>
<component name="network_status_api" long-name="Network Status API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_pub/network_status_api/group"/>
</component>
</collection>
<collection name="appsupport_plat" long-name="Generic Application Support Platform Interfaces" level="specific">
<component name="action_plugin_api" long-name="Action Plug-In API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/action_plugin_api/group"/>
</component>
<component name="application_orientation_api" long-name="Application Orientation API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/application_orientation_api/group"/>
</component>
<component name="context_access_api" long-name="Context Access API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_access_api/group"/>
</component>
<component name="context_framework_services_api" long-name="Context Framework Services API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_framework_services_api/group"/>
</component>
<component name="context_framework_client_api" long-name="Context Framework Client API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_framework_client_api/group"/>
</component>
<component name="context_framework_listener_api" long-name="Context Framework Listener API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_framework_listener_api/group"/>
</component>
<component name="context_framework_version_api" long-name="Context Framework Version API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_framework_version_api/group"/>
</component>
<component name="context_source_plugin_api" long-name="Context Source Plug-In API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_source_plugin_api/group"/>
</component>
<component name="context_source_settings_manager_api" long-name="Context Source Settings Manager API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_source_settings_manager_api/group"/>
</component>
<component name="context_subscription_api" long-name="Context Subscription API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_subscription_api/group"/>
</component>
<component name="key_event_framework_api" long-name="Key Event Framework API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/key_event_framework_api/group"/>
</component>
<component name="key_event_framework_mapper_api" long-name="Key Event Framework Mapper API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/key_event_framework_mapper_api/group"/>
</component>
<component name="media_keys_definition_api" long-name="Media Keys Definition API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/media_keys_definition_api/group"/>
</component>
<component name="ood_threshold_api" long-name="OOD Threshold API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/ood_threshold_api/group"/>
</component>
<component name="oom_monitor_api" long-name="OOM Monitor API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/oom_monitor_api/group"/>
</component>
<component name="oom_monitor_plugin_api" long-name="OOM Monitor Plugin API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/oom_monitor_plugin_api/group"/>
</component>
<component name="operation_provider_api" long-name="Operation Provider API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/operation_provider_api/group"/>
</component>
<component name="phonecmdhandler_api" long-name="Phone Command Handler API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/phonecmdhandler_api/group"/>
</component>
<component name="restore_factory_settings_api" long-name="Restore Factory Settings API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/restore_factory_settings_api/group"/>
</component>
<component name="restore_factory_settings_plugin_api" long-name="Restore Factory Settings Plug-in API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/restore_factory_settings_plugin_api/group"/>
</component>
<component name="secondary_display_accfw_api" long-name="Secondary Display Accessory Framework API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/secondary_display_accfw_api/group"/>
</component>
<component name="secondary_display_startup_api" long-name="Secondary Display Startup API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/secondary_display_startup_api/group"/>
</component>
<component name="secondary_display_sysap_api" long-name="Secondary Display System Application API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/secondary_display_sysap_api/group"/>
</component>
<component name="secondary_display_system_state_api" long-name="Secondary Display System State API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/secondary_display_system_state_api/group"/>
</component>
<component name="sensor_user_setting_api" long-name="Sensor User Setting API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/sensor_user_setting_api/group"/>
</component>
<component name="startup_configuration_api" long-name="Startup Configuration API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/startup_configuration_api/group"/>
</component>
<component name="system_application_key_handler_plugin_api" long-name="System Application Key Handler Plug-in API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/system_application_key_handler_plugin_api/group"/>
</component>
<component name="system_application_light_control_plugin_api" long-name="System Application Light Control Plug-in API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/system_application_light_control_plugin_api/group"/>
</component>
<component name="system_application_notification_api" long-name="System Application Notification API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/system_application_notification_api/group"/>
</component>
<component name="system_application_plugin_callback_api" long-name="System Application Plug-in Callback API" filter="s60" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/system_application_plugin_callback_api/group"/>
</component>
</collection>
<collection name="contextframework" long-name="Context Framework" level="framework">
<!-- the units that are commented out need to be put back when configuration is in place.
They're currently #included by contextframework_build, which should be removed when the other units are uncommented -->
<component name="cfw" filter="s60" long-name="Context Framework">
<!--<unit bldFile="contextframework/cfw/group"/> -->
</component>
<component name="cfwplugins" filter="s60" long-name="Context Framework Plugins" plugin="Y">
<!--<unit bldFile="contextframework/cfwplugins/group"/>-->
</component>
<component name="contextframework_build" filter="s60" long-name="Context Framework Build">
<unit bldFile="mw/appsupport/contextframework/group"/>
</component>
</collection>
<collection name="coreapplicationuis" long-name="Core Application UIs" level="server">
<component name="dbrecovery" filter="s60" long-name="Database Recovery">
<unit bldFile="mw/appsupport/coreapplicationuis/dbrecovery/group"/>
</component>
<component name="nspswsplugin" filter="s60" long-name="NSPS WS Plugin" plugin="Y">
<!-- No Service Power Save? Window Server? Please elaborate-->
<unit bldFile="mw/appsupport/coreapplicationuis/nspswsplugin/group"/>
</component>
<component name="rfs" filter="s60" long-name="Restore Factory Settings">
<unit bldFile="mw/appsupport/coreapplicationuis/rfs/group"/>
</component>
<component name="rfsplugins" filter="s60" long-name="Restore Factory Settings Plugins" plugin="Y">
<unit bldFile="mw/appsupport/coreapplicationuis/rfsplugins/group"/>
</component>
<component name="sysap" filter="s60" long-name="System Application">
<unit bldFile="mw/appsupport/coreapplicationuis/sysap/group"/>
</component>
<component name="variatedsettings" filter="s60" long-name="Variated Settings" class="config">
<unit bldFile="mw/appsupport/coreapplicationuis/variatedsettings/group"/>
</component>
<component name="accfwuinotifier" filter="s60" long-name="Accessory Framework UI Notifier" plugin="Y">
<unit bldFile="mw/appsupport/coreapplicationuis/accfwuinotifier/group"/>
</component>
<component name="kefmapper" filter="s60" long-name="Key Event Framework">
<unit bldFile="mw/appsupport/coreapplicationuis/kefmapper/group"/>
</component>
<component name="advancedtspcontroller" filter="s60" long-name="Advanced TSP Controller">
<unit bldFile="mw/appsupport/coreapplicationuis/advancedtspcontroller/group"/>
</component>
<component name="powersaveutilities" filter="s60" long-name="Power Save Utilities">
<unit bldFile="mw/appsupport/coreapplicationuis/powersaveutilities/group"/>
</component>
<component name="gsserverenginestub" filter="s60" long-name="GS Server Engine Stub">
<unit bldFile="mw/appsupport/coreapplicationuis/gsserverenginestub/group"/>
</component>
<component name="gsserverengine" filter="s60" long-name="GS Server Engine">
<unit bldFile="mw/appsupport/coreapplicationuis/gsserverengine/group"/>
</component>
<component name="sensordatacompensatorplugin" filter="s60" long-name="Sensor Data Compensator Plugin" plugin="Y">
<unit bldFile="mw/appsupport/coreapplicationuis/sensordatacompensatorplugin/group"/>
</component>
</collection>
<collection name="flashliteapi_3_1" long-name="Flash Lite API 3.1" level="specific">
<!-- collection is really a component. Move down a directory -->
<component name="flashliteapi_3_1_build" long-name="Flash Lite API Build" filter="s60" introduced="^2"/>
</collection>
<collection name="mediakeys" long-name="Media Keys" level="plugin">
<!-- collection is really a component. Move down a directory -->
<component name="mediakeys_build" filter="s60" long-name="Media Keys Build">
<unit bldFile="mw/appsupport/mediakeys/group"/>
</component>
</collection>
<collection name="startupservices" long-name="Startup Services" level="system">
<component name="splashscreen" filter="s60" long-name="Splash Screen">
<unit bldFile="mw/appsupport/startupservices/splashscreen/group"/>
</component>
<component name="startupanimation" filter="s60" long-name="Startup Animation">
<unit bldFile="mw/appsupport/startupservices/startupanimation/group"/>
</component>
<component name="startup" long-name="Startup Application" filter="s60">
<unit bldFile="mw/appsupport/startupservices/startup/group"/>
</component>
</collection>
<collection name="sysresmonitoring" long-name="System Resource Monitoring" level="system">
<component name="oodmonitor" filter="s60" long-name="OOD Monitor" introduced="7.0s">
<unit bldFile="mw/appsupport/sysresmonitoring/oodmonitor/group"/>
</component>
<component name="oommonitor" filter="s60" long-name="OOM Monitor" introduced="7.0s">
<unit bldFile="mw/appsupport/sysresmonitoring/oommonitor/group"/>
</component>
</collection>
<collection name="systemsettings" long-name="System Settings" level="system">
<component name="gssensorplugin" filter="s60" long-name="GS Sensor Plugin" plugin="Y">
<unit bldFile="mw/appsupport/systemsettings/gssensorplugin/group"/>
</component>
<component name="gsaccessoryplugin" filter="s60" long-name="GS Accessory Plugin" plugin="Y">
<unit bldFile="mw/appsupport/systemsettings/gsaccessoryplugin/group"/>
</component>
</collection>
<collection name="filehandling" long-name="File Handling" level="server">
<component name="fileconverterfw" long-name="File Converter Framework" purpose="optional">
<unit bldFile="mw/appsupport/filehandling/fileconverterfw/group" mrp="mw/appsupport/filehandling/fileconverterfw/group/app-framework_conarc.mrp"/>
</component>
<component name="htmltorichtextconverter" long-name="HTML to RichText Converter" introduced="7.0" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/filehandling/htmltorichtextconverter/group" mrp="mw/appsupport/filehandling/htmltorichtextconverter/group/app-services_chtmltocrtconv.mrp"/>
</component>
<component name="richtexttohtmlconverter" long-name="RichText to HTML Converter" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/filehandling/richtexttohtmlconverter/Group" mrp="mw/appsupport/filehandling/richtexttohtmlconverter/Group/app-services_richtexttohtmlconv.mrp"/>
</component>
</collection>
<collection name="hwresourceadaptation" long-name="Hardware Resource Adaptation" level="generic">
<component name="hwresourcemgruiplugin" long-name="Hardware Resource Manager UI Plugin" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/hwresourceadaptation/hwresourcemgruiplugin/group" mrp="mw/appsupport/hwresourceadaptation/hwresourcemgruiplugin/group/telephony_hwrmuiplugin.mrp"/>
</component>
</collection>
<collection name="commonappservices" long-name="Common Application Services" level="framework">
<component name="alarmserver" long-name="Alarm Server" introduced="7.0" purpose="optional">
<unit bldFile="mw/appsupport/commonappservices/alarmserver/Group" mrp="mw/appsupport/commonappservices/alarmserver/Group/app-services_alarmserver.mrp"/>
</component>
<component name="alarmservertest" long-name="Alarm Server Test" deprecated="^3" introduced="8.1" purpose="development">
<unit bldFile="mw/appsupport/commonappservices/alarmservertest/TestAlarmSrv" mrp="mw/appsupport/commonappservices/alarmservertest/TestAlarmSrv/app-services_testalarmsrv.mrp"/>
</component>
<component name="appservicesdocs" long-name="Application Services Documentation" purpose="development" class="doc">
<unit mrp="mw/appsupport/commonappservices/appservicesdocs/app-services_documentation.mrp"/>
</component>
<component name="backuprestorenotification" long-name="Backup Restore Notification" introduced="8.1" purpose="optional">
<unit bldFile="mw/appsupport/commonappservices/backuprestorenotification/group" mrp="mw/appsupport/commonappservices/backuprestorenotification/group/app-services_BackupRestoreNotification.mrp"/>
</component>
</collection>
<collection name="tzservices" long-name="Time Zone Services" level="plugin">
<component name="tzserver" long-name="Time Zone Server" introduced="9.1" purpose="optional">
<unit bldFile="mw/appsupport/tzservices/tzserver/group" mrp="mw/appsupport/tzservices/tzserver/group/app-services_tz.mrp"/>
</component>
<component name="tzloc" long-name="Time Zone Localization" introduced="9.1" purpose="optional">
<unit bldFile="mw/appsupport/tzservices/tzloc/group" mrp="mw/appsupport/tzservices/tzloc/group/app-services_timezonelocalization.mrp"/>
</component>
<component name="tzlocrscfactory" long-name="Time Zone Localization Resource Factory" introduced="9.1" purpose="optional" class="config">
<unit bldFile="mw/appsupport/tzservices/tzlocrscfactory/group" mrp="mw/appsupport/tzservices/tzlocrscfactory/group/app-services_tzlocalizationrscfactory.mrp"/>
</component>
<component name="tzdatabase" long-name="Time Zone Database" introduced="9.1" purpose="optional" class="config">
<unit bldFile="mw/appsupport/tzservices/tzdatabase/group" mrp="mw/appsupport/tzservices/tzdatabase/group/app-services_tzdb.mrp"/>
</component>
</collection>
<collection name="contenthandling" long-name="Content Handling" level="plugin">
<component name="webrecognisers" long-name="Web Recognisers" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/contenthandling/webrecognisers/group" mrp="mw/appsupport/contenthandling/webrecognisers/group/application-protocols_recognisers.mrp"/>
</component>
</collection>
<collection name="openenvutils" long-name="Open Environment Utilities" level="specific">
<component name="commandshell" long-name="Command Shell" introduced="^3" purpose="development">
<unit bldFile="mw/appsupport/openenvutils/commandshell/group" mrp="mw/appsupport/openenvutils/commandshell/group/oetools_zsh.mrp"/>
</component>
<component name="telnetserver" long-name="Telnet Server" introduced="^3" purpose="development">
<unit bldFile="mw/appsupport/openenvutils/telnetserver/group" mrp="mw/appsupport/openenvutils/telnetserver/group/oetools_telnetd.mrp"/>
</component>
</collection>
<collection name="printingsupport" long-name="Printing Support" level="generic">
<component name="printinguisupport" long-name="Printing UI Support" purpose="optional" introduced="^2" deprecated="^3">
<unit bldFile="mw/appsupport/printingsupport/printinguisupport/group" mrp="mw/appsupport/printingsupport/printinguisupport/group/app-framework_print.mrp"/>
</component>
</collection>
<collection name="appfw" long-name="Application Framework" level="framework">
<component name="apparchitecture" long-name="Application Architecture" purpose="mandatory">
<unit bldFile="mw/appsupport/appfw/apparchitecture/group" mrp="mw/appsupport/appfw/apparchitecture/group/app-framework_apparc.mrp"/>
</component>
<component name="viewserver" long-name="View Server" introduced="6.0" purpose="mandatory">
<unit bldFile="mw/appsupport/appfw/viewserver/group" mrp="mw/appsupport/appfw/viewserver/group/app-framework_viewsrv.mrp"/>
</component>
</collection>
<collection name="applaunchservices" long-name="Application Launch Services" level="generic">
<component name="aftermarketappstarter" long-name="After Market Application Starter" introduced="^3" purpose="optional">
<unit bldFile="mw/appsupport/applaunchservices/aftermarketappstarter/group" mrp="mw/appsupport/applaunchservices/aftermarketappstarter/group/app-framework_amastart.mrp"/>
</component>
<component name="applaunchplugins" long-name="Application Launch Plugins" introduced="^3" purpose="optional">
<unit bldFile="mw/appsupport/applaunchservices/applaunchplugins/group" mrp="mw/appsupport/applaunchservices/applaunchplugins/group/app-framework_aplp.mrp"/>
</component>
</collection>
<collection name="tzpcside" long-name="Time Zone PC Side" level="plugin">
<component name="tzcompiler" long-name="Time Zone Compiler" introduced="9.1" purpose="optional" class="config PC">
<unit bldFile="mw/appsupport/tzpcside/tzcompiler/group" mrp="mw/appsupport/tzpcside/tzcompiler/group/app-services_tzcompiler.mrp"/>
</component>
</collection>
<collection name="appsupport_info" long-name="Generic Application Support Info" level="specific">
<component name="appsupport_metadata" long-name="Generic Application Support Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/appsupport/appsupport_info/appsupport_metadata/appsupport_metadata.mrp"/>
</component>
</collection>
</block>
<block name="securitysrv" level="generic" long-name="Security Services" levels="plugin framework server generic specific">
<collection name="secsrv_plat" long-name="Security Services Platform Interfaces" level="specific">
<component name="cms_api" long-name="CMS API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/cms_api/group"/>
</component>
<component name="pkcs12_parser_api" long-name="PKCS12 Parser API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/pkcs12_parser_api/group"/>
</component>
<component name="java_utils_api" long-name="Java Utils API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/java_utils_api/group"/>
</component>
<component name="wim_cert_api" long-name="WIM Cert API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/wim_cert_api/group"/>
</component>
<component name="device_key_store_encryption_plugin_api" long-name="Device Key Store Encryption Plug-in API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/device_key_store_encryption_plugin_api/group"/>
</component>
<component name="x509certnameparser_api" long-name="X.509 Certificate Name Parser API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/x509certnameparser_api/group"/>
</component>
<component name="remote_lock_api" long-name="Remote Lock API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/remote_lock_api/group"/>
</component>
<component name="pkidialog_api" long-name="PKI Dialog API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/pkidialog_api/group"/>
</component>
<component name="provisioning_api" long-name="Provisioning API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/provisioning_api/group"/>
</component>
<component name="keyguard_configuration_api" long-name="Keyguard Configuration API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/keyguard_configuration_api/group"/>
</component>
<component name="keylock_policy_api" long-name="Keylock Policy API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/keylock_policy_api/group"/>
</component>
<component name="security_code_ui_api" long-name="Security Code UI API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/security_code_ui_api/group"/>
</component>
<component name="gba_api" long-name="GBA API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/gba_api/group"/>
</component>
<component name="keyguard_access_api" long-name="Keyguard Access API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/keyguard_access_api/group"/>
</component>
<component name="devicelock_access_api" long-name="Device Lock Access API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/devicelock_access_api/group"/>
</component>
<component name="lockapp_server_api" long-name="Lock Application Server API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/lockapp_server_api/group"/>
</component>
<component name="devencadaptation_api" long-name="Device Encryption Adaptation API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/devencadaptation_api/group"/>
</component>
<component name="devenccommonutils_api" long-name="Device Encryption Common Utils API" filter="s60" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/devenccommonutils_api/group"/>
</component>
</collection>
<collection name="cms" long-name="Certificate Management Service" level="server">
<!-- collection is really a component. Need to move down a directory-->
<component name="cms_build" filter="s60" long-name="CMS" introduced="^3">
<unit bldFile="mw/securitysrv/cms/group"/>
</component>
</collection>
<collection name="pkiutilities" long-name="PKI Utilities" level="plugin">
<component name="x509certnameparser" filter="s60" long-name="X.509 Certificate Name Parser">
<unit bldFile="mw/securitysrv/pkiutilities/x509certnameparser/group"/>
</component>
<component name="pkcs12" filter="s60" long-name="PKCS #12">
<unit bldFile="mw/securitysrv/pkiutilities/pkcs12/group"/>
</component>
<component name="certmanui" filter="s60" long-name="Certificate Management UI">
<unit bldFile="mw/securitysrv/pkiutilities/certmanui/group"/>
</component>
<component name="ctsecuritydialogs" filter="s60" long-name="Crypto Token Security Dialogs">
<unit bldFile="mw/securitysrv/pkiutilities/ctsecuritydialogs/group"/>
</component>
<component name="certsaver" filter="s60" long-name="Certificate Saver">
<unit bldFile="mw/securitysrv/pkiutilities/certsaver/group"/>
</component>
<component name="secmodui" filter="s60" long-name="Security Module UI">
<unit bldFile="mw/securitysrv/pkiutilities/secmodui/group"/>
</component>
<component name="devicetoken" filter="s60" long-name="Device Token">
<unit bldFile="mw/securitysrv/pkiutilities/devicetoken/group"/>
</component>
<component name="certificates" filter="s60" long-name="Certificates">
<unit bldFile="mw/securitysrv/pkiutilities/Certificates/group" filter="sf_build"/>
</component>
<component name="pkiutilities_build" filter="s60" long-name="PKI Utilities Build">
<!-- need to split this into the above components -->
<unit bldFile="mw/securitysrv/pkiutilities/group"/>
</component>
<component name="ocsp" long-name="Online Certificate Status Protocol" introduced="^2" purpose="optional">
<unit bldFile="mw/securitysrv/pkiutilities/ocsp/group" mrp="mw/securitysrv/pkiutilities/ocsp/group/securitysrv_ocsp.mrp"/>
</component>
</collection>
<collection name="wim" long-name="Wireless Identity Module " level="framework">
<!-- collection is really a component. Need to move down a directory-->
<component name="wim_build" filter="s60" long-name="WIM Build">
<unit bldFile="mw/securitysrv/wim/group"/>
</component>
</collection>
<collection name="remotelock" long-name="Remote Lock" level="generic">
<!-- collection is really a component. Need to move down a directory-->
<component name="remotelock_build" filter="s60" long-name="Remote Lock Build">
<unit bldFile="mw/securitysrv/remotelock/group"/>
</component>
</collection>
<collection name="securitydialogs" long-name="Security Dialogs" level="specific">
<component name="keylockpolicyapi" filter="s60" long-name="Keylock Policy API">
<unit bldFile="mw/securitysrv/securitydialogs/keylockpolicyapi/group"/>
</component>
<component name="autolock" long-name="Autolock" filter="s60">
<unit bldFile="mw/securitysrv/securitydialogs/autolock/group"/>
</component>
<component name="secui" filter="s60" long-name="Security UI">
<unit bldFile="mw/securitysrv/securitydialogs/secui/group"/>
</component>
<component name="securitynotifier" filter="s60" long-name="Security Notifier">
<unit bldFile="mw/securitysrv/securitydialogs/securitynotifier/group"/>
</component>
<component name="lockclient" filter="s60" long-name="Lock Client" introduced="^3">
<unit bldFile="mw/securitysrv/securitydialogs/lockclient/group"/>
</component>
<component name="lockapp" filter="s60" long-name="Lock Application" introduced="^3">
<unit bldFile="mw/securitysrv/securitydialogs/lockapp/group"/>
</component>
<component name="simlockui" filter="s60" long-name="SIM Lock UI" introduced="^3">
<unit bldFile="mw/securitysrv/securitydialogs/simlockui/group"/>
</component>
</collection>
<collection name="boottimeintegritycheck" long-name="Boot Time Integrity Check" level="plugin">
<!-- collection is really a component. Need to move down a directory-->
<component name="boottimeintegritycheck_build" filter="s60" long-name="Boot Time Integrity Check Build">
<unit bldFile="mw/securitysrv/boottimeintegritycheck/group"/>
</component>
</collection>
<collection name="gba" long-name="Generic Bootstrapping Architecture" level="server">
<component name="uicc" filter="s60" long-name="UICC" introduced="^2" plugin="Y">
<unit bldFile="mw/securitysrv/gba/uicc/group"/>
</component>
<component name="gbaserver" filter="s60" long-name="GBA Server" introduced="^2">
<unit bldFile="mw/securitysrv/gba/gbaserver/group"/>
</component>
<component name="gbaapi" filter="s60" long-name="GBA API" introduced="^2">
<unit bldFile="mw/securitysrv/gba/gbaapi/group"/>
</component>
<component name="gbafilter" filter="s60" long-name="GBA HTTP Filter" introduced="^2" plugin="Y">
<unit bldFile="mw/securitysrv/gba/gbafilter/group"/>
</component>
<component name="gba_build" filter="s60" long-name="Generic Boot Architecture Build" introduced="^2">
<!-- need to split this into the above components, or remove #includes and make this GBA ROM -->
<unit bldFile="mw/securitysrv/gba/group"/>
</component>
</collection>
<collection name="devencdiskutils" long-name="Device Encryption Disk Utils" level="server">
<component name="devenccommonutils" filter="s60" long-name="Device Encryption Common Utils" introduced="^3">
<unit bldFile="mw/securitysrv/devencdiskutils/DevEncCommonUtils/group"/>
</component>
<component name="devencrfsplugin" filter="s60" long-name="Device Encryption RFS Plugin" introduced="^3" plugin="Y">
<unit bldFile="mw/securitysrv/devencdiskutils/DevEncRfsPlugin/group"/>
</component>
<component name="pk5recognizer" filter="s60" long-name="Device Encryption Pk5 Recognizer" introduced="^3" plugin="Y">
<unit bldFile="mw/securitysrv/devencdiskutils/Pk5Recognizer/group"/>
</component>
<component name="devencstarter" filter="s60" long-name="Device Encryption Starter" introduced="^3" plugin="Y">
<unit bldFile="mw/securitysrv/devencdiskutils/DevEncStarter/group"/>
</component>
<component name="devencdiskutils" filter="s60" long-name="Device Encryption Disk Utils Build" introduced="^3">
<!-- need to split this into the above components, or remove #includes and make this a ROM component-->
<unit bldFile="mw/securitysrv/devencdiskutils/group"/>
</component>
</collection>
<collection name="securitysrv_info" long-name="Security Services Info" level="specific">
<component name="securitysrv_metadata" long-name="Security Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/securitysrv/securitysrv_info/securitysrv_metadata/securitysrv_metadata.mrp"/>
</component>
</collection>
</block>
<block name="drm" level="generic" long-name="DRM" levels="plugin framework server generic specific">
<collection name="drm_plat" long-name="DRM Platform Interfaces" level="specific">
<component name="roap_api" long-name="ROAP API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/roap_api/group"/>
</component>
<component name="drm_common_api" long-name="DRM Common API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/drm_common_api/group"/>
</component>
<component name="drm_rights_api" long-name="DRM Rights API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/drm_rights_api/group"/>
</component>
<component name="drm_legacy_api" long-name="DRM Legacy API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/drm_legacy_api/group"/>
</component>
<component name="dcf_repository_api" long-name="DCF Repository API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/dcf_repository_api/group"/>
</component>
<component name="drm_service_api" long-name="DRM Service API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/drm_service_api/group"/>
</component>
<component name="drm_secondary_display_api" long-name="DRM Secondary Display API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/drm_secondary_display_api/group"/>
</component>
<component name="drm_license_manager_api" long-name="DRM License Manager API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/drm_license_manager_api/group"/>
</component>
<component name="drm_utility_api" long-name="DRM Utility API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/drm_utility_api/group"/>
</component>
<component name="drm_agents_api" long-name="DRM Agents API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/drm_agents_api/group"/>
</component>
<component name="wmdrm_core_api" long-name="WM DRM Core API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/wmdrm_core_api/group"/>
</component>
<component name="wmdrm_access_api" long-name="WMDRM Access API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/wmdrm_access_api/group"/>
</component>
<component name="wmdrm_ota_access_api" long-name="WMDRM OTA Access API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/wmdrm_ota_access_api/group"/>
</component>
<component name="camese_utility_api" long-name="Camese Utility API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/camese_utility_api/group"/>
</component>
<component name="camese_framework_api" long-name="Camese Framework API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_plat/camese_framework_api/group"/>
</component>
</collection>
<collection name="drm_pub" long-name="DRM Public Interfaces" level="specific">
<component name="drm_helper_api" long-name="DRM Helper API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_pub/drm_helper_api/group"/>
</component>
<component name="oma_drm_caf_agent_api" long-name="OMA DRM CAF Agent API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_pub/oma_drm_caf_agent_api/group"/>
</component>
<component name="drm_license_checker_api" long-name="DRM License Checker API" filter="s60" class="api">
<unit bldFile="mw/drm/drm_pub/drm_license_checker_api/group"/>
</component>
</collection>
<collection name="commondrm" long-name="Common DRM" level="generic">
<!-- it looks like this collection would be better as a component. If so, move down a directory. Otherwise, split up the bld.inf -->
<component name="drmencryptor" filter="s60" long-name="DRM Encryptor" class="placeholder">
<!-- this should have its own bld.inf or be removed as a component -->
</component>
<component name="drmsettingsplugin" filter="s60" long-name="DRM Settings Plugin" plugin="Y" class="placeholder">
<!-- this should have its own bld.inf or be removed as a component -->
</component>
<component name="drmrightsmanagerui" filter="s60" long-name="DRM Rights Manager UI">
<unit bldFile="mw/drm/commondrm/drmrightsmanagerui/help/group"/>
</component>
<component name="drmutility" filter="s60" long-name="DRM Utility">
<!-- Uncomment unit when configuration is in place. Currently #included from commondrm_build -->
<!--<unit bldFile="commondrm/drmutility/group"/>-->
</component>
<component name="drmserviceapiwrapper" filter="s60" long-name="DRM Service API Wrapper">
<unit bldFile="mw/drm/commondrm/drmserviceapiwrapper/group"/>
</component>
<component name="drmrightsstoringlocation" filter="s60" long-name="DRM Rights Storing Location">
<unit bldFile="mw/drm/commondrm/drmrightsstoringlocation/group"/>
</component>
<component name="commondrm_build" filter="s60" long-name="Common DRM Build">
<!-- should be split into the above files, or them collapsed into a single component -->
<unit bldFile="mw/drm/commondrm/group"/>
</component>
</collection>
<collection name="omadrm" long-name="OMA DRM" level="server">
<!-- collection is really a component. Move down a directory -->
<component name="omadrm_build" filter="s60" long-name="OMA DRM Build">
<unit bldFile="mw/drm/omadrm/group"/>
</component>
<component name="foundationcerts" filter="sf_build" long-name="Foundation Certificates">
<unit bldFile="mw/drm/omadrm/foundationcerts/group"/>
</component>
</collection>
<collection name="wmdrm" long-name="Windows Media DRM" level="framework">
<!-- collection is really a component. Move down a directory -->
<component name="wmdrm_build" filter="s60" long-name="WM DRM Build">
<unit bldFile="mw/drm/wmdrm/group"/>
</component>
</collection>
<collection name="drm_info" long-name="DRM Info" level="specific"/>
</block>
<block name="locationsrv" level="specific" long-name="Location Services" levels="plugin fw server if">
<collection name="locsrv_pub" long-name="Location Services Public Interfaces" level="if">
<component name="landmarks_search_api" long-name="Landmarks Search API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_pub/landmarks_search_api/group"/>
</component>
<component name="landmarks_api" long-name="Landmarks API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_pub/landmarks_api/group"/>
</component>
<component name="landmarks_database_management_api" long-name="Landmarks Database Management API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_pub/landmarks_database_management_api/group"/>
</component>
<component name="location_triggering_api" long-name="Location Triggering API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_pub/location_triggering_api/group"/>
</component>
<component name="blid_application_satellite_info_api" long-name="BLID Application Satellite Info API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_pub/blid_application_satellite_info_api/group"/>
</component>
</collection>
<collection name="locsrv_plat" long-name="Location Services Platform Interfaces" level="if">
<component name="map_and_navigation_api" long-name="Map and Navigation API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/map_and_navigation_api/group"/>
</component>
<component name="map_and_navigation_provider_discovery_api" long-name="Map and Navigation Provider Discovery API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/map_and_navigation_provider_discovery_api/group"/>
</component>
<component name="geocoding_api" long-name="Geocoding API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/geocoding_api/group"/>
</component>
<component name="map_image_api" long-name="Map Image API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/map_image_api/group"/>
</component>
<component name="map_and_navigation_aiw_api" long-name="Map and Navigation AIW API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/map_and_navigation_aiw_api/group"/>
</component>
<component name="map_and_navigation_provider_api" long-name="Map and Navigation Provider API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/map_and_navigation_provider_api/group"/>
</component>
<component name="landmarks_category_definition_api" long-name="Landmarks Category Definition API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/landmarks_category_definition_api/group"/>
</component>
<component name="supl_settings_api" long-name="SUPL Settings API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/supl_settings_api/group"/>
</component>
<component name="location_settings_launch_api" long-name="Location Settings Launch API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/location_settings_launch_api/group"/>
</component>
<component name="map_image_conversion_plugin_api" long-name="Map Image Conversion Plug-In API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/map_image_conversion_plugin_api/group"/>
</component>
<component name="psy_configuration_ui_plugin_api" long-name="PSY Configuration UI Plug-in API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/psy_configuration_ui_plugin_api/group"/>
</component>
<component name="np_proxy_configuration_api" long-name="NP Proxy Configuration API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/np_proxy_configuration_api/group"/>
</component>
<component name="supl_terminal_initiation_api" long-name="SUPL Terminal Initiation API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/supl_terminal_initiation_api/group"/>
</component>
<component name="location_notation_preferences_settings_api" long-name="Location Notation Preferences Settings API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/location_notation_preferences_settings_api/group"/>
</component>
<component name="supl_settings_notifier_secondary_display_api" long-name="SUPL Settings Notifier Secondary Display API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/supl_settings_notifier_secondary_display_api/group"/>
</component>
<component name="supl_network_initiation_api" long-name="SUPL Network Initiation API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/supl_network_initiation_api/group"/>
</component>
<component name="privacy_notifiers_secondary_display_api" long-name="Privacy Notifiers Secondary Display API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/privacy_notifiers_secondary_display_api/group"/>
</component>
<component name="oma_supl_configuration_parameter_api" long-name="OMA SUPL Configuration Parameter API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/oma_supl_configuration_parameter_api/group"/>
</component>
<component name="supl_query_secondary_display_api" long-name="SUPL Query Secondary Display API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/supl_query_secondary_display_api/group"/>
</component>
<component name="location_triggering_management_api" long-name="Location Triggering Management API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/location_triggering_management_api/group"/>
</component>
<component name="location_triggering_status_information_api" long-name="Location Triggering Status Information API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/location_triggering_status_information_api/group"/>
</component>
<component name="oma_supl_asn_codec_plugin_api" long-name="OMA SUPL ASN Codec Plugin API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/oma_supl_asn_codec_plugin_api/group"/>
</component>
<component name="query_and_notification_api" long-name="Query and Notification API" filter="s60" introduced="^3" class="api">
<!-- needs metadata file: <meta rel="Api" href="locsrv_plat/query_and_notification_api/query_and_notification_api.metaxml"/> -->
<unit bldFile="mw/locationsrv/locsrv_plat/query_and_notification_api/group"/>
</component>
<component name="location_local_variation_api" long-name="Location Local Variation API" filter="s60" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/location_local_variation_api/group"/>
</component>
</collection>
<collection name="genericpositioningplugins" long-name="Generic Positioning Plugins" level="plugin">
<component name="locationnpppsy" filter="s60" long-name="Location Positioning Proxy PSY" plugin="Y">
<unit bldFile="mw/locationsrv/genericpositioningplugins/locationnpppsy/group"/>
</component>
<component name="locationsuplpsy" filter="s60" long-name="Location SUPL PSY" introduced="^3" plugin="Y">
<unit bldFile="mw/locationsrv/genericpositioningplugins/locationsuplpsy/group"/>
</component>
<component name="genericpositioningplugins_build" filter="s60" long-name="Generic Positioning Plugins Build">
<!-- need to break this up into the other components -->
<unit bldFile="mw/locationsrv/genericpositioningplugins/group"/>
</component>
</collection>
<collection name="landmarks" long-name="Landmarks" level="server">
<component name="locationlandmarks" filter="s60" long-name="Location Landmarks">
<unit bldFile="mw/locationsrv/landmarks/locationlandmarks/group"/>
</component>
</collection>
<collection name="locationmapnavfw" long-name="Location Map and Navigation Framework" level="fw">
<component name="mnlibrary" filter="s60" long-name="Map and Navigation Library">
<unit bldFile="mw/locationsrv/locationmapnavfw/library/group"/>
</component>
<component name="mnaiwprovider" filter="s60" long-name="Map and Navigation AIW Provider" plugin="Y">
<unit bldFile="mw/locationsrv/locationmapnavfw/aiwprovider/group"/>
</component>
<component name="locationmapnavfw_build" filter="s60" long-name="Location Map and Navigation Framework Build">
<!-- need to break this up into the other components -->
<unit bldFile="mw/locationsrv/locationmapnavfw/group"/>
</component>
</collection>
<collection name="locationsystemui" long-name="Location System UI" level="if">
<component name="locationsysui" filter="s60" long-name="Location System UI">
<unit bldFile="mw/locationsrv/locationsystemui/locationsysui/group"/>
</component>
</collection>
<collection name="supl" long-name="SUPL" level="fw">
<component name="locationsuplfw" filter="s60" long-name="Location SUPL Framework">
<unit bldFile="mw/locationsrv/supl/locationsuplfw/group"/>
</component>
<component name="locationomasuplprotocolhandler" filter="s60" long-name="OMA SUPL Protocol Handler">
<unit bldFile="mw/locationsrv/supl/locationomasuplprotocolhandler/group"/>
</component>
<component name="supltiapiimplementation" filter="s60" long-name="SUPL TI API Implementation" introduced="^3">
<unit bldFile="mw/locationsrv/supl/supltiapiimplementation/group"/>
</component>
</collection>
<collection name="locationtriggering" long-name="Location Triggering" level="server">
<component name="ltlogger" filter="s60" long-name="LT Logger">
<unit bldFile="mw/locationsrv/locationtriggering/ltlogger/group"/>
</component>
<component name="ltclientlib" filter="s60" long-name="LT Client Library">
<unit bldFile="mw/locationsrv/locationtriggering/ltclientlib/group"/>
</component>
<component name="ltmanagementlib" filter="s60" long-name="LT Management Library">
<unit bldFile="mw/locationsrv/locationtriggering/ltmanagementlib/group"/>
</component>
<component name="ltcontainer" filter="s60" long-name="LT Container">
<unit bldFile="mw/locationsrv/locationtriggering/ltcontainer/group"/>
</component>
<component name="ltserver" filter="s60" long-name="LT Server">
<unit bldFile="mw/locationsrv/locationtriggering/ltserver/group"/>
</component>
<component name="ltstrategypluginapi" filter="s60" long-name="LT Strategy Plugin API">
<unit bldFile="mw/locationsrv/locationtriggering/ltstrategypluginapi/group"/>
</component>
<component name="ltstrategyengine" filter="s60" long-name="LT Strategy Engine">
<unit bldFile="mw/locationsrv/locationtriggering/ltstrategyengine/group"/>
</component>
<component name="ltmovementdetectionpluginapi" filter="s60" long-name="Movement Detection Plugin API">
<unit bldFile="mw/locationsrv/locationtriggering/ltmovementdetectionpluginapi/group"/>
</component>
<component name="ltcellidmovementdetector" filter="s60" long-name="Cell ID Movement Detector">
<unit bldFile="mw/locationsrv/locationtriggering/ltcellidmovementdetector/group"/>
</component>
<component name="lbtmgmtui" filter="s60" long-name="LBT Management UI" plugin="Y">
<unit bldFile="mw/locationsrv/locationtriggering/lbtmgmtui/group"/>
</component>
<component name="ltcontextsourceplugin" filter="s60" long-name="LT Context Source Plugin" introduced="^3" plugin="Y">
<unit bldFile="mw/locationsrv/locationtriggering/ltcontextsourceplugin/group"/>
</component>
<component name="locationtriggering_build" filter="s60" long-name="Location Triggering Build">
<!-- should remove #include from this and maybe put exports in the above components -->
<unit bldFile="mw/locationsrv/locationtriggering/group"/>
</component>
</collection>
</block>
<block name="accesssec" level="generic" long-name="Access Security" levels="plugin framework server generic specific">
<collection name="accesssec_plat" long-name="Access Security Platform Interfaces" level="specific">
<component name="wapi_security_settings_ui_api" long-name="WAPI Security Settings UI API" filter="s60" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/wapi_security_settings_ui_api/group"/>
</component>
<component name="wep_security_settings_ui_api" long-name="WEP Security Settings UI API" filter="s60" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/wep_security_settings_ui_api/group"/>
</component>
<component name="wi-fi_protected_setup_ui_api" long-name="Wi-Fi Protected Setup UI API" filter="s60" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/wi-fi_protected_setup_ui_api/group"/>
</component>
<component name="wlan_eap_settings_ui_api" long-name="WLAN EAP Settings UI API" filter="s60" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/wlan_eap_settings_ui_api/group"/>
</component>
<component name="wpa_security_settings_ui_api" long-name="WPA Security Settings UI API" filter="s60" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/wpa_security_settings_ui_api/group"/>
</component>
<component name="eap_vpn_api" long-name="EAP VPN API" filter="s60" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/eap_vpn_api/group"/>
</component>
<component name="eapsim_db_api" long-name="EAP-SIM DB API" filter="s60" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/eapsim_db_api/group"/>
</component>
<component name="eap_type_api" long-name="EAP Type API" filter="s60" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/eap_type_api/group"/>
</component>
<component name="eaptlspeap_db_api" long-name="EAP-TLS-PEAP DB API" filter="s60" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/eaptlspeap_db_api/group"/>
</component>
<component name="eapleap_db_api" long-name="LEAP DB API" filter="s60" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/eapleap_db_api/group"/>
</component>
<component name="eapgtc_db_api" long-name="EAP-GTC DB API" filter="s60" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/eapgtc_db_api/group"/>
</component>
<component name="eapmschapv2_db_api" long-name="EAP-MSCHAPV2 DB API" filter="s60" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/eapmschapv2_db_api/group"/>
</component>
<component name="eapaka_db_api" long-name="EAP-AKA DB API" filter="s60" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/eapaka_db_api/group"/>
</component>
<component name="wapi_db_api" long-name="WAPI DB API" filter="s60" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/wapi_db_api/group"/>
</component>
</collection>
<collection name="wlansecuritysettings" long-name="WLAN Security Settings" level="specific">
<component name="wapisecuritysettingsui" filter="s60" long-name="WAPI Security Settings UI" introduced="9.1">
<!-- the directory for this needs to be moved up to the right level -->
<unit bldFile="mw/accesssec/wlansecuritysettings/wapisecuritysettingsui/stub/group"/>
</component>
<component name="wepsecuritysettingsui" filter="s60" long-name="WEP Security Settings UI" introduced="9.1">
<unit bldFile="mw/accesssec/wlansecuritysettings/wepsecuritysettingsui/group"/>
</component>
<component name="wifiprotectedsetup" filter="s60" long-name="WIFI Protected Setup" introduced="^1">
<unit bldFile="mw/accesssec/wlansecuritysettings/wifiprotectedsetup/group"/>
</component>
<component name="wlaneapsettingsui" filter="s60" long-name="WLAN EAP Settings UI" introduced="9.3">
<unit bldFile="mw/accesssec/wlansecuritysettings/wlaneapsettingsui/group"/>
</component>
<component name="wpasecuritysettingsui" filter="s60" long-name="WPA Security Settings UI" introduced="9.1">
<unit bldFile="mw/accesssec/wlansecuritysettings/wpasecuritysettingsui/group"/>
</component>
</collection>
<collection name="eapol" long-name="EAPOL" level="framework">
<component name="eapol_framework" filter="s60" long-name="EAPOL Framework" introduced="9.2">
<unit bldFile="mw/accesssec/eapol/eapol_framework/eapol_symbian/group"/>
</component>
</collection>
</block>
<block name="ipconnmgmt" level="generic" long-name="IP Connectivity Management" levels="plugin framework server generic utils">
<collection name="ipcm_plat" long-name="IP Connectivity Management Platform Interfaces" level="utils">
<component name="access_point_engine_misc_api" long-name="Access Point Engine Misc API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/access_point_engine_misc_api/group"/>
</component>
<component name="bearer_settings_plugin_api" long-name="Bearer Settings Plugin API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/bearer_settings_plugin_api/group"/>
</component>
<component name="commsdat_wlan_api" long-name="CommsDat WLAN API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/commsdat_wlan_api/group"/>
</component>
<component name="connection_monitor_extension_api" long-name="Connection Monitor Extension API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/connection_monitor_extension_api/group"/>
</component>
<component name="connection_ui_utilities_api" long-name="Connection UI Utilities API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/connection_ui_utilities_api/group"/>
</component>
<component name="disconnect_dialog_api" long-name="Disconnect Dialog API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/disconnect_dialog_api/group"/>
</component>
<component name="disconnect_dialog_disable_api" long-name="Disconnect Dialog Disable API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/disconnect_dialog_disable_api/group"/>
</component>
<component name="extended_connection_settings_api" long-name="Extended Connection Settings API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/extended_connection_settings_api/group"/>
</component>
<component name="mpm_default_connection_api" long-name="MPM Default Connection API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/mpm_default_connection_api/group"/>
</component>
<component name="pdpcontextmanager2_reset_factory_settings_api" long-name="PDP Context Manager 2 Reset Factory Settings API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/pdpcontextmanager2_reset_factory_settings_api/group"/>
</component>
<component name="pdpcontextmanager2_settings_api" long-name="PDP Context Manager 2 Settings API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/pdpcontextmanager2_settings_api/group"/>
</component>
<component name="mpm_connect_screen_api" long-name="MPM Connect Screen API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/mpm_connect_screen_api/group"/>
</component>
</collection>
<collection name="ipcm_pub" long-name="IP Connectivity Management Public Interfaces" level="utils">
<component name="connection_settings_api" long-name="Connection Settings API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/connection_settings_api/group"/>
</component>
<component name="access_point_engine_api" long-name="Access Point Engine API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/access_point_engine_api/group"/>
</component>
<component name="access_point_settings_handler_api" long-name="Access Point Settings Handler API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/access_point_settings_handler_api/group"/>
</component>
<component name="data_connection_log_counters_api" long-name="Data Connection Log Counters API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/data_connection_log_counters_api/group"/>
</component>
<component name="connection_monitor_server_api" long-name="Connection Monitor Server API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/connection_monitor_server_api/group"/>
</component>
<component name="connection_settings_ui_api" long-name="Connection Settings UI API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/connection_settings_ui_api/group"/>
</component>
<component name="agent_dialog_api" long-name="Agent Dialog API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/agent_dialog_api/group"/>
</component>
<component name="extendedconnpref_api" long-name="Extended Connection Preferences API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/extendedconnpref_api/group"/>
</component>
</collection>
<collection name="accesspointcontrol" long-name="Access Point Control" level="plugin">
<component name="apcontrollistplugin" filter="s60" long-name="Access Point Control List Plugin" introduced="^2" plugin="Y">
<unit bldFile="mw/ipconnmgmt/accesspointcontrol/apcontrollistplugin/group"/>
</component>
</collection>
<collection name="alwayson_net_plugin" long-name="Always Online Net Plugin" level="server">
<component name="pdpcontextmanager2" filter="s60" long-name="PDP Context Manager 2">
<unit bldFile="mw/ipconnmgmt/alwayson_net_plugin/pdpcontextmanager2/group"/>
</component>
</collection>
<collection name="apengine" long-name="Access Point Engine" level="framework">
<component name="apeng" filter="s60" long-name="Access Point Engine">
<unit bldFile="mw/ipconnmgmt/apengine/apeng/group"/>
</component>
<component name="apsettingshandlerui" filter="s60" long-name="Access Point Settings Handler UI">
<unit bldFile="mw/ipconnmgmt/apengine/apsettingshandlerui/group"/>
</component>
<component name="apsettingsplugin" filter="s60" long-name="Access Point Settings Plugin" plugin="Y">
<unit bldFile="mw/ipconnmgmt/apengine/apsettingsplugin/group"/>
</component>
</collection>
<collection name="bearermanagement" long-name="Bearer Management" level="framework">
<component name="mpm" filter="s60" long-name="Mobility Policy Manager">
<unit bldFile="mw/ipconnmgmt/bearermanagement/mpm/group"/>
</component>
<component name="extendedconnpref" filter="s60" long-name="Extended Connection Preferences">
<unit bldFile="mw/ipconnmgmt/bearermanagement/extendedconnpref/group"/>
</component>
<component name="s60mcpr" filter="s60" long-name="S60 Meta-Connection Provider" plugin="Y">
<unit bldFile="mw/ipconnmgmt/bearermanagement/S60MCPR/group"/>
</component>
</collection>
<collection name="cmmanager" long-name="Connection Method Manager" level="framework">
<component name="cmmgr" filter="s60" long-name="CM Manager">
<unit bldFile="mw/ipconnmgmt/cmmanager/cmmgr/group"/>
</component>
<component name="gsconnsettingsplugin" filter="s60" long-name="GS Connection Settings Plugin" introduced="^3" plugin="Y">
<unit bldFile="mw/ipconnmgmt/cmmanager/gsconnsettingsplugin/group"/>
</component>
</collection>
<collection name="connectionmonitoring" long-name="Connection Monitoring" level="server">
<component name="connectionmonitorplugin" filter="s60" long-name="Connection Monitor Plugin" plugin="Y">
<unit bldFile="mw/ipconnmgmt/connectionmonitoring/connectionmonitorplugin/group"/>
</component>
<component name="connectionmonitorui" filter="s60" long-name="Connection Monitor UI">
<unit bldFile="mw/ipconnmgmt/connectionmonitoring/connectionmonitorui/group"/>
</component>
<component name="connmon" filter="s60" long-name="Connection Monitor">
<!-- either split into two components, or #include from a common bld.inf -->
<unit bldFile="mw/ipconnmgmt/connectionmonitoring/connmon/connectionmonitor/group"/>
<unit bldFile="mw/ipconnmgmt/connectionmonitoring/connmon/dataconnectionlogger/group"/>
</component>
<component name="connmonext" filter="s60" long-name="Connection Monitor Extension API">
<unit bldFile="mw/ipconnmgmt/connectionmonitoring/connmonext/group"/>
</component>
</collection>
<collection name="connectionutilities" long-name="Connection Utilities" level="utils">
<component name="connectiondialogs" filter="s60" long-name="Connection Dialogs">
<unit bldFile="mw/ipconnmgmt/connectionutilities/connectiondialogs/group"/>
</component>
</collection>
<collection name="dbcreator" long-name="DB Creator" level="utils">
<component name="commsdatcreator" filter="s60" long-name="Comms Database Creator" introduced="9.3">
<unit bldFile="mw/ipconnmgmt/dbcreator/commsdatcreator/group"/>
</component>
<component name="commsdatcreatorrfsplugin" filter="s60" long-name="Comms Database Creator RFS Plugin" introduced="9.3" plugin="Y">
<!-- uncomment when config is turned on -->
<!-- <unit bldFile="dbcreator/commsdatcreatorrfsplugin/group"/>-->
</component>
<component name="commsdatstartup" filter="s60" long-name="Comms Database Startup" introduced="9.3">
<unit bldFile="mw/ipconnmgmt/dbcreator/commsdatstartup/group"/>
</component>
<component name="dbcreatorexe" filter="s60" long-name="DB Creator" introduced="9.3">
<unit bldFile="mw/ipconnmgmt/dbcreator/dbcreatorexe/group"/>
</component>
<component name="dbcreator_build" filter="s60" long-name="DB Creator Build" introduced="9.3">
<!-- move exports to another component, this is needed for the #ifndef for commsdatcreatorrfsplugin until configuration is in place-->
<unit bldFile="mw/ipconnmgmt/dbcreator/group"/>
</component>
</collection>
<collection name="ipconnmgmt_info" long-name="IP Connectivity Management Info" level="utils">
<component name="ipcm_build" filter="s60" long-name="IP Connectivity Management Build">
<!-- need to move exports to another component, or maek this a config component and revmove the #includes -->
<unit bldFile="mw/ipconnmgmt/group"/>
</component>
</collection>
</block>
<block name="netprotocols" level="generic" long-name="High-level Internet Protocols" levels="plugin framework server generic specific">
<collection name="netprotocols_plat" long-name="High-level Internet Protocols Platform Interfaces" level="specific">
<component name="cookie_manager_api" long-name="Cookie Manager API" filter="s60" class="api">
<unit bldFile="mw/netprotocols/netprotocols_plat/cookie_manager_api/group"/>
</component>
<component name="http_cache_mgr_api" long-name="HTTP Cache Manager API" filter="s60" class="api">
<unit bldFile="mw/netprotocols/netprotocols_plat/http_cache_mgr_api/group"/>
</component>
<component name="http_filters_api" long-name="HTTP Filters API" filter="s60" class="api">
<unit bldFile="mw/netprotocols/netprotocols_plat/http_filters_api/group"/>
</component>
</collection>
<collection name="httpfilters" long-name="HTTP Filters" level="plugin">
<component name="httpfiltercommon" filter="s60" long-name="HTTP Filter Common">
<unit bldFile="mw/netprotocols/httpfilters/httpfiltercommon/group"/>
</component>
<component name="cookie" filter="s60" long-name="Cookie Filter" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/cookie/group"/>
</component>
<component name="deflatefilter" filter="s60" long-name="Deflate Filter" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/deflatefilter/group"/>
</component>
<component name="httpfilteracceptheader" filter="s60" long-name="Accept Header Filter" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/httpfilteracceptheader/group"/>
</component>
<component name="httpfilterauthentication" filter="s60" long-name="Authentication Filter" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/httpfilterauthentication/group"/>
</component>
<component name="httpfilterconnhandler" filter="s60" long-name="Connection Handler Fitler" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/httpfilterconnhandler/group"/>
</component>
<component name="httpfilteriop" filter="s60" long-name="HTTP IOP Filter" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/httpfilteriop/group"/>
</component>
<component name="httpfilterproxy" filter="s60" long-name="HTTP Proxy Filter" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/httpfilterproxy/group"/>
</component>
<component name="uaproffilter" filter="s60" long-name="UAProf Filter" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/uaproffilter/group"/>
</component>
</collection>
<collection name="applayerprotocols" long-name="Application Layer Protocols" level="server">
<component name="httptransportfw" long-name="HTTP Transport Framework" introduced="6.2" purpose="optional">
<unit bldFile="mw/netprotocols/applayerprotocols/httptransportfw/group" mrp="mw/netprotocols/applayerprotocols/httptransportfw/group/http_transport-framework.mrp"/>
</component>
<component name="httpexamples" long-name="HTTP Examples" introduced="6.2" purpose="development">
<unit bldFile="mw/netprotocols/applayerprotocols/httpexamples/group" mrp="mw/netprotocols/applayerprotocols/httpexamples/group/http_examples.mrp"/>
</component>
<component name="wappushsupport" long-name="WAP Push Support" introduced="6.2" purpose="optional">
<unit bldFile="mw/netprotocols/applayerprotocols/wappushsupport/Group" mrp="mw/netprotocols/applayerprotocols/wappushsupport/Group/wap-browser_wappushsupport.mrp"/>
</component>
<component name="wapbase" long-name="WAP Base" introduced="6.0" purpose="optional">
<unit bldFile="mw/netprotocols/applayerprotocols/wapbase/Group" mrp="mw/netprotocols/applayerprotocols/wapbase/Group/wap-browser_wapbase.mrp"/>
</component>
<component name="ftpengine" long-name="FTP Engine" introduced="6.0" purpose="optional">
<unit bldFile="mw/netprotocols/applayerprotocols/ftpengine/group" mrp="mw/netprotocols/applayerprotocols/ftpengine/group/networking_ftp_e.mrp"/>
</component>
<component name="telnetengine" long-name="Telnet Engine" introduced="6.0" purpose="optional">
<unit bldFile="mw/netprotocols/applayerprotocols/telnetengine/group" mrp="mw/netprotocols/applayerprotocols/telnetengine/group/networking_telnet_e.mrp"/>
</component>
<component name="httpserviceapi" long-name="HTTP Service API" introduced="TB9.2" purpose="optional">
<unit bldFile="mw/netprotocols/applayerprotocols/httpservice/group" mrp="mw/netprotocols/applayerprotocols/httpservice/group/http_service.mrp"/>
</component>
</collection>
<collection name="applayerpluginsandutils" long-name="Application Layer Plugins and Utils" level="framework">
<component name="uripermissionservices" long-name="URI Permission Services" introduced="^2" purpose="optional">
<unit bldFile="mw/netprotocols/applayerpluginsandutils/uripermissionservices/group" mrp="mw/netprotocols/applayerpluginsandutils/uripermissionservices/group/application-protocols_ineturilist.mrp"/>
</component>
<component name="bookmarksupport" long-name="Bookmark Support" introduced="9.1" purpose="optional">
<unit bldFile="mw/netprotocols/applayerpluginsandutils/bookmarksupport/group" mrp="mw/netprotocols/applayerpluginsandutils/bookmarksupport/group/application-protocols_bookmarks.mrp"/>
</component>
<component name="httpprotocolplugins" long-name="HTTP Protocol Plugins" introduced="6.2" purpose="optional" plugin="Y">
<unit bldFile="mw/netprotocols/applayerpluginsandutils/httpprotocolplugins/group" mrp="mw/netprotocols/applayerpluginsandutils/httpprotocolplugins/group/http_protocol-plugin.mrp"/>
</component>
<component name="httptransportplugins" long-name="HTTP Transport Plugins" introduced="6.2" purpose="optional" plugin="Y">
<unit bldFile="mw/netprotocols/applayerpluginsandutils/httptransportplugins/group" mrp="mw/netprotocols/applayerpluginsandutils/httptransportplugins/group/http_transport-plugin.mrp"/>
</component>
</collection>
<collection name="netprotocols_info" long-name="High-level Internet Protocols Info" level="specific">
<component name="netprotocols_metadata" long-name="High-level Internet Protocols Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/netprotocols/netprotocols_info/netprotocols_metadata/netprotocols_metadata.mrp"/>
</component>
</collection>
</block>
<block name="ipappprotocols" level="generic" long-name="IP App Protocols" levels="plugin conn server if">
<collection name="ipappprotocols_plat" long-name="IP App Protocols Platform Interfaces" level="if">
<component name="srtp_api" long-name="SRTP API" filter="s60" class="api">
<unit bldFile="mw/ipappprotocols/ipappprotocols_plat/srtp_api/group"/>
</component>
<component name="rtprtcp_api" long-name="RTP/RTCP API" filter="s60" class="api">
<unit bldFile="mw/ipappprotocols/ipappprotocols_plat/rtprtcp_api/group"/>
</component>
</collection>
<collection name="rtp" long-name="RTP" level="server">
<component name="srtpstack" filter="s60" long-name="SRTP Stack">
<unit bldFile="mw/ipappprotocols/rtp/srtpstack/group"/>
</component>
<component name="rtpstack" filter="s60" long-name="RTP Stack">
<unit bldFile="mw/ipappprotocols/rtp/rtpstack/group"/>
</component>
</collection>
<collection name="realtimenetprots" long-name="Real Time Net Protocols" level="server">
<component name="symrtp" long-name="RTP" introduced="9.0" purpose="optional">
<!-- Real Time Data Protocol -->
<unit bldFile="mw/ipappprotocols/realtimenetprots/rtp/group" mrp="mw/ipappprotocols/realtimenetprots/rtp/group/mm-protocols_rtp.mrp"/>
</component>
<component name="sipfw" long-name="SIP Framework" introduced="9.2" purpose="optional">
<unit bldFile="mw/ipappprotocols/realtimenetprots/sipfw/Group" mrp="mw/ipappprotocols/realtimenetprots/sipfw/Group/mm-protocols_SIP2_Com.mrp" version="2"/>
</component>
</collection>
<collection name="sipplugins" long-name="SIP Plugins" level="plugin">
<component name="sippwlanplugin" filter="s60" long-name="SIP WLAN Plugin" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipplugins/sippwlanplugin/group"/>
</component>
<component name="sippsipsettingsui" filter="s60" long-name="SIP Settings UI" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipplugins/sippsipsettingsui/group"/>
</component>
<component name="sippdevmgmtsipadapter" filter="s60" long-name="Device Management SIP Settings Adapter" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipplugins/sippdevmgmtsipadapter/group"/>
</component>
<component name="sippsystemstatemonitor" filter="s60" long-name="SIP System State Monitor" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipplugins/sippsystemstatemonitor/group"/>
</component>
<component name="sippsipadapter" filter="s60" long-name="SIP Adapter" introduced="^3" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipplugins/sippsipadapter/group"/>
</component>
</collection>
<collection name="sipproviderplugins" long-name="SIP Provider Plugins" level="conn">
<component name="sipprovider" long-name="SIP Provider" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipproviderplugins/sipprovider/group" mrp="mw/ipappprotocols/sipproviderplugins/sipprovider/group/mm-protocols_SipProvider.mrp"/>
</component>
</collection>
<collection name="ipappprotocols_info" long-name="IP App Protocols Info" level="if">
<component name="ipappprotocols_metadata" long-name="IP App Protocols Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/ipappprotocols/ipappprotocols_info/ipappprotocols_metadata/ipappprotocols_metadata.mrp"/>
</component>
</collection>
</block>
<block name="wirelessacc" level="specific" long-name="Wireless Access" levels="framework generic ui">
<collection name="hsfw_plat" long-name="HotSpot Framework Platform Interfaces" level="ui">
<component name="hotspot_framework_client_api" long-name="HotSpot Framework Client API" filter="s60" class="api">
<unit bldFile="mw/wirelessacc/hsfw_plat/hotspot_framework_client_api/group"/>
</component>
<component name="internet_connectivity_test_service_api" long-name="Internet Connectivity Test Service API" filter="s60" class="api">
<unit bldFile="mw/wirelessacc/hsfw_plat/internet_connectivity_test_service_api/group"/>
</component>
<component name="internet_connectivity_test_service_settings_api" long-name="Internet Connectivity Test Service Settings API" filter="s60" class="api">
<unit bldFile="mw/wirelessacc/hsfw_plat/internet_connectivity_test_service_settings_api/group"/>
</component>
<component name="hotspot_framework_client_plugin_api" long-name="HotSpot Framework Client Plugin API" filter="s60" class="api">
<unit bldFile="mw/wirelessacc/hsfw_plat/hotspot_framework_client_plugin_api/group"/>
</component>
</collection>
<collection name="hotspotfw" long-name="HotSpot Framework" level="framework">
<component name="hsserver" filter="s60" long-name="HotSpot Server" class="placeholder">
<!-- needs bld.inf extracted from the hotspotfw/group one, or this component should be removed-->
</component>
<component name="hsclient" filter="s60" long-name="HotSpot Client" class="placeholder">
<!-- needs bld.inf extracted from the hotspotfw/group one, or this component should be removed-->
</component>
<component name="internetconnectivitytestservice" filter="s60" long-name="Internet Connectivity Test Service" class="placeholder">
<!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
<!-- <unit bldFile="hotspotfw/internetconnectivitytestservice/group"/> -->
</component>
<component name="ictsdialogs" filter="s60" long-name="Internet Connectivity Test Service Dialogs" deprecated="^3" class="placeholder">
<!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
<!-- <unit bldFile="hotspotfw/ictsdialogs/group"/> -->
</component>
<component name="hspluginforagent" filter="s60" long-name="HotSpot Plugin for Agent" plugin="Y" class="placeholder">
<!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
<!-- <unit bldFile="hotspotfw/hspluginforagent/group"/> -->
</component>
<component name="hsbrowser" filter="s60" long-name="HotSpot Browser" class="placeholder">
<!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
<!-- <unit bldFile="hotspotfw/hsbrowser/group"/> -->
</component>
<component name="hotspotfw_build" filter="s60" long-name="Hotspot Framework Build">
<!-- should break up this bld.inf into the above components, or collapse them all into a single component -->
<unit bldFile="mw/wirelessacc/hotspotfw/group"/>
</component>
</collection>
<collection name="wlanutilities" long-name="WLAN Utilities" level="generic">
<component name="wlanplugin" filter="s60" long-name="WLAN Plugin" plugin="Y">
<unit bldFile="mw/wirelessacc/wlanutilities/wlanplugin/group"/>
</component>
<component name="wlansettingsui" filter="s60" long-name="WLAN Settings UI">
<unit bldFile="mw/wirelessacc/wlanutilities/wlansettingsui/group"/>
</component>
<component name="wlansniffer" filter="s60" long-name="WLAN Sniffer">
<unit bldFile="mw/wirelessacc/wlanutilities/wlansniffer/group"/>
</component>
<component name="wlanindicatorplugin" filter="s60" long-name="WLAN Indicator Plugin" plugin="Y">
<unit bldFile="mw/wirelessacc/wlanutilities/wlanindicatorplugin/group"/>
</component>
</collection>
</block>
<block name="vpnclient" level="specific" long-name="VPN Client" levels="engine ui api">
<!-- is the !oem_build filter needed? -->
<collection name="vpnc_plat" long-name="VPN Client Platform Interfaces" level="api">
<component name="vpnapi" filter="s60" long-name="VPN API" class="api">
<unit bldFile="mw/vpnclient/vpnc_plat/vpnapi/group" filter="!oem_build"/>
</component>
</collection>
<collection name="vpnapiimpl" long-name="VPN API Implementation" level="api">
<component name="vpnapi" filter="s60" long-name="VPN API">
<unit bldFile="mw/vpnclient/vpnapiimpl/group" filter="!oem_build"/>
</component>
</collection>
<collection name="vpnengine" long-name="VPN Engine" level="engine">
<!-- too many components in this collection.
Probably best to group the binaries together into larger components
or maybe split the collection into more reasonable groups -->
<component name="eventmediatorapi" filter="s60" long-name="Event Mediator API">
<unit bldFile="mw/vpnclient/vpnengine/eventmediatorapi/group" filter="!oem_build"/>
</component>
<component name="eventviewer" filter="s60" long-name="Event Viewer">
<unit bldFile="mw/vpnclient/vpnengine/eventviewer/group" filter="!oem_build"/>
</component>
<component name="vpnins" filter="s60" long-name="VPN Installer">
<unit bldFile="mw/vpnclient/vpnengine/vpnins/group" filter="!oem_build"/>
</component>
<component name="ikepolparser" filter="s60" long-name="IKE Policy Parser">
<unit bldFile="mw/vpnclient/vpnengine/ikepolparser/group" filter="!oem_build"/>
</component>
<component name="utlbase64" filter="s60" long-name="Base64 Utilities">
<unit bldFile="mw/vpnclient/vpnengine/utlbase64/group" filter="!oem_build"/>
</component>
<component name="utlcrypto" filter="s60" long-name="Crypto Utilities">
<unit bldFile="mw/vpnclient/vpnengine/utlcrypto/group" filter="!oem_build"/>
</component>
<component name="utlxml" filter="s60" long-name="XML Utilities">
<unit bldFile="mw/vpnclient/vpnengine/utlxml/group" filter="!oem_build"/>
</component>
<component name="utlpkcs10" filter="s60" long-name="PKCS#10 Utilities">
<unit bldFile="mw/vpnclient/vpnengine/utlpkcs10/group" filter="!oem_build"/>
</component>
<component name="pkiserviceapi" filter="s60" long-name="PKI Service API">
<unit bldFile="mw/vpnclient/vpnengine/pkiserviceapi/group" filter="!oem_build"/>
</component>
<component name="ikecert" filter="s60" long-name="IKE Certificate Management">
<unit bldFile="mw/vpnclient/vpnengine/ikecert/group" filter="!oem_build"/>
</component>
<component name="kmdapi" filter="s60" long-name="Key Management Daemon API">
<unit bldFile="mw/vpnclient/vpnengine/kmdapi/group" filter="!oem_build"/>
</component>
<component name="kmdserver" filter="s60" long-name="Key Management Daemon Server">
<unit bldFile="mw/vpnclient/vpnengine/kmdserver/group" filter="!oem_build"/>
</component>
<component name="ikeutils" filter="s60" long-name="Internet Key Exchange Utils">
<unit bldFile="mw/vpnclient/vpnengine/ikeutils/group" filter="!oem_build"/>
</component>
<component name="ikev1lib" filter="s60" long-name="IKEv1 Library">
<unit bldFile="mw/vpnclient/vpnengine/ikev1lib/group" filter="!oem_build"/>
</component>
<component name="ikev2lib" filter="s60" long-name="IKEv2 Library">
<unit bldFile="mw/vpnclient/vpnengine/ikev2lib/group" filter="!oem_build"/>
</component>
<component name="vpnipsecpolparser" filter="s60" long-name="VPN IPsec Policy Parser">
<unit bldFile="mw/vpnclient/vpnengine/vpnipsecpolparser/group" filter="!oem_build"/>
</component>
<component name="sit" filter="s60" long-name="Socket Interaction Thread">
<unit bldFile="mw/vpnclient/vpnengine/sit/group" filter="!oem_build"/>
</component>
<component name="vpntcwrapper" filter="s60" long-name="VPN Terminal Control Wrapper">
<unit bldFile="mw/vpnclient/vpnengine/vpntcwrapper/group" filter="!oem_build"/>
</component>
<component name="eventmediator" filter="s60" long-name="Event Mediator">
<unit bldFile="mw/vpnclient/vpnengine/eventmediator/group" filter="!oem_build"/>
</component>
<component name="pkiservice" filter="s60" long-name="PKI Service">
<unit bldFile="mw/vpnclient/vpnengine/pkiservice/group" filter="!oem_build"/>
</component>
<component name="vpnconnagt" filter="s60" long-name="VPN Connection Agent">
<unit bldFile="mw/vpnclient/vpnengine/vpnconnagt/group" filter="!oem_build"/>
</component>
<component name="vpnmanager" filter="s60" long-name="VPN Manager">
<unit bldFile="mw/vpnclient/vpnengine/vpnmanager/group" filter="!oem_build"/>
</component>
<component name="vpncleaner" filter="s60" long-name="VPN Cleaner">
<unit bldFile="mw/vpnclient/vpnengine/vpncleaner/group" filter="!oem_build"/>
</component>
<component name="utlpkcs12" filter="s60" long-name="PKCS#12 Utilities">
<unit bldFile="mw/vpnclient/vpnengine/utlpkcs12/group" filter="!oem_build"/>
</component>
<component name="dmadengine" filter="s60" long-name="DM Adapter Engine">
<unit bldFile="mw/vpnclient/vpnengine/dmadengine/group" filter="!oem_build"/>
</component>
<component name="dmadipsecvpn" filter="s60" long-name="IPsec VPN DM Adapter" plugin="Y">
<unit bldFile="mw/vpnclient/vpnengine/dmadipsecvpn/group" filter="!oem_build"/>
</component>
<component name="dmadpki" filter="s60" long-name="PKI DM Adapter" plugin="Y">
<unit bldFile="mw/vpnclient/vpnengine/dmadpki/group" filter="!oem_build"/>
</component>
<component name="ikesocket" filter="s60" long-name="IKE Socket" introduced="^3">
<unit bldFile="mw/vpnclient/vpnengine/ikesocket/group" filter="!oem_build"/>
</component>
</collection>
<collection name="vpnui" long-name="VPN UI" level="ui">
<component name="vpnecomnotifier" filter="s60" long-name="VPN ECOM Notifier" plugin="Y">
<unit bldFile="mw/vpnclient/vpnui/vpnecomnotifier/group" filter="!oem_build"/>
</component>
<component name="vpndialogmanager" filter="s60" long-name="VPN Dialog Manager">
<unit bldFile="mw/vpnclient/vpnui/vpndialogmanager/group" filter="!oem_build"/>
</component>
<component name="vpnmanagementui" filter="s60" long-name="VPN Management UI" plugin="Y">
<unit bldFile="mw/vpnclient/vpnui/vpnmanagementui/group" filter="!oem_build"/>
</component>
<component name="vpnpolins" filter="s60" long-name="VPN Policy Installer">
<unit bldFile="mw/vpnclient/vpnui/vpnpolins/group" filter="!oem_build"/>
</component>
<component name="vpnpolicyrecognizer" filter="s60" long-name="VPN Policy Recognizer" plugin="Y">
<unit bldFile="mw/vpnclient/vpnui/vpnpolicyrecognizer/group" filter="!oem_build"/>
</component>
</collection>
<collection name="vpnclient_info" long-name="VPN Client Info" level="api">
<component name="vpnclient_help" filter="s60" long-name="VPN Client Help">
<unit bldFile="mw/vpnclient/help/group" filter="!oem_build"/>
</component>
<component name="vpnclient_build" filter="s60" long-name="VPN Client Build">
<!-- should split this up into the other components and remove this-->
<unit bldFile="mw/vpnclient/group" filter="!oem_build"/>
</component>
</collection>
</block>
<block name="ipappsrv" level="specific" long-name="IP App Services" levels="framework generic server conn plugin">
<collection name="ipappsrv_plat" long-name="IP App Services Platform Interfaces" level="plugin">
<component name="transcoder_api" long-name="Transcoder API" filter="s60" class="api">
<unit bldFile="mw/ipappsrv/ipappsrv_plat/transcoder_api/group"/>
</component>
<component name="comms_event_api" long-name="Comms Event API" filter="s60" class="api">
<unit bldFile="mw/ipappsrv/ipappsrv_plat/comms_event_api/group"/>
</component>
<component name="floor_control_api" long-name="Floor Control API" filter="s60" class="api">
<unit bldFile="mw/ipappsrv/ipappsrv_plat/floor_control_api/group"/>
</component>
<component name="media_control_api" long-name="Media Control API" filter="s60" class="api">
<unit bldFile="mw/ipappsrv/ipappsrv_plat/media_control_api/group"/>
</component>
<component name="multimedia_comms_api" long-name="Multimedia Comms API" filter="s60" class="api">
<unit bldFile="mw/ipappsrv/ipappsrv_plat/multimedia_comms_api/group"/>
</component>
<component name="nat_settings_api" long-name="NAT Settings API" filter="s60" class="api">
<unit bldFile="mw/ipappsrv/ipappsrv_plat/nat_settings_api/group"/>
</component>
</collection>
<collection name="natfw" long-name="NAT Framework" level="framework">
<!-- collection is really a component. Need to move down a directory -->
<component name="natfw_build" filter="s60" long-name="NAT Framework Build" introduced="^2">
<unit bldFile="mw/ipappsrv/natfw/group"/>
</component>
</collection>
<collection name="multimediacommscontroller" long-name="Multimedia Comms Controller" level="conn">
<!-- collection is really a component. Need to move down a directory -->
<component name="multimediacommscontroller_build" filter="s60" long-name="Multimedia Comms Controller Build">
<unit bldFile="mw/ipappsrv/multimediacommscontroller/group"/>
</component>
</collection>
<collection name="multimediacommsengine" long-name="Multimedia Comms Engine" level="generic">
<!-- collection is really a component. Need to move down a directory -->
<component name="multimediacommsengine_build" filter="s60" long-name="Multimedia Comms Engine Build">
<unit bldFile="mw/ipappsrv/multimediacommsengine/group"/>
</component>
</collection>
<collection name="natplugins" long-name="NAT Plugins" level="plugin">
<component name="natpcliprovisioningnatfwadapter" filter="s60" long-name="Client Provisioning NAT Framework Traversal Adapter" introduced="^2" plugin="Y">
<unit bldFile="mw/ipappsrv/natplugins/natpcliprovisioningnatfwadapter/group"/>
</component>
<component name="natpdevmgmtnatfwadapter" filter="s60" long-name="Device Management NAT Framework Traversal Adapter" plugin="Y">
<unit bldFile="mw/ipappsrv/natplugins/natpdevmgmtnatfwadapter/group"/>
</component>
<component name="natptraversalcontroller" filter="s60" long-name="NAT Traversal Controller" plugin="Y">
<unit bldFile="mw/ipappsrv/natplugins/natptraversalcontroller/group"/>
</component>
<component name="natpnatfwsdpprovider" filter="s60" long-name="NAT Framework SDP Provider" plugin="Y">
<unit bldFile="mw/ipappsrv/natplugins/natpnatfwsdpprovider/group"/>
</component>
</collection>
<collection name="ipappsrv_info" long-name="IP App Services Info" level="plugin">
<component name="ipappsrv_build" long-name="IP App Services Build" filter="s60">
<!-- remove the #includes from here and rename as xxx ROM or move iby/sis files into another component-->
<unit mrp="mw/ipappsrv/group"/>
</component>
<component name="ipappsrv_metadata" long-name="IP App Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/ipappsrv/ipappsrv_info/ipappsrv_metadata/ipappsrv_metadata.mrp"/>
</component>
</collection>
</block>
<block name="phonesrv" level="specific" long-name="Telephony and SIM Services" levels="plugin framework server generic specific">
<collection name="phonesrv_plat" long-name="Telephony and SIM Services Platform Interfaces" level="specific">
<component name="string_parser_api" long-name="String Parser API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/string_parser_api/group"/>
</component>
<component name="cbs_mcn_client_api" long-name="CBS MCN Client API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/cbs_mcn_client_api/group"/>
</component>
<component name="converged_call_engine_api" long-name="Converged Call Engine API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/converged_call_engine_api/group"/>
</component>
<component name="aiw_dial_data_consumer_api" long-name="AIW Dial Data Consumer API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/aiw_dial_data_consumer_api/group"/>
</component>
<component name="phone_client_ussd_api" long-name="Phone Client USSD API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_ussd_api/group"/>
</component>
<component name="sat_refresh_api" long-name="SAT Refresh API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/sat_refresh_api/group" filter="!test"/>
</component>
<component name="network_handling_engine_api" long-name="Network Handling Engine API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/network_handling_engine_api/group"/>
</component>
<component name="phone_client_emergency_call_api" long-name="Phone Client Emergency Call API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_emergency_call_api/group"/>
</component>
<component name="sat_configuration_api" long-name="SAT Configuration API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/sat_configuration_api/group"/>
</component>
<component name="dial_utils_api" long-name="Dial Utils API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/dial_utils_api/group"/>
</component>
<component name="phone_client_image_handler_api" long-name="Phone Client Image Handler API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_image_handler_api/group"/>
</component>
<component name="phone_client_messenger_api" long-name="Phone Client Messenger API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_messenger_api/group"/>
</component>
<component name="sat_client_api" long-name="SAT Client API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/sat_client_api/group" filter="!test"/>
</component>
<component name="phone_client_api" long-name="Phone Client API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_api/group"/>
</component>
<component name="sat_service_api" long-name="SAT Service API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/sat_service_api/group" filter="!test"/>
</component>
<component name="cbs_message_api" long-name="CBS Message API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/cbs_message_api/group"/>
</component>
<component name="phone_client_server_information_api" long-name="Phone Client Server Information API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_server_information_api/group"/>
</component>
<component name="phone_client_ussd_internal_api" long-name="Phone Client USSD Internal API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_ussd_internal_api/group"/>
</component>
<component name="phone_client_command_handler_api" long-name="Phone Client Command Handler API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_command_handler_api/group"/>
</component>
<component name="phone_client_notify_api" long-name="Phone Client Notify API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_notify_api/group"/>
</component>
<component name="phone_client_utility_api" long-name="Phone Client Utility API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_utility_api/group"/>
</component>
<component name="telephony_network_information_api" long-name="Telephony Network Information API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/telephony_network_information_api/group"/>
</component>
<component name="secondary_display_sat_api" long-name="Secondary Display SAT API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/secondary_display_sat_api/group"/>
</component>
<component name="callui_reconnect_query_api" long-name="CallUI Reconnect Query API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/callui_reconnect_query_api/group"/>
</component>
<component name="service_provider_settings_api" long-name="Service Provider Settings API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/service_provider_settings_api/group"/>
</component>
<component name="converged_call_provider_api" long-name="Converged Call Provider API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/converged_call_provider_api/group"/>
</component>
<component name="incoming_call_monitor_api" long-name="Incoming Call Monitor API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/incoming_call_monitor_api/group"/>
</component>
<component name="default_emergency_numbers_api" long-name="Default Emergency Numbers API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/default_emergency_numbers_api/group"/>
</component>
<component name="cenrep_database_api" long-name="Central Repository Database API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/cenrep_database_api/group"/>
</component>
<component name="ss_settings_api" long-name="SS Settings API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/ss_settings_api/group"/>
</component>
<component name="phone_settings_observer_api" long-name="Phone Settings Observer API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_settings_observer_api/group"/>
</component>
<component name="phone_settings_notes_ui_api" long-name="Phone Settings Notes UI API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_settings_notes_ui_api/group"/>
</component>
<component name="phone_settings_api" long-name="Phone Settings API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_settings_api/group"/>
</component>
<component name="voice_mailbox_number_api" long-name="Voice Mailbox Number API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/voice_mailbox_number_api/group"/>
</component>
<component name="voice_mailbox_settings_api" long-name="Voice Mailbox Settings API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/voice_mailbox_settings_api/group"/>
</component>
<component name="call_information_api" long-name="Call Information API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/call_information_api/group" filter="!test"/>
</component>
<component name="call_remote_party_information_api" long-name="Call Remote Party Information API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/call_remote_party_information_api/group" filter="!test"/>
</component>
<component name="telephony_mediator_api" long-name="Telephony Mediator API" filter="s60" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/telephony_mediator_api/group" filter="!test"/>
</component>
</collection>
<collection name="telutils" long-name="Telephony Utils" level="generic">
<component name="phoneparser" filter="s60" long-name="Phone Parser">
<unit bldFile="mw/phonesrv/telutils/phoneparser/group"/>
</component>
<component name="telephonyservice" filter="s60" long-name="Telephony Service">
<unit bldFile="mw/phonesrv/telutils/telephonyservice/group"/>
</component>
</collection>
<collection name="cbs" long-name="Cellular Baseband Services" level="plugin">
<component name="cbsserver" filter="s60" long-name="CBS Server">
<unit bldFile="mw/phonesrv/cbs/cbsserver/group"/>
</component>
<component name="cbsui" filter="s60" long-name="CBS UI">
<unit bldFile="mw/phonesrv/cbs/cbsui/group"/>
</component>
</collection>
<collection name="cellular" long-name="Cellular" level="server">
<component name="telephonysettings" filter="s60" long-name="Telephony Settings">
<unit bldFile="mw/phonesrv/cellular/telephonysettings/group" filter="!test"/>
</component>
<component name="sssettings" filter="s60" long-name="Supplementary Service Settings">
<unit bldFile="mw/phonesrv/cellular/sssettings/group" filter="!test"/>
</component>
<component name="psetnotesui" filter="s60" long-name="Phone Settings Notes UI">
<unit bldFile="mw/phonesrv/cellular/psetnotesui/group" filter="!test"/>
</component>
<component name="servicerequest" filter="s60" long-name="Service Request">
<unit bldFile="mw/phonesrv/cellular/servicerequest/group"/>
</component>
</collection>
<collection name="convergedcallengine" long-name="Converged Call Engine" level="framework">
<component name="callprovider" filter="s60" long-name="Call Provider">
<unit bldFile="mw/phonesrv/convergedcallengine/callprovider/group"/>
</component>
<component name="cce" filter="s60" long-name="CCE">
<unit bldFile="mw/phonesrv/convergedcallengine/cce/group" filter="!test"/>
</component>
<component name="spsettings" filter="s60" long-name="Service Provider Settings">
<unit bldFile="mw/phonesrv/convergedcallengine/spsettings/group" filter="!test"/>
</component>
<component name="cenrepdatabase" filter="s60" long-name="CCE Cenrep Database">
<unit bldFile="mw/phonesrv/convergedcallengine/cenrepdatabase/group"/>
</component>
<component name="serviceselector" filter="s60" long-name="Service Selector">
<unit bldFile="mw/phonesrv/convergedcallengine/serviceselector/group"/>
</component>
<component name="csplugin" filter="s60" long-name="CS Plugin" plugin="Y">
<!-- should spell out CS in name -->
<unit bldFile="mw/phonesrv/convergedcallengine/csplugin/group"/>
</component>
</collection>
<collection name="engines" long-name="Telephony Engines" level="specific">
<component name="vmbxengine" filter="s60" long-name="Voice Mailbox Engine">
<unit bldFile="mw/phonesrv/engines/vmbxengine/group"/>
</component>
</collection>
<collection name="networkhandling" long-name="Network Handling" level="plugin">
<component name="networkhandlingengine" filter="s60" long-name="Network Handling Engine">
<unit bldFile="mw/phonesrv/networkhandling/networkhandlingengine/group"/>
</component>
</collection>
<collection name="phoneclientserver" long-name="Phone Client/Server" level="server">
<component name="enpolicy" filter="s60" long-name="Emergency Number Policy">
<unit bldFile="mw/phonesrv/phoneclientserver/enpolicy/group"/>
</component>
<component name="aiwdialdata" filter="s60" long-name="AIW Dial Data">
<unit bldFile="mw/phonesrv/phoneclientserver/aiwdialdata/group" filter="!test"/>
</component>
<component name="dialutils" filter="s60" long-name="Dial Utils">
<unit bldFile="mw/phonesrv/phoneclientserver/dialutils/group" filter="!test"/>
</component>
<component name="phoneclient" filter="s60" long-name="Phone Client">
<unit bldFile="mw/phonesrv/phoneclientserver/phoneclient/group" filter="!test"/>
</component>
<component name="phoneserver" filter="s60" long-name="Phone Server">
<unit bldFile="mw/phonesrv/phoneclientserver/phoneserver/group"/>
</component>
<component name="callui" filter="s60" long-name="Call UI">
<unit bldFile="mw/phonesrv/phoneclientserver/callui/group"/>
</component>
</collection>
<collection name="satengine" long-name="SIM Application Toolkit Engine" level="generic">
<component name="satserver" filter="s60" long-name="SAT Server">
<unit bldFile="mw/phonesrv/satengine/satserver/group"/>
</component>
</collection>
<collection name="satui" long-name="SIM Application Toolkit UI" level="specific">
<component name="satapp" filter="s60" long-name="SAT Application">
<unit bldFile="mw/phonesrv/satui/satapp/group"/>
</component>
<component name="satplugin" filter="s60" long-name="SAT Plugin" plugin="Y">
<unit bldFile="mw/phonesrv/satui/satplugin/group"/>
</component>
</collection>
<collection name="phonecmdhandler" long-name="Phone Command Handler" level="generic">
<component name="phonecmdhnlr" filter="s60" long-name="Phone Command Handler">
<unit bldFile="mw/phonesrv/phonecmdhandler/phonecmdhnlr/group"/>
</component>
</collection>
</block>
<block name="messagingmw" level="specific" long-name="Messaging Middleware" levels="stack fw api">
<collection name="msgfw_pub" long-name="Messaging Middleware Public Interfaces" level="api">
<component name="send_ui_api" long-name="Send UI API" filter="s60" class="api">
<unit bldFile="mw/messagingmw/msgfw_pub/send_ui_api/group"/>
</component>
</collection>
<collection name="msgfw_plat" long-name="Messaging Middleware Platform Interfaces" level="api">
<component name="always_online_plugin_api" long-name="Always Online Plugin API" filter="s60" class="api">
<unit bldFile="mw/messagingmw/msgfw_plat/always_online_plugin_api/group"/>
</component>
<component name="always_online_client_api" long-name="Always Online Client API" filter="s60" class="api">
<unit bldFile="mw/messagingmw/msgfw_plat/always_online_client_api/group"/>
</component>
<component name="msg_common_utils_api" long-name="Messaging Common Utils API" filter="s60" class="api">
<unit bldFile="mw/messagingmw/msgfw_plat/msg_common_utils_api/group"/>
</component>
<component name="send_ui_plugin_api" long-name="Send UI Plug-in API" filter="s60" class="api">
<unit bldFile="mw/messagingmw/msgfw_plat/send_ui_plugin_api/group"/>
</component>
<component name="send_ui_datautils_api" long-name="Send UI Data Utils API" filter="s60" class="api">
<unit bldFile="mw/messagingmw/msgfw_plat/send_ui_datautils_api/group"/>
</component>
</collection>
<collection name="msgbranched" long-name="Messaging Branched" level="fw">
<!-- collection is really a component. Need to move down a directory -->
<component name="msgbranched_build" filter="s60" long-name="Messaging Branched Build">
<unit bldFile="mw/messagingmw/msgbranched/group"/>
</component>
</collection>
<collection name="messagingfw" long-name="Messaging Framework" level="fw">
<!-- should break this collection up into smaller related collections -->
<component name="alwaysonline" filter="s60" long-name="Always Online Server" introduced="^2">
<unit bldFile="mw/messagingmw/messagingfw/alwaysonline/group"/>
</component>
<component name="msgcommonutils" filter="s60" long-name="Messaging Common Utils" introduced="^2">
<unit bldFile="mw/messagingmw/messagingfw/msgcommonutils/group"/>
</component>
<component name="senduiservices" filter="s60" long-name="Send UI Services" introduced="^2">
<unit bldFile="mw/messagingmw/messagingfw/senduiservices/group"/>
</component>
<component name="scheduledsendmtm" long-name="Scheduled Send MTM" introduced="6.0" purpose="optional" plugin="Y">
<unit bldFile="mw/messagingmw/messagingfw/scheduledsendmtm/group" mrp="mw/messagingmw/messagingfw/scheduledsendmtm/group/messaging_schedulesend.mrp"/>
</component>
<component name="msgsrvnstore" long-name="Message Server and Store" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/msgsrvnstore/group" mrp="mw/messagingmw/messagingfw/msgsrvnstore/group/messaging_framework.mrp"/>
</component>
<component name="biomsgfw" long-name="BIO Messaging Framework" introduced="6.0" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/biomsgfw/group" mrp="mw/messagingmw/messagingfw/biomsgfw/group/messaging_biomsg.mrp"/>
</component>
<component name="msgconf" long-name="Messaging Config" introduced="^2" purpose="optional" class="config">
<unit bldFile="mw/messagingmw/messagingfw/msgconf/group" mrp="mw/messagingmw/messagingfw/msgconf/group/messaging_config.mrp"/>
</component>
<component name="watcherfw" long-name="Watcher Framework" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/watcherfw/group" mrp="mw/messagingmw/messagingfw/watcherfw/group/messaging_watcher.mrp"/>
</component>
<component name="msgtest" long-name="Messaging Test" purpose="development">
<unit bldFile="mw/messagingmw/messagingfw/msgtest/group" mrp="mw/messagingmw/messagingfw/msgtest/group/messaging_test.mrp"/>
</component>
<component name="sendas" long-name="Send As" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/sendas/group" mrp="mw/messagingmw/messagingfw/sendas/group/messaging_sendas2.mrp"/>
</component>
<component name="msgurlhandler" long-name="Message URL Handler" introduced="7.0" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/msgurlhandler/group" mrp="mw/messagingmw/messagingfw/msgurlhandler/group/messaging_urlhandler.mrp"/>
</component>
<component name="wappushfw" long-name="WAP Push Framework" introduced="6.1" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/wappushfw/group" mrp="mw/messagingmw/messagingfw/wappushfw/group/wap-browser_wappush.mrp"/>
</component>
<component name="suplsmshandler" long-name="SUPL SMS Handler" introduced="^2" purpose="development" plugin="Y">
<unit bldFile="mw/messagingmw/messagingfw/suplsmshandler/group" mrp="mw/messagingmw/messagingfw/suplsmshandler/group/lbs_suplsmstrigger.mrp"/>
</component>
<component name="suplwappushhandler" long-name="SUPL WAP Push Handler" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="mw/messagingmw/messagingfw/suplwappushhandler/group" mrp="mw/messagingmw/messagingfw/suplwappushhandler/group/lbs_suplwappush.mrp"/>
</component>
</collection>
<collection name="messagingmw_info" long-name="Messaging Middleware Info" level="api">
<component name="messagingmw_metadata" long-name="Messaging Middleware Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/messagingmw/messagingmw_info/messagingmw_metadata/messagingmw_metadata.mrp"/>
</component>
</collection>
</block>
<block name="imsrv" level="specific" long-name="Instant Messaging and Presence Services" levels="plugin framework server generic specific">
<collection name="imsrv_plat" long-name="Instant Messaging and Presence Services Platform Interfaces" level="specific">
<component name="ximp_core_data_model_api" long-name="XIMP Core Data Model API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_core_data_model_api/group"/>
</component>
<component name="ximp_presence_protocol_plugin_host_api" long-name="XIMP Presence Protocol Plug-in Host API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_presence_protocol_plugin_host_api/group"/>
</component>
<component name="ximp_presence_data_model_api" long-name="XIMP Presence Data Model API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_presence_data_model_api/group"/>
</component>
<component name="ximp_presence_protocol_plugin_api" long-name="XIMP Presence Protocol Plug-in API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_presence_protocol_plugin_api/group"/>
</component>
<component name="ximp_presence_management_api" long-name="XIMP Presence Management API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_presence_management_api/group"/>
</component>
<component name="ximp_core_protocol_plugin_host_api" long-name="XIMP Core Protocol Plug-in Host API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_core_protocol_plugin_host_api/group"/>
</component>
<component name="ximp_core_management_api" long-name="XIMP Core Management API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_core_management_api/group"/>
</component>
<component name="ximp_presence_base_api" long-name="XIMP Presence Base API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_presence_base_api/group"/>
</component>
<component name="ximp_core_protocol_plugin_api" long-name="XIMP Core Protocol Plug-in API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_core_protocol_plugin_api/group"/>
</component>
<component name="ximp_core_base_api" long-name="XIMP Core Base API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_core_base_api/group"/>
</component>
<component name="ximp_presence_cache_api" long-name="XIMP Presence Cache API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_presence_cache_api/group"/>
</component>
<component name="ximp_core_feature_plugin_api" long-name="XIMP Core Feature Plugin API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_core_feature_plugin_api/group"/>
</component>
<component name="ximp_im_protocol_plugin_host_api" long-name="XIMP IM Protocol Plugin Host API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_im_protocol_plugin_host_api/group"/>
</component>
<component name="ximp_im_data_model_api" long-name="XIMP IM Data Model API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_im_data_model_api/group"/>
</component>
<component name="ximp_im_protocol_plugin_api" long-name="XIMP IM Protocol Plugin API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_im_protocol_plugin_api/group"/>
</component>
<component name="ximp_im_management_api" long-name="XIMP IM Management API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_im_management_api/group"/>
</component>
<component name="ximp_im_base_api" long-name="XIMP IM Base API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_im_base_api/group"/>
</component>
<component name="ximp_search_protocol_plugin_host_api" long-name="XIMP Search Protocol Plugin Host API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_search_protocol_plugin_host_api/group"/>
</component>
<component name="ximp_search_data_model_api" long-name="XIMP Search Data Model API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_search_data_model_api/group"/>
</component>
<component name="ximp_search_protocol_plugin_api" long-name="XIMP search Protocol Plugin API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_search_protocol_plugin_api/group"/>
</component>
<component name="ximp_search_management_api" long-name="XIMP Search Management API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_search_management_api/group"/>
</component>
<component name="ximp_search_base_api" long-name="XIMP Search Base API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_search_base_api/group"/>
</component>
<component name="xmpp_settings_api" long-name="XMPP Settings API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/xmpp_settings_api/group"/>
</component>
<component name="im_cache_client_api" long-name="IM Cache Client API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/im_cache_client_api/group"/>
</component>
<component name="im_cache_server_api" long-name="IM Cache Server API" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/im_cache_server_api/group"/>
</component>
<component name="presence_avabilitytext" long-name="Presence Availbility Text" filter="s60" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/presence_avabilitytext/group"/>
</component>
</collection>
<collection name="ximpfw" long-name="XIMP Framework" level="framework">
<!-- collection is really a component. Needs to be moved down a directory -->
<component name="ximpfw_build" filter="s60" long-name="XIMP Framework Build">
<unit bldFile="mw/imsrv/ximpfw/group"/>
</component>
</collection>
<collection name="imservices" long-name="IM Services" level="generic">
<component name="imfeatureplugin" filter="s60" long-name="IM Feature Plugin" introduced="^2" plugin="Y">
<unit bldFile="mw/imsrv/imservices/imfeatureplugin/group"/>
</component>
<component name="searchfeatureplugin" filter="s60" long-name="Search Feature Plugin" introduced="^2" plugin="Y">
<unit bldFile="mw/imsrv/imservices/searchfeatureplugin/group"/>
</component>
<component name="xmppsettingsapi" filter="s60" long-name="XMPP Settings API" introduced="^2">
<unit bldFile="mw/imsrv/imservices/xmppsettingsapi/group"/>
</component>
<component name="xmppsettingsfetcher" filter="s60" long-name="XMPP Settings Fetcher" introduced="^2">
<unit bldFile="mw/imsrv/imservices/xmppsettingsfetcher/group"/>
</component>
<component name="instantmessagingcache" filter="s60" long-name="Instant Messaging Cache" introduced="^2">
<unit bldFile="mw/imsrv/imservices/instantmessagingcache/group"/>
</component>
</collection>
<collection name="brandingserver" long-name="Branding Server" level="specific">
<!-- collection is really a component. Needs to be moved down a directory -->
<component name="brandingserver_build" filter="s60" long-name="Branding Server Build">
<unit bldFile="mw/imsrv/brandingserver/group"/>
</component>
</collection>
</block>
<block name="legacypresence" level="specific" long-name="Legacy Presence Services" levels="engine fw ui">
<collection name="pressrv_plat" long-name="Legacy Presence Services Platform Interfaces" level="ui">
<component name="presence_list_api" long-name="Presence List API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/presence_list_api/group"/>
</component>
<component name="watcher_info_api" long-name="Watcher Info API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/watcher_info_api/group"/>
</component>
<component name="simple_documents_api" long-name="SIMPLE Documents API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/simple_documents_api/group"/>
</component>
<component name="authorization_api" long-name="Authorization API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/authorization_api/group"/>
</component>
<component name="xdm_protocol_plugin_api" long-name="XDM Protocol Plug-in API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/xdm_protocol_plugin_api/group"/>
</component>
<component name="watcher_api" long-name="Watcher API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/watcher_api/group"/>
</component>
<component name="xdm_api" long-name="XDM API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/xdm_api/group"/>
</component>
<component name="registration_api" long-name="Registration API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/registration_api/group"/>
</component>
<component name="publisher_api" long-name="Publisher API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/publisher_api/group"/>
</component>
<component name="messaging_connection_manager_api" long-name="Messaging Connection Manager API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/messaging_connection_manager_api/group"/>
</component>
<component name="xdm_settings_api" long-name="XDM Settings API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/xdm_settings_api/group"/>
</component>
<component name="simple_settings_api" long-name="SIMPLE Settings API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/simple_settings_api/group"/>
</component>
<component name="simple_instant_msg_api" long-name="Simple Instant Msg API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/simple_instant_msg_api/group"/>
</component>
</collection>
<collection name="xdmengine" long-name="XDM Engine" level="engine">
<!-- collection is really a component. Need to move down a directory (eg xdm/xdmengine)-->
<component name="xdmengine_build" filter="s60" long-name="XDM Engine Build">
<unit bldFile="mw/legacypresence/xdmengine/group"/>
</component>
</collection>
<collection name="xdmsettingsui" long-name="XDM Settings UI" level="ui">
<!-- collection is really a component. Need to move down a directory (eg xdm/xdmsettingsui)-->
<component name="xdmsettingsui_build" filter="s60" long-name="XDM Settings UI Build">
<unit bldFile="mw/legacypresence/xdmsettingsui/group"/>
</component>
</collection>
<collection name="xdmprotocols" long-name="XDM Protocols" level="fw">
<!-- collection is really a component. Need to move down a directory (eg xdm/xdmprotocols)-->
<component name="xdmprotocols_build" filter="s60" long-name="XDM Protocols Build">
<unit bldFile="mw/legacypresence/xdmprotocols/group"/>
</component>
</collection>
<collection name="msgconnmanager" long-name="Messaging Connection Manager" level="fw">
<!-- collection is really a component. Need to move down a directory-->
<component name="msgconnmanager_build" filter="s60" long-name="Messaging Connection Manager Build">
<unit bldFile="mw/legacypresence/msgconnmanager/group"/>
</component>
</collection>
<collection name="presencesettingsui" long-name="Presence Settings UI" level="ui">
<!-- collection is really a component. Need to move down a directory-->
<component name="presencesettingsui_build" filter="s60" long-name="Presence Settings UI Build">
<unit bldFile="mw/legacypresence/presencesettingsui/group"/>
</component>
</collection>
<collection name="simpleengine" long-name="SIMPLE Engine" level="engine">
<!-- collection is really a component. Need to move down a directory-->
<component name="simpleengine_build" filter="s60" long-name="SIMPLE Engine Build">
<unit bldFile="mw/legacypresence/simpleengine/group"/>
</component>
</collection>
<collection name="presencefwsimpleadpt" long-name="Presence Framework SIMPLE Adaptation" level="fw">
<!-- collection is really a component. Need to move down a directory-->
<component name="simpleplugin" filter="s60" long-name="SIMPLE Plugin" plugin="Y">
<unit bldFile="mw/legacypresence/presencefwsimpleadpt/group"/>
</component>
</collection>
<collection name="simpledatamodeladapter" long-name="SIMPLE Data Model Adapter" level="fw">
<component name="presenceplugin" filter="s60" long-name="Presence Plugin" introduced="^2" plugin="Y">
<unit bldFile="mw/legacypresence/simpledatamodeladapter/group"/>
</component>
</collection>
</block>
<block name="remotemgmt" level="specific" long-name="Remote Management" levels="plugin framework server generic specific">
<collection name="remotemgmt_pub" long-name="Remote Management Public Interfaces" level="specific">
<component name="synchronization_capability_api" long-name="Synchronization Capability API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_pub/synchronization_capability_api/group"/>
</component>
</collection>
<collection name="remotemgmt_plat" long-name="Remote Management Platform Interfaces" level="specific">
<component name="common_agent_util_and_definitions_api" long-name="Common Agent util and definitions API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/common_agent_util_and_definitions_api/group"/>
</component>
<component name="policy_management_certificate_api" long-name="Policy Management Certificate API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/policy_management_certificate_api/group"/>
</component>
<component name="oma_provisioning_adapter_api" long-name="OMA Provisioning Adapter API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/oma_provisioning_adapter_api/group"/>
</component>
<component name="device_management_parameter_api" long-name="Device Management Parameter API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/device_management_parameter_api/group"/>
</component>
<component name="data_synchronization_plugin_api" long-name="Data Synchronization Plug-in API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/data_synchronization_plugin_api/group"/>
</component>
<component name="sync_alert_handler_api" long-name="Sync Alert Handler API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/sync_alert_handler_api/group"/>
</component>
<component name="syncml_notifier_api" long-name="SyncML Notifier API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/syncml_notifier_api/group"/>
</component>
<component name="syncml_client_api" long-name="SyncML Client API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/syncml_client_api/group"/>
</component>
<component name="device_management_plugin_api" long-name="Device Management plug-in API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/device_management_plugin_api/group"/>
</component>
<component name="dm_tree_apis" long-name="DM Tree APIs" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/dm_tree_apis/group"/>
</component>
<component name="terminal_security_device_lock_api" long-name="Terminal Security Device Lock API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/terminal_security_device_lock_api/group"/>
</component>
<component name="policy_management_request_api" long-name="Policy Management Request API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/policy_management_request_api/group"/>
</component>
<component name="ds_constant_definitions_api" long-name="DS Constant Definitions API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/ds_constant_definitions_api/group"/>
</component>
<component name="scp_server_api" long-name="SCP Server API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/scp_server_api/group"/>
</component>
<component name="data_synchronization_notification_api" long-name="Data Synchronization Notification API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/data_synchronization_notification_api/group"/>
</component>
<component name="oma_provisioning_engine_api" long-name="OMA Provisioning Engine API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/oma_provisioning_engine_api/group"/>
</component>
<component name="dm_utils_api" long-name="DM Utils API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/dm_utils_api/group"/>
</component>
<component name="syncml_alert_api" long-name="SyncML Alert API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/syncml_alert_api/group"/>
</component>
<component name="obex_client_session_api" long-name="OBEX Client session API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/obex_client_session_api/group"/>
</component>
<component name="setting_enforcement_info_api" long-name="Setting Enforcement Info API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/setting_enforcement_info_api/group"/>
</component>
<component name="dm_constant_definitions_api" long-name="DM Constant Definitions API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/dm_constant_definitions_api/group"/>
</component>
<component name="oma_ds_extensions_api" long-name="OMA DS Extensions API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/oma_ds_extensions_api/group"/>
</component>
<component name="pnpms_utils_api" long-name="PNPMS Utils API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/pnpms_utils_api/group"/>
</component>
<component name="diagnostics_plugin_utility_api" long-name="Diagnostics Plugin Utility API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/diagnostics_plugin_utility_api/group"/>
</component>
<component name="diagnostics_plugin_api" long-name="Diagnostics Plug-in API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/diagnostics_plugin_api/group"/>
</component>
<component name="diagnostics_framework_api" long-name="Diagnostics Framework API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/diagnostics_framework_api/group"/>
</component>
<component name="diagnostics_results_api" long-name="Diagnostics Results API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/diagnostics_results_api/group"/>
</component>
<component name="diagnostics_plugin_pool_api" long-name="Diagnostics Plugin Pool API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/diagnostics_plugin_pool_api/group"/>
</component>
<component name="adaptive_history_list_api" long-name="Adaptive History List API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/adaptive_history_list_api/group"/>
</component>
<component name="adaptive_history_list_session_api" long-name="Adaptive History List Session API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/adaptive_history_list_session_api/group"/>
</component>
<component name="fota_engine_api" long-name="FOTA Engine API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/fota_engine_api/group"/>
</component>
<component name="update_package_storage_plugin_api" long-name="Update Package Storage Plug-in API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/update_package_storage_plugin_api/group"/>
</component>
<component name="syncml_notifier_roaming_api" long-name="SyncML Notifier Roaming API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/syncml_notifier_roaming_api/group"/>
</component>
<component name="sync_service_api" long-name="Sync Service API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/sync_service_api/group"/>
</component>
<component name="dcmo_adapter_api" long-name="DCMO Adapter API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/dcmo_adapter_api/group"/>
</component>
<component name="dcmo_control_api" long-name="DCMO Control API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/dcmo_control_api/group"/>
</component>
<component name="ds_capability_mgmt_plugin_api" long-name="DS Capability Management Plugin API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/ds_capability_mgmt_plugin_api/group"/>
</component>
<component name="dm_native_notifier_api" long-name="DM Native Notifier API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/dm_native_notifier_api/group"/>
</component>
<component name="syncml_ds_error_reporting_api" long-name="SyncML DS Error Reporting API" filter="s60" introduced="^3" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/syncml_ds_error_reporting_api/group"/>
</component>
<component name="syncml_ds_customization_api" long-name="SyncML DS Customization API" filter="s60" introduced="^3" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/syncml_ds_customization_api/group"/>
</component>
</collection>
<collection name="policymanagement" long-name="Policy Management" level="generic">
<component name="pmdmadapter" filter="s60" long-name="PM DM Adapter" plugin="Y">
<unit bldFile="mw/remotemgmt/policymanagement/pmdmadapter/group"/>
</component>
<component name="dmutilserver" filter="s60" long-name="DM Util Server">
<unit bldFile="mw/remotemgmt/policymanagement/dmutilserver/group"/>
</component>
<component name="policyengine" filter="s60" long-name="Policy Engine">
<unit bldFile="mw/remotemgmt/policymanagement/policyengine/group"/>
</component>
<component name="policymanagement_build" filter="s60" long-name="Policy Management Build">
<!-- need to distribute exports, etc into the other components and remove this-->
<unit bldFile="mw/remotemgmt/policymanagement/group"/>
</component>
</collection>
<collection name="syncmlfw" long-name="SyncML Framework" level="server">
<component name="syncmlfw_build" filter="s60" long-name="SyncML Framework Build">
<!-- need to break this up into components. Too convoluted a structure to be in a single bld.inf-->
<unit bldFile="mw/remotemgmt/syncmlfw/group"/>
</component>
</collection>
<collection name="terminalsecurity" long-name="Terminal Security" level="specific">
<component name="scp" filter="s60" long-name="Security Code Proxy">
<!-- can only have one unit, need to have these #included from a single bld.inf -->
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/scpclient/group"/>
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/scpdatabase/group"/>
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/scpserver/group"/>
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/scppatternplugin/group"/>
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/scphistoryplugin/group"/>
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/scptimestampplugin/group"/>
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/scpeventhandler/group"/>
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/dmeventnotifier/group"/>
</component>
<component name="terminalsecurity_client" filter="s60" long-name="Terminal Control Client">
<unit bldFile="mw/remotemgmt/terminalsecurity/client/group"/>
</component>
<component name="terminalsecurity_server" filter="s60" long-name="Terminal Control Server">
<unit bldFile="mw/remotemgmt/terminalsecurity/server/group"/>
</component>
<component name="tcadapter" filter="s60" long-name="Terminal Control Adapter">
<unit bldFile="mw/remotemgmt/terminalsecurity/tcadapter/bld"/>
</component>
<component name="terminalsecurity_build" filter="s60" long-name="Terminal Security Build">
<!-- need to distribute exports, etc into the other components and remove this-->
<unit bldFile="mw/remotemgmt/terminalsecurity/group"/>
</component>
</collection>
<collection name="omaprovisioning" long-name="OMA Provisioning" level="specific">
<component name="pnputil" filter="s60" long-name="PnP Util">
<unit bldFile="mw/remotemgmt/omaprovisioning/pnputil/group"/>
</component>
<component name="provisioning" filter="s60" long-name="Provisioning">
<unit bldFile="mw/remotemgmt/omaprovisioning/provisioning/group"/>
</component>
</collection>
<collection name="devicediagnosticsfw" long-name="Device Diagnostics Framework" level="framework">
<component name="diagframework" filter="s60" long-name="Diagnostics Framework">
<unit bldFile="mw/remotemgmt/devicediagnosticsfw/diagframework/group"/>
</component>
<component name="diagpluginbase" filter="s60" long-name="Diagnostics Plugin Base">
<unit bldFile="mw/remotemgmt/devicediagnosticsfw/diagpluginbase/group"/>
</component>
<component name="diagresultsdb" filter="s60" long-name="Diagnostics Results Database">
<!-- can only have one unit, merge or split into two components -->
<unit bldFile="mw/remotemgmt/devicediagnosticsfw/diagresultsdb/client/group"/>
<unit bldFile="mw/remotemgmt/devicediagnosticsfw/diagresultsdb/server/group"/>
</component>
<component name="devicediagnosticsfw_build" filter="s60" long-name="Device Diagnostics Framework Build">
<!-- need to distribute exports, etc into the other components and remove this-->
<unit bldFile="mw/remotemgmt/devicediagnosticsfw/group"/>
</component>
</collection>
<collection name="dcmofw" long-name="Device Capability Management Object Framework" level="framework">
<component name="dcmoclient" filter="s60" long-name="DCMO Client">
<unit bldFile="mw/remotemgmt/dcmofw/dcmoclient/group"/>
</component>
<component name="dcmoserver" filter="s60" long-name="DCMO Server">
<unit bldFile="mw/remotemgmt/dcmofw/dcmoserver/group"/>
</component>
<component name="dcmocustcmd" filter="s60" long-name="DCMO Custom Commands">
<unit bldFile="mw/remotemgmt/dcmofw/dcmocustcmd/group"/>
</component>
<component name="dcmofw_build" filter="s60" long-name="DCMO Build">
<!-- need to distribute exports, etc into the other components and remove this-->
<unit bldFile="mw/remotemgmt/dcmofw/group"/>
</component>
</collection>
<collection name="fotaapplication" long-name="FOTA Application" level="generic">
<component name="fotaapplication_build" filter="s60" long-name="FOTA Application Build">
<!-- remove this component when configuration is in place and the #ifdefs have been worked out -->
<unit bldFile="mw/remotemgmt/fotaapplication/group"/>
</component>
<component name="fotaserver" filter="s60" long-name="FOTA Server">
<!-- uncomment when #ifdefs are resolved -->
<!--<unit bldFile="fotaapplication/fotaserver/group"/>-->
</component>
<component name="fotacustcmds" filter="s60" long-name="FOTA Custom Commands" class="placeholder">
<!-- uncomment when #ifdefs are resolved. Need to put a config meta here-->
<!--<unit bldFile="fotaapplication/fotaserver/fotacustcmds/group"/>-->
</component>
</collection>
</block>
<block name="remotestorage" level="generic" long-name="Remote Storage" levels="framework if">
<collection name="rsfw_plat" long-name="Remote Storage Platform Interfaces" level="if">
<component name="rsfw_access_protocol_plugin_api" filter="s60" long-name="Remote Storage Framework Access Protocol Plugin API" class="api">
<unit bldFile="mw/remotestorage/rsfw_plat/rsfw_access_protocol_plugin_api/group"/>
</component>
</collection>
<collection name="remotestoragefw" long-name="Remote Storage Framework" level="framework">
<component name="mountstore" filter="s60" long-name="RSFW Mount Store">
<unit bldFile="mw/remotestorage/remotestoragefw/mountstore/group"/>
</component>
<component name="rsfwnotifierplugins" filter="s60" long-name="RSFW Notifier Plugins" plugin="Y">
<unit bldFile="mw/remotestorage/remotestoragefw/rsfwnotifierplugins/group"/>
</component>
<component name="remotefileengine" filter="s60" long-name="Remote File Engine">
<unit bldFile="mw/remotestorage/remotestoragefw/remotefileengine/group"/>
</component>
<component name="mountmanager" filter="s60" long-name="RSFW Mount Manager">
<unit bldFile="mw/remotestorage/remotestoragefw/mountmanager/group"/>
</component>
<component name="webdavaccessplugin" filter="s60" long-name="WebDAV Access Plugin" plugin="Y">
<unit bldFile="mw/remotestorage/remotestoragefw/webdavaccessplugin/group"/>
</component>
<component name="remotefilesystemplugin" filter="s60" long-name="Remote Filesystem Plugin" plugin="Y">
<unit bldFile="mw/remotestorage/remotestoragefw/remotefilesystemplugin/group"/>
</component>
<component name="remotestoragegsplugin" filter="s60" long-name="RS GS Plugin" plugin="Y">
<!-- uncomment the unit when configuration is in place, it's currently #included from remotestoragefw_build -->
<!-- <unit bldFile="remotestoragefw/gsplugin/group"/>-->
</component>
<component name="remotedriveconfigurationbiocontrol" filter="s60" long-name="Remote Drive Configuration BIO Control">
<!-- uncomment the unit when configuration is in place, it's currently #included from remotestoragefw_build -->
<!-- <unit bldFile="remotestoragefw/remotedriveconfigurationbiocontrol/group"/>-->
</component>
<component name="remotestoragefw_build" filter="s60" long-name="Remote Storage Framework Build">
<!-- move exports to other components.
This is needed for #includes of configured component until congigiration is in place -->
<unit bldFile="mw/remotestorage/remotestoragefw/group"/>
</component>
</collection>
</block>
<block name="remoteconn" level="generic" long-name="Remote Connectivity" levels="plugin framework server generic specific">
<collection name="connectivitymodules" long-name="Connectivity Modules" level="framework">
<component name="secon" filter="s60" long-name="Service Controllers">
<unit bldFile="mw/remoteconn/connectivitymodules/secon/group"/>
</component>
</collection>
<collection name="remoteconn_info" long-name="Remote Connectivity Info" level="specific">
<component name="remoteconn_metadata" long-name="Remote Connectivity Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/remoteconn/remoteconn_info/remoteconn_metadata/remoteconn_metadata.mrp"/>
</component>
</collection>
<collection name="mtptransports" long-name="MTP Transports" level="plugin">
<component name="mtpusbtransport" long-name="MTP USB Transport" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="mw/remoteconn/mtptransports/mtpusbtransport/group" mrp="mw/remoteconn/mtptransports/mtpusbtransport/group/mtp_usbsic.mrp"/>
</component>
<component name="mtpptpiptransport" long-name="MTP PTP-IP Transport" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="mw/remoteconn/mtptransports/mtpptpiptransport/group" mrp="mw/remoteconn/mtptransports/mtpptpiptransport/group/mtp_ptpip.mrp"/>
</component>
<component name="mtpcontroller" long-name="MTP Controller" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="mw/remoteconn/mtptransports/mtpcontroller/group" mrp="mw/remoteconn/mtptransports/mtpcontroller/group/mtpcontroller.mrp"/>
</component>
</collection>
<collection name="mtpfws" long-name="MTP Frameworks" level="framework">
<component name="mtpfw" long-name="MTP Framework" introduced="^2" purpose="optional">
<unit bldFile="mw/remoteconn/mtpfws/mtpfw/group" mrp="mw/remoteconn/mtpfws/mtpfw/group/mtp_framework.mrp"/>
</component>
</collection>
<collection name="mtpdataproviders" long-name="MTP Data Providers" level="generic">
<component name="mtpfileandfolderdp" long-name="MTP File and Folder Provider" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="mw/remoteconn/mtpdataproviders/mtpfileandfolderdp/group" mrp="mw/remoteconn/mtpdataproviders/mtpfileandfolderdp/group/mtp_filedp.mrp"/>
</component>
<component name="mtpimagedp" long-name="MTP Image Data Provider" filter="gt" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="mw/remoteconn/mtpdataproviders/mtpimagedp/group" mrp="mw/remoteconn/mtpdataproviders/mtpimagedp/group/mtp_imagedp.mrp"/>
</component>
<component name="mtppictbridgedp" long-name="MTP PictBridge Data Provider" filter="gt" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="mw/remoteconn/mtpdataproviders/mtppictbridgedp/group" mrp="mw/remoteconn/mtpdataproviders/mtppictbridgedp/group/mtp_pictbridgedp.mrp"/>
</component>
</collection>
<collection name="backupandrestore" long-name="Backup and Restore" level="specific">
<component name="backupengine" long-name="Backup Engine" introduced="9.0" purpose="optional">
<unit bldFile="mw/remoteconn/backupandrestore/backupengine/group" mrp="mw/remoteconn/backupandrestore/backupengine/group/connectivity_backupengine.mrp"/>
</component>
<component name="backuptest" long-name="Backup Test" introduced="^2" purpose="development">
<unit bldFile="mw/remoteconn/backupandrestore/backuptest/group" mrp="mw/remoteconn/backupandrestore/backuptest/group/connectivity_backuptest.mrp"/>
</component>
</collection>
<collection name="obex" long-name="OBEX" level="generic">
<component name="obexprotocol" long-name="OBEX Protocol" introduced="9.1" purpose="optional">
<unit bldFile="mw/remoteconn/obex/obexprotocol/group" mrp="mw/remoteconn/obex/obexprotocol/group/obex.mrp"/>
</component>
<component name="obexextensionapi" long-name="OBEX Extension API" introduced="9.2" purpose="optional">
<unit bldFile="mw/remoteconn/obex/obexextensionapi/group" mrp="mw/remoteconn/obex/obexextensionapi/group/obex_extensionapis.mrp"/>
</component>
</collection>
</block>
<block name="srvdiscovery" level="generic" long-name="Service Discovery and Usage" levels="plugin framework server generic specific">
<collection name="upnpstack_plat" long-name="UPnP Stack Platform Interfaces" level="specific">
<component name="upnpstack_plat" long-name="UPnP Device API" purpose="optional" introduced="^3" class="api">
<unit bldFile="mw/srvdiscovery/upnp/upnpstack_plat/upnp_device_api/group"/>
</component>
<component name="upnpstack_plat" long-name="UPnP Common API" purpose="optional" introduced="^3" class="api">
<unit bldFile="mw/srvdiscovery/upnp/upnpstack_plat/upnp_common_api/group"/>
</component>
<component name="upnpstack_plat" long-name="UPnP Utils API" purpose="optional" introduced="^3" class="api">
<unit bldFile="mw/srvdiscovery/upnp/upnpstack_plat/upnp_utils_api/group"/>
</component>
<component name="upnpstack_plat" long-name="UPnP Control Point API" purpose="optional" introduced="^3" class="api">
<unit bldFile="mw/srvdiscovery/upnp/upnpstack_plat/upnp_control_point_api/group"/>
</component>
<component name="upnpstack_plat" long-name="UPnP HTTP Server API" purpose="optional" introduced="^3" class="api">
<unit bldFile="mw/srvdiscovery/upnp/upnpstack_plat/upnp_httpserver_api/group"/>
</component>
<component name="upnpstack_plat" long-name="UPnP HTTP Transfer API" purpose="optional" introduced="^3" class="api">
<unit bldFile="mw/srvdiscovery/upnp/upnpstack_plat/upnp_http_transfer_api/group"/>
</component>
</collection>
<collection name="servicediscoveryandcontrol" long-name="Service Discovery and Control" level="framework">
<component name="servicediscoveryfw" long-name="Service Discovery Framework" introduced="^3" purpose="optional">
<unit bldFile="mw/srvdiscovery/servicediscoveryandcontrol/pnp/group" mrp="mw/srvdiscovery/servicediscoveryandcontrol/pnp/group/servicediscoveryframework.mrp"/>
</component>
</collection>
<collection name="upnp" long-name="UPnP" level="server">
<component name="upnpstack" long-name="UPnP Stack" introduced="^3" purpose="optional">
<unit bldFile="mw/srvdiscovery/upnp/upnpstack/group"/>
</component>
</collection>
<collection name="srvdiscovery_info" long-name="Service Discovery and Usage Info" level="specific">
<component name="srvdiscovery_metadata" long-name="Service Discovery and Usage Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/srvdiscovery/srvdiscovery_info/srvdiscovery_metadata/srvdiscovery_metadata.mrp"/>
</component>
</collection>
</block>
<block name="dlnasrv" level="specific" long-name="DLNA Services" levels="stack server ctrl framework plugin">
<!-- uncomment all the units when configuration is in place, they're currently #included from other xxx_build components -->
<collection name="dlnasrv_plat" long-name="DLNA Services Platform Interfaces" level="plugin">
<component name="upnp_media_server_settings_api" long-name="UPnP Media Server Settings API" filter="s60" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_media_server_settings_api/group"/>
</component>
<component name="upnp_av_objects_api" long-name="UPnP A/V Objects API" filter="s60" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_av_objects_api/group"/>
</component>
<component name="upnp_media_server_api" long-name="UPnP Media Server API" filter="s60" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_media_server_api/group"/>
</component>
<component name="upnp_security_plugin_api" long-name="UPnP Security Plugin API" filter="s60" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_security_plugin_api/group"/>
</component>
<component name="upnp_avcp_api" long-name="UPnP AVCP API" filter="s60" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_avcp_api/group"/>
</component>
<component name="upnp_media_server_metadata_api" long-name="UPnP Media Server Metadata API" filter="s60" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_media_server_metadata_api/group"/>
</component>
<component name="upnp_command_api" long-name="UPnP Command API" filter="s60" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_command_api/group"/>
</component>
<component name="upnp_plugin_api" long-name="UPnP Plugin API" filter="s60" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_plugin_api/group"/>
</component>
</collection>
<collection name="upnpavcontrolpoint" long-name="UPnP A/V Control Point" level="plugin">
<component name="avcontrolframework" filter="s60" long-name="A/V Control Famework" introduced="9.1" deprecated="^3">
<unit bldFile="mw/dlnasrv/upnpavcontrolpoint/avcontrolframework/group"/>
</component>
<component name="upnpavcontrolpoint_build" filter="s60" long-name="UPnP A/V Control Point Build" introduced="9.1" deprecated="^3">
<!-- put exports in other component instead -->
<unit bldFile="mw/dlnasrv/upnpavcontrolpoint/group"/>
</component>
</collection>
<collection name="upnpmediaserver" long-name="UPnP Media Server" level="server">
<component name="avobjects" filter="s60" long-name="A/V Objects">
<unit bldFile="mw/dlnasrv/upnpmediaserver/avobjects/group"/>
</component>
<component name="mediaserverclient" filter="s60" long-name="Media Server Client">
<unit bldFile="mw/dlnasrv/upnpmediaserver/mediaserverclient/group"/>
</component>
<component name="connectionmanagerservice" filter="s60" long-name="Connection Manager Service">
<unit bldFile="mw/dlnasrv/upnpmediaserver/connectionmanagerservice/group"/>
</component>
<component name="contentdirectoryservice" filter="s60" long-name="Content Directory Service">
<unit bldFile="mw/dlnasrv/upnpmediaserver/contentdirectoryservice/group"/>
</component>
<component name="mediaserverengine" filter="s60" long-name="Media Server Engine">
<unit bldFile="mw/dlnasrv/upnpmediaserver/mediaserverengine/group"/>
</component>
<component name="upnpmediaserver_build" filter="s60" long-name="UPnP Media Server Build">
<!-- move exports into one of above components -->
<unit bldFile="mw/dlnasrv/upnpmediaserver/group"/>
</component>
</collection>
<collection name="upnpavcontroller" long-name="UPnP A/V Controller" level="ctrl">
<component name="upnpxmlparser" filter="s60" long-name="UPnP XML Parser" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpavcontroller/upnpxmlparser/group"/>
</component>
<component name="upnpavcontrollerserver" filter="s60" long-name="UPnP A/V Controller Server" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpavcontroller/upnpavcontrollerserver/group"/>
</component>
<component name="upnpavcontrollerclient" filter="s60" long-name="UPnP A/V Ccontroller Client" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpavcontroller/upnpavcontrollerclient/group"/>
</component>
<component name="upnpavcontrollerhelper" filter="s60" long-name="UPnP A/V Controller Helper" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpavcontroller/upnpavcontrollerhelper/group"/>
</component>
<component name="upnpavcontroller_build" filter="s60" long-name="UPnP A/V Controller Build" introduced="^2">
<!-- move exports content into one of above components -->
<unit bldFile="mw/dlnasrv/upnpavcontroller/group"/>
</component>
</collection>
<collection name="upnpframework" long-name="UPnP Framework" level="framework">
<component name="upnputilities" filter="s60" long-name="UPnP Utilities" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpframework/upnputilities/group"/>
</component>
<component name="upnpextensionpluginif" filter="s60" long-name="UPnP Home Media Extension Plugin Interface" introduced="^2" deprecated="^3">
<!-- <unit bldFile="upnpframework/upnpextensionpluginif/group"/> -->
</component>
<component name="upnpfiletransferengine" filter="s60" long-name="UPnP File Transfer Engine" introduced="^2" deprecated="^3">
<!-- <unit bldFile="upnpframework/upnpfiletransferengine/group"/>-->
</component>
<component name="upnpcommonui" filter="s60" long-name="UPnP Common UI" introduced="^2" deprecated="^3">
<!--<unit bldFile="upnpframework/upnpcommonui/group"/>-->
</component>
<component name="upnpaiwengine" filter="s60" long-name="UPnP AIW Engine" introduced="^2" deprecated="^3">
<!--<unit bldFile="upnpframework/upnpaiwengine/group"/> -->
</component>
<component name="upnpaiwprovider" filter="s60" long-name="UPnP AIW Provider" introduced="^2" deprecated="^3" plugin="Y">
<!--<unit bldFile="upnpframework/upnpaiwprovider/group"/>-->
</component>
<component name="upnpmusicadapter" filter="s60" long-name="UPnP Music Adapter" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpframework/upnpmusicadapter/group"/>
</component>
<component name="upnpcommand" filter="s60" long-name="UPnP Command" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpframework/upnpcommand/group"/>
</component>
<component name="upnpframework_build" filter="s60" long-name="UPnP Framework Build" introduced="^2">
<!-- move exports content into one of above components -->
<unit bldFile="mw/dlnasrv/upnpframework/group"/>
</component>
</collection>
<collection name="upnpsettings" long-name="UPnP Settings" level="framework">
<component name="upnpsettingsengine" filter="s60" long-name="UPnP Settings Engine" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpsettings/upnpsettingsengine/group"/>
</component>
<component name="multiselectionui" filter="s60" long-name="Multi-Selection UI" introduced="^2" deprecated="^3">
<!--<unit bldFile="upnpsettings/multiselectionui/group"/>-->
</component>
<component name="appwizard" filter="s60" long-name="UPnP Settings Wizard App" introduced="^2" deprecated="^3">
<!--<unit bldFile="upnpsettings/appwizard/group"/>-->
</component>
<component name="upnpsharingui" filter="s60" long-name="UPnP Sharing UI" introduced="^2" deprecated="^3">
<!--<unit bldFile="upnpsettings/upnpsharingui/group"/>-->
</component>
<component name="upnpgsplugin" filter="s60" long-name="UPnP GS Plugin" introduced="^2" plugin="Y">
<unit bldFile="mw/dlnasrv/upnpsettings/upnpgsplugin/group"/>
</component>
<component name="upnpsettings_build" filter="s60" long-name="UPnP Settings Build" introduced="^2">
<!-- move exports content into one of above components -->
<unit bldFile="mw/dlnasrv/upnpsettings/group"/>
</component>
</collection>
<collection name="upnpsharing" long-name="UPnP Sharing" level="server">
<component name="upnpdlnaprofiler" filter="s60" long-name="UPnP DLNA Profiler" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpsharing/upnpdlnaprofiler/group"/>
</component>
<component name="upnpsecurity" filter="s60" long-name="UPnP Security" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpsharing/upnpsecurity/group"/>
</component>
<component name="upnpcontentserver" filter="s60" long-name="UPnP Content Server" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpsharing/upnpcontentserver/group"/>
</component>
<component name="applicationengine" filter="s60" long-name="UPnP Application Engine" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpsharing/applicationengine/group"/>
</component>
<component name="upnpsharing_build" filter="s60" long-name="UPnP Sharing Build" introduced="^2">
<!-- move exports content into one of above components -->
<unit bldFile="mw/dlnasrv/upnpsharing/group"/>
</component>
</collection>
<collection name="upnpmpxplugins" long-name="UPnP MPX Plugins" level="plugin">
<component name="upnpplaybackplugins" filter="s60" long-name="UPnP Playback Plugins" introduced="^2" plugin="Y">
<unit bldFile="mw/dlnasrv/upnpmpxplugins/upnpplaybackplugins/group"/>
</component>
<component name="upnpmpxplugins_build" filter="s60" long-name="UPnP MPX Plugins Build" introduced="^2">
<!-- move exports content into other component? -->
<unit bldFile="mw/dlnasrv/upnpmpxplugins/group"/>
</component>
</collection>
<collection name="upnpharvester" long-name="UPnP Harvester" level="ctrl">
<component name="upnpharvester_common" filter="s60" long-name="UPnP Harvester Common" introduced="^2" deprecated="^3" class="placeholder">
<!-- need to merge or #include these to a single bld.inf -->
<!--<unit bldFile="upnpharvester/common/cmlibrary/group"/>
<unit bldFile="upnpharvester/common/cmsettings/group"/>
<unit bldFile="upnpharvester/common/cmsqlwrapper/group"/>
<unit bldFile="upnpharvester/common/dbmanager/group"/>-->
</component>
<component name="cdssync" filter="s60" long-name="CDS Sync" introduced="^2" deprecated="^3" class="placeholder">
<!-- <unit bldFile="upnpharvester/cdssync/common"/>-->
</component>
<component name="mdhserver" filter="s60" long-name="Metadata Harvester Server" introduced="^2" deprecated="^3" class="placeholder">
<!--<unit bldFile="upnpharvester/mdhserver/group"/>-->
</component>
<component name="upnpharvester_build" filter="s60" long-name="UPnP Harvester Build" introduced="^2" deprecated="^3" class="placeholder">
<!-- could just make the whole collection one component and move down a dir. Or move the exports here into the other component -->
<!--<unit bldFile="upnpharvester/group"/>-->
</component>
</collection>
<collection name="homesync" long-name="Home Sync" level="plugin">
<component name="contentmanager" filter="s60" long-name="Content Manager" introduced="^2" deprecated="^3" class="placeholder">
<!-- <unit bldFile="homesync/group"/>-->
<!-- move bld.inf into contentmanager dir -->
</component>
</collection>
<collection name="homemedia" long-name="Home Media" level="framework">
<!-- collection is really just a component. Move down a directory -->
<component name="homemedia_build" filter="s60" long-name="Home Media" introduced="^2" deprecated="^3" class="placeholder">
<!-- <unit bldFile="homemedia/group"/> -->
</component>
</collection>
<collection name="dlnasrv_info" long-name="DLNA Services Info" level="plugin">
<component name="dlnasrv_build" filter="s60" long-name="DLNA Services Build">
<!-- need to #include upnpplatformvar.hrh from each #included bld.inf, then this can be removed -->
<unit bldFile="mw/dlnasrv/group"/>
</component>
</collection>
</block>
<block name="btservices" level="generic" long-name="Bluetooth Services" levels="framework server generic specific plugin">
<collection name="btservices_pub" long-name="BT Services Public Interfaces" level="plugin">
<component name="bluetooth_power_state_api" long-name="Bluetooth Power State API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_pub/bluetooth_power_state_api/group"/>
</component>
<component name="bluetooth_notifier_api" long-name="Bluetooth Notifier API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_pub/bluetooth_notifier_api/group"/>
</component>
</collection>
<collection name="btservices_plat" long-name="BT Services Platform Interfaces" level="plugin">
<component name="bluetooth_dosserver_audio_api" long-name="Bluetooth DOS Server Audio API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_dosserver_audio_api/group"/>
</component>
<component name="bluetooth_dut_mode_api" long-name="Bluetooth DUT Mode API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_dut_mode_api/group"/>
</component>
<component name="bluetooth_engine_api" long-name="Bluetooth Engine API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_api/group"/>
</component>
<component name="bluetooth_engine_connection_management_api" long-name="Bluetooth Engine Connection Management API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_connection_management_api/group"/>
</component>
<component name="bluetooth_engine_device_management_api" long-name="Bluetooth Engine Device Management API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_device_management_api/group"/>
</component>
<component name="bluetooth_engine_discovery_api" long-name="Bluetooth Engine Discovery API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_discovery_api/group"/>
</component>
<component name="bluetooth_engine_features_api" long-name="Bluetooth Engine Features API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_features_api/group"/>
</component>
<component name="bluetooth_engine_settings_api" long-name="Bluetooth Engine Settings API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_settings_api/group"/>
</component>
<component name="bluetooth_engine_plugin_api" long-name="Bluetooth Engine Plugin API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_plugin_api/group"/>
</component>
<component name="bluetooth_local_variation_api" long-name="Bluetooth Local Variation API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_local_variation_api/group"/>
</component>
<component name="bluetooth_notifier_internal_api" long-name="Bluetooth Notifier internal API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_notifier_internal_api/group"/>
</component>
<component name="bluetooth_sap_connection_state_api" long-name="Bluetooth SAP Connection State API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_sap_connection_state_api/group"/>
</component>
<component name="bluetooth_secondary_display_notification_api" long-name="Bluetooth Secondary Display Notification API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_secondary_display_notification_api/group"/>
</component>
</collection>
<collection name="bluetoothengine" long-name="Bluetooth Engine" level="framework">
<component name="bteng" filter="s60" long-name="Bluetooth Engine">
<unit bldFile="mw/btservices/bluetoothengine/bteng/group"/>
</component>
<component name="btnotif" filter="s60" long-name="Bluetooth Notifier">
<unit bldFile="mw/btservices/bluetoothengine/btnotif/group"/>
</component>
<component name="btaudioman" filter="s60" long-name="Bluetooth Audio Manager">
<unit bldFile="mw/btservices/bluetoothengine/btaudioman/group"/>
</component>
<component name="btmac" filter="s60" long-name="Bluetooth Mono Audio Controller" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btmac/group"/>
</component>
<component name="btsac" filter="s60" long-name="Bluetooth Stereo Audio Controller" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btsac/group"/>
</component>
<component name="btaudiostreamer" filter="s60" long-name="Bluetooth Audio Streamer">
<unit bldFile="mw/btservices/bluetoothengine/btaudiostreamer/group"/>
</component>
<component name="btsap" filter="s60" long-name="Bluetooth SIM Access Profile" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btsap/group"/>
</component>
<component name="btui" filter="s60" long-name="Bluetooth UI">
<unit bldFile="mw/btservices/bluetoothengine/btui/group"/>
</component>
<component name="btpbap" filter="s60" long-name="Bluetooth Phonebook Access Profile" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btpbap/group"/>
</component>
<component name="bthid" filter="s60" long-name="Bluetooth HID">
<unit bldFile="mw/btservices/bluetoothengine/bthid/group"/>
</component>
<component name="btctrldcmoadapter" filter="s60" long-name="Bluetooth Control DCMO Adapter" introduced="^3" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btctrldcmoadapter/group"/>
</component>
</collection>
<collection name="bluetoothappprofiles" long-name="Bluetooth Application Profiles" level="plugin">
<component name="avrcp" long-name="Bluetooth AVRCP" introduced="9.1" purpose="optional">
<unit bldFile="mw/btservices/bluetoothappprofiles/avrcp" mrp="mw/btservices/bluetoothappprofiles/avrcp/bluetooth_avrcp.mrp"/>
</component>
</collection>
<collection name="atcommands" long-name="AT Commands" level="generic">
<component name="modematplugin" long-name="Modem AT Plugin" filter="s60" introduced="^4" plugin="Y">
<unit bldFile="mw/btservices/atcommands/modematplugin/group"/>
</component>
<component name="lccustomplugin" long-name="LC Custom Plugin" filter="s60" introduced="^4" plugin="Y">
<unit bldFile="mw/btservices/atcommands/lccustomplugin/group"/>
</component>
</collection>
<collection name="btservices_info" long-name="BT Services Info" level="plugin">
<component name="btservices_metadata" long-name="BT Services Metadata" introduced="^3" purpose="development" class="config PC">
<unit mrp="mw/btservices/btservices_info/btservices_metadata/btservices_metadata.mrp"/>
</component>
</collection>
</block>
<block name="usbservices" level="generic" long-name="USB Services" levels="framework server generic specific plugin">
<collection name="usbservices_plat" long-name="USB Services Platform Interfaces" level="plugin">
<component name="pictbridge_api" long-name="PictBridge API" filter="s60" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/pictbridge_api/group"/>
</component>
<component name="ptp_responder_api" long-name="PTP Responder API" filter="s60" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/ptp_responder_api/group"/>
</component>
<component name="ptp_transport_api" long-name="PTP Transport API" filter="s60" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/ptp_transport_api/group"/>
</component>
<component name="usb_device_control_plugin_api" long-name="USB Device Control Plug-in API" filter="s60" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/usb_device_control_plugin_api/group"/>
</component>
<component name="usb_notifier_api" long-name="USB Notifier API" filter="s60" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/usb_notifier_api/group"/>
</component>
<component name="usb_personality_api_header" long-name="USB Personality API" filter="s60" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/usb_personality_api_header/group"/>
</component>
<component name="usb_personality_plugin_api" long-name="USB Personality Plug-in API" filter="s60" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/usb_personality_plugin_api/group"/>
</component>
<component name="usb_secondary_display_api" long-name="USB Secondary Display API" filter="s60" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/usb_secondary_display_api/group"/>
</component>
<component name="usb_watcher_api" long-name="USB Watcher API" filter="s60" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/usb_watcher_api/group"/>
</component>
<component name="usb_watcher_info_api_header" long-name="USB Watcher Info API" filter="s60" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/usb_watcher_info_api_header/group"/>
</component>
</collection>
<collection name="usbservices_info" long-name="USB Services Info" level="plugin"/>
<collection name="usbengines" long-name="USB Engines" level="generic">
<component name="usbotgwatcher" filter="s60" long-name="USB OTG Watcher">
<unit bldFile="mw/usbservices/usbengines/usbotgwatcher/group"/>
</component>
<component name="usbwatcher" filter="s60" long-name="USB Watcher">
<unit bldFile="mw/usbservices/usbengines/usbwatcher/group"/>
</component>
<component name="usblocodplugin" filter="s60" long-name="USB Local Connectivity Domain Plugin" plugin="Y">
<unit bldFile="mw/usbservices/usbengines/usblocodplugin/group"/>
</component>
<component name="usbdevcon" filter="s60" long-name="USB Device Control">
<unit bldFile="mw/usbservices/usbengines/usbdevcon/group"/>
</component>
<component name="usbremotepersonality" filter="s60" long-name="USB Remote Personality">
<unit bldFile="mw/usbservices/usbengines/usbremotepersonality/group"/>
</component>
</collection>
<collection name="usbclasses" long-name="USB Classes" level="framework">
<component name="usbobexclasscontroller" filter="s60" long-name="USB OBEX Class Controller" plugin="Y">
<unit bldFile="mw/usbservices/usbclasses/usbobexclasscontroller/group"/>
</component>
<component name="usbbasicpersonality" filter="s60" long-name="USB Basic Personality" plugin="Y">
<unit bldFile="mw/usbservices/usbclasses/usbbasicpersonality/group"/>
</component>
<component name="usbmscpersonality" filter="s60" long-name="USB MSC Personality" plugin="Y">
<unit bldFile="mw/usbservices/usbclasses/usbmscpersonality/group"/>
</component>
<!-- commented out in bld.inf. Should this be deleted?
<component id="ptpstack" filter="s60" name="Picture Transfer Protocol Stack">
<unit bldFile="usbclasses/ptpstack/group"/>
</component>
<component id="sicdusbplugin" filter="s60" name="SICD USB Plugin" class="plugin">
<unit bldFile="usbclasses/sicdusbplugin/group"/>
</component>
<component id="ptpserver" filter="s60" name="Picture Transfer Protocol Server">
<unit bldFile="usbclasses/ptpserver/group"/>
</component>-->
<component name="pictbridgeengine" filter="s60" long-name="PictBridge Engine">
<unit bldFile="mw/usbservices/usbclasses/pictbridgeengine/group"/>
</component>
<component name="usbphoneasmodem" filter="s60" long-name="USB Phone as Modem" introduced="^3">
<unit bldFile="mw/usbservices/usbclasses/usbphoneasmodem/group"/>
</component>
</collection>
<collection name="usbuis" long-name="USB UIs" level="specific">
<component name="usbui" filter="s60" long-name="USB UI">
<unit bldFile="mw/usbservices/usbuis/usbui/group"/>
</component>
<component name="usbuinotif" filter="s60" long-name="USB UI Notifiers">
<unit bldFile="mw/usbservices/usbuis/usbuinotif/group"/>
</component>
<component name="imageprintuiprovider" filter="s60" long-name="ImagePrint UI Provider" plugin="Y">
<unit bldFile="mw/usbservices/usbuis/imageprintuiprovider/group"/>
</component>
<component name="usbimageprintui" filter="s60" long-name="ImagePrint UI">
<unit bldFile="mw/usbservices/usbuis/imageprintui/group"/>
</component>
</collection>
</block>
<block name="shortlinkconn" level="generic" long-name="Shortlink Connectivity" levels="framework server generic specific plugin">
<!-- Package is pending removal. Contents to be moved to remoteconn and btservices -->
<collection name="shortlinkconn_plat" long-name="Shortlink Connectivity Platform Interfaces" level="plugin">
<component name="obex_service_utils_api" long-name="OBEX Service Utils API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/obex_service_utils_api/group"/>
</component>
<component name="obex_service_plugin_api" long-name="OBEX Service Plugin API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/obex_service_plugin_api/group"/>
</component>
<component name="dialup_connection_status_api" long-name="Dial-up Connection Status API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/dialup_connection_status_api/group"/>
</component>
<component name="dun_secondary_display_notification_api" long-name="DUN Secondary Display Notification API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/dun_secondary_display_notification_api/group"/>
</component>
<component name="obex_secondary_display_notification_api" long-name="OBEX Secondary Display Notification API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/obex_secondary_display_notification_api/group"/>
</component>
<component name="generic_hid_api" long-name="Generic HID API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/generic_hid_api/group"/>
</component>
<component name="locod_bearer_plugin_api" long-name="Locod Bearer Plugin API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/locod_bearer_plugin_api/group"/>
</component>
<component name="usb_obexservicemanager_client_api" long-name="USB OBEX Service Manager Client API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/usb_obexservicemanager_client_api/group"/>
</component>
</collection>
<collection name="localconnectivityservice" long-name="Local Connectivity Service" level="server">
<component name="locod" long-name="Local Connectivity Daemon">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/locod/group"/>
</component>
<component name="obexserviceman" long-name="OBEX Service Managar">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/obexserviceman/group"/>
</component>
<component name="obexsendservices" long-name="OBEX Send Services">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/obexsendservices/group"/>
</component>
<component name="obexreceiveservices" long-name="OBEX Receive Services">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/obexreceiveservices/group"/>
</component>
<component name="dun" long-name="Dial Up Networking">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/dun/group"/>
</component>
<component name="lcstylustap" long-name="LC Stylus Tap Plugins" plugin="Y">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/lcstylustap/group"/>
</component>
<component name="generichid" long-name="Generic HID">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/generichid/group"/>
</component>
<component name="headset" long-name="Headset">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/headset/group"/>
</component>
</collection>
</block>
<block name="imghandling" level="specific" long-name="Image Handling" levels="lib util if">
<collection name="imagehandling_plat" long-name="Image Handling Platform Interfaces" level="if">
<component name="image_handling_library_api" long-name="Image Handling Library API" filter="s60" class="api">
<unit bldFile="mw/imghandling/imagehandling_plat/image_handling_library_api/group"/>
</component>
<component name="3gp_library_api" long-name="3GP Library API" filter="s60" class="api">
<unit bldFile="mw/imghandling/imagehandling_plat/3gp_library_api/group"/>
</component>
<component name="thumbnailmanager_api" long-name="Thumbnail Manager API" filter="s60" class="api">
<unit bldFile="mw/imghandling/imagehandling_plat/thumbnailmanager_api/group" filter="!test"/>
</component>
</collection>
<collection name="imagehandlinglib" long-name="Image Handling Library" level="lib">
<!-- collection is really a component, need to move down a directory -->
<component name="ihl" filter="s60" long-name="IHL">
<unit bldFile="mw/imghandling/imagehandlinglib/group"/>
</component>
</collection>
<collection name="imagehandlingutilities" long-name="Image Handling Utilities" level="util">
<component name="thumbnailmanager" filter="s60" long-name="Thumbnail Manager">
<unit bldFile="mw/imghandling/imagehandlingutilities/thumbnailmanager/group"/>
</component>
</collection>
</block>
<block name="metadatasrv" level="specific" long-name="Legacy Metadata Services" levels="plugin framework server generic specific">
<collection name="metadatasrv_pub" long-name="Legacy Metadata Services Public Interfaces" level="specific">
<component name="content_listing_framework_api" long-name="Content Listing Framework API" filter="s60" class="api">
<!-- Leave commented out until confguration is in use
unit bldFile="metadatasrv_pub/content_listing_framework_api/group"/>-->
</component>
<component name="media_fetch_api" long-name="Media Fetch API" filter="s60" class="api">
<unit bldFile="mw/metadatasrv/metadatasrv_pub/media_fetch_api/group"/>
</component>
<component name="metadatasrv_pub_build" long-name="Legacy Metadata Services Public Interface Build" filter="s60" class="api">
<!-- only needed for #ifdefs, remove when confguration is in use -->
<unit bldFile="mw/metadatasrv/metadatasrv_pub/group"/>
</component>
</collection>
<collection name="metadatasrv_plat" long-name="Legacy Metadata Services Platform Interfaces" level="specific">
<component name="media_fetch_implementation_api" long-name="Media Fetch Implementation API" filter="s60" class="api">
<unit bldFile="mw/metadatasrv/metadatasrv_plat/media_fetch_implementation_api/group"/>
</component>
<component name="content_listing_framework_collection_manager_api" long-name="Content Listing Framework Collection Manager API" filter="s60" class="api">
<!-- Leave commented out until confguration is in use
<unit bldFile="metadatasrv_plat/content_listing_framework_collection_manager_api/group"/>-->
</component>
<component name="content_listing_framework_extended_api" long-name="Content Listing Framework Extended API" filter="s60" class="api">
<!-- Leave commented out until confguration is in use
<unit bldFile="metadatasrv_plat/content_listing_framework_extended_api/group"/>-->
</component>
<component name="metadatasrv_plat_build" long-name="Legacy Metadata Services Platform Interface Build" filter="s60" class="api">
<!-- only needed for #ifdefs, remove when confguration is in use -->
<unit bldFile="mw/metadatasrv/metadatasrv_plat/group"/>
</component>
</collection>
<collection name="mediamanagementutilities" long-name="Media Management Utilities" level="generic">
<component name="mediafetch" filter="s60" long-name="Media Fetch">
<unit bldFile="mw/metadatasrv/mediamanagementutilities/mediafetch/group"/>
</component>
</collection>
</block>
<block name="mds" level="specific" long-name="Metadata Services" levels="mgr eng server int">
<collection name="mds_plat" long-name="Metadata Services Platform Interfaces" level="int">
<component name="context_engine_plugin_api" long-name="Context Engine Plugin API" introduced="^2" filter="s60" class="api">
<unit bldFile="mw/mds/mds_plat/context_engine_plugin_api/group" filter="!test"/>
</component>
<component name="harvester_framework_api" long-name="Harvester Framework API" introduced="^2" filter="s60" class="api">
<unit bldFile="mw/mds/mds_plat/harvester_framework_api/group" filter="!test"/>
<!-- can only have one unit with the same filter, #include the following from the previous unit -->
</component>
<component name="location_manager_api" long-name="Location Manager API" introduced="^2" filter="s60" class="api">
<unit bldFile="mw/mds/mds_plat/location_manager_api/group" filter="!test"/>
</component>
<component name="metadata_engine_api" long-name="Metadata Engine API" introduced="^2" filter="s60" class="api">
<unit bldFile="mw/mds/mds_plat/metadata_engine_api/group" filter="!test"/>
</component>
<component name="content_listing_framework_collection_manager_api" long-name="Content Listing Framework Collection Manager API" introduced="^2" filter="s60" class="api">
<unit bldFile="mw/mds/mds_plat/content_listing_framework_collection_manager_api/group" filter="!test"/>
</component>
<component name="content_listing_framework_extended_api" long-name="Content Listing Framework Extended API" introduced="^2" filter="s60" class="api">
<unit bldFile="mw/mds/mds_plat/content_listing_framework_extended_api/group"/>
</component>
</collection>
<collection name="mds_pub" long-name="Metadata Services Public Interfaces" level="int">
<component name="content_listing_framework_api" long-name="Content Listing Framework API" introduced="^2" filter="s60" class="api">
<unit bldFile="mw/mds/mds_pub/content_listing_framework_api/group" filter="!test"/>
</component>
</collection>
<collection name="metadataengine" long-name="Metadata Engine" level="eng">
<component name="metadataengine_common" filter="s60" long-name="Metadata Engine Common" introduced="^2">
<unit bldFile="mw/mds/metadataengine/common/group"/>
</component>
<component name="metadataengine_server" filter="s60" long-name="Metadata Engine Server" introduced="^2">
<unit bldFile="mw/mds/metadataengine/server/group"/>
</component>
<component name="metadataengine_client" filter="s60" long-name="Metadata Engine Client" introduced="^2">
<unit bldFile="mw/mds/metadataengine/client/group"/>
</component>
<component name="metadataengine_build" filter="s60" long-name="Metadata Engine Build" introduced="^2">
<!--make this collection a single component, or split this bld.inf into the other units -->
<unit bldFile="mw/mds/metadataengine/group"/>
</component>
</collection>
<collection name="locationmanager" long-name="Location Manager" level="mgr">
<component name="locationtrail" filter="s60" long-name="Location Trail" introduced="^2">
<unit bldFile="mw/mds/locationmanager/locationtrail/group"/>
</component>
<component name="locationmanager_server" filter="s60" long-name="Location Manager Server" introduced="^2">
<unit bldFile="mw/mds/locationmanager/server/group"/>
</component>
<component name="locationmanager_client" filter="s60" long-name="Location Manager Client" introduced="^2">
<unit bldFile="mw/mds/locationmanager/client/group"/>
</component>
<component name="locationmanager_build" filter="s60" long-name="Location Manager Build" introduced="^2">
<!--make this collection a single component, or split this bld.inf into the other units -->
<unit bldFile="mw/mds/locationmanager/group"/>
</component>
</collection>
<collection name="contextengine" long-name="Context Engine" level="eng">
<component name="contextengine_plugins" filter="s60" long-name="Context Engine Plugins" introduced="^2" plugin="Y">
<unit bldFile="mw/mds/contextengine/plugins/group"/>
</component>
<component name="contextengine_build" filter="s60" long-name="Context Engine Build" introduced="^2">
<!--make this collection a single component, or make this unit self-contained -->
<unit bldFile="mw/mds/contextengine/group"/>
</component>
</collection>
<collection name="harvester" long-name="Harvester" level="eng">
<component name="blacklistclient" filter="s60" long-name="Blacklist Client" introduced="^2">
<unit bldFile="mw/mds/harvester/blacklistclient/group"/>
</component>
<component name="blacklistserver" filter="s60" long-name="Blacklist Server" introduced="^2">
<unit bldFile="mw/mds/harvester/blacklistserver/group"/>
</component>
<component name="harvester_common" filter="s60" long-name="Harvester Common" introduced="^2">
<unit bldFile="mw/mds/harvester/common/group"/>
</component>
<component name="composerplugins" filter="s60" long-name="Composer Plugins" introduced="^2" plugin="Y">
<unit bldFile="mw/mds/harvester/composerplugins/group"/>
</component>
<component name="harvesterplugins" filter="s60" long-name="Harvester Plugins" introduced="^2" plugin="Y">
<unit bldFile="mw/mds/harvester/harvesterplugins/group"/>
</component>
<component name="monitorplugins" filter="s60" long-name="Monitor Plugins" introduced="^2" plugin="Y">
<unit bldFile="mw/mds/harvester/monitorplugins/group"/>
</component>
<component name="harvester_server" filter="s60" long-name="Harvester Server" introduced="^2">
<unit bldFile="mw/mds/harvester/server/group"/>
</component>
<component name="harvester_client" filter="s60" long-name="Harvester Client" introduced="^2">
<unit bldFile="mw/mds/harvester/client/group"/>
</component>
<component name="harvester_build" filter="s60" long-name="Harvester Build" introduced="^2">
<!-- split these exports into the other components -->
<unit bldFile="mw/mds/harvester/group"/>
</component>
</collection>
<collection name="watchdog" long-name="Watchdog" level="server">
<!-- collection is really a component. Move down a directory -->
<component name="mdswatchdog" filter="s60" long-name="Metadata Watchdog" introduced="^2">
<unit bldFile="mw/mds/watchdog/group"/>
</component>
</collection>
<collection name="clfwrapper" long-name="Content Listing Framework Wrapper" level="int">
<!-- collection is really a component. Move down a directory -->
<component name="clfwrapper_build" filter="s60" long-name="CLF Wrapper Build" introduced="^2" class="placeholder">
<!-- Uncomment unit when configuration is in place. Currently #included from mds_build -->
<!--<unit bldFile="clfwrapper/group"/>-->
</component>
</collection>
<collection name="mds_info" long-name="Metadata Services Info" level="int">
<component name="mds_build" filter="s60" long-name="Metadata Services Build" introduced="^2">
<!-- consider distributiing this into the rest of the components in the package -->
<unit bldFile="mw/mds/group"/>
</component>
</collection>
</block>
<block name="mmuifw" level="specific" long-name="Multimedia UI Framework" levels="mgr mdl util ui api">
<collection name="mmuifw_plat" long-name="Multimedia UI Framework Platform Interfaces" level="api">
<component name="alf_widgetfactory_api" long-name="ALF Widget Factory API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/alf_widgetfactory_api/group"/>
</component>
<component name="alf_widgetutils_api" long-name="ALF Widget Utils API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/alf_widgetutils_api/group"/>
</component>
<component name="alf_widgetmodel_api" long-name="ALF Widget Model API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/alf_widgetmodel_api/group"/>
</component>
<component name="osn_container_api" long-name="OSN Container API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/osn_container_api/group"/>
</component>
<component name="osn_global_api" long-name="OSN Global API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/osn_global_api/group"/>
</component>
<component name="osn_string_api" long-name="OSN String API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/osn_string_api/group"/>
</component>
<component name="alf_resourcepool_api" long-name="ALF Resource Pool API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/alf_resourcepool_api/group"/>
</component>
<component name="alf_containerwidget_api" long-name="ALF Container Widget API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/alf_containerwidget_api/group"/>
</component>
<component name="alf_viewwidget_api" long-name="ALF View Widget API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/alf_viewwidget_api/group"/>
</component>
<component name="alf_scrollbarwidget_api" long-name="ALF Scrollbar Widget API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/alf_scrollbarwidget_api/group"/>
</component>
<component name="alf_customlayoutmanagers_api" long-name="ALF Custom Layout Managers API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/alf_customlayoutmanagers_api/group"/>
</component>
<component name="gesturehelper_api" long-name="Gesture Helper API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/gesturehelper_api/group"/>
</component>
<component name="mul_coverflowwidget_api" long-name="MUL Coverflow Widget API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/mul_coverflowwidget_api/group"/>
</component>
<component name="mul_datamodel_api" long-name="MUL Data Model API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/mul_datamodel_api/group"/>
</component>
<component name="mul_sliderwidget_api" long-name="MUL Slider Widget API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/mul_sliderwidget_api/group"/>
</component>
<component name="mul_widget_api" long-name="MUL Widget API" filter="s60" class="api">
<unit bldFile="mw/mmuifw/mmuifw_plat/mul_widget_api/group"/>
</component>
</collection>
<collection name="mmuifw_info" long-name="Multimedia UI Framework Info" level="ui">
<component name="mmuifw_build" filter="s60" long-name="Multimedia UI Framework Build">
<!-- Move exports into other componetns or remove all #includes and make this a ROM component -->
<unit bldFile="mw/mmuifw/group"/>
</component>
</collection>
<collection name="osncore" long-name="OS Neutral Library Core" level="util">
<!-- collection is really a component. Move down a directory -->
<component name="osncore_build" filter="s60" long-name="OSN Core Build">
<unit bldFile="mw/mmuifw/osncore/group"/>
</component>
</collection>
<collection name="alfwidgetutils" long-name="Accelerated LAF Widget Utils" level="ui">
<!-- collection is really a component. Move down a directory -->
<component name="alfwidgetutils_build" filter="s60" long-name="ALF Widget Utils">
<unit bldFile="mw/mmuifw/alfwidgetutils/group"/>
</component>
</collection>
<collection name="resourcepool" long-name="Resource Pool" level="util">
<!-- collection is really a component. Move down a directory -->
<component name="alfresourcepool" filter="s60" long-name="ALF Resource Pool">
<unit bldFile="mw/mmuifw/resourcepool/group"/>
</component>
</collection>
<collection name="widgetmodel" long-name="Widget Model" level="mdl">
<!-- collection is really a component. Move down a directory -->
<component name="widgetmodel_build" filter="s60" long-name="Widget Model Build">
<unit bldFile="mw/mmuifw/widgetmodel/group"/>
</component>
</collection>
<collection name="mulwidgets" long-name="MUL Widgets" level="ui">
<!-- should spell out MUL in the collection name -->
<component name="mullogging" filter="s60" long-name="MUL Logging">
<unit bldFile="mw/mmuifw/mulwidgets/mullogging/group"/>
</component>
<component name="muldatamodel" filter="s60" long-name="MUL Data Model">
<unit bldFile="mw/mmuifw/mulwidgets/muldatamodel/group"/>
</component>
<component name="mulwidgets_common" filter="s60" long-name="MUL Common Utils">
<unit bldFile="mw/mmuifw/mulwidgets/common/group"/>
</component>
<component name="gesturehelper" filter="s60" long-name="Gesture Helper">
<unit bldFile="mw/mmuifw/mulwidgets/gesturehelper/group"/>
</component>
<component name="mulcoverflowwidget" filter="s60" long-name="MUL CoverFlow Widget">
<unit bldFile="mw/mmuifw/mulwidgets/mulcoverflowwidget/group"/>
</component>
<component name="mulsliderwidget" filter="s60" long-name="MUL Slider Widget">
<unit bldFile="mw/mmuifw/mulwidgets/mulsliderwidget/group"/>
</component>
<component name="alfviewwidget" filter="s60" long-name="ALF View Widget">
<unit bldFile="mw/mmuifw/mulwidgets/alfviewwidget/group"/>
</component>
<component name="alfcontainerwidget" filter="s60" long-name="ALF Container Widget">
<unit bldFile="mw/mmuifw/mulwidgets/alfcontainerwidget/group"/>
</component>
<component name="alfscrollbarwidget" filter="s60" long-name="ALF Scrollbar Widget">
<unit bldFile="mw/mmuifw/mulwidgets/alfscrollbarwidget/group"/>
</component>
</collection>
</block>
<block name="videoutils" level="specific" long-name="Video Utils" levels="eng util if">
<collection name="videoutils_plat" long-name="Video Utils Platform Interfaces" level="if">
<component name="videoscheduler_api" long-name="Video Scheduler API" filter="s60" class="api">
<unit bldFile="mw/videoutils/videoutils_plat/videoscheduler_api/group"/>
</component>
<component name="videoconnutility_api" long-name="Video Connection Utility API" filter="s60" class="api">
<unit bldFile="mw/videoutils/videoutils_plat/videoconnutility_api/group"/>
</component>
<component name="videoplayer_constants_api" long-name="Videoplayer Constants API" filter="s60" class="api">
<unit bldFile="mw/videoutils/videoutils_plat/videoplayer_constants_api/group"/>
</component>
</collection>
<collection name="videoscheduler" long-name="Video Scheduler" level="util">
<component name="schedulerclient" filter="s60" long-name="Video Scheduler Client">
<unit bldFile="mw/videoutils/videoscheduler/schedulerclient/group"/>
</component>
<component name="schedulerserver" filter="s60" long-name="Video Scheduler Server">
<unit bldFile="mw/videoutils/videoscheduler/schedulerserver/group"/>
</component>
</collection>
<collection name="videoconnutility" long-name="Video Connection Utility" level="util">
<component name="connutilpsworker" filter="s60" long-name="Connection Utility Publish and Subscribe Worker">
<unit bldFile="mw/videoutils/videoconnutility/connutilpsworker/group"/>
</component>
<component name="video_connutility" filter="s60" long-name="Video Connection Utility">
<unit bldFile="mw/videoutils/videoconnutility/connutility/group"/>
</component>
</collection>
<collection name="videoutils_info" long-name="Video Utils Info" level="if"/>
</block>
<block name="mmmw" level="generic" long-name="Multimedia Middleware" levels="plugin framework server generic specific">
<collection name="mmmw_plat" long-name="Multimedia Middleware Platform Interfaces" level="specific">
<component name="multimedia_data_source_api" long-name="Multimedia Data Source API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/multimedia_data_source_api/group"/>
</component>
<component name="progressive_download_api" long-name="Progressive Download API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/progressive_download_api/group"/>
</component>
<component name="equalizer_ui_api" long-name="Equalizer UI API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/equalizer_ui_api/group"/>
</component>
<component name="enhanced_media_client_api" long-name="Enhanced Media Client API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/enhanced_media_client_api/group"/>
</component>
<component name="stream_control_custom_command_api" long-name="Stream Control Custom Command API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/stream_control_custom_command_api/group"/>
</component>
<component name="emc_buffer_source_api" long-name="EMC Buffer Source API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_buffer_source_api/group"/>
</component>
<component name="emc_file_source_api" long-name="EMC File Source API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_file_source_api/group"/>
</component>
<component name="audio_metadata_reader_api" long-name="Audio MetaData Reader API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/audio_metadata_reader_api/group"/>
</component>
<component name="emc_progressive_download_source_api" long-name="EMC Progressive Download Source API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_progressive_download_source_api/group"/>
</component>
<component name="emc_volume_effect_api" long-name="EMC Volume Effect API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_volume_effect_api/group"/>
</component>
<component name="emc_balance_effect_api" long-name="EMC Balance Effect API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_balance_effect_api/group"/>
</component>
<component name="emc_descriptor_source_api" long-name="EMC Descriptor Source API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_descriptor_source_api/group"/>
</component>
<component name="emc_drm_config_intfc_api" long-name="EMC DRM Config Intfc API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_drm_config_intfc_api/group"/>
</component>
<component name="voip_audio_services_api" long-name="VoIP Audio Services" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/voip_audio_services_api/group"/>
</component>
<component name="configuration_components_factory_api" long-name="Configuration Components Factory API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/configuration_components_factory_api/group"/>
</component>
<component name="audio_output_control_utility_api" long-name="Audio Output Control Utility API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/audio_output_control_utility_api/group"/>
</component>
<component name="audio_output_control_utility_proxy_api" long-name="Audio Output Control Utility Proxy API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/audio_output_control_utility_proxy_api/group"/>
</component>
<component name="emc_audio_effects_api" long-name="EMC Audio Effects API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_audio_effects_api/group"/>
</component>
<component name="call_audio_control_api" long-name="Call AudioControl API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/call_audio_control_api/group"/>
</component>
<component name="radio_utilities_api" long-name="Radio Utilities API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/radio_utilities_api/group"/>
</component>
<component name="radio_preset_utilities_api" long-name="Radio Preset Utilities API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/radio_preset_utilities_api/group"/>
</component>
<component name="radio_monitor_api" long-name="Radio Monitor API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/radio_monitor_api/group"/>
</component>
<component name="thumbnail_engine_api" long-name="Thumbnail Engine API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/thumbnail_engine_api/group"/>
</component>
<component name="telephony_multimedia_service_api" long-name="Telephony Multimedia Service API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/telephony_multimedia_service_api/group" filter="!test"/>
</component>
</collection>
<collection name="mmfenh" long-name="MMF Enhancements" level="generic">
<component name="advancedaudiocontroller" filter="s60" long-name="Advanced Audio Controllers" plugin="Y">
<unit bldFile="mw/mmmw/mmfenh/advancedaudiocontroller/group"/>
</component>
<component name="audiooutputcontrolutility" filter="s60" long-name="Audio Output Control Utility">
<unit bldFile="mw/mmmw/mmfenh/audiooutputcontrolutility/group"/>
</component>
<component name="configurationcomponentsfactory" filter="s60" long-name="Configuration Components Factory">
<unit bldFile="mw/mmmw/mmfenh/configurationcomponentsfactory/group"/>
</component>
<component name="enhancedaudioplayerutility" filter="s60" long-name="Enhanced Audio Player Utility">
<unit bldFile="mw/mmmw/mmfenh/enhancedaudioplayerutility/group"/>
</component>
<component name="enhancedmediaclient" filter="s60" long-name="Enhanced Media Client">
<unit bldFile="mw/mmmw/mmfenh/enhancedmediaclient/group"/>
</component>
<component name="profilesettingsmonitor" filter="s60" long-name="Profile Settings Monitor">
<unit bldFile="mw/mmmw/mmfenh/profilesettingsmonitor/group"/>
</component>
<component name="progressivedownload" filter="s60" long-name="Progressive Download">
<unit bldFile="mw/mmmw/mmfenh/progressivedownload/group"/>
</component>
</collection>
<collection name="mm_fw" long-name="Multimedia Frameworks" level="framework">
<!-- Id needs to be unique, mmfw already in use -->
<!-- Placeholder for OpenAX AL and other stuff -->
</collection>
<collection name="mmserv" long-name="Multimedia Services" level="specific">
<component name="audioeffectsui" filter="s60" long-name="Audio Effects UI">
<unit bldFile="mw/mmmw/mmserv/audioeffectsui/group"/>
</component>
<component name="callaudiocontrol" filter="s60" long-name="Call Audio Control">
<unit bldFile="mw/mmmw/mmserv/callaudiocontrol/group"/>
</component>
<component name="metadatautility" filter="s60" long-name="Metadata Utility">
<unit bldFile="mw/mmmw/mmserv/metadatautility/group"/>
</component>
<component name="radioutility" filter="s60" long-name="Radio Utility">
<unit bldFile="mw/mmmw/mmserv/radioutility/group"/>
</component>
<component name="thumbnailengine" filter="s60" long-name="Thumbnail Engine" introduced="^2">
<unit bldFile="mw/mmmw/mmserv/thumbnailengine/group"/>
</component>
<component name="tms" filter="s60" long-name="Telephony Multimedia Service" introduced="^3">
<unit bldFile="mw/mmmw/mmserv/tms/group"/>
</component>
<component name="voipaudioservices" filter="s60" long-name="VoIP Audio Services">
<unit bldFile="mw/mmmw/mmserv/voipaudioservices/group"/>
</component>
<component name="lib3gpextparser" filter="s60" long-name="3GP Extension Metadata Parser Library">
<unit bldFile="mw/mmmw/mmserv/metadatautility/3GPExtParserLib_stub/group" filter="sf_build"/>
</component>
</collection>
<collection name="mmmw_info" long-name="Multimedia Middleware Info" level="specific">
<component name="mmmw_metadata" long-name="Multimedia Middleware Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/mmmw/mmmw_info/mmmw_metadata/mmmw_metadata.mrp"/>
</component>
</collection>
</block>
<block name="helix" level="generic" long-name="Helix" levels="plugin framework server generic specific">
<collection name="helix_ren" long-name="Helix Engine" level="framework">
<!-- what does "ren" stand for? -->
<component name="helix_stub" filter="s60" long-name="Helix Stub" introduced="^2" class="api">
<unit bldFile="mw/helix/helix_ren/helix_stub/group"/>
</component>
</collection>
</block>
<block name="camerasrv" level="specific" long-name="Camera Services" levels="plugin fw api">
<collection name="camerasrv_plat" long-name="Camera Services Platform Interfaces" level="api">
<component name="media_recorder_sink_api" long-name="Media Recorder Sink API" filter="s60" class="api">
<unit bldFile="mw/camerasrv/camerasrv_plat/media_recorder_sink_api/group"/>
</component>
<component name="cae_extentension_api" long-name="CAE Extension API" filter="s60" class="api">
<unit bldFile="mw/camerasrv/camerasrv_plat/cae_extentension_api/group"/>
</component>
<component name="camera_application_engine_api" long-name="Camera Application Engine API" filter="s60" class="api">
<unit bldFile="mw/camerasrv/camerasrv_plat/camera_application_engine_api/group" filter="!test"/>
</component>
<component name="custom_onboard_camera_api" long-name="Custom Onboard Camera API" filter="s60" class="api">
<unit bldFile="mw/camerasrv/camerasrv_plat/custom_onboard_camera_api/group"/>
</component>
<component name="imaging_configuration_manager_api" long-name="Imaging Configuration Manager API" filter="s60" class="api">
<unit bldFile="mw/camerasrv/camerasrv_plat/imaging_configuration_manager_api/group" filter="!test"/>
</component>
<component name="media_recorder_api" long-name="Media Recorder API" filter="s60" class="api">
<unit bldFile="mw/camerasrv/camerasrv_plat/media_recorder_api/group" filter="!test"/>
</component>
<component name="3gp_file_composer_api" long-name="3GP File Composer API" filter="s60" class="api">
<unit bldFile="mw/camerasrv/camerasrv_plat/3gp_file_composer_api/group"/>
</component>
<component name="asynchronous_file_saving_queue_api" long-name="Asynchronous File Saving Queue API" filter="s60" class="api">
<unit bldFile="mw/camerasrv/camerasrv_plat/asynchronous_file_saving_queue_api/group" filter="!test"/>
</component>
</collection>
<collection name="camappengine" long-name="Camera App Engine" level="fw">
<!-- is this collection really a component? If so, move down a directory -->
<component name="stillconverter" filter="s60" long-name="Still Image Converter" class="placeholder">
<!-- should separate this from parent engine's bld.inf -->
<!-- <unit bldFile="camappengine/stillconverter/group"/> -->
</component>
<component name="camappengine_engine" filter="s60" long-name="Camera App Engine" class="placeholder">
<!-- should separate this from parent engine's bld.inf -->
<!-- <unit bldFile="camappengine/engine/group"/> -->
</component>
<component name="asynchfilesavequeue" filter="s60" long-name="Asynch File Save Queue">
<unit bldFile="mw/camerasrv/camappengine/asynchfilesavequeue/group"/>
</component>
<component name="camappengine_build" filter="s60" long-name="Camera App Engine Build">
<unit bldFile="mw/camerasrv/camappengine/build"/>
</component>
</collection>
<collection name="camcordermmfplugin" long-name="Camcorder MMF Plugin" level="plugin">
<!-- collection is really a component. Should move down a directory -->
<component name="camcordermmfplugin_build" filter="s60" long-name="Camcorder MMF Plugin Build" plugin="Y">
<unit bldFile="mw/camerasrv/camcordermmfplugin/build"/>
</component>
</collection>
<collection name="configmanagers" long-name="Config Managers" level="api">
<component name="imagingconfigmanager" filter="s60" long-name="Imaging Config Manager">
<unit bldFile="mw/camerasrv/configmanagers/imagingconfigmanager/group"/>
</component>
</collection>
<collection name="camerasrv_info" long-name="Camera Services Info" level="api">
<component name="camerasrv_build" filter="s60" long-name="Camera Services Build">
<!-- should split into individual bld.infs -->
<unit bldFile="mw/camerasrv/group"/>
</component>
</collection>
</block>
<block name="mmappfw" level="specific" long-name="Multimedia App Framework" levels="fw utils if">
<collection name="mmappfw_plat" long-name="Multimedia App Framework Platform Interfaces" level="if">
<component name="collection_helper_api" long-name="Collection Helper API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/collection_helper_api/group"/>
</component>
<component name="harvester_collection_mediator_api" long-name="Harvester Collection Mediator API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/harvester_collection_mediator_api/group"/>
</component>
<component name="harvester_metadata_extractor_api" long-name="Harvester Metadata Extractor API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/harvester_metadata_extractor_api/group"/>
</component>
<component name="harvester_server_api" long-name="Harvester Server API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/harvester_server_api/group"/>
</component>
<component name="harvester_utility_api" long-name="Harvester Utility API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/harvester_utility_api/group"/>
</component>
<component name="playlist_engine_api" long-name="Playlist Engine API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/playlist_engine_api/group"/>
</component>
<component name="mtp_keys_api" long-name="MTP Keys API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mtp_keys_api/group"/>
</component>
<component name="mpx_collection_common_definition_api" long-name="MPX Collection Common Definition API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_collection_common_definition_api/group"/>
</component>
<component name="mpx_collection_utility_api" long-name="MPX Collection Utility API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_collection_utility_api/group"/>
</component>
<component name="mpx_common_api" long-name="MPX Common API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_common_api/group"/>
</component>
<component name="mpx_common_definition_api" long-name="MPX Common Definition API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_common_definition_api/group"/>
</component>
<component name="mpx_playback_common_definition_api" long-name="MPX Playback Common Definition API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_playback_common_definition_api/group"/>
</component>
<component name="mpx_playback_utility_api" long-name="MPX Playback Utility API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_playback_utility_api/group"/>
</component>
<component name="mpx_base_view_plugins_api" long-name="MPX Base View Plugins API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_base_view_plugins_api/group"/>
</component>
<component name="mpx_view_utility_api" long-name="MPX View Utility API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_view_utility_api/group"/>
</component>
<component name="mpx_albumart_utility_api" long-name="MPX Album Art Utility API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_albumart_utility_api/group"/>
</component>
<component name="media_player_settings_engine_api" long-name="Media Player Settings Engine API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/media_player_settings_engine_api/group"/>
</component>
<component name="mpx_backstepping_utility_api" long-name="MPX Backstepping Utility API" introduced="^1" filter="s60" class="api">
<!-- uncomment when configuration is put in place
<unit bldFile="mmappfw_plat/mpx_backstepping_utility_api/group"/> -->
</component>
<component name="asx_parser_api" long-name="ASX Parser API" introduced="^1" filter="s60" class="api">
<!-- uncomment when configuration is put in place
<unit bldFile="mmappfw_plat/asx_parser_api/group"/> -->
</component>
<component name="playback_helper_api" long-name="Playback Helper API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/playback_helper_api/group"/>
</component>
<component name="videoplaylist_utility_api" long-name="Video Playlist Utility API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/videoplaylist_utility_api/group"/>
</component>
<component name="mmappfw_plat_build" long-name="Multimedia App Framework Platform Interface Build" introduced="^1" filter="s60" class="api">
<!-- needed only for #ifdefs. Remove anmd uncomment above units when configuration is in place -->
<unit bldFile="mw/mmappfw/mmappfw_plat/group"/>
</component>
</collection>
<collection name="mpx" long-name="Multimedia Player" level="fw">
<component name="commonframework" filter="s60" long-name="MPX Common Framework" introduced="^1">
<unit bldFile="mw/mmappfw/mpx/commonframework/group"/>
</component>
<component name="playbackframework" filter="s60" long-name="MPX Playback Framework" introduced="^1">
<unit bldFile="mw/mmappfw/mpx/playbackframework/group"/>
</component>
<component name="mpxcollectionfw" filter="s60" long-name="MPX Collection Framework" introduced="^1">
<unit bldFile="mw/mmappfw/mpx/collectionframework/group"/>
</component>
<component name="mpxviewfw" filter="s60" long-name="MPX View Framework" introduced="^1">
<unit bldFile="mw/mmappfw/mpx/viewframework/group"/>
</component>
<component name="mpx_build" filter="s60" long-name="MPX Build" introduced="^1">
<!-- Move the export to another component or remove the #includes from this one -->
<unit bldFile="mw/mmappfw/mpx/group"/>
</component>
</collection>
<collection name="mmappcomponents" long-name="Multimedia App Components" level="utils">
<component name="mmappcomponents_build" filter="s60" long-name="Multimedia App Components Build" introduced="^1">
<!-- needed for #ifdefs and hrh include. Need to #include the .hrh file in each bld.inf
Can remove this once configuration is in place-->
<unit bldFile="mw/mmappfw/mmappcomponents/group"/>
</component>
<component name="collectionhelper" filter="s60" long-name="Media Player Collection Helper" introduced="^1">
<unit bldFile="mw/mmappfw/mmappcomponents/collectionhelper/group"/>
</component>
<component name="playlistengine" filter="s60" long-name="Playlist Engine" introduced="^1">
<unit bldFile="mw/mmappfw/mmappcomponents/playlistengine/group"/>
</component>
<component name="mpxharvester" filter="s60" long-name="Media Player Harvester" introduced="^1">
<unit bldFile="mw/mmappfw/mmappcomponents/harvester/group"/>
</component>
<component name="mmappcommonui" filter="s60" long-name="Multimedia App Common UI" introduced="^1">
<unit bldFile="mw/mmappfw/mmappcomponents/mmappcommonui/group"/>
</component>
<component name="mediaplayersettingsengine" filter="s60" long-name="Media Player Settings Engine" introduced="^1">
<unit bldFile="mw/mmappfw/mmappcomponents/mediaplayersettingsengine/group"/>
</component>
<component name="audiofetcher" filter="s60" long-name="Audio Fetcher" introduced="^1" plugin="Y">
<!-- uncomment when config is in place, currently #included in mmappcomponents_build -->
<!-- <unit bldFile="mmappcomponents/audiofetcher/group"/>-->
</component>
<component name="asxparser" filter="s60" long-name="ASX Parser" introduced="^1">
<!-- uncomment when config is in place, currently #included in mmappcomponents_build -->
<!-- <unit bldFile="mmappcomponents/asxparser/group"/>-->
</component>
<component name="playbackhelper" filter="s60" long-name="Playback Helper" introduced="^3">
<unit bldFile="mw/mmappfw/mmappcomponents/playbackhelper/group"/>
</component>
<component name="videoplaylistutility" filter="s60" long-name="Video Playlist Utility" introduced="^3">
<unit bldFile="mw/mmappfw/mmappcomponents/videoplaylistutility/group"/>
</component>
<component name="mmmtpdataprovider" filter="s60" long-name="Multimedia MTP Data Provider" introduced="^3">
<unit bldFile="mw/mmappfw/mmappcomponents/mmmtpdataprovider/group"/>
</component>
</collection>
<collection name="mmappfw_info" long-name="Multimedia App Framework Info" level="if">
<component name="mmappfw_build" filter="s60" long-name="Multimedia App Framework Build" introduced="^1">
<!-- Move the export to another component or remove the #includes from this one -->
<unit bldFile="mw/mmappfw/group"/>
</component>
<component name="mmappfw_test" filter="s60,test,api_test,pref_test" long-name="Multimedia App Framework Test" purpose="development" introduced="^1"/>
</collection>
</block>
<block name="inputmethods" level="generic" long-name="Input Methods" levels="plugin engine framework api">
<collection name="inputmethods_pub" long-name="Input Methods Public Interfaces" level="api">
<component name="ptiengine_iti_api" long-name="PTI Engine API" filter="s60" class="api">
<unit bldFile="mw/inputmethods/inputmethods_pub/ptiengine_iti_api/group"/>
</component>
<component name="optical_character_recognition_api" long-name="Optical Character Recognition API" filter="s60" class="api">
<unit bldFile="mw/inputmethods/inputmethods_pub/optical_character_recognition_api/group"/>
</component>
<component name="input_language_info_api" long-name="Input Language Info API" filter="s60" class="api">
<unit bldFile="mw/inputmethods/inputmethods_pub/input_language_info_api/group"/>
</component>
</collection>
<collection name="inputmethods_plat" long-name="Input Methods Platform Interfaces" level="api">
<component name="pen_input_server_api" long-name="Pen Input Server API" filter="s60" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/pen_input_server_api/group" filter="!test"/>
</component>
<component name="ptiengine_hwr_api" long-name="PTI Engine Handwriting Recognition API" filter="s60" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/ptiengine_hwr_api/group" filter="!test"/>
</component>
<component name="aknfep_settings_api" long-name="Avkon FEP Settings API" filter="s60" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/aknfep_settings_api/group"/>
</component>
<component name="aknfep_status_api" long-name="Avkon FEP Status API" filter="s60" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/aknfep_status_api/group"/>
</component>
<component name="ptiengine_key_definations_api" long-name="PTI Engine Key Definitions API" filter="s60" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/ptiengine_key_definations_api/group"/>
</component>
<component name="aknfep_definitions_api" long-name="Avkon FEP Definitions API" filter="s60" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/aknfep_definitions_api/group"/>
</component>
<component name="aknfep_pen_support_api" long-name="Avkon FEP Pen Support API" filter="s60" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/aknfep_pen_support_api/group"/>
</component>
<component name="ptiengine_indic_definitions_api" long-name="PTI Engine Indic Definitions API" filter="s60" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/ptiengine_indic_definitions_api/group"/>
</component>
<component name="aknfep_uiinterface_api" long-name="Avkon FEP UI Interface API" filter="s60" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/aknfep_uiinterface_api/group" filter="!test"/>
</component>
</collection>
<collection name="textinput" long-name="Text Input" level="framework">
<component name="ptienginev2" filter="s60" long-name="Predictive Text Input Engine">
<!--uncomment when configuration is turned on and textinput_build is removed-->
<!-- <unit bldFile="textinput/ptienginev2/group"/>-->
</component>
<component name="akninputlanguage" filter="s60" long-name="Avkon Input Language">
<unit bldFile="mw/inputmethods/textinput/akninputlanguage/group"/>
</component>
<component name="peninputarc" filter="s60" long-name="Pen Input Arc">
<unit bldFile="mw/inputmethods/textinput/peninputarc/group"/>
</component>
<component name="peninputcommonctrls" filter="s60" long-name="Pen Input Common Controls">
<unit bldFile="mw/inputmethods/textinput/peninputcommonctrls/group"/>
</component>
<component name="peninputhwrboxcn" filter="s60" long-name="Chinese Handwriting Recognition Box" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/peninputhwrboxcn/group"/>
</component>
<component name="peninputvkbcn" filter="s60" long-name="Chinese Virtual Keyboard" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/peninputvkbcn/group"/>
</component>
<component name="peninputcommonlayout" filter="s60" long-name="Pen Input Common Layout">
<unit bldFile="mw/inputmethods/textinput/peninputcommonlayout/group"/>
</component>
<component name="peninputgenerichwr" filter="s60" long-name="Pen Input Generic Handwriting Recognition" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/peninputgenerichwr/group"/>
</component>
<component name="peninputgenericvkb" filter="s60" long-name="Pen Input Generic Virtual Keyboard" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/peninputgenericvkb/group"/>
</component>
<component name="peninputcommonctrlsjp" filter="s60" long-name="Pen Input Common Controls Japanese">
<unit bldFile="mw/inputmethods/textinput/peninputcommonctrlsjp/group"/>
</component>
<component name="peninputhwrboxjp" filter="s60" long-name="Japanese Handwriting Recognition Box" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/peninputhwrboxjp/group"/>
</component>
<component name="peninputvkbjp" filter="s60" long-name="Japanese Virtual Keyboard" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/peninputvkbjp/group"/>
</component>
<component name="gslangplugin" filter="s60" long-name="GS Language Plugin" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/GSLangPlugin"/>
</component>
<component name="peninputgenericitut" filter="s60" long-name="Pen Input Generic ITU-T" introduced="^3" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/peninputgenericitut/group"/>
</component>
<component name="peninputhwrtrui" filter="s60" long-name="Pen Input Handwriting Recognition Training UI" introduced="^3" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/peninputhwrtrui/group"/>
</component>
<component name="peninputhwrfscn" filter="s60" long-name="Pen Input Chinese Full Screen Handwriting Recognition" introduced="^3" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/peninputhwrfscn/group"/>
</component>
<component name="peninputvkbkr" filter="s60" long-name="Pen Input Korean Virtual Keyboard" introduced="^3" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/peninputvkbkr/group"/>
</component>
<component name="peninputfingerhwr" filter="s60" long-name="Pen Input Finger Handwriting Recognition" introduced="^3" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/peninputfingerhwr/group"/>
</component>
<component name="peninputsplititut" filter="s60" long-name="Pen Input Split ITU-T" introduced="^3" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/peninputsplititut/group"/>
</component>
<component name="peninputsplitqwerty" filter="s60" long-name="Pen Input Split QWERTY" introduced="^3" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/peninputsplitqwerty/group"/>
</component>
<component name="textinput_build" filter="s60" long-name="Text Input Build">
<!--needed for #ifdef, can be removed when configuration is implemented -->
<unit bldFile="mw/inputmethods/textinput/group"/>
</component>
</collection>
<collection name="fep" long-name="FEP" level="engine">
<component name="aknfep" filter="s60" long-name="Avkon FEP" plugin="Y">
<unit bldFile="mw/inputmethods/fep/aknfep/group"/>
</component>
<component name="frontendprocessor" long-name="Front End Processor" purpose="mandatory">
<unit bldFile="mw/inputmethods/fep/frontendprocessor/group" mrp="mw/inputmethods/fep/frontendprocessor/group/app-framework_fepbase.mrp"/>
</component>
</collection>
<collection name="inputmethods_info" long-name="Input Methods Info" level="api">
<component name="inputmethods_metadata" long-name="Input Methods Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/inputmethods/inputmethods_info/inputmethods_metadata/inputmethods_metadata.mrp"/>
</component>
</collection>
</block>
<block name="qt" level="generic" long-name="Qt" levels="tool mw app">
<collection name="qtconf" long-name="Qt Config" level="tool">
<component name="qt_deviceconfiguration" long-name="Qt Device Configuration" introduced="^2" class="config tool">
<unit bldFile="mw/qt/src/s60installs/deviceconfiguration"/>
</component>
</collection>
<collection name="qt_info" long-name="Qt Info" level="mw">
<component name="qt_build" long-name="Qt Build" introduced="^2">
<unit bldFile="mw/qt" proFile="projects.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="qtdemos" long-name="Qt Demos" level="app">
<component name="qtdemos_build" long-name="Qt Demos Build" introduced="^2" filter="qtdemos">
<unit bldFile="mw/qt/demos" proFile="demos.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="qtexamples" long-name="Qt Examples" level="app">
<component name="qtexamples_build" long-name="Qt Examples Build" introduced="^2" filter="qtexamples">
<unit bldFile="mw/qt/examples" proFile="examples.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="qt_tests" long-name="Qt Tests" level="app">
<component name="qttestsauto" long-name="Qt Automated Tests" introduced="^2" filter="qttestsauto">
<unit bldFile="mw/qt/tests/auto" proFile="qtpauto.pro"/>
</component>
<component name="qttestsbenchmarks" long-name="Qt Benchmarks Tests" introduced="^2" filter="qttestsbenchmarks">
<unit bldFile="mw/qt/tests/benchmarks" proFile="benchmarks.pro" qmakeArgs="-r"/>
</component>
</collection>
</block>
<block name="classicui" level="generic" long-name="Classic UI" levels="base support server generic specific">
<collection name="classicui_plat" long-name="Classic UI Platform Interfaces" level="specific">
<component name="personalisation_framework_api" long-name="Personalisation Framework API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/personalisation_framework_api/group" filter="!test"/>
</component>
<component name="signal_pane_api" long-name="Signal Pane API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/signal_pane_api/group" filter="!test"/>
</component>
<component name="japanese_reading_api" long-name="Japanese Reading API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/japanese_reading_api/group" filter="!test"/>
</component>
<component name="global_popup_priority_controller_api" long-name="Global Popup Priority Controller API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/global_popup_priority_controller_api/group" filter="!test"/>
</component>
<component name="item_finder_api" long-name="Item Finder API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/item_finder_api/group" filter="!test"/>
</component>
<component name="avkon_fonts_api" long-name="Avkon Fonts API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_fonts_api/group" filter="!test"/>
</component>
<component name="extended_utilities_api" long-name="Extended Utilities API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_utilities_api/group" filter="!test"/>
</component>
<component name="personalisation_plugin_api" long-name="Personalisation Plugin API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/personalisation_plugin_api/group"/>
</component>
<component name="extended_aiw_criteria_api" long-name="Extended AIW Criteria API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_aiw_criteria_api/group" filter="!test"/>
</component>
<component name="personalisation_application_api" long-name="Personalisation Application API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/personalisation_application_api/group"/>
</component>
<component name="volume_popup_api" long-name="Volume Popup API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/volume_popup_api/group" filter="!test"/>
</component>
<component name="avkon_secondary_display_support_api" long-name="AVKON Secondary Display Support API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_secondary_display_support_api/group" filter="!test"/>
</component>
<component name="extended_setting_pages_api" long-name="Extended Setting Pages API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_setting_pages_api/group" filter="!test"/>
</component>
<component name="extended_lists_api" long-name="Extended Lists API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_lists_api/group" filter="!test"/>
</component>
<component name="input_block_api" long-name="Input Block API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/input_block_api/group" filter="!test"/>
</component>
<component name="avkon_ui_server_api" long-name="AVKON UI Server API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_ui_server_api/group" filter="!test"/>
</component>
<component name="number_grouping_api" long-name="Number Grouping API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/number_grouping_api/group" filter="!test"/>
</component>
<component name="extended_status_pane_api" long-name="Extended Status Pane API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_status_pane_api/group" filter="!test"/>
</component>
<component name="extended_notifiers_api" long-name="Extended Notifiers API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_notifiers_api/group" filter="!test"/>
</component>
<component name="task_list_api" long-name="Task List API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/task_list_api/group" filter="!test"/>
</component>
<component name="personalisation_slide_show_dialog_api" long-name="Personalisation Slide Show Dialog API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/personalisation_slide_show_dialog_api/group"/>
</component>
<component name="key_event_utilities_api" long-name="Key Event Utilities API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/key_event_utilities_api/group"/>
</component>
<component name="emergency_call_support_api" long-name="Emergency Call Support API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/emergency_call_support_api/group" filter="!test"/>
</component>
<component name="extended_dialogs_api" long-name="Extended Dialogs API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_dialogs_api/group"/>
</component>
<component name="legacy_ui_framework_headers_api" long-name="Legacy UI Framework Headers API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/legacy_ui_framework_headers_api/group"/>
</component>
<component name="extended_editors_api" long-name="Extended Editors API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_editors_api/group" filter="!test"/>
</component>
<component name="alarm_api" long-name="Alarm API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/alarm_api/group" filter="!test"/>
</component>
<component name="aiw_service_interface_base_api" long-name="AIW Service Interface Base API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/aiw_service_interface_base_api/group" filter="!test"/>
</component>
<component name="list_effects_api" long-name="List Effects API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/list_effects_api/group" filter="!test"/>
</component>
<component name="find_item_ui_api" long-name="Find Item UI API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/find_item_ui_api/group" filter="!test"/>
</component>
<component name="server_application_services_api" long-name="Server Application Services API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/server_application_services_api/group" filter="!test"/>
</component>
<component name="common_ui_settings_api" long-name="Common UI Settings API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/common_ui_settings_api/group"/>
</component>
<component name="aiw_service_interface_menu_api" long-name="AIW Service Interface Menu API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/aiw_service_interface_menu_api/group" filter="!test"/>
</component>
<component name="eikon_server_extension_client_api" long-name="EIKON Server Extension Client API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/eikon_server_extension_client_api/group" filter="!test"/>
</component>
<component name="skinnable_clock_api" long-name="Skinnable Clock API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/skinnable_clock_api/group" filter="!test"/>
</component>
<component name="battery_pane_api" long-name="Battery Pane API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/battery_pane_api/group" filter="!test"/>
</component>
<component name="fep_document_navigation_api" long-name="FEP Document Navigation API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/fep_document_navigation_api/group"/>
</component>
<component name="personalisation_localised_texts_api" long-name="Personalisation Localised Texts API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/personalisation_localised_texts_api/group"/>
</component>
<component name="memory_card_ui_api" long-name="Memory Card UI API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/memory_card_ui_api/group" filter="!test"/>
</component>
<component name="avkon_status_api" long-name="AVKON Status API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_status_api/group"/>
</component>
<component name="application_switching_api" long-name="Application Switching API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/application_switching_api/group" filter="!test"/>
</component>
<component name="avkon_localised_texts_api" long-name="AVKON Localised Texts API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_localised_texts_api/group"/>
</component>
<component name="avkon_secondary_display_api" long-name="AVKON Secondary Display API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_secondary_display_api/group"/>
</component>
<component name="extended_animation_api" long-name="Extended Animation API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_animation_api/group" filter="!test"/>
</component>
<component name="extended_notes_api" long-name="Extended Notes API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_notes_api/group" filter="!test"/>
</component>
<component name="screensaver_animation_plugin_definitions_api" long-name="Screensaver Animation Plugin Definitions API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/screensaver_animation_plugin_definitions_api/group"/>
</component>
<component name="text_scroller_api" long-name="Text Scroller API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/text_scroller_api/group" filter="!test"/>
</component>
<component name="custom_cursors_api" long-name="Custom Cursors API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/custom_cursors_api/group" filter="!test"/>
</component>
<component name="screensaver_settings_api" long-name="Screensaver Settings API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/screensaver_settings_api/group"/>
</component>
<component name="global_window_priorities_api" long-name="Global Window Priorities API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/global_window_priorities_api/group"/>
</component>
<component name="extended_indicators_api" long-name="Extended Indicators API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_indicators_api/group" filter="!test"/>
</component>
<component name="special_character_table_api" long-name="Special Character Table API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/special_character_table_api/group" filter="!test"/>
</component>
<component name="avkon_settings_api" long-name="AVKON Settings API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_settings_api/group"/>
</component>
<component name="extended_sounds_api" long-name="Extended Sounds API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_sounds_api/group"/>
</component>
<component name="themes_settings_api" long-name="Themes Settings API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/themes_settings_api/group"/>
</component>
<component name="media_shared_document_api" long-name="Media Shared Document API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/media_shared_document_api/group" filter="!test"/>
</component>
<component name="extended_queries_api" long-name="Extended Queries API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_queries_api/group"/>
</component>
<component name="phone_number_text_utilities_api" long-name="Phone Number Text Utilities API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/phone_number_text_utilities_api/group" filter="!test"/>
</component>
<component name="screensaver_runtime_api" long-name="Screensaver Runtime API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/screensaver_runtime_api/group"/>
</component>
<component name="extended_scroller_api" long-name="Extended Scroller API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_scroller_api/group"/>
</component>
<component name="key_rotator_api" long-name="Key Rotator API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/key_rotator_api/group" filter="!test"/>
</component>
<component name="extended_grids_api" long-name="Extended Grids API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_grids_api/group" filter="!test"/>
</component>
<component name="generic_parameter_api" long-name="Generic Parameter API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/generic_parameter_api/group" filter="!test"/>
</component>
<component name="indicator_touch_observer_api" long-name="Indicator Touch Observer API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/indicator_touch_observer_api/group"/>
</component>
<component name="popup_form_api" long-name="Popup Form API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/popup_form_api/group" filter="!test"/>
</component>
<component name="stylus_activated_popup_api" long-name="Stylus Activated Pop-up API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/stylus_activated_popup_api/group" filter="!test"/>
</component>
<component name="indicator_plugin_api" long-name="Indicator Plugin API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/indicator_plugin_api/group" filter="!test"/>
</component>
<component name="layout_configuration_api" long-name="Layout Configuration API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/layout_configuration_api/group" filter="!test"/>
</component>
<component name="common_file_dialogs_filter_factory_api" long-name="Common File Dialogs Filter Factory API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/common_file_dialogs_filter_factory_api/group" filter="!test"/>
</component>
<component name="avkon_anim_dll_api" long-name="AVKON Anim DLL API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_anim_dll_api/group"/>
</component>
<component name="extended_initialization_api" long-name="Extended Initialization API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_initialization_api/group" filter="!test"/>
</component>
<component name="long_tap_animation_api" long-name="Long Tap Animation API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/long_tap_animation_api/group" filter="!test"/>
</component>
<component name="extended_ui_framework_definitions_api" long-name="Extended UI Framework Definitions API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_ui_framework_definitions_api/group"/>
</component>
<component name="extended_buttons_api" long-name="Extended Buttons API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_buttons_api/group" filter="!test"/>
</component>
<component name="aiw_provider_utility_api" long-name="AIW Provider Utility API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/aiw_provider_utility_api/group" filter="!test"/>
</component>
<component name="transition_effect_parameters_api" long-name="Transition Effect Parameters API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/transition_effect_parameters_api/group" filter="!test"/>
</component>
<component name="extended_input_capabilities_api" long-name="Extended Input Capabilities API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_input_capabilities_api/group" filter="!test"/>
</component>
<component name="uikon_status_api" long-name="UIKON Status API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/uikon_status_api/group"/>
</component>
<component name="transition_effect_utilities_api" long-name="Transition Effect Utilities API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/transition_effect_utilities_api/group" filter="!test"/>
</component>
<component name="pointer_event_modifier_api" long-name="Pointer Event Modifier API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/pointer_event_modifier_api/group" filter="!test"/>
</component>
<component name="avkon_testability_api" long-name="AVKON Testability API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_testability_api/group"/>
</component>
<component name="ganes_api" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/ganes_api/group"/>
</component>
<component name="ode_api" long-name="Ode API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/ode_api/group"/>
</component>
<component name="physics_api" long-name="Physics API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/physics_api/group"/>
</component>
<component name="touch_pane_api" long-name="Touch Pane API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/touch_pane_api/group" filter="!test"/>
</component>
<component name="touch_pane_observer_api" long-name="Touch Pane Observer API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/touch_pane_observer_api/group"/>
</component>
<component name="alternate_fs_api" long-name="Alternate FS API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/alternate_fs_api/group"/>
</component>
<component name="discreet_popup_api" long-name="Discreet Popup API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/discreet_popup_api/group"/>
</component>
<component name="touch_gesture_framework_api" long-name="Touch Gesture Framework API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/touch_gesture_framework_api/group"/>
<!-- should this be commented out? -->
<!--<unit bldFile="classicui_plat/touch_gesture_framework_api/tsrc/group" filter="test,api_test"/> -->
</component>
<component name="extended_options_menu_api" long-name="Extended Options Menu API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_options_menu_api/group" filter="!test"/>
</component>
</collection>
<collection name="classicui_pub" long-name="Classic UI Public Interfaces" level="specific">
<component name="input_frame_api" long-name="Input Frame API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/input_frame_api/group" filter="!test"/>
</component>
<component name="window_server_event_observer_api" long-name="Window Server Event Observer API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/window_server_event_observer_api/group" filter="!test"/>
</component>
<component name="application_framework_api" long-name="Application Framework API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/application_framework_api/group" filter="!test"/>
</component>
<component name="scroller_api" long-name="Scroller API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/scroller_api/group" filter="!test"/>
</component>
<component name="ui_framework_utilities_api" long-name="UI Framework Utilities API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/ui_framework_utilities_api/group" filter="!test"/>
</component>
<component name="ui_framework_definitions_api" long-name="UI Framework Definitions API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/ui_framework_definitions_api/group" filter="!test"/>
</component>
<component name="buttons_api" long-name="Buttons API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/buttons_api/group" filter="!test"/>
</component>
<component name="queries_api" long-name="Queries API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/queries_api/group" filter="!test"/>
</component>
<component name="aiw_generic_parameter_api" long-name="AIW Generic Parameter API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/aiw_generic_parameter_api/group" filter="!test"/>
</component>
<component name="editors_api" long-name="Editors API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/editors_api/group" filter="!test"/>
</component>
<component name="common_file_dialogs_api" long-name="Common File Dialogs API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/common_file_dialogs_api/group" filter="!test"/>
</component>
<component name="dialog_shutter_api" long-name="Dialog Shutter API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/dialog_shutter_api/group" filter="!test"/>
</component>
<component name="fonts_api" long-name="Fonts API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/fonts_api/group" filter="!test"/>
</component>
<component name="screen_clearer_api" long-name="Screen Clearer API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/screen_clearer_api/group" filter="!test"/>
</component>
<component name="notifiers_api" long-name="Notifiers API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/notifiers_api/group" filter="!test"/>
</component>
<component name="notes_api" long-name="Notes API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/notes_api/group" filter="!test"/>
</component>
<component name="screen_saver_api" long-name="Screen Saver API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/screen_saver_api/group" filter="!test"/>
</component>
<component name="status_pane_api" long-name="Status Pane API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/status_pane_api/group" filter="!test"/>
</component>
<component name="base_controls_api" long-name="Base Controls API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/base_controls_api/group" filter="!test"/>
</component>
<component name="grids_api" long-name="Grids API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/grids_api/group" filter="!test"/>
</component>
<component name="context_pane_api" long-name="Context Pane API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/context_pane_api/group" filter="!test"/>
</component>
<component name="lists_api" long-name="Lists API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/lists_api/group" filter="!test"/>
</component>
<component name="popups_api" long-name="Popups API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/popups_api/group" filter="!test"/>
</component>
<component name="misc_controls_api" long-name="Misc Controls API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/misc_controls_api/group" filter="!test"/>
</component>
<component name="keylock_api" long-name="Keylock API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/keylock_api/group" filter="!test"/>
</component>
<component name="options_menu_api" long-name="Options Menu API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/options_menu_api/group" filter="!test"/>
</component>
<component name="hierarchical_lists_api" long-name="Hierarchical Lists API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/hierarchical_lists_api/group" filter="!test"/>
</component>
<component name="navigation_pane_api" long-name="Navigation Pane API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/navigation_pane_api/group" filter="!test"/>
</component>
<component name="tabs_api" long-name="Tabs API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/tabs_api/group" filter="!test"/>
</component>
<component name="title_pane_touch_observer_api" long-name="Title Pane Touch Observer API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/title_pane_touch_observer_api/group"/>
</component>
<component name="choice_list_api" long-name="Choice List API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/choice_list_api/group" filter="!test"/>
</component>
<component name="info_popup_note_api" long-name="Info Popup Note API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/info_popup_note_api/group" filter="!test"/>
</component>
<component name="setting_pages_api" long-name="Setting Pages API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/setting_pages_api/group" filter="!test"/>
</component>
<component name="screen_mode_api" long-name="Screen Mode API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/screen_mode_api/group" filter="!test"/>
</component>
<component name="indicators_api" long-name="Indicators API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/indicators_api/group" filter="!test"/>
</component>
<component name="error_ui_api" long-name="Error UI API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/error_ui_api/group" filter="!test"/>
</component>
<component name="animation_api" long-name="Animation API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/animation_api/group" filter="!test"/>
</component>
<component name="searchfield_api" long-name="Searchfield API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/searchfield_api/group" filter="!test"/>
</component>
<component name="labels_api" long-name="Labels API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/labels_api/group" filter="!test"/>
</component>
<component name="hotkeys_api" long-name="Hotkeys API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/hotkeys_api/group" filter="!test"/>
</component>
<component name="initialization_api" long-name="Initialization API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/initialization_api/group" filter="!test"/>
</component>
<component name="volume_control_api" long-name="Volume Control API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/volume_control_api/group" filter="!test"/>
</component>
<component name="title_pane_api" long-name="Title Pane API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/title_pane_api/group" filter="!test"/>
</component>
<component name="sounds_api" long-name="Sounds API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/sounds_api/group" filter="!test"/>
</component>
<component name="aiw_service_handler_api" long-name="AIW Service Handler API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/aiw_service_handler_api/group" filter="!test"/>
</component>
<component name="aiw_criteria_api" long-name="AIW Criteria API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/aiw_criteria_api/group" filter="!test"/>
</component>
<component name="touch_ui_utilities_api" long-name="Touch UI Utilities API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/touch_ui_utilities_api/group" filter="!test"/>
</component>
<component name="generic_button_api" long-name="Generic Button API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/generic_button_api/group" filter="!test"/>
</component>
<component name="form_api" long-name="Form API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/form_api/group" filter="!test"/>
</component>
<component name="uikon_core_controls" long-name="Uikon Core Controls" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/uikon_core_controls/group" filter="!test"/>
</component>
<component name="calendar_api" long-name="Calendar API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/calendar_api/group"/>
</component>
<component name="toolbar_api" long-name="Toolbar API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/toolbar_api/group" filter="!test"/>
</component>
<component name="server_application_api" long-name="Server Application API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/server_application_api/group"/>
</component>
<component name="slider_api" long-name="Slider API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/slider_api/group" filter="!test"/>
</component>
<component name="private_ui_framework_api" long-name="Private UI Framework API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/private_ui_framework_api/group" filter="!test"/>
</component>
<component name="dialogs_api" long-name="Dialogs API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/dialogs_api/group" filter="!test"/>
</component>
<component name="document_handler_api" long-name="Document handler API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/document_handler_api/group"/>
</component>
<component name="images_api" long-name="Images API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/images_api/group" filter="!test"/>
</component>
<component name="stylus_popup_menu_api" long-name="Stylus Pop-up Menu API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/stylus_popup_menu_api/group" filter="!test"/>
</component>
<component name="information_preview_popup_api" long-name="Information Preview Popup API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/information_preview_popup_api/group" filter="!test"/>
</component>
<component name="intermediate_state_api" long-name="Intermediate State API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/intermediate_state_api/group"/>
</component>
<component name="help_launcher_api" long-name="Help Launcher API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/help_launcher_api/group"/>
</component>
</collection>
<collection name="ode" long-name="Open Dynamics Engine" level="support">
<!-- the collection is really a component. Move down a directory.-->
<component name="ode_build" filter="s60" long-name="ODE">
<unit bldFile="mw/classicui/ode/group"/>
</component>
</collection>
<collection name="uifw" long-name="UI Framework" level="server">
<component name="uiklaf" filter="s60" long-name="Uikon Look-and-Feel">
<unit bldFile="mw/classicui/uifw/uiklaf/group"/>
</component>
<component name="eikctl" filter="s60" long-name="Eikon Controls">
<unit bldFile="mw/classicui/uifw/eikctl/group"/>
</component>
<component name="avkon" filter="s60" long-name="Avkon">
<!-- can only have one unit. Split into 3 components, or #include all from same bld.inf -->
<unit bldFile="mw/classicui/uifw/avkon/aknphysics/group"/>
<unit bldFile="mw/classicui/uifw/avkon/group"/>
<unit bldFile="mw/classicui/uifw/avkon/aknconf/group"/>
</component>
<component name="eikstd" filter="s60" long-name="Eikon Standard">
<unit bldFile="mw/classicui/uifw/eikstd/group"/>
</component>
<component name="aknglobalui" filter="s60" long-name="Avkon Global UI">
<unit bldFile="mw/classicui/uifw/aknglobalui/group"/>
</component>
<component name="ganes" filter="s60" long-name="Ganes">
<unit bldFile="mw/classicui/uifw/ganes/group"/>
</component>
</collection>
<collection name="commonuis" long-name="Common UIs" level="specific">
<component name="commonui" filter="s60" long-name="Common UI">
<unit bldFile="mw/classicui/commonuis/commonui/group"/>
</component>
<component name="commondialogs" filter="s60" long-name="Common Dialogs">
<unit bldFile="mw/classicui/commonuis/commondialogs/group"/>
</component>
</collection>
<collection name="applicationinterworkingfw" long-name="Application Interworking Framework" level="generic">
<component name="aifwservicehandler" filter="s60" long-name="Application Interworking Service Handler">
<unit bldFile="mw/classicui/applicationinterworkingfw/servicehandler/group"/>
</component>
</collection>
<collection name="psln" long-name="Personalization" level="specific">
<!-- the collection is really a component. Move down a directory. Or it could be split into multiple components-->
<component name="psln_build" filter="s60" long-name="Personalization Build">
<unit bldFile="mw/classicui/psln/group"/>
</component>
</collection>
<collection name="commonadapter" long-name="Common Adapter" level="support">
<!-- the collection is really a component. Move down a directory.-->
<component name="commonadapter_build" filter="s60" long-name="Common Adapter Build">
<unit bldFile="mw/classicui/commonadapter/group"/>
</component>
</collection>
<collection name="akntouchgesturefw" long-name="Avkon Touch Gesture Framework" level="generic">
<!-- the collection is really a component. Move down a directory.-->
<component name="akntouchgesturefw_build" filter="s60" long-name="Avkon Touch Gesture Framework Build" introduced="^3">
<unit bldFile="mw/classicui/akntouchgesturefw/group"/>
</component>
</collection>
<collection name="uiutils" long-name="UI Utils" level="specific">
<component name="localizer" filter="s60" long-name="Directory Localizer">
<unit bldFile="mw/classicui/uiutils/localizer/group"/>
</component>
<component name="findutil" filter="s60" long-name="Find Utility">
<unit bldFile="mw/classicui/uiutils/findutil/group"/>
</component>
<component name="gamerecognizer" filter="s60" long-name="Game Recognizer" plugin="Y">
<unit bldFile="mw/classicui/uiutils/gamerecognizer/group"/>
</component>
<component name="aknjapanesereading" filter="s60" long-name="Avkon Japanese Reading">
<unit bldFile="mw/classicui/uiutils/aknjapanesereading/group"/>
</component>
</collection>
<collection name="commonuisupport" long-name="Common UI Support" level="support">
<component name="uikon" long-name="Uikon" introduced="6.0" purpose="mandatory">
<unit bldFile="mw/classicui/commonuisupport/uikon/group" mrp="mw/classicui/commonuisupport/uikon/group/app-framework_uikon.mrp"/>
</component>
<component name="errorresolverdata" long-name="Error Resolver Data" purpose="mandatory">
<unit bldFile="mw/classicui/commonuisupport/errorresolverdata/group" mrp="mw/classicui/commonuisupport/errorresolverdata/group/app-framework_errorresgt.mrp"/>
</component>
<component name="uilaf" long-name="UI Look and Feel" introduced="6.0" purpose="mandatory">
<unit bldFile="mw/classicui/commonuisupport/uilaf/GROUP" mrp="mw/classicui/commonuisupport/uilaf/GROUP/app-framework_uiklafgt.mrp"/>
</component>
<component name="grid" long-name="Grid" purpose="optional">
<unit bldFile="mw/classicui/commonuisupport/grid/group" mrp="mw/classicui/commonuisupport/grid/group/app-framework_grid.mrp"/>
</component>
<component name="uifwsdocs" long-name="UI Frameworks Documentation" purpose="development" class="doc">
<unit mrp="mw/classicui/commonuisupport/uifwsdocs/app-framework_documentation.mrp"/>
</component>
</collection>
<collection name="lafagnosticuifoundation" long-name="Look-and-Feel Agnostic UI Foundation" level="base">
<component name="cone" long-name="Control Environment" purpose="mandatory">
<unit bldFile="mw/classicui/lafagnosticuifoundation/cone/group" mrp="mw/classicui/lafagnosticuifoundation/cone/group/app-framework_cone.mrp"/>
</component>
<component name="graphicseffects" long-name="Graphics Effects" introduced="9.2" purpose="optional">
<unit bldFile="mw/classicui/lafagnosticuifoundation/graphicseffects/group" mrp="mw/classicui/lafagnosticuifoundation/graphicseffects/group/app-framework_gfxtranseffect.mrp"/>
</component>
<component name="uigraphicsutils" long-name="UI Graphics Utilities" purpose="mandatory">
<unit bldFile="mw/classicui/lafagnosticuifoundation/uigraphicsutils/group" mrp="mw/classicui/lafagnosticuifoundation/uigraphicsutils/group/app-framework_egul.mrp"/>
</component>
<component name="clockanim" long-name="Clock" purpose="optional" plugin="Y">
<unit bldFile="mw/classicui/lafagnosticuifoundation/clockanim/group" mrp="mw/classicui/lafagnosticuifoundation/clockanim/group/app-framework_clock.mrp"/>
</component>
<component name="bmpanimation" long-name="BMP Animation" introduced="6.0" purpose="optional">
<unit bldFile="mw/classicui/lafagnosticuifoundation/bmpanimation/group" mrp="mw/classicui/lafagnosticuifoundation/bmpanimation/group/app-framework_bmpanim.mrp"/>
</component>
<component name="animation" long-name="Animation" introduced="9.1" purpose="optional">
<unit bldFile="mw/classicui/lafagnosticuifoundation/animation/group" mrp="mw/classicui/lafagnosticuifoundation/animation/group/app-framework_animation.mrp"/>
</component>
</collection>
<collection name="classicui_info" long-name="Classic UI Info" level="specific">
<!-- the multiple units in the API test components need to be resolved -->
<component name="classicui_metadata" long-name="Classic UI Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/classicui/classicui_info/classicui_metadata/classicui_metadata.mrp"/>
</component>
</collection>
</block>
<block name="svgt" level="generic" long-name="SVG Tiny" levels="util ui">
<collection name="svgt_plat" long-name="SVG Tiny Platform Interfaces" level="ui">
<component name="svgt_api" long-name="SVGT API" introduced="9.2" filter="s60" class="api">
<unit bldFile="mw/svgt/svgt_plat/svgt_api/group"/>
</component>
<component name="nvg_api" long-name="NVG API" introduced="9.2" filter="s60" class="api">
<unit bldFile="mw/svgt/svgt_plat/nvg_api/group"/>
</component>
</collection>
<collection name="svgtopt" long-name="SVG-T Engine" level="util">
<component name="svgtopt_build" filter="s60" long-name="SVG Engine" introduced="9.2">
<!-- component is at collection level. Needs to be moved down a directory -->
<unit bldFile="mw/svgt/svgtopt/group"/>
</component>
<component name="svgtplugin" filter="s60" long-name="SVG Plugin" introduced="9.2" plugin="Y">
<unit bldFile="mw/svgt/svgtopt/svgtplugin/group"/>
</component>
</collection>
</block>
<block name="uiaccelerator" level="generic" long-name="UI Accelerator" levels="plugin framework server ex if">
<collection name="uiaccelerator_plat" long-name="UI Accelerator Platform Interfaces" level="if">
<component name="alf_core_toolkit_api" long-name="ALF Core Toolkit API" filter="s60" class="api">
<unit bldFile="mw/uiaccelerator/uiaccelerator_plat/alf_core_toolkit_api/group"/>
</component>
<component name="alf_visual_api" long-name="ALF Visual API" filter="s60" class="api">
<unit bldFile="mw/uiaccelerator/uiaccelerator_plat/alf_visual_api/group"/>
</component>
<component name="alf_extended_visual_api" long-name="ALF Extended Visual API" filter="s60" class="api">
<unit bldFile="mw/uiaccelerator/uiaccelerator_plat/alf_extended_visual_api/group"/>
</component>
<component name="alf_extension_api" long-name="ALF Extension API" filter="s60" class="api">
<unit bldFile="mw/uiaccelerator/uiaccelerator_plat/alf_extension_api/group"/>
</component>
<component name="alf_tracing_api" long-name="ALF Tracing API" filter="s60" class="api">
<unit bldFile="mw/uiaccelerator/uiaccelerator_plat/alf_tracing_api/group"/>
</component>
<component name="alf_client_server_api" long-name="ALF Client Server API" filter="s60" class="api">
<unit bldFile="mw/uiaccelerator/uiaccelerator_plat/alf_client_server_api/group"/>
</component>
</collection>
<collection name="uiacceltk" long-name="UI Accelerator Toolkit" level="framework">
<component name="hitchcock" filter="s60" long-name="Hitchcock">
<unit bldFile="mw/uiaccelerator/uiacceltk/hitchcock/group"/>
</component>
<component name="uiacceltk_build" filter="s60" long-name="UI Accelerator Toolkit Build">
<!-- move into the other component, or remove the #include and make this UI Accelerator Toolkit ROM-->
<unit bldFile="mw/uiaccelerator/uiacceltk/group"/>
</component>
</collection>
</block>
<block name="uiresources" level="generic" long-name="UI Resources" levels="compile plugin framework server generic data">
<!-- are the custom filters below needed? -->
<collection name="uiresources_pub" long-name="UI Resources Public Interfaces" level="data">
<component name="pictograph_api" long-name="Pictograph API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_pub/pictograph_api/group" filter="!test"/>
</component>
<component name="skins_api" long-name="Skins API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_pub/skins_api/group" filter="!test"/>
</component>
<component name="font_definition_api" long-name="Font Definition API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_pub/font_definition_api/group" filter="!test"/>
</component>
<component name="graphics_api" long-name="Graphics API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_pub/graphics_api/group" filter="!test"/>
</component>
<component name="scalable_icons_api" long-name="Scalable Icons API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_pub/scalable_icons_api/group"/>
</component>
<component name="layout_id_definitions_api" long-name="Layout ID Definitions API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_pub/layout_id_definitions_api/group"/>
</component>
</collection>
<collection name="uiresources_plat" long-name="UI Resources Platform Interfaces" level="data">
<component name="layout_system_private_api" long-name="Layout System Private API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/layout_system_private_api/group" filter="!test"/>
</component>
<component name="layout_data_api" long-name="Layout Data API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/layout_data_api/group" filter="!test"/>
</component>
<component name="cdl_api" long-name="CDL API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/cdl_api/group" filter="!test"/>
</component>
<component name="extended_skins_api" long-name="Extended Skins API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/extended_skins_api/group" filter="!test"/>
</component>
<component name="tfx_server_controller_plugin_api" long-name="TFX Server Controller Plug-in API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/tfx_server_controller_plugin_api/group"/>
</component>
<component name="extended_fonts_api" long-name="Extended Fonts API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/extended_fonts_api/group" filter="!test"/>
</component>
<component name="graphic_configuration_api" long-name="Graphic Configuration API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/graphic_configuration_api/group" filter="!test"/>
</component>
<component name="mif_header_cdl_api" long-name="MIF Header CDL API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/mif_header_cdl_api/group"/>
</component>
<component name="personalisation_and_skins_settings_api" long-name="Personalisation and Skins Settings API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/personalisation_and_skins_settings_api/group"/>
</component>
<component name="tfx_effect_setup_plugin_api" long-name="TFX Effect Setup Plug-in API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/tfx_effect_setup_plugin_api/group"/>
</component>
<component name="mifconv_definitions_api" long-name="Mifconv Definitions API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/mifconv_definitions_api/group"/>
</component>
<component name="wallpaper_configuration_api" long-name="Wallpaper Configuration API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/wallpaper_configuration_api/group"/>
</component>
<component name="language_code_definitions_api" long-name="Language Code Definitions API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/language_code_definitions_api/group"/>
</component>
<component name="skins_image_attributes_api" long-name="Skins Image Attributes API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/skins_image_attributes_api/group" filter="!test"/>
</component>
<component name="private_user_area_code_definitions_api" long-name="Private User Area Code Definitions API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/private_user_area_code_definitions_api/group"/>
</component>
<component name="tfx_server_plugin_ids_api" long-name="TFX Server Plug-in IDs API" filter="s60" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/tfx_server_plugin_ids_api/group"/>
</component>
</collection>
<collection name="uiresources_info" long-name="UI Resources Info" level="data">
<component name="uiresources_test" filter="s60,test,api_test" long-name="UI Resources Tests" purpose="development"/>
</collection>
<collection name="uigraphics" long-name="UI Graphics" level="generic">
<component name="bitmaps2" filter="s60" long-name="Bitmaps 2" class="config">
<unit bldFile="mw/uiresources/uigraphics/bitmaps2/group"/>
</component>
<component name="icons" filter="s60" long-name="Icons" class="config">
<unit bldFile="mw/uiresources/uigraphics/icons/group"/>
</component>
<component name="variatedbitmaps" filter="s60" long-name="Variated Bitmaps" class="config">
<unit bldFile="mw/uiresources/uigraphics/variatedbitmaps/group"/>
</component>
<component name="aknicon" filter="s60" long-name="Avkon Icon Framework">
<unit bldFile="mw/uiresources/uigraphics/aknicon/group"/>
</component>
<component name="nvgrenderstage" filter="sf_build" long-name="NVG Render Stage">
<unit bldFile="mw/uiresources/uigraphics/nvgrenderstage/group"/>
</component>
</collection>
<collection name="layouts" long-name="Layouts" level="plugin">
<component name="cdl" filter="s60" long-name="Customization Definition Language">
<!-- can only have one unit. Need to #include them or split into multiple components -->
<unit bldFile="mw/uiresources/layouts/cdl/cdlengine/group"/>
<unit bldFile="mw/uiresources/layouts/cdl/cdlserver/group"/>
</component>
<component name="aknlayout2" filter="s60" long-name="Avkon Layout 2">
<unit bldFile="mw/uiresources/layouts/aknlayout2/group"/>
</component>
</collection>
<collection name="skins" long-name="Skins" level="data">
<component name="aknskincontent" filter="s60" long-name="Avkon Skin Content" class="config">
<unit bldFile="mw/uiresources/skins/aknskincontent/group"/>
</component>
<component name="aknskins" filter="s60" long-name="Avkon Skin Compiler">
<unit bldFile="mw/uiresources/skins/aknskins/group"/>
</component>
</collection>
<collection name="pictographs" long-name="Pictographs" level="data">
<component name="aknpictograph" filter="s60" long-name="Avkon Pictograph">
<unit bldFile="mw/uiresources/pictographs/aknpictograph/group"/>
</component>
</collection>
<collection name="locales" long-name="Locales" level="framework">
<component name="locales_build" filter="s60" long-name="Locales Build">
<unit bldFile="mw/uiresources/locales/loce32"/>
</component>
</collection>
<collection name="uiconfig" long-name="UI Config" level="server">
<component name="s60config" filter="s60" long-name="S60 UI Config">
<unit bldFile="mw/uiresources/uiconfig/s60config/group"/>
</component>
</collection>
<collection name="fontsupport" long-name="Font Support" level="generic">
<component name="fontprovider" filter="s60" long-name="Font Provider">
<unit bldFile="mw/uiresources/fontsupport/fontprovider/group"/>
</component>
<!-- R&D materials, should be Nokia only: exports S60 fonts, removes freetype
<component id="s60_fonts" filter="s60" name="S60 Fonts">
<unit bldFile="fontsupport/fontutils/group"/>
</component>
-->
<component name="fontutils" filter="sf_build" long-name="Font Utils">
<unit bldFile="mw/uiresources/fontsupport/fontutils/FontUtils/group"/>
</component>
</collection>
<collection name="helpthemes" long-name="Help Themes" level="data">
<!-- collection is really a component. Need to move down a directory -->
<component name="helpthemes_build" filter="s60" long-name="Help Themes Build" class="config">
<unit bldFile="mw/uiresources/helpthemes/group"/>
</component>
</collection>
</block>
<block name="hapticsservices" level="generic" long-name="Haptics Services" levels="fw server api">
<collection name="hapticsservices_plat" long-name="Haptics Services Platform Interfaces" level="api">
<component name="tacticon_api" long-name="Tacticon API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/hapticsservices/hapticsservices_plat/tacticon_api/group"/>
</component>
<component name="tactile_feedback_core_api" long-name="Tactile Feedback Core API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/hapticsservices/hapticsservices_plat/tactile_feedback_core_api/group"/>
</component>
<component name="tactile_feedback_server_api" long-name="Tactile Feedback Server API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/hapticsservices/hapticsservices_plat/tactile_feedback_server_api/group"/>
</component>
</collection>
<collection name="hapticsservices_pub" long-name="Haptics Services Public Interfaces" level="api">
<component name="tactile_feedback_client_api" long-name="Tactile Feedback Client API" introduced="^1" filter="s60" class="api">
<unit bldFile="mw/hapticsservices/hapticsservices_pub/tactile_feedback_client_api/group"/>
</component>
</collection>
<collection name="tacticonserver" long-name="Tacticon Server" level="server">
<!-- collection is really a component. Move down a directory -->
<component name="tacticonserver_build" filter="s60" long-name="Tacticon Server Build" introduced="^3">
<unit bldFile="mw/hapticsservices/tacticonserver/group"/>
<!-- clients and servers are suauly the same component. Consider moving pluign to a separate component if needed -->
</component>
</collection>
<collection name="tactilefeedback" long-name="Tactile Feedback" level="fw">
<component name="tactilearearegistry" filter="s60" long-name="Tactile Area Registry" introduced="^1">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactilearearegistry/group"/>
</component>
<component name="tactilefeedbackresolver" filter="s60" long-name="Tactile Feedback Resolver" introduced="^1">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactilefeedbackresolver/group"/>
</component>
<component name="tactileclickplugin" filter="s60" long-name="Tactile Click Plugin" introduced="^1" plugin="Y">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactileclickplugin/group"/>
</component>
<component name="tactilefeedbackclient" filter="s60" long-name="Tactile Feedback Client" introduced="^1">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactilefeedbackclient/group"/>
</component>
<component name="tactileactionplugin" filter="s60" long-name="Tactile Action Plugin" introduced="^1" plugin="Y">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactileactionplugin/group"/>
</component>
<component name="tactilefeedback_build" filter="s60" long-name="Tactile Feedback Build" introduced="^1">
<!-- consider moving IBY to one fo the above components -->
<unit bldFile="mw/hapticsservices/tactilefeedback/group"/>
</component>
</collection>
</block>
<block name="gsprofilesrv" level="generic" long-name="General Settings and Profiles Services" levels="system plugin framework server generic specific">
<collection name="gsprofilesrv_pub" long-name="GS and Profiles Services Public Interfaces" level="specific">
<component name="profiles_engine_active_profile_settings_api" long-name="Profiles Engine Active Profile Settings API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_pub/profiles_engine_active_profile_settings_api/group"/>
</component>
<component name="profiles_engine_wrapper_api" long-name="Profiles Engine Wrapper API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_pub/profiles_engine_wrapper_api/group"/>
</component>
</collection>
<collection name="gsprofilesrv_plat" long-name="GS and Profiles Services Platform Interfaces" level="specific">
<component name="profiles_engine_api" long-name="Profiles Engine API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/profiles_engine_api/group"/>
</component>
<component name="profiles_mediafilelist_api" long-name="Media File List API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/profiles_mediafilelist_api/group"/>
</component>
<component name="filelist_api" long-name="File List API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/filelist_api/group"/>
</component>
<component name="settings_backgroundimage_api" long-name="Settings Background Image API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/settings_backgroundimage_api/group"/>
</component>
<component name="settings_framework_api" long-name="Settings Framework API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/settings_framework_api/group"/>
</component>
<component name="settings_launch_api" long-name="Settings Launch API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/settings_launch_api/group"/>
</component>
<component name="settings_listbox_api" long-name="Settings List Box API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/settings_listbox_api/group"/>
</component>
<component name="settings_plugin_api" long-name="Settings Plugin API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/settings_plugin_api/group"/>
</component>
<component name="settings_uis_cenrep_collection_api" long-name="Settings UIs CenRep Collection API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/settings_uis_cenrep_collection_api/group"/>
</component>
</collection>
<collection name="gssettingsuis" long-name="General Settings UIs" level="framework">
<component name="gs" filter="s60" long-name="General Settings" introduced="9.2">
<unit bldFile="mw/gsprofilesrv/gssettingsuis/gs/group"/>
</component>
</collection>
<collection name="profilesservices" long-name="Profiles Services" level="server">
<component name="filelist" filter="s60" long-name="File List" introduced="9.1">
<unit bldFile="mw/gsprofilesrv/profilesservices/filelist/group"/>
</component>
<component name="mediafilelist" filter="s60" long-name="Media File List" introduced="^2">
<unit bldFile="mw/gsprofilesrv/profilesservices/mediafilelist/group"/>
</component>
<component name="profileengine" filter="s60" long-name="Profile Engine" introduced="9.1">
<unit bldFile="mw/gsprofilesrv/profilesservices/profileengine/group"/>
</component>
<component name="ringingtone3dplugin" filter="s60" long-name="Ringing Tone 3D Plugin" introduced="^2" plugin="Y">
<unit bldFile="mw/gsprofilesrv/profilesservices/ringingtone3dplugin/group"/>
</component>
</collection>
</block>
<block name="homescreensrv" level="specific" long-name="Home Screen Services" levels="plugin framework server generic specific">
<collection name="homescreensrv_plat" long-name="Home Screen Services Platform Interfaces" level="specific">
<component name="ai_content_model_api" long-name="AI Content Model API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/ai_content_model_api/group"/>
</component>
<component name="ai_utilities_api" long-name="AI Utilities API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/ai_utilities_api/group" filter="!test"/>
</component>
<component name="ai_plugin_management_api" long-name="AI Plug-in Management API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/ai_plugin_management_api/group"/>
</component>
<component name="ai_plugin_information_api" long-name="AI Plug-in Information API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/ai_plugin_information_api/group"/>
</component>
<component name="ai_variation_api" long-name="AI Variation API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/ai_variation_api/group"/>
</component>
<component name="action_handler_plugin_api" long-name="Action Handler Plugin API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/action_handler_plugin_api/group" filter="!test"/>
</component>
<component name="content_harvester_plugin_api" long-name="Content Harvester Plugin API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/content_harvester_plugin_api/group" filter="!test"/>
</component>
<component name="menu_model_api" long-name="Menu Model API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/menu_model_api/group"/>
</component>
<component name="menu_sat_interface_api" long-name="Menu SAT Interface API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/menu_sat_interface_api/group" filter="!test"/>
</component>
<component name="external_home_screen_api" long-name="External Home Screen API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/external_home_screen_api/group"/>
</component>
<component name="menu_content_service_api" long-name="Menu Content Service API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/menu_content_service_api/group" filter="!test"/>
</component>
<component name="sapi_contentpublishing" long-name="SAPI Content Publishing" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/sapi_contentpublishing/group"/>
</component>
<component name="sapi_backstepping" long-name="SAPI Backstepping" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/sapi_backstepping/group"/>
</component>
<component name="sapi_actionhandler" long-name="SAPI Action Handler" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/sapi_actionhandler/group"/>
</component>
<component name="sapi_homescreenplugin" long-name="SAPI Homescreen Plugin" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/sapi_homescreenplugin/group" filter="!test"/>
</component>
<component name="sapi_menucontent" long-name="SAPI Menu Content" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/sapi_menucontent/group"/>
</component>
<component name="xcfw_api" long-name="XCFW API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/xcfw_api/group"/>
</component>
<component name="idlefw_api" long-name="Idle Framework API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/idlefw_api/group"/>
</component>
<component name="hs_widget_publisher_api" long-name="Home Screen Publishing API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/hs_widget_publisher_api/group"/>
</component>
<component name="hs_settings_api" long-name="HS Settings API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/hs_settings_api/group"/>
</component>
<component name="hs_content_control_api" long-name="HS Content Control API" filter="s60" class="api">
<unit bldFile="mw/homescreensrv/homescreensrv_plat/hs_content_control_api/group"/>
</component>
</collection>
<collection name="xcfw" long-name="XML Content Framework" level="framework">
<!-- collection is really a component, needs to be moved down a directory -->
<component name="xcfw_build" filter="s60" long-name="XML Content Framework Build">
<unit bldFile="mw/homescreensrv/xcfw/group"/>
</component>
</collection>
<collection name="homescreenpluginsrv" long-name="Home Screen Plugin Service" level="plugin">
<component name="hspsdefinitionengine" filter="s60" long-name="HS Plugin Service Definition Engine" class="placeholder">
<!-- <unit bldFile="homescreenpluginsrv/hspsdefinitionengine/group"/> -->
</component>
<component name="hspsdom" filter="s60" long-name="HS Plugin Service DOM" class="placeholder">
<!-- <unit bldFile="homescreenpluginsrv/hspsdom/group"/> -->
</component>
<component name="hspstools" filter="s60" long-name="HS Server Tools">
<!-- <unit bldFile="homescreenpluginsrv/hspstools/group"/> -->
</component>
<component name="hspspluginregistry" filter="s60" long-name="HS Plugin Registry" class="placeholder">
<!-- <unit bldFile="homescreenpluginsrv/hspspluginregistry/group"/>-->
</component>
<component name="hspsmanager" filter="s60" long-name="HSPS Manager" class="placeholder">
<!-- <unit bldFile="homescreenpluginsrv/hspsmanager/group"/>-->
</component>
<component name="hspsodt" filter="s60" long-name="HSPS Object Description Tree" class="placeholder">
<!-- <unit bldFile="homescreenpluginsrv/hspsodt/group"/>-->
</component>
<component name="hspsresource" filter="s60" long-name="HS Plugin Server Resource" class="placeholder">
<!-- <unit bldFile="homescreenpluginsrv/hspsresource/group"/>-->
</component>
<component name="hspsresult" filter="s60" long-name="HS Plugin Server Result" class="placeholder">
<!-- <unit bldFile="homescreenpluginsrv/hspsresult/group"/>-->
</component>
<component name="homescreen_settings_api" filter="s60" long-name="HS Settings API" class="api placeholder">
<!-- <unit bldFile="homescreenpluginsrv/hspsresult/group"/>-->
</component>
<component name="homescreenpluginsrv_build" filter="s60" long-name="HSPS Build">
<!-- need to break this up into the self-contained components above and uncomment them -->
<unit bldFile="mw/homescreensrv/homescreenpluginsrv/group"/>
</component>
</collection>
<collection name="idlefw" long-name="Idle Framework" level="framework">
<!-- Uncomment all units when configuration is in place. All currently #included from idlefw_build -->
<component name="idlefw_plugins" filter="s60" long-name="Idle Framework Plugins" plugin="Y" class="placeholder">
<!--<unit bldFile="idlefw/plugins/group"/>-->
</component>
<component name="hslaunch" filter="s60" long-name="Home Screen Launch" class="placeholder">
<!--<unit bldFile="idlefw/plugins/group"/>-->
</component>
<component name="idlefw_build" filter="s60" long-name="Idle Framework Build">
<!--split this into components, or separate from the above components and move this down a directory -->
<unit bldFile="mw/homescreensrv/idlefw/group"/>
</component>
</collection>
<collection name="menucontentsrv" long-name="Menu Content Service" level="generic">
<component name="menusatinterface" filter="s60" long-name="Menu SAT Interface">
<unit bldFile="mw/homescreensrv/menucontentsrv/menusatinterface/group"/>
</component>
<component name="menucontentsrv_build" filter="s60" long-name="Menu Content Service Build">
<!--split this into components, or separate from the above component and move this down a directory -->
<unit bldFile="mw/homescreensrv/menucontentsrv/group"/>
</component>
</collection>
<collection name="backsteppingsrv" long-name="Back Stepping Service" level="server">
<!-- collection is really a component, needs to be moved down a directory -->
<component name="bsengine" long-name="Back Stepping Engine" filter="s60">
<unit bldFile="mw/homescreensrv/backsteppingsrv/group"/>
</component>
</collection>
<collection name="contentpublishingsrv" long-name="Content Publishing Service" level="server">
<component name="contentpublishingdebug" filter="s60" long-name="Content Publishing Debug">
<!-- need to move this component outside of contentpublishingutils and into separate component directory -->
<!-- <unit bldFile="contentpublishingsrv/contentpublishingutils/contentpublishingdebug/group"/> -->
</component>
<component name="contentpublishingutils" filter="s60" long-name="Content Publishing Utils">
<unit bldFile="mw/homescreensrv/contentpublishingsrv/contentpublishingutils/group"/>
</component>
<component name="contentpublishingserver" filter="s60" long-name="Content Publishing Server">
<unit bldFile="mw/homescreensrv/contentpublishingsrv/contentpublishingserver/group"/>
</component>
<component name="contentharvester" filter="s60" long-name="Content Harvester">
<unit bldFile="mw/homescreensrv/contentpublishingsrv/contentharvester/group"/>
</component>
<component name="contentpublishingsrv_build" filter="s60" long-name="Content Publishing Service Build">
<!-- need to remove links to the above components and just contain the IBY (or move the IBY into another component).
If keeping, it need to move down a directory.-->
<unit bldFile="mw/homescreensrv/contentpublishingsrv/group"/>
</component>
</collection>
<collection name="contentcontrolsrv" long-name="Content Control Service" level="server">
<component name="ccsrv" long-name="Content Control Service" filter="s60" introduced="^3">
<unit bldFile="mw/homescreensrv/contentcontrolsrv/ccsrv/group"/>
</component>
<component name="ccsrvapi" long-name="Content Control Service API" filter="s60" introduced="^3" class="api">
<unit bldFile="mw/homescreensrv/contentcontrolsrv/ccsrvapi/group"/>
</component>
<component name="ccclientsession" long-name="Content Control Client Session" filter="s60" introduced="^3">
<unit bldFile="mw/homescreensrv/contentcontrolsrv/ccclientsession/group"/>
</component>
<component name="hsccclient" long-name="HS Content Control Client" filter="s60" introduced="^3">
<unit bldFile="mw/homescreensrv/contentcontrolsrv/hsccclient/group"/>
</component>
<component name="hscontentinfo" long-name="Home Screen Content Info" filter="s60" introduced="^3">
<unit bldFile="mw/homescreensrv/contentcontrolsrv/hscontentinfo/group"/>
</component>
<component name="contentcontrolsrv_build" long-name="Content Control Service Build" filter="s60" introduced="^3">
<!-- need to remove links to the above components and just contain the IBY (or move the IBY into another component).
If keeping, it need to move down a directory.-->
<unit bldFile="mw/homescreensrv/contentcontrolsrv/group"/>
</component>
</collection>
</block>
<block name="appinstall" level="generic" long-name="Application Installation" levels="tool framework generic api">
<collection name="appinstall_plat" long-name="Application Installation Platform Interfaces" level="api">
<component name="iaupdate_api" long-name="IA Update API" filter="s60" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/iaupdate_api/group"/>
</component>
<component name="task_plugin_api" long-name="Task Plugin API" filter="s60" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/task_plugin_api/group"/>
</component>
<component name="sw_installer_common_ui_api" long-name="SW Installer Common UI API" filter="s60" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/sw_installer_common_ui_api/group"/>
</component>
<component name="sw_installer_launcher_api" long-name="SW Installer Launcher API" filter="s60" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/sw_installer_launcher_api/group"/>
</component>
<component name="task_management_api" long-name="Task Management API" filter="s60" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/task_management_api/group"/>
</component>
<component name="sw_installer_ui_plugin_api" long-name="SW Installer UI Plugin API" filter="s60" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/sw_installer_ui_plugin_api/group"/>
</component>
<component name="sw_installer_cr_keys" long-name="SW Installer CR Keys" filter="s60" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/sw_installer_cr_keys/group"/>
</component>
<component name="sw_installer_ps_keys" long-name="SW Installer PS Keys" filter="s60" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/sw_installer_ps_keys/group"/>
</component>
<component name="appmngr2runtimeapi" long-name="Application Manager 2 Runtime Plugin API" filter="s60" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/appmngr2runtimeapi/group"/>
</component>
</collection>
<collection name="appinstall_pub" long-name="Application Installation Public Interfaces" level="api">
<component name="startup_list_management_api" long-name="Startup List Management API" filter="s60" class="api">
<unit bldFile="mw/appinstall/appinstall_pub/startup_list_management_api/group"/>
</component>
</collection>
<collection name="ncdengine" long-name="Nokia Content Discover" level="framework">
<!-- is this really just a component? If so move down one diretcory. Otherwise properly split up the bld.inf -->
<component name="ncdengine_engine" filter="s60" long-name="NCD Engine" introduced="^1">
<unit bldFile="mw/appinstall/ncdengine/engine/group"/>
</component>
<component name="debuglogger" filter="s60" long-name="NCD Debug Logger" introduced="^1" class="placeholder">
<!-- <unit bldFile="ncdengine/debuglogger/group"/> -->
</component>
<component name="ncdengine_build" filter="s60" long-name="NCD Build" introduced="^1">
<unit bldFile="mw/appinstall/ncdengine/group"/>
</component>
</collection>
<collection name="appinstaller" long-name="Application Installer" level="generic">
<component name="appmngr2" filter="s60" long-name="Application Manager 2" introduced="^2">
<unit bldFile="mw/appinstall/appinstaller/appmngr2/group"/>
</component>
<component name="appinstui" filter="s60" long-name="Application Installer UI" introduced="^2">
<unit bldFile="mw/appinstall/appinstaller/appinstui/group"/>
</component>
</collection>
<collection name="iaupdateapi_stub" long-name="IA Update API Stub" level="api">
<!-- the collection is really a component. Move down a directory.-->
<component name="iaupdateapi_stub_build" long-name="IA Update API Stub Build" filter="s60" introduced="^2">
<unit bldFile="mw/appinstall/iaupdateapi_stub/group"/>
</component>
</collection>
<collection name="iaupdate" long-name="Independent Apps Update" level="api">
<!-- is this really just a component? If so move down one diretcory. Otherwise properly split up the bld.inf -->
<component name="iad" long-name="Software Update" filter="s60" introduced="^2">
<unit bldFile="mw/appinstall/iaupdate/iad/group"/>
</component>
<component name="iaupdate_help" filter="s60" long-name="IA Update Help" introduced="^2">
<unit bldFile="mw/appinstall/iaupdate/help/group"/>
</component>
<component name="iaupdate_build" filter="s60" long-name="IA Update Build" introduced="^2">
<unit bldFile="mw/appinstall/iaupdate/group"/>
</component>
</collection>
<collection name="installationservices" long-name="Installation Services" level="generic">
<component name="swi" long-name="Secure Software Install" purpose="optional">
<unit bldFile="mw/appinstall/installationservices/swi/group" mrp="mw/appinstall/installationservices/swi/group/security_swi.mrp"/>
</component>
<component name="swidevicetools" long-name="Secure Software Install Device Tools" introduced="8.1" purpose="development">
<unit bldFile="mw/appinstall/installationservices/swidevicetools/group" mrp="mw/appinstall/installationservices/swidevicetools/group/security_switools_device.mrp"/>
</component>
<component name="swiconfig" long-name="Software Install Config" introduced="9.1" purpose="optional" class="config">
<unit bldFile="mw/appinstall/installationservices/swiconfig/group" mrp="mw/appinstall/installationservices/swiconfig/group/install_config.mrp"/>
</component>
</collection>
<collection name="secureswitools" long-name="Secure Software Install Tools" level="tool">
<component name="makekeys" long-name="MakeKeys" filter="gt" introduced="6.0" purpose="optional" class="PC">
<unit bldFile="mw/appinstall/secureswitools/makekeys/group" mrp="mw/appinstall/secureswitools/makekeys/group/security_makekeys.mrp"/>
</component>
<component name="swianalysistoolkit" long-name="SWI Analysis Toolkit" purpose="development" class="PC">
<unit bldFile="mw/appinstall/secureswitools/swianalysistoolkit/group" mrp="mw/appinstall/secureswitools/swianalysistoolkit/group/security_switools.mrp"/>
</component>
<component name="openssllib" long-name="OpenSSL Library" purpose="optional" class="PC">
<unit mrp="mw/appinstall/secureswitools/openssllib/security_openssl.mrp"/>
</component>
<component name="swisistools" long-name="Secure Software Install SIS Tools" purpose="optional" class="PC">
<unit bldFile="mw/appinstall/secureswitools/swisistools/group" mrp="mw/appinstall/secureswitools/swisistools/group/security_sistools.mrp"/>
</component>
</collection>
<collection name="appinstall_info" long-name="Application Installation Info" level="api">
<component name="appinstall_metadata" long-name="Application Installation Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/appinstall/appinstall_info/appinstall_metadata/appinstall_metadata.mrp"/>
</component>
</collection>
</block>
<block name="serviceapifw" level="specific" long-name="Service API Framework" levels="plugin framework server generic specific">
<collection name="serviceapifw_pub" long-name="Service API Framework Public Interfaces" level="specific"/>
<collection name="serviceapifw_plat" long-name="Service API Framework Platform Interfaces" level="specific">
<component name="rtsecuritymanager_common_api" long-name="Runtime Security Manager Common API" filter="s60" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/rtsecuritymanager_common_api/group"/>
</component>
<component name="rtsecuritymanager_utility_api" long-name="Runtime Security Manager Utility API" filter="s60" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/rtsecuritymanager_utility_api/group"/>
</component>
<component name="rtsecuritymanager_client_api" long-name="Runtime Security Manager Client API" filter="s60" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/rtsecuritymanager_client_api/group"/>
</component>
<component name="liw_provider_utility_api" long-name="LIW Provider Utility API" filter="s60" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/liw_provider_utility_api/group"/>
</component>
<component name="liw_service_interface_base_api" long-name="LIW Service Interface Base API" filter="s60" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/liw_service_interface_base_api/group"/>
</component>
<component name="liw_service_interface_menu_api" long-name="LIW Service Interface Menu API" filter="s60" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/liw_service_interface_menu_api/group"/>
</component>
<component name="liw_criteria_api" long-name="LIW Criteria API" filter="s60" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/liw_criteria_api/group"/>
</component>
<component name="liw_generic_parameter_api" long-name="LIW Generic Parameter API" filter="s60" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/liw_generic_parameter_api/group"/>
</component>
<component name="liw_service_handler_api" long-name="LIW Service Handler API" filter="s60" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/liw_service_handler_api/group"/>
</component>
</collection>
<collection name="rtsecuritymanager" long-name="Runtime Security Manager" level="server">
<component name="rtsecuritymanagerutil" filter="s60" long-name="Runtime Security Manager Util">
<unit bldFile="mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerutil/group"/>
</component>
<component name="rtsecuritymanagerserver" filter="s60" long-name="Runtime Security Manager Server">
<unit bldFile="mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerserver/group"/>
</component>
<component name="rtsecuritymanagerclient" filter="s60" long-name="Runtime Security Manager Client">
<unit bldFile="mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerclient/group"/>
</component>
<component name="rtsecuritymanager_build" filter="s60" long-name="Runtime Security Manager Build">
<!-- Move the export to the appropriate components, or make this a ROM component by removing the #includes -->
<unit bldFile="mw/serviceapifw/rtsecuritymanager/group"/>
</component>
</collection>
<collection name="languageinterworkingfw" long-name="Language Interworking Framework" level="framework">
<component name="lifwservicehandler" filter="s60" long-name="Service Handler">
<unit bldFile="mw/serviceapifw/languageinterworkingfw/servicehandler/group"/>
</component>
</collection>
</block>
<block name="serviceapi" level="specific" long-name="Service API" levels="os mw1 mw2 app">
<!-- should break up this collection into something meaningful -->
<collection name="serviceproviders" long-name="Service Providers" level="mw1">
<component name="sapi_contacts_vpbk" long-name="Contacts Phonebook SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_contacts_vpbk/group"/>
</component>
<component name="sapi_location" long-name="Location SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_location/group"/>
</component>
<component name="sapi_mediamanagement" long-name="Media Management SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_mediamanagement/group"/>
</component>
<component name="sapi_landmarks" long-name="Landmarks SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_landmarks/group"/>
</component>
<component name="sapi_messaging" long-name="Messaging SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_messaging/group"/>
</component>
<component name="sapi_applicationmanager" long-name="Application Manager SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_applicationmanager/group"/>
</component>
<component name="sapi_calendar" long-name="Calendar SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_calendar/group"/>
</component>
<component name="sapi_logging" long-name="Logging SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_logging/group"/>
</component>
<component name="sapi_sensor" long-name="Sensor SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_sensor/group"/>
</component>
<component name="sapi_sysinfo" long-name="Sysinfo SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_sysinfo/group"/>
</component>
<component name="sapi_serviceregistry" long-name="Service Registry SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_serviceregistry/group"/>
</component>
<component name="jsapi" long-name="Javascript API" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/jsapi/group"/>
</component>
<component name="serviceproviders_build" filter="s60" long-name="Service API Build">
<!-- distribute the exports or make this a ROM component by removing the #includes -->
<unit bldFile="mw/serviceapi/serviceproviders/group"/>
</component>
</collection>
</block>
<block name="web" level="specific" long-name="Web" levels="plugin utils server generic specific">
<collection name="web_pub" long-name="Web Public Interfaces" level="specific">
<component name="browser_control_api" long-name="Browser Control API" filter="s60" class="api">
<unit bldFile="mw/web/web_pub/browser_control_api/group"/>
</component>
<component name="download_mgr_client_api" long-name="Download Manager Client API" filter="s60" class="api">
<unit bldFile="mw/web/web_pub/download_mgr_client_api/group"/>
</component>
<component name="download_mgr_ui_api" long-name="Download Manager UI Library API" filter="s60" class="api">
<unit bldFile="mw/web/web_pub/download_mgr_ui_api/group"/>
</component>
<component name="favourites_engine_api" long-name="Favourites Engine API" filter="s60" class="api">
<unit bldFile="mw/web/web_pub/favourites_engine_api/group"/>
</component>
<component name="browser_plugin_api" long-name="Browser Plug-in API" filter="s60" class="api">
<unit bldFile="mw/web/web_pub/browser_plugin_api/group"/>
</component>
<component name="settings_api" long-name="Settings API" filter="s60" class="api">
<unit bldFile="mw/web/web_pub/settings_api/group"/>
</component>
</collection>
<collection name="web_plat" long-name="Web Platform Interfaces" level="specific">
<component name="aiw_browser_provider_api" long-name="AIW Browser Provider API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/aiw_browser_provider_api/group"/>
</component>
<component name="browser_dialogs_provider_api" long-name="Browser Dialogs Provider API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/browser_dialogs_provider_api/group"/>
</component>
<component name="browser_platform_api" long-name="Browser Platform API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/browser_platform_api/group"/>
</component>
<component name="cod_handler_api" long-name="COD Handler API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/cod_handler_api/group"/>
</component>
<component name="connection_manager_api" long-name="Connection Manager API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/connection_manager_api/group"/>
</component>
<component name="cxml_library_api" long-name="cXml Library API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/cxml_library_api/group"/>
</component>
<component name="download_mgr_client_api_extn" long-name="Download Manager Client API Extension" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/download_mgr_client_api_extn/group"/>
</component>
<component name="download_path_plugin_api" long-name="Download Path Plugin API" filter="s60" introduced="^3" class="api">
<unit bldFile="mw/web/web_plat/download_path_plugin_api/group"/>
</component>
<component name="feeds_engine_api" long-name="Feeds Engine API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/feeds_engine_api/group"/>
</component>
<component name="launcher_api" long-name="Launcher API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/launcher_api/group"/>
</component>
<component name="multipart_parser_api" long-name="Multipart Parser API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/multipart_parser_api/group"/>
</component>
<component name="recent_url_store_api" long-name="Recent URL Store API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/recent_url_store_api/group"/>
</component>
<component name="scheme_handler_plugin_api" long-name="Scheme Handler Plugin API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/scheme_handler_plugin_api/group"/>
</component>
<component name="scriptable_plugin_api" long-name="Scriptable Plugin API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/scriptable_plugin_api/group"/>
</component>
<component name="webutils_api" long-name="Web Utils API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/webutils_api/group"/>
</component>
<component name="widget_registry_api" long-name="Widget Registry API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/widget_registry_api/group"/>
</component>
<component name="xml_parser_api" long-name="XML Parser API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/xml_parser_api/group"/>
</component>
<component name="stmgesturefw_api" long-name="State Machine Gesture Framework API " filter="s60" class="api">
<unit bldFile="mw/web/web_plat/stmgesturefw_api/group"/>
</component>
</collection>
<collection name="web_info" long-name="Web Info" level="specific">
<component name="web_build" filter="s60" long-name="Web Build">
<!-- when configuration is in place, the #ifdef is no longer needed and this component can be removed -->
<unit bldFile="mw/web/group"/>
</component>
</collection>
<collection name="browserutilities" long-name="Browser Utilities" level="utils">
<component name="browserdialogsprovider" filter="s60" long-name="Browser Dialogs Provider">
<unit bldFile="mw/web/browserutilities/browserdialogsprovider/group"/>
</component>
<component name="recenturlstore" filter="s60" long-name="Recent URL Store">
<unit bldFile="mw/web/browserutilities/recenturlstore/group"/>
</component>
<component name="xmlparser" filter="s60" long-name="XML Interface">
<unit bldFile="mw/web/browserutilities/xmlparser/group"/>
</component>
<component name="cxmllibrary" filter="s60" long-name="XML Parser Implementation">
<unit bldFile="mw/web/browserutilities/cxmllibrary/group"/>
</component>
<component name="downloadmgr" filter="s60" long-name="Download Manager">
<unit bldFile="mw/web/browserutilities/downloadmgr/group"/>
</component>
<component name="connectionmanager" filter="s60" long-name="Connection Manager">
<unit bldFile="mw/web/browserutilities/connectionmanager/group"/>
</component>
<component name="browsertelservice" filter="s60" long-name="Browser Telephony Service">
<unit bldFile="mw/web/browserutilities/browsertelservice/group"/>
</component>
<component name="favouritesengine" filter="s60" long-name="Favourites Engine">
<unit bldFile="mw/web/browserutilities/favouritesengine/group"/>
</component>
<component name="feedsengine" filter="s60" long-name="Feeds Engine">
<unit bldFile="mw/web/browserutilities/feedsengine/group"/>
</component>
<component name="multipartparser" filter="s60" long-name="Multipart Parser">
<!-- uncomment the unit when configuration is in place, it's currently #included from browserutilities_build -->
<!-- <unit bldFile="browserutilities/multipartparser/group"/> -->
</component>
<component name="schemehandler" filter="s60" long-name="Scheme Handler">
<unit bldFile="mw/web/browserutilities/schemehandler/group"/>
</component>
<component name="webutils" filter="s60" long-name="Web Utils">
<unit bldFile="mw/web/browserutilities/webutils/group"/>
</component>
<component name="aiwbrowserprovider" filter="s60" long-name="AIW Browser Provider" plugin="Y">
<unit bldFile="mw/web/browserutilities/aiwbrowserprovider/group"/>
</component>
<component name="browserutilities_build" filter="s60" long-name="Browser Utilities Build">
<!-- when configuration is in place, the #ifdef is no longer needed and this component can be removed -->
<unit bldFile="mw/web/browserutilities/group"/>
</component>
</collection>
<collection name="webengine" long-name="Web Engine" level="server">
<component name="osswebengine" filter="s60" long-name="OSS Web Engine">
<!-- can only have one unit. Either split into multiple components or #include from a single main bld.inf -->
<unit bldFile="mw/web/webengine/osswebengine/cache/group"/>
<unit bldFile="mw/web/webengine/osswebengine/memorymanager/group"/>
<unit bldFile="mw/web/webengine/osswebengine/npscript/group"/>
<unit bldFile="mw/web/webengine/osswebengine/webkit/s60/group"/>
<unit bldFile="mw/web/webengine/osswebengine/webkit/s60/group/javascriptcore"/>
</component>
<component name="webkitutils" filter="s60" long-name="WebKit Utils">
<unit bldFile="mw/web/webengine/webkitutils/group"/>
</component>
<component name="pagescaler" filter="s60" long-name="Page Scaler">
<unit bldFile="mw/web/webengine/pagescaler/group"/>
</component>
<component name="webwidgetinstaller" filter="s60" long-name="Widget Installer">
<unit bldFile="mw/web/webengine/widgetinstaller/group"/>
</component>
<component name="widgetregistry" filter="s60" long-name="Widget Registry">
<unit bldFile="mw/web/webengine/widgetregistry/group"/>
</component>
<component name="wmlengine" filter="s60" long-name="WML Engine">
<unit bldFile="mw/web/webengine/wmlengine/group"/>
</component>
<component name="device" filter="s60" long-name="Device">
<!-- this needs a more meaningful name -->
<unit bldFile="mw/web/webengine/device/group"/>
</component>
<component name="widgetengine" filter="s60" long-name="Widget Engine">
<unit bldFile="mw/web/webengine/widgetengine/group"/>
</component>
<component name="web_memoryplugin" long-name="Memory Plugin" filter="s60" plugin="Y">
<unit bldFile="mw/web/webengine/memoryplugin/group"/>
</component>
<component name="widgetmemoryplugin" filter="s60" long-name="Widget Memory Plugin" plugin="Y">
<unit bldFile="mw/web/webengine/widgetmemoryplugin/group"/>
</component>
<component name="widgetbackuprestore" filter="s60" long-name="Widget Backup and Restore">
<unit bldFile="mw/web/webengine/widgetbackuprestore/group"/>
</component>
<component name="browserrecognizers" filter="s60" long-name="Browser Recognizers" plugin="Y">
<unit bldFile="mw/web/webengine/browserrecognizers/group"/>
</component>
<component name="wrtharvester" filter="s60" long-name="Web Runtime Harvester" plugin="Y">
<unit bldFile="mw/web/webengine/wrtharvester/group"/>
</component>
</collection>
<collection name="codhandler" long-name="Content Object Descriptor Handler" level="specific">
<component name="codeng" filter="s60" long-name="COD Engine">
<unit bldFile="mw/web/codhandler/codeng/group"/>
</component>
<component name="codui" filter="s60" long-name="COD UI">
<unit bldFile="mw/web/codhandler/codui/group"/>
</component>
<component name="codrecog" filter="s60" long-name="COD Recogniser" plugin="Y">
<unit bldFile="mw/web/codhandler/codrecog/group"/>
</component>
<component name="codviewer" filter="s60" long-name="COD Viewer">
<unit bldFile="mw/web/codhandler/codviewer/group"/>
</component>
<component name="ddrecog" filter="s60" long-name="Download Descriptor Recogniser" plugin="Y">
<unit bldFile="mw/web/codhandler/ddrecog/group"/>
</component>
<component name="ddviewer" filter="s60" long-name="Download Descriptor Viewer">
<unit bldFile="mw/web/codhandler/ddviewer/group"/>
</component>
<component name="coddownload" filter="s60" long-name="COD Download">
<unit bldFile="mw/web/codhandler/coddownload/group"/>
</component>
<component name="roapapp" filter="s60" long-name="ROAP Application">
<unit bldFile="mw/web/codhandler/roapapp/group"/>
</component>
<component name="codhandler_build" filter="s60" long-name="COD Handler Build">
<!-- Exports need to go into another component or make this self-contained.
#included .hrh file needs to be #included in each of the other components -->
<unit bldFile="mw/web/codhandler/group"/>
</component>
</collection>
<collection name="widgets" long-name="Web Widget Framework" level="generic">
<!-- the following units can be uncommented when configuration is put in place -->
<component name="widgetrecognizer" filter="s60" long-name="Widget Recognizer" plugin="Y">
<!--<unit bldFile="widgets/widgetrecognizer/group"/>-->
</component>
<component name="widgetinstaller" filter="s60" long-name="Widget Installer UI" plugin="Y">
<!--<unit bldFile="widgets/widgetinstaller/group"/>-->
</component>
<component name="widgetlauncher" filter="s60" long-name="Widget Launcher">
<!-- <unit bldFile="widgets/widgetlauncher/group"/>-->
</component>
<component name="widgetapp" filter="s60" long-name="Widget UI">
<!--<unit bldFile="widgets/widgetapp/group"/>-->
</component>
<component name="widgetsidchecker" filter="s60" long-name="Widget SID Checker" introduced="^3">
<!--<unit bldFile="widgets/widgetsidchecker/group"/>-->
</component>
<component name="widgetpreinstaller" filter="s60" long-name="Widget Pre-Installer">
<!--<unit bldFile="widgets/widgetpreinstaller/group"/>-->
</component>
<component name="widgetstartup" filter="s60" long-name="Widget Startup">
<!--<unit bldFile="widgets/widgetstartup/group"/>-->
</component>
<component name="widgets_build" filter="s60" long-name="Widgets Build">
<!-- when configuration is in place, the #ifdef is no longer needed and this component can be removed
#included .hrh file needs to be #included in each of the other components -->
<unit bldFile="mw/web/widgets/group"/>
</component>
</collection>
</block>
<block name="websrv" level="generic" long-name="Web Services" levels="plugin framework server generic specific">
<collection name="websrv_pub" long-name="Web Services Public Interfaces" level="specific">
<component name="web_service_description_api" long-name="Web Service Description API" filter="s60" class="api">
<unit bldFile="mw/websrv/websrv_pub/web_service_description_api/group"/>
</component>
<component name="web_service_connection_api" long-name="Web Service Connection API" filter="s60" class="api">
<unit bldFile="mw/websrv/websrv_pub/web_service_connection_api/group"/>
</component>
<component name="web_service_manager_api" long-name="Web Service Manager API" filter="s60" class="api">
<unit bldFile="mw/websrv/websrv_pub/web_service_manager_api/group"/>
</component>
<component name="hostlet_connection_api" long-name="Hostlet Connection API" filter="s60" class="api">
<unit bldFile="mw/websrv/websrv_pub/hostlet_connection_api/group"/>
</component>
<component name="web_service_messaging_api" long-name="Web Service Messaging API" filter="s60" class="api">
<unit bldFile="mw/websrv/websrv_pub/web_service_messaging_api/group"/>
</component>
<component name="xml_extensions_api" long-name="XML Extensions API" filter="s60" class="api">
<unit bldFile="mw/websrv/websrv_pub/xml_extensions_api/group"/>
</component>
<component name="xml_fragment_api" long-name="XML Fragment API" filter="s60" class="api">
<unit bldFile="mw/websrv/websrv_pub/xml_fragment_api/group"/>
</component>
</collection>
<collection name="webservices" long-name="Web Services Framework" level="generic">
<!-- consider breaking this collection into more meaningful subsets -->
<component name="wsnotifierplugins" filter="s60" long-name="WS Notifier Plugins" plugin="Y">
<unit bldFile="mw/websrv/webservices/wsnotifierplugins/group"/>
</component>
<component name="wslogger" filter="s60" long-name="WS Logger">
<unit bldFile="mw/websrv/webservices/wslogger/group"/>
</component>
<component name="wsxml" filter="s60" long-name="WS XML Extensions">
<unit bldFile="mw/websrv/webservices/wsxml/group"/>
</component>
<component name="wsutils" filter="s60" long-name="WS Utils">
<unit bldFile="mw/websrv/webservices/wsutils/group"/>
</component>
<component name="wsfragment" filter="s60" long-name="WS Fragment">
<unit bldFile="mw/websrv/webservices/wsfragment/group"/>
</component>
<component name="wsdescription" filter="s60" long-name="WS Service Description">
<unit bldFile="mw/websrv/webservices/wsdescription/group"/>
</component>
<component name="wsconnection" filter="s60" long-name="WS Service Connection">
<unit bldFile="mw/websrv/webservices/wsconnection/group"/>
</component>
<component name="wsmessages" filter="s60" long-name="WS Messages">
<unit bldFile="mw/websrv/webservices/wsmessages/group"/>
</component>
<component name="wscredentialmanager" filter="s60" long-name="WS Credential Manager">
<unit bldFile="mw/websrv/webservices/wscredentialmanager/group"/>
</component>
<component name="wsframework" filter="s60" long-name="WS Framework">
<unit bldFile="mw/websrv/webservices/wsframework/group"/>
</component>
<component name="wshttpchanneltransportplugin" filter="s60" long-name="WS HTTP Channel Transport Plugin" plugin="Y">
<unit bldFile="mw/websrv/webservices/wshttpchanneltransportplugin/group"/>
</component>
<component name="wsconnectionagent" filter="s60" long-name="WS Connection Agent">
<unit bldFile="mw/websrv/webservices/wsconnectionagent/group"/>
</component>
<component name="wsprovider" filter="s60" long-name="WS Provider">
<unit bldFile="mw/websrv/webservices/wsprovider/group"/>
</component>
<component name="wshostletconnection" filter="s60" long-name="WS Hostlet Connection">
<unit bldFile="mw/websrv/webservices/wshostletconnection/group"/>
</component>
<component name="wsmanager" filter="s60" long-name="WS Service Manager">
<unit bldFile="mw/websrv/webservices/wsmanager/group"/>
</component>
<component name="wsidentitymanager" filter="s60" long-name="WS Identity Manager">
<unit bldFile="mw/websrv/webservices/wsidentitymanager/group"/>
</component>
<component name="idwsfplugin" filter="s60" long-name="ID-WSF Plugin" plugin="Y">
<unit bldFile="mw/websrv/webservices/idwsfplugin/group"/>
</component>
<component name="wsibasicplugin" filter="s60" long-name="WS-I Basic Plugin" plugin="Y">
<unit bldFile="mw/websrv/webservices/wsibasicplugin/group"/>
</component>
<component name="wsrestplugin" filter="s60" long-name="WS REST Plugin" plugin="Y">
<unit bldFile="mw/websrv/webservices/wsrestplugin/group"/>
</component>
<component name="idwsfsecuritymechanism" filter="s60" long-name="ID-WSF Security Mechanism">
<unit bldFile="mw/websrv/webservices/idwsfsecuritymechanism/group"/>
</component>
<component name="wspasswordtransforms" filter="s60" long-name="WS Password Transforms">
<unit bldFile="mw/websrv/webservices/wspasswordtransforms/group"/>
</component>
<component name="wscore" filter="s60" long-name="WS Core Service Manager">
<unit bldFile="mw/websrv/webservices/wscore/group"/>
</component>
<component name="wslocaltransportplugin" filter="s60" long-name="WS Local Transport Plugin" plugin="Y">
<unit bldFile="mw/websrv/webservices/wslocaltransportplugin/group"/>
</component>
<component name="wshostlettransportplugin" filter="s60" long-name="WS Hostlet Transport Plugin" plugin="Y">
<unit bldFile="mw/websrv/webservices/wshostlettransportplugin/group"/>
</component>
<component name="wsstar" filter="s60" long-name="WS Star">
<!-- can only have one unit. Need to split into separate components or #include from a single bld.inf -->
<unit bldFile="mw/websrv/webservices/wsstar/wsstarpolicy/group"/>
<unit bldFile="mw/websrv/webservices/wsstar/wsstarplugin/group"/>
<unit bldFile="mw/websrv/webservices/wsstar/wsstarmessagehandlers/group"/>
</component>
<component name="wsoviplugin" filter="s60" long-name="WS Ovi Plugin">
<unit bldFile="mw/websrv/webservices/wsoviplugin/group"/>
</component>
<component name="webservices_build" filter="s60" long-name="Web Services Build">
<!-- need to split into self-contained components -->
<unit bldFile="mw/websrv/webservices/group"/>
</component>
</collection>
<collection name="websrv_info" long-name="Web Services Info" level="specific">
<component name="websrv_bld" filter="s60" long-name="Web Services Build">
<!-- need to include common .hrh in each unit -->
<unit bldFile="mw/websrv/group"/>
</component>
</collection>
</block>
<block name="platformtools" level="generic" long-name="Platform Tools">
<collection name="gfxconversion" long-name="Graphics Conversion">
<component name="bmconv_s60" filter="s60" long-name="S60 Bitmap Converter" class="PC">
<unit bldFile="mw/platformtools/gfxconversion/bmconv_s60/group"/>
</component>
<component name="mifconv" filter="s60" long-name="Multi Icon File Converter" class="PC">
<unit bldFile="mw/platformtools/gfxconversion/mifconv/group"/>
</component>
</collection>
</block>
<block name="uitools" level="specific" long-name="UI Tools" levels="compile encode tool if">
<collection name="uitools_pub" long-name="UI Tools Public Interfaces" level="if">
<component name="third_party_bitmap_palette_api" long-name="Third Party Bitmap Palette API" filter="s60" class="api">
<unit bldFile="mw/uitools/uitools_pub/third_party_bitmap_palette_api/group"/>
</component>
</collection>
<collection name="uitools_plat" long-name="UI Tools Platform Interfaces" level="if">
<component name="cdl_api" long-name="CDL API" filter="s60" class="api">
<unit bldFile="mw/uitools/uitools_plat/cdl_api/group"/>
</component>
<component name="layout_system_private_api" long-name="Layout System Private API" filter="s60" class="api">
<unit bldFile="mw/uitools/uitools_plat/layout_system_private_api/group"/>
</component>
</collection>
<collection name="cdlcompilertoolkit" long-name="CDL Compiler Toolkit" level="compile">
<!-- collection is actually a component. Needs to be moved down a directory -->
<component name="cdlcompilertoolkit_build" filter="s60" long-name="CDL Compiler Toolkit Build">
<unit bldFile="mw/uitools/cdlcompilertoolkit/group"/>
</component>
</collection>
<collection name="cdlcompiler" long-name="CDL Compiler" level="compile">
<!-- collection is actually a component. Needs to be moved down a directory -->
<component name="cdlcompiler_build" filter="s60" long-name="CDL Compiler Build">
<unit bldFile="mw/uitools/cdlcompiler/group"/>
</component>
</collection>
<collection name="gfxtools" long-name="Graphics Tools" level="tool">
<component name="color" filter="s60" long-name="Bitmap Colour Palette" class="PC">
<unit bldFile="mw/uitools/gfxtools/color/group"/>
</component>
</collection>
<collection name="aknlayoutcompiler" long-name="Avkon Layout Compiler" level="compile">
<!-- collection is actually a component. Needs to be moved down a directory -->
<component name="aknlayoutcompiler_build" filter="s60" long-name="Avkon Layout Compiler Build">
<unit bldFile="mw/uitools/aknlayoutcompiler/group"/>
</component>
</collection>
<collection name="skincompiler" long-name="Skin Compiler" level="compile">
<component name="aknskindesccompiler" filter="s60" long-name="Avkon Skin Descriptor Compiler">
<unit bldFile="mw/uitools/skincompiler/AknSkinDescCompiler/group"/>
</component>
</collection>
<collection name="reszip" long-name="Resource Zip" level="encode">
<!-- collection is actually a component. Needs to be moved down a directory -->
<component name="reszip_build" filter="s60" long-name="Resource Zip Build">
<unit bldFile="mw/uitools/reszip/group"/>
</component>
</collection>
<collection name="toollibraries" long-name="Tool Libraries" level="tool"/>
<collection name="svgtencoder" long-name="SVGT Encoder" level="encode">
<component name="svgtenc" filter="s60" long-name="Standalone SVGT Encoder" class="PC">
<unit bldFile="mw/uitools/svgtencoder/svgtenc/standalone/group"/>
</component>
</collection>
</block>
<!-- <package id="opensrv" level="specific" tech-domain="pr" href="../../../../mw/opensrv/package_definition.xml"/> -->
</layer>
<layer name="app" long-name="Applications" levels="services apps">
<block name="location" level="apps" long-name="Location Apps" levels="ui events loc apps">
<collection name="loc_plat" long-name="Location Apps Platform Interfaces" level="apps"/>
<collection name="loc_pub" long-name="Location Apps Public Interfaces" level="apps">
<component name="landmarks_ui_selector_api" long-name="Landmarks UI Selector API" filter="s60" class="api">
<unit bldFile="app/location/loc_pub/landmarks_ui_selector_api/group"/>
</component>
<component name="landmarks_ui_addedit_api" long-name="Landmarks UI Add/Edit API" filter="s60" class="api">
<unit bldFile="app/location/loc_pub/landmarks_ui_addedit_api/group"/>
</component>
</collection>
<collection name="basiclocationinfodisplay" long-name="Basic Location Info Display" level="ui">
<component name="blid" filter="s60" long-name="Basic Location Info Display Build">
<unit bldFile="app/location/basiclocationinfodisplay/blid/group"/>
</component>
</collection>
<collection name="landmarksui" long-name="Landmarks UI" level="loc">
<component name="landmarksui_help" filter="s60" long-name="Landmarks UI Help">
<unit bldFile="app/location/landmarksui/help/group"/>
</component>
<component name="landmarksui_engine" filter="s60" long-name="Landmarks UI Engine">
<unit bldFile="app/location/landmarksui/engine/group"/>
</component>
<component name="uicontrols" filter="s60" long-name="Landmarks UI Controls">
<unit bldFile="app/location/landmarksui/uicontrols/group"/>
</component>
<component name="landmarksui_commonui" filter="s60" long-name="Landmarks Common UI">
<unit bldFile="app/location/landmarksui/commonui/group"/>
</component>
<component name="landmarksui_app" filter="s60" long-name="Landmarks Application">
<unit bldFile="app/location/landmarksui/app/group"/>
</component>
<component name="msgviewer" filter="s60" long-name="Landmarks Message Viewer">
<unit bldFile="app/location/landmarksui/msgviewer/group"/>
</component>
<component name="landmarksui_build" filter="s60" long-name="Landmarks UI Build">
<!-- consider distributing this into the other components or collapsing into a single component -->
<unit bldFile="app/location/landmarksui/group"/>
</component>
</collection>
<collection name="eventsui" long-name="Location Events UI" level="events">
<component name="eventsui_help" filter="s60" long-name="Events Help">
<unit bldFile="app/location/eventsui/help/group"/>
</component>
<component name="eventsutils" filter="s60" long-name="Events Utils">
<unit bldFile="app/location/eventsui/eventsutils/group"/>
</component>
<component name="eventsengine" filter="s60" long-name="Events Engine">
<unit bldFile="app/location/eventsui/eventsengine/group"/>
</component>
<component name="eventshandlerui" filter="s60" long-name="Events Handler UI">
<unit bldFile="app/location/eventsui/eventshandlerui/group"/>
</component>
<component name="eventseditor" filter="s60" long-name="Events Editor">
<unit bldFile="app/location/eventsui/eventseditor/group"/>
</component>
<component name="eventsmgmtui" filter="s60" long-name="Events Management UI">
<unit bldFile="app/location/eventsui/eventsmgmtui/group"/>
</component>
<component name="eventsui_build" filter="s60" long-name="Events UI Build">
<!-- consider distributing this into the other components or collapsing into a single component -->
<unit bldFile="app/location/eventsui/group"/>
</component>
</collection>
<collection name="locationlandmarksrefappfors60" long-name="Location Landmarks Reference App for S60" level="apps">
<!-- this is a component, needs to be moved down a directory -->
<component name="lmrefapp" filter="s60" long-name="Landmarks Reference Application">
<unit bldFile="app/location/locationlandmarksrefappfors60/group"/>
</component>
</collection>
<collection name="locationlandmarksuirefapp" long-name="Location Landmarks UI Reference App" level="apps">
<!-- this is a component, needs to be moved down a directory -->
<component name="lmuirefapp" filter="s60" long-name="Landmarks UI Reference Application">
<unit bldFile="app/location/locationlandmarksuirefapp/group"/>
</component>
</collection>
<collection name="locationsatviewrefapp" long-name="Location Satellite View Reference App" level="apps">
<!-- this is a component, needs to be moved down a directory -->
<component name="satellitereference" filter="s60" long-name="Satellite Info UI Reference Application">
<unit bldFile="app/location/locationsatviewrefapp/group"/>
</component>
</collection>
<collection name="simpsyconfigurator" long-name="Simulation PSY Configurator" level="ui">
<!-- this is a component, needs to be moved down a directory -->
<component name="simpsyui" filter="s60" long-name="Simulation PSY UI">
<unit bldFile="app/location/simpsyconfigurator/group"/>
</component>
</collection>
<collection name="mapnavproviderrefapp" long-name="Map and Navigation Provider Reference App" level="apps">
<!-- this is a component, needs to be moved down a directory -->
<component name="mapnavproviderrefapp_build" filter="s60" long-name="Map and Navigation Provider Reference Application">
<unit bldFile="app/location/mapnavproviderrefapp/group"/>
</component>
</collection>
</block>
<block name="mmsharinguis" level="services" long-name="Multimedia Sharing UIs" levels="base plugin if">
<collection name="mmsharinguis_plat" long-name="Multimedia Sharing UIs Platform Interfaces" level="if">
<component name="multimedia_sharing_settings_api" long-name="Multimedia Sharing Settings API" filter="s60" class="api">
<unit bldFile="app/mmsharinguis/mmsharinguis_plat/multimedia_sharing_settings_api/group"/>
</component>
<component name="multimedia_sharing_resource_api" long-name="Multimedia Sharing Resource API" filter="s60" class="api">
<unit bldFile="app/mmsharinguis/mmsharinguis_plat/multimedia_sharing_resource_api/group"/>
</component>
<component name="multimedia_sharing_manager_api" long-name="Multimedia Sharing Manager API" filter="s60" class="api">
<unit bldFile="app/mmsharinguis/mmsharinguis_plat/multimedia_sharing_manager_api/group"/>
</component>
</collection>
<collection name="mmsharing" long-name="Multimedia Sharing" level="base">
<component name="mmshavailability" filter="s60" long-name="Multimedia Sharing Availability">
<unit bldFile="app/mmsharinguis/mmsharing/mmshavailability/group"/>
</component>
<component name="mmshindicator" filter="s60" long-name="Multimedia Sharing Indicator">
<unit bldFile="app/mmsharinguis/mmsharing/mmshindicator/group"/>
</component>
<!-- consider putting client and server in the same component -->
<component name="mmshmanagercli" filter="s60" long-name="Multimedia Sharing Manager Client">
<unit bldFile="app/mmsharinguis/mmsharing/mmshmanagercli/group" filter="!test"/>
</component>
<component name="mmshmanagersrv" filter="s60" long-name="Multimedia Sharing Manager Server">
<unit bldFile="app/mmsharinguis/mmsharing/mmshmanagersrv/group"/>
</component>
<component name="mmshengine" filter="s60" long-name="Multimedia Sharing Engine">
<unit bldFile="app/mmsharinguis/mmsharing/mmshengine/group"/>
</component>
<component name="mmshui" filter="s60" long-name="Multimedia Sharing UI">
<!-- can only have one unit: need to #include one from the other if it's needed -->
<unit bldFile="app/mmsharinguis/mmsharing/mmshui/group"/>
<unit bldFile="app/mmsharinguis/mmsharing/mmshui/help/group"/>
</component>
<component name="mmsharing_build" filter="s60" long-name="MM Sharing Build">
<unit bldFile="app/mmsharinguis/mmsharing/group"/>
</component>
</collection>
<collection name="mmshplugins" long-name="Multimedia Sharing Plugins" level="plugin">
<component name="mmshaoplugin" filter="s60" long-name="Multimedia Sharing Always Online Plugin" plugin="Y">
<unit bldFile="app/mmsharinguis/mmshplugins/mmshaoplugin/group"/>
</component>
<component name="mmshaiwplugin" filter="s60" long-name="Multimedia Sharing AIW Plugin" plugin="Y">
<unit bldFile="app/mmsharinguis/mmshplugins/mmshaiwplugin/group"/>
</component>
<component name="mmshsipcrplugin" filter="s60" long-name="Multimedia Sharing SIP Client Resolver Plugin" plugin="Y">
<unit bldFile="app/mmsharinguis/mmshplugins/mmshsipcrplugin/group"/>
</component>
<component name="mmshsettingsuiplugin" filter="s60" long-name="Multimedia Sharing Settings UI Plugin" plugin="Y">
<unit bldFile="app/mmsharinguis/mmshplugins/mmshsettingsuiplugin/group"/>
</component>
<component name="mmshwpadapterplugin" filter="s60" long-name="Multimedia Sharing WAP Provisioning Adapter" plugin="Y">
<unit bldFile="app/mmsharinguis/mmshplugins/mmshwpadapterplugin/group"/>
</component>
</collection>
<collection name="mmsharinguis_info" long-name="Multimedia Sharing UIs Info" level="if">
<component name="mmsharinguis_build" filter="s60" long-name="Multimedia Sharing UIs Build">
<!-- consider distributing to other components -->
<unit bldFile="app/mmsharinguis/group"/>
</component>
</collection>
</block>
<block name="phone" level="apps" span="2" long-name="Phone Apps" levels="engine plugin ui app">
<collection name="phone_plat" long-name="Phone Apps Platform Interfaces" level="app">
<component name="3d_ringing_tone_enabler_api" long-name="3D Ringing Tone Enabler API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/3d_ringing_tone_enabler_api/group"/>
</component>
<component name="telephony_comms_information_api" long-name="Telephony Comms Information API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/telephony_comms_information_api/group"/>
</component>
<component name="telephony_information_api" long-name="Telephony Information API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/telephony_information_api/group"/>
</component>
<component name="telephony_device_mode_api" long-name="Telephony Device Mode API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/telephony_device_mode_api/group"/>
</component>
<component name="telephony_remote_party_information_api" long-name="Telephony Remote Party Information API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/telephony_remote_party_information_api/group"/>
</component>
<component name="telephony_video_mailbox_settings_api" long-name="Telephony Video Mailbox Settings API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/telephony_video_mailbox_settings_api/group"/>
</component>
<component name="telephony_configuration_api" long-name="Telephony Configuration API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/telephony_configuration_api/group"/>
</component>
<component name="telephony_microphone_mute_status_api" long-name="Telephony Microphone Mute Status API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/telephony_microphone_mute_status_api/group"/>
</component>
<component name="dialer_keypad_api" long-name="Dialer Keypad API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/dialer_keypad_api/group"/>
</component>
<component name="telephony_logging_extension_api" long-name="Telephony Logging Extension API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/telephony_logging_extension_api/group"/>
</component>
<component name="telephony_matching_extension_api" long-name="Telephony Matching Extension API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/telephony_matching_extension_api/group"/>
</component>
<component name="telephony_bubble_extension_api" long-name="Telephony Bubble Extension API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/telephony_bubble_extension_api/group"/>
</component>
<component name="telephony_menu_extension_api" long-name="Telephony Menu Extension API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/telephony_menu_extension_api/group"/>
</component>
<component name="phone_application_commands_api" long-name="Phone Application Commands API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/phone_application_commands_api/group"/>
</component>
<component name="phone_application_voip_commands_api" long-name="Phone Application VOIP Commands API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/phone_application_voip_commands_api/group"/>
</component>
<component name="telephony_mediator_api" long-name="Telephony Mediator API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/telephony_mediator_api/group"/>
</component>
<component name="video_telephony_mediator_api" long-name="Video Telephony Mediator API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/video_telephony_mediator_api/group"/>
</component>
</collection>
<collection name="phoneapp" long-name="Phone Application" level="app">
<component name="blacklist" filter="s60" long-name="Phone Blacklist Clearing" plugin="Y">
<unit bldFile="app/phone/phoneapp/blacklist/group"/>
</component>
<component name="phoneui" filter="s60" long-name="Phone UI">
<unit bldFile="app/phone/phoneapp/phoneui/group" filter="!test"/>
</component>
<component name="phoneuicontrol" filter="s60" long-name="Phone UI Control">
<unit bldFile="app/phone/phoneapp/phoneuicontrol/group"/>
</component>
<component name="phoneuistates" filter="s60" long-name="Phone UI States">
<unit bldFile="app/phone/phoneapp/phoneuistates/group"/>
</component>
<component name="phoneuiutils" filter="s60" long-name="Phone UI Utils">
<unit bldFile="app/phone/phoneapp/phoneuiutils/group"/>
</component>
<component name="phoneuiview" filter="s60" long-name="Phone UI View">
<unit bldFile="app/phone/phoneapp/phoneuiview/group"/>
</component>
<component name="phoneuivoipextension" filter="s60" long-name="Phone UI VOIP Extension">
<unit bldFile="app/phone/phoneapp/phoneuivoipextension/group"/>
</component>
<component name="silenceactionplugin" filter="s60" long-name="Silence Action Plugin" plugin="Y">
<unit bldFile="app/phone/phoneapp/silenceactionplugin/group"/>
</component>
<component name="phonemediatorcenter" filter="s60" long-name="Phone Mediator Center">
<unit bldFile="app/phone/phoneapp/phonemediatorcenter/group"/>
</component>
</collection>
<collection name="phoneengine" long-name="Phone Engine" level="engine">
<component name="phonecntfinder" filter="s60" long-name="Phone Contact Finder">
<unit bldFile="app/phone/phoneengine/phonecntfinder/group"/>
</component>
<component name="audiohandling" filter="s60" long-name="Phone Audio Handling">
<unit bldFile="app/phone/phoneengine/audiohandling/group"/>
</component>
<component name="callhandling" filter="s60" long-name="Call Handling">
<unit bldFile="app/phone/phoneengine/callhandling/group"/>
</component>
<component name="contacthandling" filter="s60" long-name="Phone Contact Handling">
<unit bldFile="app/phone/phoneengine/contacthandling/group"/>
</component>
<component name="loghandling" filter="s60" long-name="Phone Log Handling">
<unit bldFile="app/phone/phoneengine/loghandling/group"/>
</component>
<component name="engineinfo" filter="s60" long-name="Phone Engine Info">
<unit bldFile="app/phone/phoneengine/engineinfo/group"/>
</component>
<component name="phonemodel" filter="s60" long-name="Phone Model">
<unit bldFile="app/phone/phoneengine/phonemodel/group"/>
</component>
<component name="servicehandling" filter="s60" long-name="Phone Service Handling">
<unit bldFile="app/phone/phoneengine/servicehandling/group"/>
</component>
</collection>
<collection name="phonesettings" long-name="Phone Settings" level="plugin">
<component name="aiwcallimageplugin" filter="s60" long-name="Call Image AIW Plugin" plugin="Y">
<unit bldFile="app/phone/phonesettings/aiwcallimageplugin/group"/>
</component>
<component name="pslncallimageplugin" filter="s60" long-name="Call Image Personalization Plugin" plugin="Y">
<unit bldFile="app/phone/phonesettings/pslncallimageplugin/group"/>
</component>
</collection>
<collection name="phoneuis" long-name="Phone UIs" level="ui">
<component name="dialer" filter="s60" long-name="Dialer">
<unit bldFile="app/phone/phoneuis/dialer/group" filter="!test"/>
</component>
<component name="easydialing" filter="s60" long-name="Easy Dialing Plugin" introduced="^3" plugin="Y">
<unit bldFile="app/phone/phoneuis/easydialing/group"/>
</component>
<component name="bubblemanager" filter="s60" long-name="Phone Bubble Manager">
<unit bldFile="app/phone/phoneuis/bubblemanager/group"/>
</component>
<component name="connectutil" filter="s60" long-name="Connection Utility" plugin="Y">
<unit bldFile="app/phone/phoneuis/connectutil/group"/>
</component>
<component name="ussd" filter="s60" long-name="Unstructured Supplementary Services Data">
<unit bldFile="app/phone/phoneuis/ussd/group"/>
</component>
<component name="vmbx" filter="s60" long-name="Voice Mailbox">
<unit bldFile="app/phone/phoneuis/vmbx/group"/>
</component>
<component name="telephonydevicemode" filter="s60" long-name="Telephony Device Mode">
<unit bldFile="app/phone/phoneuis/telephonydevicemode/group"/>
</component>
</collection>
<collection name="phoneplugins" long-name="Phone Plugins" level="plugin">
<component name="telbranding" filter="s60" long-name="Tel Branding" introduced="^2" plugin="Y">
<unit bldFile="app/phone/phoneplugins/telbranding/group"/>
</component>
</collection>
</block>
<block name="videotelephony" level="apps" long-name="Video Telephony Apps" levels="engine plugin prot ui">
<collection name="videotelephony_plat" long-name="VT Apps Platform Interfaces" level="ui">
<component name="video_telephony_control_mediator_api" long-name="Video Telephony Control Mediator API" filter="s60" class="api">
<unit bldFile="app/videotelephony/videotelephony_plat/video_telephony_control_mediator_api/group"/>
</component>
<component name="video_telephony_media_configuration_api" long-name="Video Telephony Media Configuration API" filter="s60" class="api">
<unit bldFile="app/videotelephony/videotelephony_plat/video_telephony_media_configuration_api/group"/>
</component>
</collection>
<collection name="vtengines" long-name="Video Telephony Engines" level="engine">
<component name="videoteleng" filter="s60" long-name="Video Telephony Engine">
<unit bldFile="app/videotelephony/vtengines/videoteleng/Group"/>
</component>
<component name="vtmediatorplugin" filter="s60" long-name="VT Mediator Plugin" plugin="Y">
<unit bldFile="app/videotelephony/vtengines/vtmediatorplugin/group"/>
</component>
</collection>
<collection name="vtuis" long-name="Video Telephony UIs" level="ui">
<component name="videotelui" filter="s60" long-name="Video Telephony UI">
<unit bldFile="app/videotelephony/vtuis/videotelui/group"/>
</component>
</collection>
<collection name="vtprotocolplugins" long-name="VT Protocol Plugins" level="plugin">
<component name="displaysink" filter="s60" long-name="Display Sink" introduced="^2">
<unit bldFile="app/videotelephony/vtprotocolplugins/DisplaySink/group"/>
</component>
<component name="videosource" filter="s60" long-name="Video Source" introduced="^2">
<unit bldFile="app/videotelephony/vtprotocolplugins/VideoSource/group"/>
</component>
</collection>
<collection name="vtprotocolsstub" long-name="VT Protocols Stub" level="prot">
<!-- this collection is really a component, move down a directory -->
<component name="videotelproto" filter="s60" long-name="Video Telephony Protocol">
<unit bldFile="app/videotelephony/vtprotocolsstub/group" filter="sf_build"/>
</component>
</collection>
</block>
<block name="iptelephony" level="apps" long-name="IP Telephony" levels="eng plugin util ui">
<collection name="iptel_plat" long-name="IP Telephony Platform Interfaces" level="ui">
<component name="richcallsettingsengine_api" long-name="Rich Call Settings Engine API" introduced="^2" filter="s60" class="api">
<unit bldFile="app/iptelephony/iptel_plat/richcallsettingsengine_api/group"/>
</component>
<component name="cch_client_api" long-name="CCH Client API" introduced="^2" filter="s60" class="api">
<unit bldFile="app/iptelephony/iptel_plat/cch_client_api/group"/>
</component>
<component name="cch_server_api" long-name="CCH Server API" introduced="^2" filter="s60" class="api">
<unit bldFile="app/iptelephony/iptel_plat/cch_server_api/group"/>
</component>
<component name="csc_settingsui_api" long-name="CSC Settings UI API" introduced="^2" filter="s60" class="api">
<unit bldFile="app/iptelephony/iptel_plat/csc_settingsui_api/group"/>
</component>
<component name="vccpropertyhandler_api" long-name="VCC Property Handler API" introduced="^2" filter="s60" class="api">
<unit bldFile="app/iptelephony/iptel_plat/vccpropertyhandler_api/group"/>
</component>
<component name="vcc_api" long-name="VCC API" introduced="^2" filter="s60" class="api">
<unit bldFile="app/iptelephony/iptel_plat/vcc_api/group"/>
</component>
</collection>
<collection name="iptelcommsconfig" long-name="IP Telephony Comms Config" level="ui">
<component name="cscgsplugin" filter="s60" long-name="CSC GS Plugin" introduced="^2" plugin="Y">
<unit bldFile="app/iptelephony/commsconfig/cscgsplugin/group"/>
</component>
<component name="cscsipvoipcleanupplugin" filter="s60" long-name="CSC SIP VoIP Cleanup Plugin" introduced="^2" plugin="Y">
<unit bldFile="app/iptelephony/commsconfig/cscsipvoipcleanupplugin/group"/>
</component>
<component name="cscengine" filter="s60" long-name="Connection Service Configurator Engine" introduced="^2">
<unit bldFile="app/iptelephony/commsconfig/cscengine/group"/>
</component>
<component name="cscsettingsui" filter="s60" long-name="CSC Settings UI" introduced="^2">
<unit bldFile="app/iptelephony/commsconfig/cscsettingsui/group"/>
</component>
<component name="cscapplicationui" filter="s60" long-name="CSC Application UI" introduced="^2">
<unit bldFile="app/iptelephony/commsconfig/cscapplicationui/group"/>
</component>
<component name="commsconfig_build" filter="s60" long-name="Comms Config Build" introduced="^2">
<!-- consider distributing this into the above components -->
<unit bldFile="app/iptelephony/commsconfig/group"/>
</component>
</collection>
<collection name="convergedconnectionhandler" long-name="Converged Connection Handler" level="eng">
<component name="cchserver" filter="s60" long-name="CCH Server" introduced="^2">
<unit bldFile="app/iptelephony/convergedconnectionhandler/cchserver/group"/>
</component>
<component name="cchclient" filter="s60" long-name="CCH Client" introduced="^2">
<unit bldFile="app/iptelephony/convergedconnectionhandler/cchclient/group"/>
</component>
<component name="cchclientapi" filter="s60" long-name="CCH Client API" introduced="^2">
<unit bldFile="app/iptelephony/convergedconnectionhandler/cchclientapi/group"/>
</component>
<component name="convergedconnectionhandler_build" filter="s60" long-name="CCH Build" introduced="^2">
<!-- consider distributing this into the above components, or collapse the collection into a single component.
The latter is a better option since clients and sevrers are rarely separate components -->
<unit bldFile="app/iptelephony/convergedconnectionhandler/group"/>
</component>
</collection>
<collection name="richcallsettingsengine" long-name="Rich Call Settings Engine" level="eng">
<component name="rcse2" filter="s60" long-name="Rich Call Settings Engine Build" introduced="^2">
<unit bldFile="app/iptelephony/richcallsettingsengine/rcse2/group"/>
</component>
</collection>
<collection name="sipvoipprovider" long-name="SIP VoIP Provider" level="plugin">
<!-- collection is really a component. Should move down a directory -->
<component name="svp" filter="s60" long-name="SIP VoIP Provider Build" introduced="^2" plugin="Y">
<unit bldFile="app/iptelephony/sipvoipprovider/group"/>
</component>
</collection>
<collection name="voipplugins" long-name="VoIP Plugins" level="plugin">
<component name="sipmxresolver" filter="s60" long-name="SIP MX Resolver" introduced="^2" plugin="Y">
<unit bldFile="app/iptelephony/voipplugins/sipmxresolver/group"/>
</component>
<component name="sipconnectionprovider" filter="s60" long-name="SIP Connection Provider" introduced="^2" plugin="Y">
<unit bldFile="app/iptelephony/voipplugins/sipconnectionprovider/group"/>
<!-- can only have one unit, can the next be #'included from the above? -->
<unit bldFile="app/iptelephony/voipplugins/sipconnectionprovider/ipvoicemailengine/group"/>
</component>
<component name="ipapputils" filter="s60" long-name="IP App Utils" introduced="^2">
<unit bldFile="app/iptelephony/voipplugins/ipapputils/group"/>
</component>
<component name="voipadapters" filter="s60" long-name="VoIP Adapters" introduced="^2" plugin="Y">
<unit bldFile="app/iptelephony/voipplugins/voipadapters/group"/>
</component>
<component name="accountcreationplugin" filter="s60" long-name="Account Creation Plugin" introduced="^2" plugin="Y">
<unit bldFile="app/iptelephony/voipplugins/accountcreationplugin/group"/>
</component>
<component name="dhcppositionprovider" filter="s60" long-name="DHCP Position Provider" introduced="^2" plugin="Y">
<unit bldFile="app/iptelephony/voipplugins/dhcppositionprovider/group"/>
</component>
<component name="svtmatching" filter="s60" long-name="SIP VoIP Telephony Matching" introduced="^2" plugin="Y">
<unit bldFile="app/iptelephony/voipplugins/svtmatching/group"/>
</component>
<component name="svtlogging" filter="s60" long-name="SVT Logging" introduced="^2" plugin="Y">
<unit bldFile="app/iptelephony/voipplugins/svtlogging/group"/>
</component>
<component name="svtcallmenu" filter="s60" long-name="SVT Call Menu" introduced="^2" plugin="Y">
<unit bldFile="app/iptelephony/voipplugins/svtcallmenu/group"/>
</component>
<component name="sipimresolver" filter="s60" long-name="SIP IM Resolver" introduced="^3" plugin="Y">
<unit bldFile="app/iptelephony/voipplugins/sipimresolver/group"/>
</component>
</collection>
<collection name="callcontinuity" long-name="Call Continuity" level="util">
<component name="vccutils" filter="s60" long-name="VCC Utils" introduced="^2">
<unit bldFile="app/iptelephony/callcontinuity/vccutils/group"/>
</component>
<component name="nsmldmvccadapter" filter="s60" long-name="SyncML DM VCC Adapter" introduced="^2" plugin="Y">
<unit bldFile="app/iptelephony/callcontinuity/nsmldmvccadapter/group"/>
</component>
<component name="vccclientprovisioningadapter" filter="s60" long-name="VCC Client Provisioning Adapter" introduced="^2" plugin="Y">
<unit bldFile="app/iptelephony/callcontinuity/vccclientprovisioningadapter/group"/>
</component>
<component name="vccpropertyhandler" filter="s60" long-name="VCC Property Handler" introduced="^2">
<unit bldFile="app/iptelephony/callcontinuity/vccpropertyhandler/group"/>
</component>
<component name="vcchotrigger" filter="s60" long-name="VCC HO Trigger" introduced="^2">
<unit bldFile="app/iptelephony/callcontinuity/vcchotrigger/group"/>
</component>
<component name="vcc" filter="s60" long-name="VoIP Call Continuity" introduced="^2" plugin="Y">
<unit bldFile="app/iptelephony/callcontinuity/vcc/group"/>
</component>
<component name="callcontinuity_build" filter="s60" long-name="Call Continuity Build" introduced="^2">
<!-- consider distributing this into the above components -->
<unit bldFile="app/iptelephony/callcontinuity/group"/>
</component>
</collection>
</block>
<block name="settingsuis" level="services" long-name="Settings UIs" levels="rsc ui">
<collection name="devmngt_plat" long-name="Settings UIs Platform Interfaces" level="ui">
<component name="default_app_client_api" long-name="Default App Client API" introduced="^1" filter="s60" class="api">
<unit bldFile="app/settingsuis/devmngt_plat/default_app_client_api/group"/>
</component>
<component name="services_db_api" long-name="Services DB API" introduced="^1" filter="s60" class="api">
<unit bldFile="app/settingsuis/devmngt_plat/services_db_api/group" filter="!test"/>
</component>
</collection>
<collection name="defaultapplicationsettings" long-name="Default Application Settings" level="rsc">
<component name="services_db" filter="s60" long-name="Services Database" introduced="^1">
<unit bldFile="app/settingsuis/defaultapplicationsettings/services_db/group"/>
</component>
<component name="defaultapplicationsettings_server" filter="s60" long-name="Default Application Server" introduced="^1">
<unit bldFile="app/settingsuis/defaultapplicationsettings/server/group"/>
</component>
<component name="service" filter="s60" long-name="Default Application Service" introduced="^1">
<unit bldFile="app/settingsuis/defaultapplicationsettings/service/group"/>
</component>
<component name="dasgsplugin" filter="s60" long-name="Default Application Settings GS Plugin" introduced="^1" plugin="Y">
<unit bldFile="app/settingsuis/defaultapplicationsettings/gsplugin/group"/>
</component>
<component name="defaultapplicationsettings_build" filter="s60" long-name="Default Application Settings Build" introduced="^1">
<!-- split the IBYs up into the appropriate components? Make this a ROM component? -->
<unit bldFile="app/settingsuis/defaultapplicationsettings/group"/>
</component>
</collection>
<collection name="systemswuis" long-name="System SW UIs" level="ui">
<component name="touchscreencalib" filter="s60" long-name="Touchscreen Calibration" introduced="^1">
<unit bldFile="app/settingsuis/systemswuis/touchscreencalib/group"/>
</component>
</collection>
</block>
<block name="contentcontrol" level="services" long-name="Content Control Daemons" levels="plugin app">
<collection name="contentctrl_plat" long-name="Content Control Daemons Platforn Interfaces" level="app">
<component name="oma_ds_presync_plugin_api" long-name="OMA DS PreSync Plugin API" filter="s60" class="api">
<unit bldFile="app/contentcontrol/contentctrl_plat/oma_ds_presync_plugin_api/group"/>
</component>
<component name="ds_agenda_handler_plugin_api" long-name="DS Agenda Handler Plugin API" filter="s60" class="api">
<unit bldFile="app/contentcontrol/contentctrl_plat/ds_agenda_handler_plugin_api/group"/>
</component>
<component name="ds_folder_util_api" long-name="DS Folder Util API" filter="s60" class="api">
<unit bldFile="app/contentcontrol/contentctrl_plat/ds_folder_util_api/group"/>
</component>
<component name="adapter_customization_api" long-name="Adapter Customization API" filter="s60" introduced="^3" class="api">
<unit bldFile="app/contentcontrol/contentctrl_plat/adapter_customization_api/group"/>
</component>
<component name="ds_data_modification_api" long-name="DS Data Modification API" filter="s60" introduced="^3" class="api">
<unit bldFile="app/contentcontrol/contentctrl_plat/ds_data_modification_api/group"/>
</component>
</collection>
<collection name="dsdcmoadapter" long-name="Data Sync DCMO Adapter" level="plugin">
<!-- Component at wrong rank, should move down a directory -->
<component name="dsdcmoadapter_build" filter="s60" long-name="Data Sync Control DCMO Adapter">
<unit bldFile="app/contentcontrol/dsdcmoadapter/group"/>
</component>
</collection>
<collection name="omads" long-name="OMA Data Sync" level="app">
<component name="omadsappui" filter="s60" long-name="OMA DS Application UI">
<unit bldFile="app/contentcontrol/omads/omadsappui/group"/>
</component>
<component name="omadsextensions" filter="s60" long-name="OMA DS Extensions" plugin="Y">
<unit bldFile="app/contentcontrol/omads/omadsextensions/group"/>
</component>
</collection>
</block>
<block name="devicecontrol" level="services" long-name="Device Control Daemons" levels="oma mid app">
<collection name="devicediagnostics" long-name="Device Diagnostics" level="app">
<component name="devdiagapp" filter="s60" long-name="Device Diagnostics App">
<unit bldFile="app/devicecontrol/devicediagnostics/devdiagapp/group"/>
</component>
<component name="devdiaggsplugin" filter="s60" long-name="Device Diagnostics GS Plugin" plugin="Y">
<unit bldFile="app/devicecontrol/devicediagnostics/devdiaggsplugin/group"/>
</component>
<component name="diagplugins" filter="s60" long-name="Diagnostics Plugins" plugin="Y">
<unit bldFile="app/devicecontrol/devicediagnostics/diagplugins/group"/>
</component>
<component name="diagsuites" filter="s60" long-name="Diagnostics Suites" plugin="Y">
<unit bldFile="app/devicecontrol/devicediagnostics/diagsuites/group"/>
</component>
<component name="devicediagnostics_build" filter="s60" long-name="Device Diagnostics Build">
<!-- can the exports be moved to one of the other components?
or all #includes removed from here, and it renamed Device Diagnostics ROM -->
<unit bldFile="app/devicecontrol/devicediagnostics/group"/>
</component>
</collection>
<collection name="omadm" long-name="OMA Device Management" level="oma">
<component name="omadmappui" filter="s60" long-name="OMA DM Application UI">
<unit bldFile="app/devicecontrol/omadm/omadmappui/group"/>
</component>
<component name="omadmextensions" filter="s60" long-name="OMA DM Extensions" plugin="Y">
<unit bldFile="app/devicecontrol/omadm/omadmextensions/group"/>
</component>
<component name="dcmo" filter="s60" long-name="Device Capabilities Management Object" introduced="^3" plugin="Y">
<unit bldFile="app/devicecontrol/omadm/dcmo/group"/>
</component>
</collection>
<collection name="pnpmobileservices" long-name="PnP Mobile Services" level="mid">
<component name="pnpms" filter="s60" long-name="PnP MS">
<unit bldFile="app/devicecontrol/pnpmobileservices/pnpms/group"/>
</component>
</collection>
<collection name="applicationmanagement" long-name="Application Management" level="app">
<!-- could this collection be collapsed into a single component and moved down a dir? Do all these need to be noted separately? -->
<component name="applicationmanagement_options" filter="s60" long-name="AM Install Options">
<unit bldFile="app/devicecontrol/applicationmanagement/options/group"/>
</component>
<component name="applicationmanagement_client" filter="s60" long-name="AM Client">
<unit bldFile="app/devicecontrol/applicationmanagement/client/group"/>
</component>
<component name="applicationmanagement_server" filter="s60" long-name="AM Server">
<unit bldFile="app/devicecontrol/applicationmanagement/server/group"/>
</component>
<component name="rfsplugin" filter="s60" long-name="AM RFS Plugin" plugin="Y">
<unit bldFile="app/devicecontrol/applicationmanagement/rfsplugin/group"/>
</component>
<component name="amadapter2" filter="s60" long-name="AM Adapter" plugin="Y">
<unit bldFile="app/devicecontrol/applicationmanagement/amadapter2/group"/>
</component>
<component name="omascomoadapter" filter="s60" long-name="OMA SCOMO Adapter" introduced="^3" plugin="Y">
<unit bldFile="app/devicecontrol/applicationmanagement/omascomoadapter/group"/>
</component>
<component name="applicationmanagement_build" filter="s60" long-name="AM Build">
<!-- If thes aren't collapsed into one cmp, can all #includes removed from here, and it renamed AM ROM? -->
<unit bldFile="app/devicecontrol/applicationmanagement/group"/>
</component>
</collection>
<collection name="customization" long-name="DM Customization Adapters" level="mid">
<component name="dmutils" long-name="DM Utils" filter="s60">
<unit bldFile="app/devicecontrol/customization/dmutils/bld"/>
</component>
<component name="uisettingssrv" filter="s60" long-name="UI Settings Server">
<unit bldFile="app/devicecontrol/customization/uisettingssrv/bld"/>
</component>
<component name="supadapter" filter="s60" long-name="Startup Adapter" plugin="Y">
<unit bldFile="app/devicecontrol/customization/supadapter/bld"/>
</component>
<component name="wallpaperadapter" filter="s60" long-name="Wallpaper Adapter" plugin="Y">
<unit bldFile="app/devicecontrol/customization/wallpaperadapter/bld"/>
</component>
<component name="operatorlogoadapter" filter="s60" long-name="Operator Logo Adapter" plugin="Y">
<unit bldFile="app/devicecontrol/customization/operatorlogoadapter/bld"/>
</component>
<component name="screensaveradapter" filter="s60" long-name="Screen Saver Adapter" plugin="Y">
<unit bldFile="app/devicecontrol/customization/screensaveradapter/bld"/>
</component>
<component name="themesadapter" filter="s60" long-name="Themes Adapter" plugin="Y">
<unit bldFile="app/devicecontrol/customization/themesadapter/bld"/>
</component>
<component name="embeddedlinkadapter" filter="s60" long-name="Embedded Link Adapter" plugin="Y">
<unit bldFile="app/devicecontrol/customization/embeddedlinkadapter/bld"/>
</component>
<component name="customization_build" filter="s60" long-name="DM Customization Build">
<!-- If thes aren't collapsed into one cmp, can all #includes removed from here, and it renamed DM Customization ROM? -->
<unit bldFile="app/devicecontrol/customization/group"/>
</component>
</collection>
<collection name="omacp" long-name="OMA Content Provisioning" level="oma">
<component name="omacpadapters" filter="s60" long-name="OMA CP Adapters" plugin="Y">
<unit bldFile="app/devicecontrol/omacp/omacpadapters/group"/>
</component>
</collection>
</block>
<block name="printing" level="services" long-name="Printing" levels="app">
<collection name="DirectPrint" level="app">
<component name="DirectPrintApp" filter="sf_build" long-name="DirectPrint App" introduced="^3">
<unit bldFile="app/printing/DirectPrint/DirectPrintApp/group"/>
</component>
<component name="DirectPrintServer" filter="sf_build" long-name="DirectPrint Server" introduced="^3">
<unit bldFile="app/printing/DirectPrint/DirectPrintServer/group"/>
</component>
<component name="DirectPrintClient" filter="sf_build" long-name="DirectPrint Client" introduced="^3">
<unit bldFile="app/printing/DirectPrint/DirectPrintClient/group"/>
</component>
</collection>
<collection name="imageprint" long-name="ImagePrint" level="app">
<component name="clog" filter="s60" long-name="ImagePrint Logging" introduced="^2">
<unit bldFile="app/printing/imageprint/clog/group"/>
</component>
<component name="imageprintengine" filter="s60" long-name="ImagePrint Engine" introduced="^2">
<unit bldFile="app/printing/imageprint/imageprintengine/group"/>
</component>
<component name="imageprintui" filter="s60" long-name="ImagePrint UI" introduced="^2">
<unit bldFile="app/printing/imageprint/imageprintui/group"/>
</component>
<component name="imageprint_build" filter="s60" long-name="ImagePrint Build" introduced="^2">
<!-- Need to break the IBY includes into the other components, or remove #includes and make this a ROM component -->
<unit bldFile="app/printing/imageprint/group"/>
</component>
</collection>
</block>
<block name="files" level="apps" long-name="File Manager Apps" levels="support apps">
<collection name="files_plat" long-name="File Manager Apps Platform Interfaces" level="apps">
<component name="memory_scan_popup_ui_api" long-name="Memory Scan Popup UI API" filter="s60" class="api">
<unit bldFile="app/files/files_plat/memory_scan_popup_ui_api/group"/>
</component>
</collection>
<collection name="deviceencryption" long-name="Device Encryption" level="support">
<!-- this is either needs to be broken up into idependent bld.infs, or it's really a component and should move down a directory -->
<component name="devencnotifplugin" filter="s60" long-name="Device Encryption Notifier Plugin" introduced="^3" plugin="Y">
<unit bldFile="app/files/deviceencryption/devencnotifplugin/group"/>
</component>
<component name="devencui" filter="s60" long-name="Device Encryption UI" introduced="^3">
<unit bldFile="app/files/deviceencryption/devencui/group"/>
</component>
<component name="devencdmadapter" filter="s60" long-name="Device Encryption DM Adapter" introduced="^3" plugin="Y">
<unit bldFile="app/files/deviceencryption/devencdmadapter/group"/>
</component>
<component name="devencgsplugin" filter="s60" long-name="Device Encryption GS Plugin" introduced="^3" plugin="Y">
<unit bldFile="app/files/deviceencryption/devencgsplugin/group"/>
</component>
<component name="deviceencryption_help" filter="s60" long-name="Device Encryption Help" introduced="^3">
<unit bldFile="app/files/deviceencryption/help/group"/>
</component>
<component name="deviceencryption_build" filter="s60" long-name="Device Encryption Build" introduced="^3">
<unit bldFile="app/files/deviceencryption/group"/>
</component>
</collection>
<collection name="filemanager" long-name="File Manager" level="apps">
<!-- this is really a component, should move down a directory -->
<component name="filemanager_build" filter="s60" long-name="File Manager Build">
<unit bldFile="app/files/filemanager/group"/>
</component>
</collection>
<collection name="filesystemuis" long-name="File System UIs" level="support">
<component name="memscaneng" filter="s60" long-name="Memory Scan Server">
<unit bldFile="app/files/filesystemuis/memscaneng/group"/>
</component>
<component name="memstatepopup" filter="s60" long-name="Memory State Popup">
<unit bldFile="app/files/filesystemuis/memstatepopup/group"/>
</component>
</collection>
</block>
<block name="utils" level="apps" long-name="Utility Apps" levels="app">
<collection name="extras" long-name="Extras" level="app">
<component name="about" filter="s60" long-name="About Application">
<unit bldFile="app/utils/extras/about/group"/>
</component>
<component name="calcsoft" filter="s60" long-name="Calculator Application">
<unit bldFile="app/utils/extras/calcsoft/group"/>
</component>
</collection>
</block>
<block name="contacts" level="apps" span="2" long-name="Contacts Apps" levels="engine support services ui">
<collection name="contacts_pub" long-name="Contacts Apps Public Interfaces" level="ui">
<component name="phonebook_fetch_ui_api" long-name="Phonebook Fetch UI API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_pub/phonebook_fetch_ui_api/group"/>
</component>
<component name="phonebook_data_management_api" long-name="Phonebook Data Management API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_pub/phonebook_data_management_api/group"/>
</component>
<component name="phonebook_vcard_importexport_api" long-name="Phonebook vCard Import/Export API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_pub/phonebook_vcard_importexport_api/group"/>
</component>
<component name="phonebook_data_addedit_ui_api" long-name="Phonebook Data Add/Edit UI API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_pub/phonebook_data_addedit_ui_api/group"/>
</component>
<component name="phonebook_ui_utilities_api" long-name="Phonebook UI Utilities API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_pub/phonebook_ui_utilities_api/group"/>
</component>
<component name="phonebook_thumbnail_operation_api" long-name="Phonebook Thumbnail Operation API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_pub/phonebook_thumbnail_operation_api/group"/>
</component>
<component name="speed_dial_utility_control_api" long-name="Speed Dial Utility Control API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_pub/speed_dial_utility_control_api/group"/>
</component>
</collection>
<collection name="contacts_plat" long-name="Contacts Apps Platform Interfaces" level="ui">
<component name="virtual_phonebook_store_api" long-name="Virtual Phonebook Store API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/virtual_phonebook_store_api/group"/>
</component>
<component name="virtual_phonebook_sim_services_api" long-name="Virtual Phonebook SIM Services API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/virtual_phonebook_sim_services_api/group"/>
</component>
<component name="virtual_phonebook_configuration_api" long-name="Virtual Phonebook Configuration API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/virtual_phonebook_configuration_api/group"/>
</component>
<component name="virtual_phonebook_copy_policy_api" long-name="Virtual Phonebook Copy Policy API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/virtual_phonebook_copy_policy_api/group"/>
</component>
<component name="virtual_phonebook_policy_api" long-name="Virtual Phonebook Policy API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/virtual_phonebook_policy_api/group"/>
</component>
<component name="virtual_phonebook_engine_api" long-name="Virtual Phonebook Engine API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/virtual_phonebook_engine_api/group"/>
</component>
<component name="virtual_phonebook_migration_support_api" long-name="Virtual Phonebook Migration Support API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/virtual_phonebook_migration_support_api/group"/>
</component>
<component name="virtual_phonebook_view_definition_api" long-name="Virtual Phonebook View Definition API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/virtual_phonebook_view_definition_api/group"/>
</component>
<component name="virtual_phonebook_vcard_api" long-name="Virtual Phonebook vCard API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/virtual_phonebook_vcard_api/group"/>
</component>
<component name="cms_contactor_api" long-name="CMS Contactor API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/cms_contactor_api/group"/>
</component>
<component name="contactpresence_api" long-name="Contact Presence API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/contactpresence_api/group"/>
</component>
<component name="presence_cache_api" long-name="Presence Cache API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/presence_cache_api/group"/>
</component>
<component name="phonebook_internal_common_api" long-name="Phonebook Internal Common API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_internal_common_api/group"/>
</component>
<component name="phonebook_internal_appfw_api" long-name="Phonebook Internal App Framework API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_internal_appfw_api/group"/>
</component>
<component name="phonebook_internal_data_management_api" long-name="Phonebook Internal Data Management API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_internal_data_management_api/group"/>
</component>
<component name="phonebook_2_xsp_extension_manager_api" long-name="Phonebook 2 xSP Extension Manager API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_xsp_extension_manager_api/group"/>
</component>
<component name="phonebook_ui_controls_api" long-name="Phonebook UI Controls API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_ui_controls_api/group"/>
</component>
<component name="phonebook_2_image_management_api" long-name="Phonebook 2 Image Management API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_image_management_api/group"/>
</component>
<component name="phonebook_extension_api" long-name="Phonebook Extension API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_extension_api/group"/>
</component>
<component name="phonebook_public_constants_api" long-name="Phonebook Public Constants API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_public_constants_api/group"/>
</component>
<component name="phonebook_internal_ui_utilities_api" long-name="Phonebook Internal UI Utilities API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_internal_ui_utilities_api/group"/>
</component>
<component name="logs_engine_api_extensions" long-name="Logs Engine API Extensions" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/logs_engine_api_extensions/group"/>
</component>
<component name="phonebook_thumbnails_api" long-name="Phonebook Thumbnails API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_thumbnails_api/group"/>
</component>
<component name="phonebook_2_icon_api" long-name="Phonebook 2 Icon API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_icon_api/group"/>
</component>
<component name="phonebook_engine_extension_api" long-name="Phonebook Engine Extension API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_engine_extension_api/group"/>
</component>
<component name="phonebook_2_store_configuration_management_api" long-name="Phonebook 2 Store Configuration Management API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_store_configuration_management_api/group"/>
</component>
<component name="logs_ui_command_line_api" long-name="Logs UI Command Line API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/logs_ui_command_line_api/group"/>
</component>
<component name="speed_dial_dialogs_api" long-name="Speed Dial Dialogs API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/speed_dial_dialogs_api/group"/>
</component>
<component name="phonebook_2_xsp_view_activation_api" long-name="Phonebook 2 xSP View Activation API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_xsp_view_activation_api/group"/>
</component>
<component name="logs_timers_api" long-name="Logs Timers API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/logs_timers_api/group"/>
</component>
<component name="phonebook_2_ui_extension_definition_api" long-name="Phonebook 2 UI Extension Definition API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_ui_extension_definition_api/group"/>
</component>
<component name="phonebook_2_common_ui_api" long-name="Phonebook 2 Common UI API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_common_ui_api/group"/>
</component>
<component name="phonebook_2_ui_extension_api" long-name="Phonebook 2 UI Extension API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_ui_extension_api/group"/>
</component>
<component name="phonebook_2_store_property_api" long-name="Phonebook 2 Store Property API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_store_property_api/group"/>
</component>
<component name="phonebook_2_ui_extension_plugin_api" long-name="Phonebook 2 UI Extension Plug-In API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_ui_extension_plugin_api/group"/>
</component>
<component name="phonebook_2_ui_controls_api" long-name="Phonebook 2 UI Controls API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_ui_controls_api/group"/>
</component>
<component name="phonebook_2_thin_ui_extension_plugin_api" long-name="Phonebook 2 Thin UI Extension Plugin API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_thin_ui_extension_plugin_api/group"/>
</component>
<component name="phonebook_2_commands_api" long-name="Phonebook 2 Commands API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_commands_api/group"/>
</component>
<component name="phonebook_2_presentation_api" long-name="Phonebook 2 Presentation API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_presentation_api/group"/>
</component>
<component name="phonebook_2_ui_utilities_api" long-name="Phonebook 2 UI Utilities API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_ui_utilities_api/group"/>
</component>
<component name="cca_launch_api" long-name="CCA Launch API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/cca_launch_api/group"/>
</component>
<component name="cca_view_plugin_api" long-name="CCA View Plugin API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/cca_view_plugin_api/group"/>
</component>
<component name="predictivesearch_client_api" long-name="Predictive Search Client API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/predictivesearch_client_api/group"/>
</component>
<component name="predictivesearch_utils_api" long-name="Predictive Search Utils API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/predictivesearch_utils_api/group"/>
</component>
<component name="predictivesearch_adapters_api" long-name="Predictive Search Adapters API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/predictivesearch_adapters_api/group"/>
</component>
<component name="predictivesearch_algorithm_api" long-name="Predictive Search Algorithm API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/predictivesearch_algorithm_api/group"/>
</component>
<component name="phonebook_2_rcl_api" long-name="Phonebook 2 RCL API" filter="s60" class="api">
<unit bldFile="app/contacts/contacts_plat/phonebook_2_rcl_api/group"/>
</component>
</collection>
<collection name="contactextensions" long-name="Contacts Extensions" level="services">
<component name="predefinedcontacts" filter="s60" long-name="Predefined Contacts">
<unit bldFile="app/contacts/contactextensions/predefinedcontacts/group"/>
</component>
</collection>
<collection name="logsui" long-name="Logs UI" level="ui">
<component name="logsui_build" filter="s60" long-name="Logs UI Build">
<!-- component at too high a rank, should move down one directory -->
<unit bldFile="app/contacts/logsui/group"/>
</component>
</collection>
<collection name="phonebookui" long-name="Phonebook UI" level="ui">
<component name="phonebook" filter="s60" long-name="Phonebook">
<unit bldFile="app/contacts/phonebookui/phonebook/group"/>
</component>
<component name="speeddial" filter="s60" long-name="Speed Dial">
<unit bldFile="app/contacts/phonebookui/speeddial/group"/>
</component>
<component name="phonebook2" filter="s60" long-name="Phone Book 2">
<unit bldFile="app/contacts/phonebookui/phonebook2/group"/>
</component>
</collection>
<collection name="phonebookengines" long-name="Phonebook Engines" level="engine">
<component name="cntfindplugin" filter="s60" long-name="Contacts Find Plugin" introduced="^2" plugin="Y">
<unit bldFile="app/contacts/phonebookengines/cntfindplugin/group"/>
</component>
<component name="cntsortplugin" filter="s60" long-name="Contacts Sort Plugin" introduced="^2" plugin="Y">
<unit bldFile="app/contacts/phonebookengines/cntsortplugin/group"/>
</component>
<component name="virtualphonebook" filter="s60" long-name="Virtual Phonebook" introduced="^2">
<unit bldFile="app/contacts/phonebookengines/virtualphonebook/group"/>
</component>
<component name="contactsmodel" long-name="Contacts Model" introduced="ER5" purpose="optional">
<unit bldFile="app/contacts/phonebookengines/contactsmodel/groupsql" mrp="app/contacts/phonebookengines/contactsmodel/groupsql/app-engines_cntmodel.mrp" version="2"/>
</component>
</collection>
<collection name="pimprotocols" long-name="PIM Protocols" level="services">
<component name="phonebooksync" long-name="Phonebook Sync" purpose="optional" plugin="Y">
<unit bldFile="app/contacts/pimprotocols/phonebooksync/group" mrp="app/contacts/pimprotocols/phonebooksync/group/telephony_phbksync.mrp"/>
</component>
<component name="pbap" long-name="Bluetooth PBAP" introduced="9.2" purpose="optional">
<unit bldFile="app/contacts/pimprotocols/pbap/group" mrp="app/contacts/pimprotocols/pbap/group/bluetooth_accesshost.mrp"/>
</component>
</collection>
<collection name="ccservices" long-name="Contacts Centric Services" level="services">
<component name="cmsservices" filter="s60" long-name="Contact Method Selector Services" introduced="^2">
<unit bldFile="app/contacts/ccservices/cmsservices/group"/>
</component>
</collection>
<collection name="presencecache" long-name="Presence Cache" level="support">
<component name="presencecacheutils" filter="s60" long-name="Presence Cache Utils" introduced="^2" class="placeholder">
<!-- <unit bldFile="presencecache/presencecacheutils/group"/> -->
</component>
<component name="presencecacheserver2" filter="s60" long-name="Presence Cache Server" introduced="^2" class="placeholder">
<!-- <unit bldFile="presencecache/presencecacheserver2/group"/> -->
</component>
<component name="presencecacheclient2" filter="s60" long-name="Presence Cache Client" introduced="^2" class="placeholder">
<!-- <unit bldFile="presencecache/presencecacheclient2/group"/> -->
</component>
<component name="presencecache_build" filter="s60" long-name="Presence Cache Build" introduced="^2">
<!-- should divide this bld.inf into the other components, or collapse them into a single component -->
<unit bldFile="app/contacts/presencecache/group"/>
</component>
</collection>
<collection name="predictivesearch" long-name="Predictive Search" level="support">
<component name="pcsutils" filter="s60" long-name="PCS Utils" introduced="^2">
<unit bldFile="app/contacts/predictivesearch/pcsutils/group"/>
</component>
<component name="pcsserverclientapi" filter="s60" long-name="PCS Server Client API" introduced="^2">
<unit bldFile="app/contacts/predictivesearch/pcsserverclientapi/group"/>
</component>
<component name="pcsserver" filter="s60" long-name="PCS Server" introduced="^2">
<unit bldFile="app/contacts/predictivesearch/pcsserver/group"/>
</component>
<component name="pcsadapters" filter="s60" long-name="PCS Adapters" introduced="^2" plugin="Y">
<unit bldFile="app/contacts/predictivesearch/adapters/contacts/group"/>
</component>
<component name="pcsalgorithm" filter="s60" long-name="PCS Algorithm" introduced="^2" plugin="Y">
<unit bldFile="app/contacts/predictivesearch/pcsalgorithm/group"/>
</component>
<component name="predictivesearch_build" filter="s60" long-name="Predictive Search Build" introduced="^2">
<!-- need to remove #includes from bld.inf and rename as Predictive Search ROM -->
<unit bldFile="app/contacts/predictivesearch/group"/>
</component>
</collection>
<collection name="contacts_info" long-name="Contacts Apps Info" level="ui">
<component name="contacts_metadata" long-name="Contacts Apps Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="app/contacts/contacts_info/contacts_metadata/contacts_metadata.mrp"/>
</component>
</collection>
</block>
<block name="organizer" level="apps" span="2" long-name="Organizer Application Suite" levels="support services engine ui app">
<collection name="organizer_plat" long-name="Organizer Application Suite Platform Interfaces" level="app">
<component name="meeting_request_mailbox_utilities_api" long-name="Meeting Request Mailbox Utilities API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/meeting_request_mailbox_utilities_api/group"/>
</component>
<component name="meeting_request_uids_api" long-name="Meeting Request UIDs API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/meeting_request_uids_api/group"/>
</component>
<component name="calendar_exporter_api" long-name="Calendar Exporter API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/calendar_exporter_api/group"/>
</component>
<component name="agenda_versit_2_api" long-name="Agenda Versit 2 API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/agenda_versit_2_api/group"/>
</component>
<component name="calendar_importer_api" long-name="Calendar Importer API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/calendar_importer_api/group"/>
</component>
<component name="calendar_launcher_api" long-name="Calendar Launcher API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/calendar_launcher_api/group"/>
</component>
<component name="calendar_common_utils_api" long-name="Calendar Common Utils API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/calendar_common_utils_api/group"/>
</component>
<component name="searchfw_launcher_api" long-name="Search Framework Launcher API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/searchfw_launcher_api/group"/>
</component>
<component name="alarm_const_api" long-name="Alarm Const API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/alarm_const_api/group"/>
</component>
<component name="alarm_ui_external_control_api" long-name="Alarm UI External Control API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/alarm_ui_external_control_api/group"/>
</component>
<component name="calendar_settings_keys_api" long-name="Calendar Settings Keys API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/calendar_settings_keys_api/group"/>
</component>
<component name="calendar_tones_settings_keys_api" long-name="Calendar Tones Settings Keys API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/calendar_tones_settings_keys_api/group"/>
</component>
<component name="clock_settings_api" long-name="Clock Settings API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/clock_settings_api/group"/>
</component>
<component name="common_alarm_editor_api" long-name="Common Alarm Editor API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/common_alarm_editor_api/group"/>
</component>
<component name="alarm_ui_secondary_display_api" long-name="Alarm UI Secondary Display API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/alarm_ui_secondary_display_api/group"/>
</component>
<component name="searchui_launcher_api" long-name="Search UI Launcher API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/searchui_launcher_api/group"/>
</component>
<component name="agenda_entry_ui_api" long-name="Agenda Entry UI API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/agenda_entry_ui_api/group"/>
</component>
<component name="meeting_request_utillities_api" long-name="Meeting Request Utillities API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/meeting_request_utillities_api/group"/>
</component>
<component name="meeting_request_viewer_api" long-name="Meeting Request Viewer API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/meeting_request_viewer_api/group"/>
</component>
<component name="calendar_custamization_api" long-name="Calendar Customization API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_plat/calendar_custamization_api/group"/>
</component>
</collection>
<collection name="organizer_pub" long-name="Organizer Application Suite Public Interfaces" level="app">
<component name="calendar_interim_utils2_api" long-name="Calendar Interim Utils 2 API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_pub/calendar_interim_utils2_api/group"/>
</component>
<component name="notepad_library_api" long-name="Notepad Library API" filter="s60" class="api">
<unit bldFile="app/organizer/organizer_pub/notepad_library_api/group"/>
</component>
</collection>
<collection name="alarmengines" long-name="Alarm Engines" level="engine">
<component name="missedalarmstore" filter="s60" long-name="Missed Alarm Store">
<unit bldFile="app/organizer/alarmengines/missedalarmstore/group"/>
</component>
</collection>
<collection name="calendarengines" long-name="Calendar Engines" level="engine">
<component name="versit2" filter="s60" long-name="Versit 2 iCal Parser" introduced="9.2">
<unit bldFile="app/organizer/calendarengines/versit2/group"/>
</component>
<component name="agnversit2" filter="s60" long-name="Versit 2 Agenda Interface" introduced="9.2" plugin="Y">
<unit bldFile="app/organizer/calendarengines/agnversit2/group"/>
</component>
<component name="caleninterimutils" filter="s60" long-name="Calendar Interim Utils" introduced="9.1">
<unit bldFile="app/organizer/calendarengines/caleninterimutils/group"/>
</component>
<component name="calenimp" filter="s60" long-name="Calendar Import Wrapper" introduced="7.0s">
<unit bldFile="app/organizer/calendarengines/calenimp/group"/>
</component>
<component name="calenlauncher" filter="s60" long-name="Calendar Launcher">
<unit bldFile="app/organizer/calendarengines/calenlauncher/group"/>
</component>
<component name="caldavsrv" filter="sf_build" long-name="CalDAV Server" introduced="^3">
<unit bldFile="app/organizer/calendarengines/caldav/group"/>
</component>
</collection>
<collection name="meetingrequestengines" long-name="Meeting Request Engines" level="engine">
<component name="mrmailbox" filter="s60" long-name="Meeting Request Mailbox">
<unit bldFile="app/organizer/meetingrequestengines/mrmailbox/group"/>
</component>
<component name="mrmailboxutils" filter="s60" long-name="Meeting Request Mailbox Utils" plugin="Y">
<unit bldFile="app/organizer/meetingrequestengines/mrmailboxutils/group"/>
</component>
</collection>
<collection name="searchfw" long-name="Search Framework" level="services">
<!-- Uncomment all units when configuration is in place. All currently #included from searchfw_build, which should be removed at the same time. -->
<component name="coresearchfw" filter="s60" long-name="Core Search Framework" introduced="^1" class="placeholder">
<!--<unit bldFile="searchfw/coresearchfw/group"/>-->
</component>
<component name="searchfw_plugins" filter="s60" long-name="Search Plugins" introduced="^1" plugin="Y" class="placeholder">
<!--<unit bldFile="searchfw/plugins/group"/>-->
</component>
<component name="searchfw_build" filter="s60" long-name="Search Framework Build" introduced="^1">
<unit bldFile="app/organizer/searchfw/group"/>
</component>
</collection>
<collection name="alarmui" long-name="Alarm UI" level="app">
<!-- collection is really a component, should move down a directory -->
<component name="alarmui_build" filter="s60" long-name="Alarm UI Build">
<unit bldFile="app/organizer/alarmui/group"/>
</component>
</collection>
<collection name="calendarui" long-name="Calendar UI" level="ui">
<component name="calendarui_help" filter="s60" long-name="Calendar UI Help">
<unit bldFile="app/organizer/calendarui/help/group"/>
</component>
<component name="commonutils" filter="s60" long-name="Calendar Common Utils">
<unit bldFile="app/organizer/calendarui/commonutils/group"/>
</component>
<component name="globaldata" filter="s60" long-name="Calendar Global Data">
<unit bldFile="app/organizer/calendarui/globaldata/group"/>
</component>
<component name="settings" filter="s60" long-name="Calendar Settings">
<!-- these should be merged into a single bld.inf or split into two components -->
<unit bldFile="app/organizer/calendarui/settings/gsplugin/group"/>
<unit bldFile="app/organizer/calendarui/settings/settingsui/group"/>
</component>
<component name="customisation" filter="s60" long-name="Calendar Customisation">
<unit bldFile="app/organizer/calendarui/customisation/group"/>
</component>
<component name="customisationmanager" filter="s60" long-name="Calendar Customisation Manager">
<unit bldFile="app/organizer/calendarui/customisationmanager/group"/>
</component>
<component name="multicaluidialog" filter="s60" long-name="Multi-Calendar UI Dialog" introduced="^3">
<unit bldFile="app/organizer/calendarui/multicaluidialog/group"/>
</component>
<component name="views" filter="s60" long-name="Calendar Views">
<unit bldFile="app/organizer/calendarui/views/group"/>
</component>
<component name="calendarui_controller" filter="s60" long-name="Calendar Controller">
<unit bldFile="app/organizer/calendarui/controller/group"/>
</component>
<component name="calendarui_editors" filter="s60" long-name="Calendar Editors">
<unit bldFile="app/organizer/calendarui/editors/group"/>
</component>
<component name="calendarui_application" filter="s60" long-name="Calendar Application">
<unit bldFile="app/organizer/calendarui/application/group"/>
</component>
<component name="missedalarmindicatorplugin" filter="s60" long-name="Missed Alarm Indicator Plugin" plugin="Y">
<unit bldFile="app/organizer/calendarui/missedalarmindicatorplugin/group"/>
</component>
<component name="calendarui_server" filter="s60" long-name="Calendar Server">
<!-- these should be merged into a single bld.inf or split into two components -->
<unit bldFile="app/organizer/calendarui/server/calensvr/group"/>
<unit bldFile="app/organizer/calendarui/server/calensvrclient/group"/>
</component>
<component name="regionalplugins" filter="s60" long-name="Calendar Regional Plugins" plugin="Y">
<!-- these should be merged into a single bld.inf or split into four components -->
<unit bldFile="app/organizer/calendarui/regionalplugins/calenregionalutil/group"/>
<unit bldFile="app/organizer/calendarui/regionalplugins/lunarchinese/group"/>
<unit bldFile="app/organizer/calendarui/regionalplugins/lunarvietnamese/group"/>
<unit bldFile="app/organizer/calendarui/regionalplugins/thai/group"/>
</component>
<component name="calenaiwprovider" filter="s60" long-name="Calendar AIW Proivder" introduced="^3" plugin="Y">
<unit bldFile="app/organizer/calendarui/calenaiwprovider/group"/>
</component>
<component name="caldav" filter="sf_build" long-name="CalDAV" introduced="^3" plugin="Y">
<unit bldFile="app/organizer/calendarui/caldav/group"/>
</component>
<component name="calendarui_build" filter="s60" long-name="Calendar UI Build">
<!-- split contents into separate components -->
<unit bldFile="app/organizer/calendarui/group"/>
</component>
</collection>
<collection name="meetingui" long-name="Meeting UI" level="ui">
<component name="attendeeview" filter="s60" long-name="Attendee View">
<unit bldFile="app/organizer/meetingui/attendeeview/group"/>
</component>
<component name="agnentryui" filter="s60" long-name="Agenda Entry UI" plugin="Y">
<unit bldFile="app/organizer/meetingui/agnentryui/group"/>
</component>
<component name="meetingrequestutils" filter="s60" long-name="Meeting Request Utils">
<unit bldFile="app/organizer/meetingui/meetingrequestutils/group"/>
</component>
<component name="meetingrequestviewers" filter="s60" long-name="Meeting Request Viewers" plugin="Y">
<unit bldFile="app/organizer/meetingui/meetingrequestviewers/group"/>
</component>
<component name="meetingui_build" filter="s60" long-name="Meeting UI Build">
<!-- split contents into separate components -->
<unit bldFile="app/organizer/meetingui/group"/>
</component>
</collection>
<collection name="clock2" long-name="Clock" level="app">
<component name="clockengines" filter="s60" long-name="Clock Engines">
<unit bldFile="app/organizer/clock2/clockengines/group"/>
</component>
<component name="clockui" filter="s60" long-name="Clock UI">
<unit bldFile="app/organizer/clock2/clockui/group"/>
</component>
<component name="clock2_help" filter="s60" long-name="Clock Help">
<unit bldFile="app/organizer/clock2/help/group"/>
</component>
<component name="clock2_build" filter="s60" long-name="Clock Build">
<!-- split contents into separate components, or just make this one component -->
<unit bldFile="app/organizer/clock2/group"/>
</component>
</collection>
<collection name="notepad" long-name="Notepad" level="ui">
<component name="notepad_help" filter="s60" long-name="Notepad Help">
<unit bldFile="app/organizer/notepad/help/group"/>
</component>
<component name="notepad1" filter="s60" long-name="Notepad Application 1">
<unit bldFile="app/organizer/notepad/notepad1/group"/>
</component>
<component name="txtrecog" filter="s60" long-name="Text Recognizer" plugin="Y">
<unit bldFile="app/organizer/notepad/txtrecog/group"/>
</component>
</collection>
<collection name="searchui" long-name="Search UI" level="app">
<!-- consider making this a single component -->
<!-- Uncomment all units when configuration is in place. All currently #included from searchui_build, which should be removed at the same time. -->
<component name="searchui_help" filter="s60" long-name="Search UI Help" class="placeholder">
<!--<unit bldFile="searchui/help/group"/>-->
</component>
<component name="searchapp" filter="s60" long-name="Search Application" class="placeholder">
<!--<unit bldFile="searchui/searchapp/group"/>-->
</component>
<component name="searchui_build" filter="s60" long-name="Search UI Build">
<unit bldFile="app/organizer/searchui/group"/>
</component>
</collection>
<collection name="pimappservices" long-name="PIM Application Services" level="services">
<component name="calendar" long-name="Calendar" introduced="9.2" purpose="optional">
<unit bldFile="app/organizer/pimappservices/calendar/group" mrp="app/organizer/pimappservices/calendar/group/app-engines_calendar.mrp" version="2"/>
</component>
<component name="calendarvcalplugin" long-name="Calendar vCal Plugin" introduced="8.1" purpose="optional" plugin="Y">
<unit bldFile="app/organizer/pimappservices/calendarvcalplugin/group" mrp="app/organizer/pimappservices/calendarvcalplugin/group/app-engines_agnversit2.mrp" version="2"/>
</component>
<component name="appenginesdocs" long-name="Application Engines Documentation" purpose="development" class="doc">
<unit mrp="app/organizer/pimappservices/appenginesdocs/app-engines_documentation.mrp"/>
</component>
</collection>
<collection name="pimappsupport" long-name="PIM Application Support" level="support">
<component name="vcardandvcal" long-name="vCard and vCal" introduced="ER5" purpose="optional">
<unit bldFile="app/organizer/pimappsupport/vcardandvcal/group" mrp="app/organizer/pimappsupport/vcardandvcal/group/app-services_versit.mrp"/>
</component>
<component name="chinesecalendarconverter" long-name="Chinese Calendar Converter" introduced="6.1" purpose="optional">
<unit bldFile="app/organizer/pimappsupport/chinesecalendarconverter/group" mrp="app/organizer/pimappsupport/chinesecalendarconverter/group/app-services_calcon.mrp"/>
</component>
<component name="chinesecalendaralg" long-name="Chinese Calendar Algorithm" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="app/organizer/pimappsupport/chinesecalendaralg/group" mrp="app/organizer/pimappsupport/chinesecalendaralg/group/app-services_chinesecalendaralgorithm.mrp"/>
</component>
</collection>
<collection name="organizer_info" long-name="Organizer Application Suite Info" level="app">
<component name="organizer_metadata" long-name="Organizer Application Suite Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="app/organizer/organizer_info/organizer_metadata/organizer_metadata.mrp"/>
</component>
</collection>
</block>
<block name="messaging" level="apps" span="2" long-name="Messaging Apps" levels="mail eng base ui">
<collection name="msg_pub" long-name="Messaging Apps Public APIs" level="ui">
<component name="messaging_integration_api" long-name="Messaging Integration API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_pub/messaging_integration_api/group"/>
</component>
<component name="plugin_bio_control_api" long-name="Plug-in Bio Control API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_pub/plugin_bio_control_api/group"/>
</component>
<component name="mms_client_mtm_api" long-name="MMS Client MTM API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_pub/mms_client_mtm_api/group"/>
</component>
<component name="open_new_message_notification_api" long-name="Open New Message Notification API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_pub/open_new_message_notification_api/group"/>
</component>
<component name="messaging_editor_constants_api" long-name="Messaging Editor Constants API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_pub/messaging_editor_constants_api/group"/>
</component>
</collection>
<collection name="msg_plat" long-name="Messaging Apps Platform APIs" level="ui">
<component name="smil_player_launch_api" long-name="SMIL Player Launch API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/smil_player_launch_api/group"/>
</component>
<component name="messaging_media_resolver_api" long-name="Messaging Media Resolver API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/messaging_media_resolver_api/group"/>
</component>
<component name="smil_engine_api" long-name="SMIL Engine API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/smil_engine_api/group"/>
</component>
<component name="mms_server_settings_api" long-name="MMS Server Settings API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/mms_server_settings_api/group"/>
</component>
<component name="new_contacts_note_secondary_display_api" long-name="New Contacts Note Secondary Display API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/new_contacts_note_secondary_display_api/group"/>
</component>
<component name="messaging_center_ui_utilities_api" long-name="Messaging Center UI Utilities API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/messaging_center_ui_utilities_api/group"/>
</component>
<component name="internet_mail_mtm_ui_api" long-name="Internet Mail MTM UI API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/internet_mail_mtm_ui_api/group"/>
</component>
<component name="messaging_editor_api" long-name="Messaging Editor API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/messaging_editor_api/group"/>
</component>
<component name="email_domain_utilities_api" long-name="Email Domain Utilities API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/email_domain_utilities_api/group"/>
</component>
<component name="smil_transition_api" long-name="SMIL Transition API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/smil_transition_api/group"/>
</component>
<component name="new_contacts_note_status_api" long-name="New Contacts Note Status API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/new_contacts_note_status_api/group"/>
</component>
<component name="unified_editor_video_conversion_api" long-name="Unified Editor Video Conversion API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/unified_editor_video_conversion_api/group"/>
</component>
<component name="mms_conformance_api" long-name="MMS Conformance API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/mms_conformance_api/group"/>
</component>
<component name="new_contacts_note_variables_api" long-name="New Contacts Note Variables API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/new_contacts_note_variables_api/group"/>
</component>
<component name="new_message_notification_api" long-name="New Message Notification API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/new_message_notification_api/group"/>
</component>
<component name="mms_application_api" long-name="MMS Application API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/mms_application_api/group"/>
</component>
<component name="mms_engine_settings_api" long-name="MMS Engine Settings API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/mms_engine_settings_api/group"/>
</component>
<component name="mms_codec_client_api" long-name="MMS Codec Client API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/mms_codec_client_api/group"/>
</component>
<component name="send_ui_meeting_request_api" long-name="Send UI Meeting Request API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/send_ui_meeting_request_api/group"/>
</component>
<component name="new_contact_notes_extended_api" long-name="New Contact Notes Extended API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/new_contact_notes_extended_api/group"/>
</component>
<component name="mail_ui_constants_api" long-name="Mail UI Constants API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/mail_ui_constants_api/group"/>
</component>
<component name="sim_dialog_launch_api" long-name="SIM Dialog Launch API" filter="s60" class="api">
<unit bldFile="app/messaging/msg_plat/sim_dialog_launch_api/group"/>
</component>
</collection>
<collection name="mobilemessaging" long-name="Mobile Messaging" level="ui">
<component name="audiomsg" filter="s60" long-name="Audio Message">
<unit bldFile="app/messaging/mobilemessaging/audiomsg/group"/>
</component>
<component name="msgmedia" filter="s60" long-name="Message Media">
<unit bldFile="app/messaging/mobilemessaging/msgmedia/group"/>
</component>
<component name="unieditor" filter="s60" long-name="Unified Editor">
<unit bldFile="app/messaging/mobilemessaging/unieditor/group"/>
</component>
<component name="mmsui" filter="s60" long-name="MMS UI">
<unit bldFile="app/messaging/mobilemessaging/mmsui/group"/>
</component>
<component name="postcard" filter="s60" long-name="Postcard">
<unit bldFile="app/messaging/mobilemessaging/postcard/group"/>
</component>
<component name="smilui" filter="s60" long-name="SMIL UI">
<unit bldFile="app/messaging/mobilemessaging/smilui/group"/>
</component>
<component name="smum" filter="s60" long-name="SMS UI MTM and UI Data MTM" plugin="Y">
<unit bldFile="app/messaging/mobilemessaging/smum/group"/>
</component>
<component name="smsui" filter="s60" long-name="SMS UI">
<unit bldFile="app/messaging/mobilemessaging/smsui/group"/>
</component>
<component name="smsmtm" long-name="SMS MTM" purpose="optional" plugin="Y">
<unit bldFile="app/messaging/mobilemessaging/smsmtm/group" mrp="app/messaging/mobilemessaging/smsmtm/group/messaging_sms.mrp"/>
</component>
</collection>
<collection name="mmsengine" long-name="MMS Engine" level="eng">
<component name="mmsconninit" filter="s60" long-name="MMS Connection Initiator" class="placeholder">
<!-- <unit bldFile="mmsengine/mmsconninit/bld"/> -->
</component>
<component name="genutils" filter="s60" long-name="General Utils" class="placeholder">
<!-- <unit bldFile="mmsengine/genutils/bld"/> -->
</component>
<component name="mmsserversettings" filter="s60" long-name="MMS Server Settings" class="placeholder">
<!-- <unit bldFile="mmsengine/mmsserversettings/bld"/> -->
</component>
<component name="mmsmessage" filter="s60" long-name="MMS Message" class="placeholder">
<!-- <unit bldFile="mmsengine/mmsmessage/bld"/> -->
</component>
<component name="mmshttptransport" filter="s60" long-name="MMS HTTP Transport" class="placeholder">
<!-- <unit bldFile="mmsengine/mmshttptransport/bld"/> -->
</component>
<component name="mmscodec" filter="s60" long-name="MMS Codec" class="placeholder">
<!-- <unit bldFile="mmsengine/mmscodec/bld"/> -->
</component>
<component name="mmsserver" filter="s60" long-name="MMS Server" class="placeholder">
<!-- <unit bldFile="mmsengine/mmsserver/bld"/> -->
</component>
<component name="clientmtm" filter="s60" long-name="MMS Client MTM" plugin="Y" class="placeholder">
<!-- <unit bldFile="mmsengine/clientmtm/bld"/> -->
</component>
<component name="mmswatcher" filter="s60" long-name="MMS Watcher" plugin="Y" class="placeholder">
<!-- <unit bldFile="mmsengine/mmswatcher/bld"/> -->
</component>
<component name="mmspushhandler" filter="s60" long-name="MMS Push Handler" plugin="Y" class="placeholder">
<!-- <unit bldFile="mmsengine/mmspushhandler/bld"/> -->
</component>
<component name="applicationadapter" filter="s60" long-name="MMS Application Adapter" class="placeholder">
<!-- <unit bldFile="mmsengine/applicationadapter/bld"/> -->
</component>
<component name="mmscodecclient" filter="s60" long-name="MMS Codec Client" class="placeholder">
<!-- <unit bldFile="mmsengine/mmscodecclient/bld"/> -->
</component>
<component name="mmssettings" long-name="MMS Settings" introduced="9.2" purpose="optional">
<unit bldFile="app/messaging/mmsengine/mmssettings/group" mrp="app/messaging/mmsengine/mmssettings/group/messaging_mmssettings.mrp"/>
</component>
<component name="mmsconf" long-name="MMS Configuration" purpose="optional">
<unit bldFile="app/messaging/mmsengine/mmsconf" mrp="app/messaging/mmsengine/mmsconf/messaging_mmssettings-config.mrp"/>
</component>
<component name="mmsengine_build" filter="s60" long-name="MMS Engine Build">
<!-- this bld.inf should be broken up into the individual other components -->
<unit bldFile="app/messaging/mmsengine/group"/>
</component>
</collection>
<collection name="messagingappbase" long-name="Messaging App Base" level="base">
<component name="msgavkon" filter="s60" long-name="Messaging Avkon UI">
<unit bldFile="app/messaging/messagingappbase/msgavkon/group"/>
</component>
<component name="mce" filter="s60" long-name="Message Center Application">
<unit bldFile="app/messaging/messagingappbase/mce/group"/>
</component>
<component name="mceextraitems" filter="s60" long-name="Message Center Extra Items">
<unit bldFile="app/messaging/messagingappbase/mceextraitems/group"/>
</component>
<component name="mcesettings" filter="s60" long-name="Message Center Settings">
<unit bldFile="app/messaging/messagingappbase/mcesettings/group"/>
</component>
<component name="msgerrorwatcher" filter="s60" long-name="Messaging Error Watcher" plugin="Y">
<unit bldFile="app/messaging/messagingappbase/msgerrorwatcher/group"/>
</component>
<component name="ncnlist" filter="s60" long-name="New Contacts Note List">
<unit bldFile="app/messaging/messagingappbase/ncnlist/group"/>
</component>
<component name="schemeplugin" filter="s60" long-name="Scheme Handler Plugin" plugin="Y">
<unit bldFile="app/messaging/messagingappbase/schemeplugin/group"/>
</component>
<component name="sendui" filter="s60" long-name="Send UI" plugin="Y">
<unit bldFile="app/messaging/messagingappbase/sendui/group"/>
</component>
<component name="smilengine" filter="s60" long-name="SMIL Engine">
<unit bldFile="app/messaging/messagingappbase/smilengine/group"/>
</component>
<component name="bium" filter="s60" long-name="BIO UI MTM" plugin="Y">
<unit bldFile="app/messaging/messagingappbase/bium/group"/>
</component>
<component name="smartmessaging" filter="s60" long-name="Smart Messaging">
<unit bldFile="app/messaging/messagingappbase/smartmessaging/group"/>
</component>
<component name="msgeditor" filter="s60" long-name="Messaging Editor">
<unit bldFile="app/messaging/messagingappbase/msgeditor/group"/>
</component>
<component name="smilparser" long-name="SMIL Parser" introduced="7.0s" purpose="optional">
<unit bldFile="app/messaging/messagingappbase/smilparser/GROUP" mrp="app/messaging/messagingappbase/smilparser/GROUP/messaging_gmxml.mrp"/>
</component>
<component name="obexmtms" long-name="OBEX MTMs" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="app/messaging/messagingappbase/obexmtms/Group" mrp="app/messaging/messagingappbase/obexmtms/Group/messaging_obex.mrp"/>
</component>
</collection>
<collection name="email" long-name="Email" level="mail">
<!-- use commonemail instead -->
<component name="alwaysonlineemailplugin" filter="s60" long-name="Always Online Mail Plugin" deprecated="^3" plugin="Y">
<unit bldFile="app/messaging/email/alwaysonlineemailplugin/group"/>
</component>
<component name="emailnotificationhandler" filter="s60" long-name="Email Notification Handler" deprecated="^3" plugin="Y">
<unit bldFile="app/messaging/email/emailnotificationhandler/group"/>
</component>
<component name="imum" filter="s60" long-name="Internet Mail UI MTM" deprecated="^3" plugin="Y">
<unit bldFile="app/messaging/email/imum/group"/>
</component>
<component name="mail" filter="s60" long-name="Mail Application" deprecated="^3">
<unit bldFile="app/messaging/email/mail/group"/>
</component>
<component name="pop3andsmtpmtm" long-name="POP3 and SMTP MTM" purpose="optional" deprecated="^3" plugin="Y">
<unit bldFile="app/messaging/email/pop3andsmtpmtm/group" mrp="app/messaging/email/pop3andsmtpmtm/group/messaging_email.mrp"/>
</component>
<component name="imap4mtm" long-name="IMAP4 MTM" introduced="9.2" purpose="optional" deprecated="^3" plugin="Y">
<unit bldFile="app/messaging/email/imap4mtm/group" mrp="app/messaging/email/imap4mtm/group/messaging_email_imap.mrp"/>
</component>
</collection>
<collection name="messaging_info" long-name="Messaging Apps Info" level="ui">
<component name="messaging_metadata" long-name="Messaging Apps Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="app/messaging/messaging_info/messaging_metadata/messaging_metadata.mrp"/>
</component>
</collection>
</block>
<block name="commonemail" level="apps" span="2" long-name="Email Apps" levels="service support ui app">
<collection name="email_pub" long-name="Email Apps Public Interfaces" level="app">
<component name="email_widget_api" long-name="Email Widget API" filter="s60" class="api">
<unit bldFile="app/commonemail/email_pub/email_widget_api/group"/>
</component>
</collection>
<collection name="email_plat" long-name="Email Apps Platform Interfaces" level="app">
<component name="email_client_api" long-name="Email Client API" filter="s60" class="api">
<unit bldFile="app/commonemail/email_plat/email_client_api/group"/>
</component>
<component name="email_setup_plugin_api" long-name="Email Setup Plugin API" filter="s60" class="api">
<unit bldFile="app/commonemail/email_plat/email_setup_plugin_api/group"/>
</component>
</collection>
<collection name="emailservices" long-name="Email Services" level="service">
<component name="emailframework" filter="s60" long-name="Email Framework" introduced="^2">
<unit bldFile="app/commonemail/emailservices/emailframework/group"/>
</component>
<component name="emailclientapi" filter="s60" long-name="Email Client API" introduced="^2">
<unit bldFile="app/commonemail/emailservices/emailclientapi/group"/>
</component>
<component name="emailserver" filter="s60" long-name="Email Server" introduced="^2">
<unit bldFile="app/commonemail/emailservices/emailserver/group"/>
</component>
<component name="emailservermonitor" filter="s60" long-name="Email Server Monitor" introduced="^2">
<unit bldFile="app/commonemail/emailservices/emailservermonitor/group"/>
</component>
<component name="psmruadapter" filter="s60" long-name="Predictive Search Most Recent Used Adapter" introduced="^2" plugin="Y">
<unit bldFile="app/commonemail/emailservices/psmruadapter/group"/>
</component>
<component name="emailstore" filter="s60" long-name="Email Store" introduced="^2">
<unit bldFile="app/commonemail/emailservices/emailstore/group"/>
</component>
<component name="emaildebug" filter="s60" long-name="Email Debug" introduced="^2" class="api">
<unit bldFile="app/commonemail/emailservices/emaildebug/group"/>
</component>
<component name="emailinstallationinitiator" filter="s60" long-name="Email Installation Initiator" introduced="^2">
<unit bldFile="app/commonemail/emailservices/emailinstallationinitiator/group"/>
</component>
</collection>
<collection name="ipsservices" long-name="IMAP/POP/SMTP Services" level="service">
<component name="ipssossettings" filter="s60" long-name="IPS SOS Settings" introduced="^2">
<!-- SOS? Consider spelling it out since the abbreviation is ambiguous -->
<unit bldFile="app/commonemail/ipsservices/ipssossettings/group"/>
</component>
<component name="ipssosplugin" filter="s60" long-name="IPS SOS Plugin" introduced="^2" plugin="Y">
<unit bldFile="app/commonemail/ipsservices/ipssosplugin/group"/>
</component>
<component name="ipssosaoplugin" filter="s60" long-name="IPS SOS Always Online Plugin" introduced="^2" plugin="Y">
<unit bldFile="app/commonemail/ipsservices/ipssosaoplugin/group"/>
</component>
<component name="ipsservices_build" filter="s60" long-name="IPS Services Build" introduced="^2">
<unit bldFile="app/commonemail/ipsservices/group"/>
<!-- can the exports be broken up into the other components or made a config component?-->
</component>
</collection>
<collection name="emailcontacts" long-name="Email Contacts" level="support">
<component name="contactactionservice" filter="s60" long-name="Contact Action Service" introduced="^2" plugin="Y">
<unit bldFile="app/commonemail/emailcontacts/contactactionservice/group"/>
</component>
<component name="contactactionmenu" filter="s60" long-name="Contact Action Menu" introduced="^2" plugin="Y">
<unit bldFile="app/commonemail/emailcontacts/contactactionmenu/group"/>
</component>
</collection>
<collection name="meetingrequest" long-name="Meeting Request" level="ui">
<component name="mrcommon" filter="s60" long-name="MR Common" introduced="^2">
<unit bldFile="app/commonemail/meetingrequest/mrcommon/group"/>
</component>
<component name="mrdb" filter="s60" long-name="MR Database" introduced="^2">
<unit bldFile="app/commonemail/meetingrequest/mrdb/group"/>
</component>
<component name="mrpolicy" filter="s60" long-name="MR Policy" introduced="^2">
<unit bldFile="app/commonemail/meetingrequest/mrpolicy/group"/>
</component>
<component name="mrservices" filter="s60" long-name="MR Services" introduced="^2">
<unit bldFile="app/commonemail/meetingrequest/mrservices/group"/>
</component>
<component name="mrgui" filter="s60" long-name="MR GUI" introduced="^2">
<unit bldFile="app/commonemail/meetingrequest/mrgui/group"/>
</component>
<component name="mrentry" filter="s60" long-name="MR Entry" introduced="^2">
<unit bldFile="app/commonemail/meetingrequest/mrentry/group"/>
</component>
<component name="mrtasks" filter="s60" long-name="MR Tasks" introduced="^2">
<unit bldFile="app/commonemail/meetingrequest/mrtasks/group"/>
</component>
<component name="mrutils" filter="s60" long-name="MR Utils" introduced="^2">
<unit bldFile="app/commonemail/meetingrequest/mrutils/group"/>
</component>
<component name="mrutilscalplugin" filter="s60" long-name="MR Utils Calendar Plugin" introduced="^2" plugin="Y">
<unit bldFile="app/commonemail/meetingrequest/mrutilscalplugin/group"/>
</component>
<component name="mrviewer" filter="s60" long-name="MR Viewer" introduced="^2">
<unit bldFile="app/commonemail/meetingrequest/mrviewer/group"/>
</component>
<component name="mrviewercalplugin" filter="s60" long-name="MR Viewer Calendar Plugin" introduced="^2">
<unit bldFile="app/commonemail/meetingrequest/mrviewercalplugin/group"/>
</component>
<component name="mricalviewer" filter="s60" long-name="MR iCal Viewer" introduced="^2" plugin="Y">
<unit bldFile="app/commonemail/meetingrequest/mricalviewer/group"/>
</component>
<component name="mrversit2" filter="s60" long-name="MR Versit2" introduced="^2">
<unit bldFile="app/commonemail/meetingrequest/mrversit2/group"/>
</component>
<component name="mragnversit2" filter="s60" long-name="MR Agenda Versit2" introduced="^2">
<unit bldFile="app/commonemail/meetingrequest/mragnversit2/group"/>
</component>
<component name="mrcasplugin" filter="s60" long-name="MR Contact Action Service Plugin" introduced="^2" plugin="Y">
<unit bldFile="app/commonemail/meetingrequest/mrcasplugin/group"/>
</component>
<component name="mrurlparserplugin" filter="s60" long-name="MR URL Parser Plugin" introduced="^2" plugin="Y">
<unit bldFile="app/commonemail/meetingrequest/mrurlparserplugin/group"/>
</component>
<component name="meetingrequest_build" filter="s60" long-name="MR Build" introduced="^2">
<!-- can the exports be broken up into the other components ?
alternatively, move the exports into a RM Config component-->
<unit bldFile="app/commonemail/meetingrequest/group"/>
</component>
</collection>
<collection name="emailuis" long-name="Email UIs" level="app">
<component name="emailui" filter="s60" long-name="Email UI" introduced="^2">
<unit bldFile="app/commonemail/emailuis/emailui/group"/>
</component>
<component name="gsemailsettings" filter="s60" long-name="Email GS Settings" introduced="^2" plugin="Y">
<unit bldFile="app/commonemail/emailuis/gsemailsettings/group"/>
</component>
<component name="uicomponents" filter="s60" long-name="Email UI Components" introduced="^2">
<unit bldFile="app/commonemail/emailuis/uicomponents/group"/>
</component>
<component name="widget" filter="s60" long-name="Email Widget" introduced="^2">
<!-- Uncomment unit when configuration is in place. Currently #included from emailuis_build, which should be removed at the same time. -->
<!--<unit bldFile="emailuis/widget/group"/>-->
</component>
<component name="emailuis_build" filter="s60" long-name="Email UIs Build" introduced="^2">
<unit bldFile="app/commonemail/emailuis/group"/>
</component>
</collection>
<collection name="commonemail_info" long-name="Email Apps Info" level="app">
<component name="emailhelp" filter="s60" long-name="Email Help" class="placeholder">
<!-- should this be commented out or not? -->
<!-- <unit bldFile="emailhelp/group"/> -->
</component>
<component name="commonemail_help" filter="s60" long-name="Email Help" introduced="^2" class="placeholder">
<!-- should this be commented out or not? -->
<!-- <unit bldFile="help/group"/> -->
</component>
</collection>
</block>
<block name="conversations" level="apps" long-name="Conversation Apps" levels="settings utils plugin ui">
<collection name="conversations_plat" long-name="Conversation Apps Platform Interfaces" level="ui">
<component name="im_cv_launcher_api" long-name="IM CV Launcher API" filter="s60" class="api">
<unit bldFile="app/conversations/conversations_plat/im_cv_launcher_api/group"/>
</component>
<component name="im_connection_api" long-name="IM Connection API" filter="s60" class="api">
<unit bldFile="app/conversations/conversations_plat/im_connection_api/group"/>
</component>
<component name="im_cv_appui_api" long-name="IM CV App UI API" filter="s60" class="api">
<unit bldFile="app/conversations/conversations_plat/im_cv_appui_api/group"/>
</component>
</collection>
<collection name="uiservicetabsettings" long-name="UI Service Tab Settings" level="settings">
<!-- this is really at the wrong rank. should move down a directory -->
<component name="vimpstsettings" filter="s60" long-name="VIMP Service Tab Settings">
<unit bldFile="app/conversations/uiservicetabsettings/group"/>
</component>
</collection>
<collection name="instantmessagesalert" long-name="Instant Messages Alert" level="utils">
<!-- this is really at the wrong rank. should move down a directory -->
<component name="instantmessagesalert_build" filter="s60" long-name="Instant Messages Alert build" introduced="^3">
<unit bldFile="app/conversations/instantmessagesalert/group"/>
</component>
</collection>
<collection name="imstutils" long-name="IM Service Tab Utils" level="utils">
<component name="imstutils_help" filter="s60" long-name="IM Service Tab Help">
<unit bldFile="app/conversations/imstutils/help/group"/>
</component>
<component name="imconnectionprovider" filter="s60" long-name="IM Connection Provider" plugin="Y">
<unit bldFile="app/conversations/imstutils/imconnectionprovider/group"/>
</component>
<component name="xmppadapter" filter="s60" long-name="XMPP Settings Adapter" plugin="Y">
<unit bldFile="app/conversations/imstutils/xmppadapter/group"/>
</component>
<component name="imconversationview" filter="s60" long-name="IM Conversation View">
<unit bldFile="app/conversations/imstutils/imconversationview/group"/>
</component>
<component name="imstutils_config" filter="s60" long-name="IM Service Tab Utils config" class="config">
<!-- remove the #includes and or moved ithe loc file into one the above components -->
<unit bldFile="app/conversations/imstutils/group"/>
</component>
</collection>
<collection name="uiservicetab" long-name="UI Service Tab" level="ui">
<component name="vimpstutils" filter="s60" long-name="VIMP Service Tab Utilities">
<!-- need to spell out VIMP at least once -->
<unit bldFile="app/conversations/uiservicetab/vimpstutils/group"/>
</component>
<component name="vimpststorage" filter="s60" long-name="VIMP Service Tab Storage">
<unit bldFile="app/conversations/uiservicetab/vimpststorage/group"/>
</component>
<component name="vimpstengine" filter="s60" long-name="VIMP Service Tab Engine">
<unit bldFile="app/conversations/uiservicetab/vimpstengine/group"/>
</component>
<component name="vimpstcmdprocess" filter="s60" long-name="VIMP Service Tab Command Process">
<unit bldFile="app/conversations/uiservicetab/vimpstcmdprocess/group"/>
</component>
<component name="vimpstui" filter="s60" long-name="VIMP Service Tab UI">
<unit bldFile="app/conversations/uiservicetab/vimpstui/group"/>
</component>
<component name="vimpstdetailsviewplugin" filter="s60" long-name="VIMP ST Details View Plugin" plugin="Y">
<unit bldFile="app/conversations/uiservicetab/vimpstdetailsviewplugin/group"/>
</component>
<component name="uiservicetab_build" filter="s60" long-name="UI Service Tab Build">
<!-- can this be distributed into the above bld.infs? -->
<unit bldFile="app/conversations/uiservicetab/group"/>
</component>
</collection>
<collection name="servicewidget" long-name="Service Widget" level="ui">
<component name="servicewidgetdatapublisher" filter="s60" long-name="Service Widget Data Publisher" plugin="Y">
<unit bldFile="app/conversations/servicewidget/servicewidgetdatapublisher/group"/>
</component>
<component name="themes" filter="s60" long-name="Service Widget Themes" class="config">
<!-- does this really need to have that number in the directory name? -->
<unit bldFile="app/conversations/servicewidget/themes/install-themes/install/servicewidget_20021383/group"/>
</component>
<component name="servicewidget_build" filter="s60" long-name="Service Widget Build">
<!-- Either move the whole collection down one directory into a single component, or move the ROM and SIS parts into a Service Widget ROM component -->
<unit bldFile="app/conversations/servicewidget/group"/>
</component>
</collection>
<collection name="instantmsgindicatorplugin" long-name="Instant Message Indicator Plugin" level="plugin">
<!-- collection is really a component. should move down a directory -->
<component name="instantmsgindicatorplugin_build" filter="s60" long-name="Instant Message Indicator Plugin Build" introduced="^3" plugin="Y">
<unit bldFile="app/conversations/instantmsgindicatorplugin/group"/>
</component>
</collection>
<collection name="imstatuspaneindicatorplugin" long-name="IM Status Pane Indicator Plugin" level="plugin">
<!-- collection is really a component. should move down a directory -->
<component name="imstatuspaneindicatorplugin_build" filter="s60" long-name="IM Status Pane Indicator Plugin Build" introduced="^3" plugin="Y">
<unit bldFile="app/conversations/imstatuspaneindicatorplugin/group"/>
</component>
</collection>
<collection name="conversations_info" long-name="Conversation Apps Info" level="ui">
<component name="conversations_build" filter="s60" long-name="Conversation Apps Build">
<!-- can the exports be moved to other components? or this remade into a configuration component?-->
<unit bldFile="app/conversations/group"/>
</component>
</collection>
</block>
<block name="im" level="apps" long-name="Instant Messaging Apps" levels="support prot engine apps">
<collection name="im_plat" long-name="Instant Messaging Apps Platform Interfaces" level="apps">
<component name="wv_sap_settings_api" long-name="WV SAP Settings API" filter="s60" class="api">
<unit bldFile="app/im/im_plat/wv_sap_settings_api/group"/>
</component>
</collection>
<collection name="wvsettings20" long-name="Wireless Village Settings Engine" level="support">
<!-- this is really a component. should move down a directory -->
<component name="wvsapsettingsstore" long-name="WV SAP Settings Store" filter="s60" introduced="9.3">
<unit bldFile="app/im/wvsettings20/group"/>
</component>
</collection>
</block>
<block name="dictionary" level="services" long-name="Dictionary" levels="utils ui">
<collection name="dictionary_plat" long-name="Dictionary Platform Interfaces" level="ui">
<component name="menu_suites_macros_api" long-name="Menu Suites Macros API" filter="s60" class="api">
<unit bldFile="app/dictionary/dictionary_plat/menu_suites_macros_api/group"/>
</component>
</collection>
<collection name="userdict" long-name="User Dictionary" level="ui">
<!-- collection is really a component, move down a dir -->
<component name="userdict_build" filter="s60" long-name="Japanese User Dictionary">
<unit bldFile="app/dictionary/userdict/group"/>
</component>
</collection>
</block>
<block name="camera" level="apps" long-name="Camera Apps">
<collection name="camera_plat" long-name="Camera Apps Platform Interfaces">
<component name="camcorder_ui_constants_api" long-name="Camcorder UI Constants API" filter="s60" class="api">
<unit bldFile="app/camera/camera_plat/camcorder_ui_constants_api/group"/>
</component>
<component name="active_palette_2_api" long-name="Active Palette 2 API" filter="s60" class="api">
<unit bldFile="app/camera/camera_plat/active_palette_2_api/group"/>
</component>
</collection>
<collection name="camerauis" long-name="Camera UIs">
<component name="activepalette" filter="s60" long-name="Active Palette">
<unit bldFile="app/camera/camerauis/activepalette/group"/>
</component>
<component name="cameraapp" filter="s60" long-name="Camera Application">
<unit bldFile="app/camera/camerauis/cameraapp/group"/>
<unit bldFile="app/camera/camerauis/cameraapp/help/group"/>
</component>
</collection>
<collection name="camera_info" long-name="Camera Apps Info"/>
</block>
<block name="imgeditor" level="apps" long-name="Image Editor Apps" levels="engine ui">
<collection name="imgeditor_plat" long-name="Image Editor Apps Platform Interfaces" level="ui">
<component name="image_editor_debug_utilities_api" long-name="Image Editor Debug Utilities API" filter="s60" class="api">
<unit bldFile="app/imgeditor/imgeditor_plat/image_editor_debug_utilities_api/group"/>
</component>
<component name="image_editor_utilities_api" long-name="Image Editor Utilities API" filter="s60" class="api">
<unit bldFile="app/imgeditor/imgeditor_plat/image_editor_utilities_api/group"/>
</component>
<component name="image_editor_definitions_api" long-name="Image Editor Definitions API" filter="s60" class="api">
<unit bldFile="app/imgeditor/imgeditor_plat/image_editor_definitions_api/group"/>
</component>
<component name="image_editor_system_parameters_api" long-name="Image Editor System Parameters API" filter="s60" class="api">
<unit bldFile="app/imgeditor/imgeditor_plat/image_editor_system_parameters_api/group"/>
</component>
<component name="image_processing_engine_api" long-name="Image Processing Engine API" filter="s60" class="api">
<unit bldFile="app/imgeditor/imgeditor_plat/image_processing_engine_api/group"/>
</component>
</collection>
<collection name="imageeditor" long-name="Image Editor UI" level="ui">
<component name="pb" filter="s60" long-name="Plugin Base">
<unit bldFile="app/imgeditor/imageeditor/pb/group"/>
</component>
<component name="iepb" filter="s60" long-name="Image Editor Plugin Base">
<unit bldFile="app/imgeditor/imageeditor/iepb/group"/>
</component>
<component name="imageeditorui" filter="s60" long-name="Image Editor UI">
<unit bldFile="app/imgeditor/imageeditor/imageeditorui/group"/>
</component>
<component name="imageeditormanager" filter="s60" long-name="Image Editor Manager">
<unit bldFile="app/imgeditor/imageeditor/imageeditormanager/group"/>
</component>
<component name="imageeditorapp" filter="s60" long-name="Image Editor Application">
<unit bldFile="app/imgeditor/imageeditor/imageeditorapp/group"/>
</component>
<component name="imageeditor_plugins" filter="s60" long-name="Image Editor Plugins" plugin="Y">
<!-- can only have one unit. Need to include all from a single bld.inf -->
<unit bldFile="app/imgeditor/imageeditor/plugins/blackwhiteplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/brightnessplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/bubbleplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/cartoonizeplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/clipartplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/contrastplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/cropplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/drawplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/frameplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/negativeplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/redeyeplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/resizeplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/rotatelplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/rotaterplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/sepiaplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/sharpnessplugin/group"/>
<unit bldFile="app/imgeditor/imageeditor/plugins/textplugin/group"/>
<!-- conditionally #included in imageeditor_build: need to fix
<unit bldFile="imageeditor/plugins/drawplugin/group"/>
-->
</component>
<component name="editorprovider" filter="s60" long-name="Image Editor Provider">
<unit bldFile="app/imgeditor/imageeditor/editorprovider/group"/>
</component>
<component name="imageeditor_build" filter="s60" long-name="Image Editor Build">
<!-- should distribute this to the other components -->
<unit bldFile="app/imgeditor/imageeditor/group"/>
</component>
</collection>
<collection name="imageeditorengine" long-name="Image Editor Engine" level="engine">
<component name="filters" filter="s60" long-name="Image Editor Filters">
<!-- can only have one unit. Need to include all from a single bld.inf -->
<unit bldFile="app/imgeditor/imageeditorengine/filters/filterbrightness/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filterbubble/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filterbuffer/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filtercartoon/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filterclipart/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filtercontrast/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filtercrop/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filterdraw/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filterframe/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filtergrayscale/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filtericlsource/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filterjpegsource/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filterjpegtarget/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filternegate/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filterredeye/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filterrotate/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filterscale/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filtersepia/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filtersharpness/group"/>
<unit bldFile="app/imgeditor/imageeditorengine/filters/filtertext/group"/>
<!-- conditionally #included in imageeditor_build: need to fix
<unit bldFile="imageeditorengine/filters/filterdraw/group"/>
-->
</component>
<component name="imageeditorutils" filter="s60" long-name="Image Editor Utilities">
<unit bldFile="app/imgeditor/imageeditorengine/imageeditorutils/group"/>
</component>
<component name="systemparameters" filter="s60" long-name="System Parameters">
<unit bldFile="app/imgeditor/imageeditorengine/systemparameters/group"/>
</component>
<component name="enginewrapper" filter="s60" long-name="Image Editor Engine Wrapper">
<unit bldFile="app/imgeditor/imageeditorengine/enginewrapper/group"/>
</component>
<component name="imageeditorengine_build" filter="s60" long-name="Image Editor Engine Build">
<!-- should distribute this to the other components -->
<unit bldFile="app/imgeditor/imageeditorengine/group"/>
</component>
</collection>
</block>
<!-- <package id="videoeditor" level="apps" tech-domain="ma" href="../../../../app/videoeditor/package_definition.xml"/> -->
<block name="videoplayer" level="apps" long-name="Video Player Apps" levels="support plugin util apps">
<collection name="videoplayer_plat" long-name="Video Player Apps Platform Interfaces" level="apps">
<component name="videoplayer_startup_api" long-name="Video Player Startup API" filter="s60" class="api">
<unit bldFile="app/videoplayer/videoplayer_plat/videoplayer_startup_api/group" filter="!test"/>
</component>
<component name="video_player_file_details_dialog_api" long-name="Media Player File Details Dialog API" filter="s60" class="api">
<unit bldFile="app/videoplayer/videoplayer_plat/video_player_file_details_dialog_api/group" filter="!test"/>
</component>
<component name="videocollection_api" long-name="Video Collection API" filter="s60" class="api">
<unit bldFile="app/videoplayer/videoplayer_plat/videocollection_api/group"/>
</component>
</collection>
<collection name="videofeeds" long-name="Video Feeds" level="util">
<component name="iptv_utils" filter="s60" long-name="IPTV Util" introduced="^3">
<unit bldFile="app/videoplayer/videofeeds/utils/group"/>
</component>
<component name="viewmessageutility" filter="s60" long-name="View Message Utility" introduced="^3">
<unit bldFile="app/videoplayer/videofeeds/viewmessageutility/group"/>
</component>
<component name="vcxnotifier" filter="s60" long-name="Video Connection Notifier" introduced="^3" plugin="Y">
<unit bldFile="app/videoplayer/videofeeds/vcxnotifier/group"/>
</component>
<component name="vccommon" filter="s60" long-name="Video Connection Common" introduced="^3">
<unit bldFile="app/videoplayer/videofeeds/vccommon/group"/>
</component>
<component name="clientapi" long-name="Server Client" filter="s60" introduced="^3">
<unit bldFile="app/videoplayer/videofeeds/clientapi/group"/>
</component>
<component name="provisioningprocessor" long-name="Provisioning Processor" filter="s60" introduced="^3">
<unit bldFile="app/videoplayer/videofeeds/provisioningprocessor/group"/>
</component>
<component name="mrssplugin" long-name="RSS plugin" filter="s60" introduced="^3" plugin="Y">
<unit bldFile="app/videoplayer/videofeeds/mrssplugin/group"/>
</component>
<component name="videofeeds_server" long-name="Server" filter="s60" introduced="^3">
<unit bldFile="app/videoplayer/videofeeds/server/group"/>
</component>
<component name="livetvutils" long-name="LiveTV Utils" filter="s60" introduced="^3">
<unit bldFile="app/videoplayer/videofeeds/livetvutils/group"/>
</component>
<component name="iptvprovisioningrecognizer" long-name="IP TV Provisioning Recognizer" filter="s60" introduced="^3" plugin="Y">
<unit bldFile="app/videoplayer/videofeeds/provisioningrecognizer/group"/>
</component>
<component name="iptvprovisioningappui" long-name="IP TV Provisioning App UI" filter="s60" introduced="^3">
<unit bldFile="app/videoplayer/videofeeds/provisioningappui/group"/>
</component>
<component name="iptvomaprovisioning" long-name="IP TV OMA Provisioning" filter="s60" introduced="^3">
<unit bldFile="app/videoplayer/videofeeds/omaprovisioning/group"/>
</component>
<component name="vcnsuiengine" long-name="VoD UI Engine" filter="s60" introduced="^3">
<unit bldFile="app/videoplayer/videofeeds/vcnsuiengine/group"/>
</component>
<component name="hgvodui" long-name="Ganes UX2.0 VoD UI" filter="s60" introduced="^3">
<unit bldFile="app/videoplayer/videofeeds/hgvodui/group"/>
</component>
<component name="hgvodplugin" long-name="Ganes UX2.0 VoD UI Plugin" filter="s60" introduced="^3" plugin="Y">
<unit bldFile="app/videoplayer/videofeeds/hgvodplugin/group"/>
</component>
<component name="vcnsscheduleview" long-name="Scheduled Download Settings View" filter="s60" introduced="^3">
<unit bldFile="app/videoplayer/videofeeds/vcnsscheduleview/group"/>
</component>
<component name="vcnsscheduleplugin" long-name="Scheduled Download Settings Plugin" filter="s60" introduced="^3" plugin="Y">
<unit bldFile="app/videoplayer/videofeeds/vcnsscheduleplugin/group"/>
</component>
<component name="scheduleddlplugin" long-name="Scheduled download plugin" filter="s60" introduced="^3">
<unit bldFile="app/videoplayer/videofeeds/scheduleddlplugin/group"/>
</component>
</collection>
<collection name="videocollection" long-name="Video Collection" level="util">
<component name="mpxmyvideoscollection" filter="s60" long-name="MPX My Videos Collection" introduced="^3">
<unit bldFile="app/videoplayer/videocollection/mpxmyvideoscollection/group"/>
</component>
<component name="myvideosindicatorplugin" filter="s60" long-name="My Videos Indicator Plugin" introduced="^3" plugin="Y">
<unit bldFile="app/videoplayer/videocollection/myvideosindicatorplugin/group"/>
</component>
<component name="hgmyvideos" filter="s60" long-name="Huriganes My Videos" introduced="^3">
<unit bldFile="app/videoplayer/videocollection/hgmyvideos/group"/>
</component>
<component name="hgmyvideosplugin" filter="s60" long-name="Huriganes My VideosPlugin" introduced="^3" plugin="Y">
<unit bldFile="app/videoplayer/videocollection/hgmyvideosplugin/group"/>
</component>
</collection>
<collection name="mediasettings" long-name="Media Settings" level="support">
<!-- this is really a component. Should be moved down a directory -->
<component name="mediasettings_build" filter="s60" long-name="Media Settings Build">
<unit bldFile="app/videoplayer/mediasettings/group"/>
</component>
<component name="videoplayer_test" filter="s60" purpose="development" long-name="Video Player Apps Test">
<!-- can only have one unit. Can thes be #included from the above or another bld.inf?-->
<unit bldFile="app/videoplayer/tsrc/VCXTestCommon/group"/>
<unit bldFile="app/videoplayer/tsrc/VCXTestUtilModule/group"/>
<unit bldFile="app/videoplayer/tsrc/VCXTestMyVideosCollectionClient/group"/>
<unit bldFile="app/videoplayer/mediasettings/mediasettingsengine/tsrc/mediasettingsenginetest/group"/>
<unit bldFile="app/videoplayer/mediasettings/videoplayersettingsengine/tsrc/vpsettingsenginetest/group"/>
</component>
</collection>
<collection name="filedetails" long-name="File Details" level="support">
<component name="filedetailsplugin" filter="s60" long-name="File Details Plugin" introduced="^3" plugin="Y">
<unit bldFile="app/videoplayer/filedetails/filedetailsplugin/group"/>
</component>
<component name="filedetailsdialog" filter="s60" long-name="File Details Dialog" introduced="^3">
<unit bldFile="app/videoplayer/filedetails/filedetailsdialog/group"/>
</component>
</collection>
<collection name="videoplayerapp" long-name="Video Player App" level="apps">
<component name="lwplayer" long-name="Lightweight Player" filter="s60">
<unit bldFile="app/videoplayer/videoplayerapp/lwplayer/group"/>
</component>
<component name="mpxvideoplayer" filter="s60" long-name="MPX Video Player" plugin="Y">
<unit bldFile="app/videoplayer/videoplayerapp/mpxvideoplayer/group" filter="!test"/>
</component>
</collection>
<collection name="videoplayback" long-name="Video Playback Plugins" level="plugin">
<component name="videohelix" long-name="Video Helix" filter="s60" introduced="^3" plugin="Y">
<unit bldFile="app/videoplayer/videoplayback/videohelix/group" filter="!test"/>
</component>
<component name="videopdlplaybackviewplugin" filter="s60" long-name="Video PDL Playback View Plugin" introduced="^3" plugin="Y">
<unit bldFile="app/videoplayer/videoplayback/videopdlplaybackviewplugin/group" filter="!test"/>
</component>
<component name="videoplaybackcontrols" filter="s60" long-name="Video Playback Controls" introduced="^3" plugin="Y">
<unit bldFile="app/videoplayer/videoplayback/videoplaybackcontrols/group" filter="!test"/>
</component>
<component name="videoplaybackviewplugin" filter="s60" long-name="Video Playback View Plugin" introduced="^3" plugin="Y">
<unit bldFile="app/videoplayer/videoplayback/videoplaybackviewplugin/group"/>
</component>
<component name="videoplaybackviews" filter="s60" long-name="Video Playback Views" introduced="^3" plugin="Y">
<unit bldFile="app/videoplayer/videoplayback/videoplaybackviews/group" filter="!test"/>
</component>
</collection>
</block>
<block name="photos" level="apps" long-name="Photos" levels="support fw ui app">
<collection name="photos_plat" long-name="Photos Platform Interfaces" level="app">
<component name="collection_plugins_api" long-name="Collection Plugins API" introduced="^2" filter="s60" class="api">
<unit bldFile="app/photos/photos_plat/collection_plugins_api/group"/>
</component>
<component name="controllers_collection_api" long-name="Controllers Collection API" introduced="^2" filter="s60" class="api">
<unit bldFile="app/photos/photos_plat/controllers_collection_api/group"/>
</component>
<component name="gallery_utilities_api" long-name="Gallery Utilities API" introduced="^2" filter="s60" class="api">
<unit bldFile="app/photos/photos_plat/gallery_utilities_api/group"/>
</component>
<component name="slideshow_ui_constants_api" long-name="Slideshow Ui Constants API" introduced="^2" filter="s60" class="api">
<unit bldFile="app/photos/photos_plat/slideshow_ui_constants_api/group"/>
</component>
<component name="views_metadatadialog_api" long-name="Views Metadata Dialog API" introduced="^2" filter="s60" class="api">
<unit bldFile="app/photos/photos_plat/views_metadatadialog_api/group"/>
</component>
</collection>
<collection name="photosgallery" long-name="Photos Gallery" level="app">
<!-- consider splitting this collection into the application itself, and the frameworks behind it -->
<component name="photosgallery_help" filter="s60" long-name="Photos Help" introduced="^2">
<unit bldFile="app/photos/photosgallery/help/group"/>
</component>
<component name="logging" filter="s60" long-name="Photos Logging" introduced="^2">
<unit bldFile="app/photos/photosgallery/logging/group"/>
</component>
<component name="photosgallery_common" filter="s60" long-name="Photos Common" introduced="^2">
<unit bldFile="app/photos/photosgallery/common/group"/>
</component>
<component name="photosgallery_commonui" filter="s60" long-name="Photos Common UI" introduced="^2">
<unit bldFile="app/photos/photosgallery/commonui/group"/>
</component>
<component name="photosgalleryollectionfw" filter="s60" long-name="Photos Collection Framework" introduced="^2">
<unit bldFile="app/photos/photosgallery/collectionframework/group"/>
</component>
<component name="galleryicons" filter="s60" long-name="Photos Icons" introduced="^2" class="config">
<unit bldFile="app/photos/photosgallery/icons"/>
</component>
<component name="imageviewer" filter="s60" long-name="Image Viewer" introduced="^3">
<!-- this is really a part of controllers component, #include from there instead -->
<unit bldFile="app/photos/photosgallery/controllers/imageviewer/group"/>
</component>
<component name="photosgalleryviewfw" filter="s60" long-name="View Framework" introduced="^2">
<unit bldFile="app/photos/photosgallery/viewframework/group"/>
</component>
<component name="controllers" filter="s60" long-name="Photos Controllers" introduced="^2">
<unit bldFile="app/photos/photosgallery/controllers/group"/>
</component>
<component name="photogallery" filter="s60" long-name="Media Gallery" introduced="^2">
<unit bldFile="app/photos/photosgallery/gallery/group"/>
</component>
<component name="slideshow" filter="s60" long-name="Slideshow" introduced="^2">
<unit bldFile="app/photos/photosgallery/slideshow/group"/>
</component>
<component name="memoryplugin" long-name="Memory Plugin" filter="s60" introduced="^2" plugin="Y">
<unit bldFile="app/photos/photosgallery/memoryplugin/group"/>
</component>
<component name="imgvwr" filter="s60" long-name="Photos Image Viewer" introduced="^3">
<unit bldFile="app/photos/photosgallery/imgvwr/group"/>
</component>
<component name="photosgallery_build" filter="s60" long-name="Photos Gallery Build" introduced="^2">
<!-- need to remove the #included above bld.infs from this -->
<unit bldFile="app/photos/photosgallery/group"/>
</component>
</collection>
</block>
<block name="musicplayer" level="apps" long-name="Music Player Apps" levels="plugins support hs app">
<collection name="musicplayer_plat" long-name="Music Player Apps Platform Interfaces" level="app">
<component name="mpx_music_player_app_api" long-name="MPX Music Player App API" filter="s60" class="api">
<unit bldFile="app/musicplayer/musicplayer_plat/mpx_music_player_app_api/group"/>
</component>
<component name="mpx_music_player_commonui_api" long-name="MPX Music Player Common UI API" filter="s60" class="api">
<unit bldFile="app/musicplayer/musicplayer_plat/mpx_music_player_commonui_api/group"/>
</component>
<component name="mpx_music_player_media_key_handler_api" long-name="MPX Music Player Media Key Handler API" filter="s60" class="api">
<unit bldFile="app/musicplayer/musicplayer_plat/mpx_music_player_media_key_handler_api/group"/>
</component>
<component name="mpx_music_player_remote_control_api" long-name="MPX Music Player Remote Control API" filter="s60" class="api">
<unit bldFile="app/musicplayer/musicplayer_plat/mpx_music_player_remote_control_api/group"/>
</component>
<component name="mpx_music_shop_ui_api" long-name="MPX Music Shop UI API" filter="s60" class="api">
<unit bldFile="app/musicplayer/musicplayer_plat/mpx_music_shop_ui_api/group"/>
</component>
<component name="mpx_music_wap_adapter_cenrep_api" long-name="MPX Music Wap Adapter CenRep API" filter="s60" class="api">
<unit bldFile="app/musicplayer/musicplayer_plat/mpx_music_wap_adapter_cenrep_api/group"/>
</component>
<component name="mpx_music_store_api" long-name="MPX Music Store Find API" filter="s60" class="api">
<unit bldFile="app/musicplayer/musicplayer_plat/mpx_music_store_api/group"/>
</component>
<component name="audio_application_features_api" long-name="Audio Application Features API" filter="s60" class="api">
<unit bldFile="app/musicplayer/musicplayer_plat/audio_application_features_api/group"/>
</component>
<component name="music_content_publisher_plugin_api" long-name="Music Content Publisher Plugin API" filter="s60" class="api">
<unit bldFile="app/musicplayer/musicplayer_plat/music_content_publisher_plugin_api/group"/>
</component>
</collection>
<collection name="mpxmusicplayer" long-name="MPX Music Player" level="app">
<component name="mpxmusicplayer_help" filter="s60" long-name="Help">
<unit bldFile="app/musicplayer/mpxmusicplayer/help/group"/>
</component>
<component name="mpxmusicplayer_commonui" filter="s60" long-name="MPX Common UI">
<unit bldFile="app/musicplayer/mpxmusicplayer/commonui/group"/>
</component>
<component name="mpx_metadatahandler" filter="s60" long-name="MPX Metadata Handler">
<unit bldFile="app/musicplayer/mpxmusicplayer/metadatahandler/group"/>
</component>
<component name="mediakeyhandler" filter="s60" long-name="MPX Media Key Handler">
<unit bldFile="app/musicplayer/mpxmusicplayer/mediakeyhandler/group"/>
</component>
<component name="mpxmusicplayer_app" filter="s60" long-name="MPX Application">
<unit bldFile="app/musicplayer/mpxmusicplayer/app/group"/>
</component>
<component name="mpxmusicplayer_build" filter="s60" long-name="MPX Music Player Build">
<!-- can the exports be distributed to the above components? -->
<unit bldFile="app/musicplayer/mpxmusicplayer/group"/>
</component>
</collection>
<collection name="musichomescreen_multiview" long-name="Music Home Screen Multiview" level="hs">
<!-- Uncomment all units when configuration is in place. All currently #included from musichomescreen_build -->
<component name="mpxcollectionpublisher" filter="s60" long-name="MPX Collection Publisher" introduced="^2" class="placeholder">
<!--<unit bldFile="musichomescreen_multiview/mpxcollectionpublisher/group"/>-->
</component>
<component name="musiccontentpublisher" filter="s60" long-name="Music Content Publisher" introduced="^2" class="placeholder">
<!--<unit bldFile="musichomescreen_multiview/musiccontentpublisher/group"/>-->
</component>
<component name="mcpmusicplayer" filter="s60" long-name="Music Player MCP Plugin" introduced="^2" plugin="Y" class="placeholder">
<!--<unit bldFile="musichomescreen_multiview/mcpmusicplayer/group"/>-->
</component>
<component name="musicplayeractionhandlerplugin" filter="s60" long-name="Music Player Action Handler Plugin" introduced="^2" plugin="Y" class="placeholder">
<!--<unit bldFile="musichomescreen_multiview/musicplayeractionhandlerplugin/group"/>-->
</component>
<component name="mpx_data" filter="s60" long-name="MPX Data" introduced="^2" class="placeholder">
<!-- does this make sense to be a component? should it just be #include from musichomescreen_multiview/group? -->
<!--<unit bldFile="musichomescreen_multiview/data/themes/default/group"/>-->
</component>
<component name="musichomescreen_build" filter="s60" long-name="Music Homescreen Multiview Build" introduced="^2">
<unit bldFile="app/musicplayer/musichomescreen_multiview/group"/>
</component>
</collection>
<collection name="mpxplugins" long-name="MPX Plugins" level="plugins">
<component name="serviceplugins" filter="s60" long-name="MPX Service Plugins" plugin="Y">
<unit bldFile="app/musicplayer/mpxplugins/serviceplugins/group"/>
</component>
<component name="viewplugins" filter="s60" long-name="MPX View Plugins" plugin="Y">
<unit bldFile="app/musicplayer/mpxplugins/viewplugins/group"/>
</component>
<component name="mpxplugins_build" filter="s60" long-name="MPX Plugins Build">
<!-- can the exports be distributed to the above components? -->
<unit bldFile="app/musicplayer/mpxplugins/group"/>
</component>
</collection>
<collection name="musicplayer_info" long-name="Music Player Apps Info" level="app">
<component name="musicplayer_build" filter="s60" long-name="Music Player Build">
<!-- should explicitly #inlcude musicplayerbldvariant.hrh in each component -->
<unit bldFile="app/musicplayer/group"/>
</component>
</collection>
</block>
<block name="radio" level="apps" long-name="Radio Apps" levels="engine ui">
<collection name="fmradio" long-name="FM Radio" level="ui">
<component name="activeidleengine" filter="s60" long-name="FM Radio Active Idle Engine">
<unit bldFile="app/radio/fmradio/activeidleengine/group"/>
</component>
<component name="fmradioengine" filter="s60" long-name="FM Radio Engine">
<unit bldFile="app/radio/fmradio/fmradioengine/group"/>
</component>
<component name="fmradioactionhandler" filter="s60" long-name="FM Radio Action Handler" plugin="Y">
<unit bldFile="app/radio/fmradio/fmradioactionhandler/group"/>
</component>
<component name="fmradiomcpplugin" filter="s60" long-name="FM Radio Content Publisher Plugin" plugin="Y">
<unit bldFile="app/radio/fmradio/fmradiomcpplugin/group"/>
</component>
<component name="fmradio_build" filter="s60" long-name="FM Radio Build">
<unit bldFile="app/radio/fmradio/fmradio/group"/>
</component>
<component name="fmradio_help" filter="s60" long-name="FM Radio Help">
<unit bldFile="app/radio/fmradio/help/group"/>
</component>
<component name="fmradio_build" filter="s60" long-name="FM Radio ROM">
<!-- remove above #included bld.infs -->
<unit bldFile="app/radio/fmradio/group"/>
</component>
</collection>
</block>
<block name="podcatcher" level="apps" long-name="Podcatcher" levels="app">
<collection name="podcatcher_info" long-name="Podcatcher" level="app">
<component name="podcatcher_build" filter="sf_build" long-name="Podcatcher Build" introduced="^3">
<unit bldFile="app/podcatcher/group"/>
</component>
</collection>
</block>
<block name="voicerec" level="apps" long-name="Voice Recorder Apps">
<!-- custom filter pref_test-->
<collection name="voicerec_plat" long-name="Voice Recorder Apps Platform Interfaces">
<component name="new_file_service_api" long-name="New File Service API" filter="s60" class="api">
<unit bldFile="app/voicerec/voicerec_plat/new_file_service_api/group"/>
</component>
<component name="voicerecorder_public_constants_api" long-name="Voice Recorder Public Constants API" filter="s60" class="api">
<unit bldFile="app/voicerec/voicerec_plat/voicerecorder_public_constants_api/group"/>
</component>
</collection>
<collection name="voicerecorder" long-name="Voice Recorder">
<!--this is really a component, move down a directory -->
<component name="voicerecorder_build" filter="s60" long-name="Voice Recorder Build">
<unit bldFile="app/voicerec/voicerecorder/group"/>
</component>
</collection>
<collection name="voicerec_info" long-name="Voice Recorder Apps Info"/>
</block>
<block name="screensaver" level="apps" long-name="Screen Saver Apps" levels="plugin ui">
<!-- is this a user-facing application or a daemon? -->
<!-- units need to be commented out until configuration is in place. They are currently #included from screensaver_build-->
<collection name="scrsaver" long-name="Screen Saver" level="plugin">
<component name="scrsaverplugins" filter="s60" long-name="Screen Saver Plugins" plugin="Y">
<!-- must have only one component. #include from a common bld.inf, or move up a directory and make scrsaverplugins a collection -->
<!--<unit bldFile="scrsaver/scrsaverplugins/ScreenSaverAnimPlugin/group/"/>
<unit bldFile="scrsaver/scrsaverplugins/ScreenSaverGifAnimPlugin/group/"/>-->
</component>
<component name="scrsaver_slideshowplugin" filter="s60" long-name="Screen Saver Slideshow Plugin" plugin="Y">
<!--<unit bldFile="scrsaver/scrsaverplugins/SlideshowPlugin/group"/> -->
</component>
<component name="screensaveraiwplugin" filter="s60" long-name="Screen Saver AIW Plugin" plugin="Y">
<!-- <unit bldFile="scrsaver/screensaveraiwplugin/group"/>-->
</component>
</collection>
<collection name="screensaver_info" long-name="Screen Saver Apps Info" level="ui">
<component name="screensaver_build" filter="s60" long-name="Screen Saver Application">
<!--the app should be a separate component -->
<unit bldFile="app/screensaver/group"/>
</component>
</collection>
</block>
<block name="homescreen" level="apps" long-name="Home Screen Apps" levels="fw support apps">
<collection name="homescreen_plat" long-name="Home Screen Apps Platform Interfaces" level="apps">
<component name="menu_settings_api" long-name="Menu Settings API" filter="s60" class="api">
<unit bldFile="app/homescreen/homescreen_plat/menu_settings_api/group"/>
</component>
<component name="hs_content_control_ui" long-name="HS Content Control Ui" filter="s60" class="api">
<unit bldFile="app/homescreen/homescreen_plat/hs_content_control_ui/group"/>
</component>
<component name="hs_renderingplugin_api" long-name="HS Rendering Plugin API" filter="s60" class="api">
<unit bldFile="app/homescreen/homescreen_plat/hs_renderingplugin_api/group"/>
</component>
</collection>
<collection name="idlehomescreen" long-name="Idle Home Screen" level="apps">
<component name="nativeuicontroller" filter="s60" long-name="Native UI Controller">
<unit bldFile="app/homescreen/idlehomescreen/nativeuicontroller/group"/>
</component>
<component name="exths" filter="s60" long-name="Active Idle Container" plugin="Y">
<!-- why is the ID so different from the name? Is one wrong? -->
<unit bldFile="app/homescreen/idlehomescreen/exths/group"/>
</component>
<component name="hscontentcontrol" filter="s60" long-name="Home Screen Content Control" introduced="^3">
<unit bldFile="app/homescreen/idlehomescreen/hscontentcontrol/group"/>
</component>
<component name="hssapiwrapper" filter="s60" long-name="HS SAPI Wrapper" introduced="^3">
<!-- can only have one unit. #include from a common bld.inf, or split into two components -->
<unit bldFile="app/homescreen/idlehomescreen/sapiwrapper/cpswrapper/group"/>
<unit bldFile="app/homescreen/idlehomescreen/sapiwrapper/hspswrapper/group"/>
</component>
<component name="xmluirendering" filter="s60" long-name="XML UI Rendering" introduced="^3">
<unit bldFile="app/homescreen/idlehomescreen/xmluirendering/group"/>
</component>
<component name="xmluicontroller" filter="s60" long-name="XML UI Controller" introduced="^3">
<unit bldFile="app/homescreen/idlehomescreen/xmluicontroller/group"/>
</component>
<component name="widgetmanager" filter="s60" long-name="Widget Manager" introduced="^3">
<unit bldFile="app/homescreen/idlehomescreen/widgetmanager/group"/>
</component>
<component name="idlehomescreen_help" filter="s60" long-name="Idle Home Screen Help">
<unit bldFile="app/homescreen/idlehomescreen/help/group"/>
</component>
<component name="idlehomescreen_data" filter="s60" long-name="Idle Home Screen Data">
<unit bldFile="app/homescreen/idlehomescreen/data/group"/>
</component>
<component name="idlehomescreen_build" filter="s60" long-name="Idle Home Screen Build">
<!-- can the loc file be moved to another comopnent and this one removed? -->
<unit bldFile="app/homescreen/idlehomescreen/group"/>
</component>
</collection>
<collection name="menufw" long-name="Menu Framework" level="fw">
<component name="hierarchynavigator" filter="s60" long-name="Hierarchy Navigator">
<unit bldFile="app/homescreen/menufw/hierarchynavigator/group"/>
</component>
<component name="menufwui" filter="s60" long-name="Menu Framework UI">
<unit bldFile="app/homescreen/menufw/menufwui/group"/>
</component>
<component name="menusuites" filter="s60" long-name="Menu Suites">
<unit bldFile="app/homescreen/menufw/menusuites/group"/>
</component>
<component name="menufw_build" filter="s60" long-name="Menu Framework Build">
<!-- can the exports be exported by the other components? -->
<unit bldFile="app/homescreen/menufw/group"/>
</component>
</collection>
<collection name="taskswitcher" long-name="Task Switcher" level="support">
<component name="contextengine" filter="s60" long-name="Context Engine" introduced="^3">
<unit bldFile="app/homescreen/taskswitcher/contextengine/group"/>
</component>
<component name="taskswitcherui" filter="s60" long-name="Task Switcher UI" introduced="^3">
<unit bldFile="app/homescreen/taskswitcher/taskswitcherui/group"/>
</component>
</collection>
</block>
<block name="graphicsuis" level="services" long-name="Graphics UIs" levels="util ui">
<collection name="graphicsuis_plat" long-name="Graphics UIs Platform Interfaces" level="ui">
<component name="svgt_viewer_ui_api" long-name="SVG-T Viewer UI API" filter="s60" class="api">
<unit bldFile="app/graphicsuis/graphicsuis_plat/svgt_viewer_ui_api/group"/>
</component>
<component name="svg_application_observer_utility_api" long-name="SVG Application Observer Utility API" filter="s60" class="api">
<unit bldFile="app/graphicsuis/graphicsuis_plat/svg_application_observer_utility_api/group"/>
</component>
<component name="svgt_file_view_details_dialog_api" long-name="SVG-T File View Details Dialog API" filter="s60" class="api">
<unit bldFile="app/graphicsuis/graphicsuis_plat/svgt_file_view_details_dialog_api/group"/>
</component>
</collection>
<collection name="svgtviewer" long-name="SVG-T Viewer" level="ui">
<component name="svgtviewerplugin" filter="s60" long-name="SVG-T Viewer Plugin">
<unit bldFile="app/graphicsuis/svgtviewer/svgtviewerplugin/group"/>
</component>
</collection>
</block>
<block name="profile" level="apps" long-name="Profiles" levels="app">
<collection name="profile_plat" long-name="Profiles Platform Interfaces" level="app">
<component name="profiles_settings_view_api" long-name="Profiles Settings View API" filter="s60" class="api">
<unit bldFile="app/profile/profile_plat/profiles_settings_view_api/group"/>
</component>
</collection>
<collection name="profilesapplication" long-name="Profiles Application" level="app">
<component name="profiles" filter="s60" long-name="Profiles">
<unit bldFile="app/profile/profilesapplication/profiles/group"/>
</component>
</collection>
<collection name="profile_info" long-name="Profiles Info" level="app">
<component name="profile_help" filter="s60" long-name="Profiles Help">
<unit bldFile="app/profile/help/group"/>
</component>
</collection>
</block>
<block name="speechsrv" level="services" long-name="Speech Recognition UIs" levels="engine framework ui">
<collection name="speechsrv_plat" long-name="Speech Recognition UIs Platform Interfaces" level="ui">
<component name="vas_api" long-name="VAS API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/vas_api/group"/>
</component>
<component name="nss_devasr_api" long-name="NSS DevASR API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/nss_devasr_api/group"/>
</component>
<component name="tts_hw_device_api" long-name="TTS HW Device API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/tts_hw_device_api/group"/>
</component>
<component name="voice_commands_resource_header_api" long-name="Voice Commands Resource Header API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/voice_commands_resource_header_api/group"/>
</component>
<component name="nss_mmf_tts_custom_commands_api" long-name="NSS MMF TTS Custom Commands API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/nss_mmf_tts_custom_commands_api/group"/>
</component>
<component name="srsf_cenrep_settings_api" long-name="SRSF CenRep Settings API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/srsf_cenrep_settings_api/group"/>
</component>
<component name="voice_ui_plugin_api" long-name="Voice UI Plug-in API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/voice_ui_plugin_api/group"/>
</component>
<component name="nss_tts_utility_api" long-name="NSS TTS Utility API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/nss_tts_utility_api/group"/>
</component>
<component name="nss_srs_custom_commands_api" long-name="NSS SRS Custom Commands API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/nss_srs_custom_commands_api/group"/>
</component>
<component name="srsf_secondarydisplay_api" long-name="SRSF Secondary Display API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/srsf_secondarydisplay_api/group"/>
</component>
<component name="asrs_hw_device_api" long-name="ASRS Hardware Device API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/asrs_hw_device_api/group"/>
</component>
<component name="vas_vcommand_api" long-name="VAS Voice Command API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/vas_vcommand_api/group"/>
</component>
<component name="adaptation_hw_device_api" long-name="Adaptation Hardware Device API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/adaptation_hw_device_api/group"/>
</component>
<component name="nss_devtts_api" long-name="NSS DevTTS API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/nss_devtts_api/group"/>
</component>
<component name="nss_srs_utility_api" long-name="NSS SRS Utility API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/nss_srs_utility_api/group"/>
</component>
<component name="recognition_hw_device_api" long-name="Recognition Hardware Device API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/recognition_hw_device_api/group"/>
</component>
<component name="vas_contact_handler_api" long-name="VAS Contact Handler API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/vas_contact_handler_api/group"/>
</component>
<component name="nlp_hw_device" long-name="NLP Hardware Device" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/nlp_hw_device/group"/>
</component>
<component name="nss_si_speech_recognition_data_api" long-name="NSS SI Speech Recognition Data API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/nss_si_speech_recognition_data_api/group"/>
</component>
<component name="nss_tts_common_api" long-name="NSS TTS Common API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/nss_tts_common_api/group"/>
</component>
<component name="grcompiler_hw_device_api" long-name="Grammar Compiler Hardware Device API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/grcompiler_hw_device_api/group"/>
</component>
<component name="ttp_hw_device_api" long-name="TTP Hardware Device API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/ttp_hw_device_api/group"/>
</component>
<component name="vocman_hw_device_api" long-name="VocMan Hardware Device API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/vocman_hw_device_api/group"/>
</component>
<component name="speech_synthesis_clientserver_api" long-name="Speech Synthesis Client-Server API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/speech_synthesis_clientserver_api/group"/>
</component>
<component name="voice_ui_accessory_button_handling_api" long-name="Voice UI Accessory Button Handling API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/voice_ui_accessory_button_handling_api/group"/>
</component>
<component name="ui_voice_recognition_api" long-name="UI Voice Recognition API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/ui_voice_recognition_api/group"/>
</component>
<component name="vcommand_settings_cenrep_api" long-name="Voice Command Settings CenRep API" filter="s60" class="api">
<unit bldFile="app/speechsrv/speechsrv_plat/vcommand_settings_cenrep_api/group"/>
</component>
</collection>
<collection name="voiceui" long-name="Voice UI" level="ui">
<component name="vcommand" filter="s60" long-name="Voice Commands UI" introduced="^1">
<unit bldFile="app/speechsrv/voiceui/vcommand/group"/>
</component>
<component name="voiceuivoicerecognition" filter="s60" long-name="Voice UI Recognition" introduced="^1">
<unit bldFile="app/speechsrv/voiceui/voiceuivoicerecognition/group"/>
</component>
<component name="pbkinfoviewimpl" filter="s60" long-name="Phonebook Info View Implementation" introduced="^1">
<unit bldFile="app/speechsrv/voiceui/pbkinfoviewimpl/group"/>
</component>
<component name="aiwpbkinfoviewprovider" filter="s60" long-name="AIW Phonebook Info View Provider" introduced="^1" plugin="Y">
<unit bldFile="app/speechsrv/voiceui/aiwpbkinfoviewprovider/group"/>
</component>
<component name="vccontrolpanelplugin" filter="s60" long-name="Voice Commands Control Panel Plugin" introduced="^1" plugin="Y">
<!-- component is commented out until configuration is in place. Currently #included from voiceui_build -->
<!--<unit bldFile="voiceui/vccontrolpanelplugin/group"/>-->
</component>
<component name="voiceui_build" filter="s60" long-name="Voice UI Build" introduced="^1">
<!-- can this be put into the other components? -->
<unit bldFile="app/speechsrv/voiceui/group"/>
</component>
</collection>
<collection name="srsf" long-name="Speech Recognition and Synthesis Framework" level="framework">
<component name="sispeechrecognitiondata" filter="s60" long-name="SI Speech Recognition Data">
<unit bldFile="app/speechsrv/srsf/sispeechrecognitiondata/group"/>
</component>
<component name="ttscommon" filter="s60" long-name="TTS Common">
<unit bldFile="app/speechsrv/srsf/ttscommon/group"/>
</component>
<component name="devtts" filter="s60" long-name="Text to Speech">
<unit bldFile="app/speechsrv/srsf/devtts/group"/>
</component>
<component name="ttscustomcommands" filter="s60" long-name="TTS Custom Commands">
<unit bldFile="app/speechsrv/srsf/ttscustomcommands/group"/>
</component>
<component name="ttscontrollerplugin" filter="s60" long-name="TTS Controller Plugin" plugin="Y">
<unit bldFile="app/speechsrv/srsf/ttscontrollerplugin/group"/>
</component>
<component name="ttsutility" filter="s60" long-name="TTS Utility">
<unit bldFile="app/speechsrv/srsf/ttsutility/group"/>
</component>
<component name="speechsynthesis" filter="s60" long-name="Speech Synthesis">
<!-- can only have one unit. #include these from a common bld.inf -->
<unit bldFile="app/speechsrv/srsf/speechsynthesis/client/group"/>
<unit bldFile="app/speechsrv/srsf/speechsynthesis/server/group"/>
</component>
<component name="devasr" filter="s60" long-name="Audio Recording and Speech Recognition">
<unit bldFile="app/speechsrv/srsf/devasr/group"/>
</component>
<component name="sicc" filter="s60" long-name="Speaker Independent Custom Commands">
<unit bldFile="app/speechsrv/srsf/sicc/group"/>
</component>
<component name="sisrscontrollerplugin" filter="s60" long-name="SI SRS Controller Plugin" plugin="Y">
<unit bldFile="app/speechsrv/srsf/sisrscontrollerplugin/group"/>
</component>
<component name="siutility" filter="s60" long-name="Speaker Independent Utility">
<unit bldFile="app/speechsrv/srsf/siutility/group"/>
</component>
<component name="nssvasapi" filter="s60" long-name="NSS VAS API">
<unit bldFile="app/speechsrv/srsf/nssvasapi/group"/>
</component>
<component name="nssvascontacthdlr" filter="s60" long-name="NSS VAS Contact Handler">
<unit bldFile="app/speechsrv/srsf/nssvascontacthdlr/group"/>
</component>
<component name="vcommandhandler" filter="s60" long-name="Voice Command Handler">
<unit bldFile="app/speechsrv/srsf/vcommandhandler/group"/>
</component>
<component name="vuiphandler" filter="s60" long-name="Voice UI Plugin Handler">
<unit bldFile="app/speechsrv/srsf/vuiphandler/group"/>
</component>
<component name="vcommandexecutor" filter="s60" long-name="Voice Command Executor">
<unit bldFile="app/speechsrv/srsf/vcommandexecutor/group"/>
</component>
<component name="vcommandexecutorbearer" filter="s60" long-name="Voice Command Executor Bearer">
<unit bldFile="app/speechsrv/srsf/vcommandexecutorbearer/group"/>
</component>
<component name="vcommandmanager" filter="s60" long-name="Voice Command Manager">
<unit bldFile="app/speechsrv/srsf/vcommandmanager/group"/>
</component>
<component name="vcexecutorapp" filter="s60" long-name="Voice Command Executor Application">
<unit bldFile="app/speechsrv/srsf/vcexecutorapp/group"/>
</component>
<component name="profileobserverplugin" filter="s60" long-name="Profile Observer Plugin" plugin="Y">
<unit bldFile="app/speechsrv/srsf/profileobserverplugin/group"/>
</component>
<component name="srsf_build" filter="s60" long-name="Speech Recognition and Synthesis Framework Build">
<!-- should distribute this into the above components -->
<unit bldFile="app/speechsrv/srsf/group"/>
</component>
</collection>
<collection name="speechsrv_info" long-name="Speech Recognition UIs Info" level="ui"/>
</block>
<block name="homescreentools" level="services" long-name="Home Screen Tools" levels="tool install">
<collection name="dtdinstaller" long-name="DTD Installer" level="install">
<!-- collection is really a component. Needs to be moved down a directory -->
<!-- this needs to be built first, does build order need to be forced with filters? -->
<component name="dtdinstaller_build" filter="s60" long-name="DTD Installer Build" class="tool PC">
<unit bldFile="app/homescreentools/dtdinstaller/group"/>
</component>
</collection>
<collection name="themeinstaller" long-name="Theme Installer" level="install">
<!-- collection is really a component. Needs to be moved down a directory -->
<component name="themeinstaller_build" filter="s60" long-name="Theme Installer Build" class="tool PC">
<unit bldFile="app/homescreentools/themeinstaller/group"/>
</component>
</collection>
<collection name="widgettools" long-name="Widget Tools" level="install">
<component name="hspluginpreinstaller" filter="s60" long-name="HS Plugin Preinstaller" introduced="^3" class="tool PC">
<unit bldFile="app/homescreentools/widgettools/hspluginspreinstaller/group"/>
</component>
<component name="wrtwidgetpreinstaller" filter="s60" long-name="WRT Widget Preinstaller" introduced="^3" class="tool PC">
<unit bldFile="app/homescreentools/widgettools/wrtwidgetpreinstaller/group"/>
</component>
</collection>
</block>
<block name="webuis" level="services" long-name="Web UIs" levels="plugin app">
<collection name="browserui" long-name="Browser UI" level="app">
<component name="browser" filter="s60" long-name="Browser">
<unit bldFile="app/webuis/browserui/browser/group"/>
</component>
<component name="operatormenu" filter="s60" long-name="Browser Operator Menu">
<unit bldFile="app/webuis/browserui/operatormenu/group"/>
</component>
<component name="videoservices" filter="s60" long-name="Browser Video Services">
<unit bldFile="app/webuis/browserui/videoservices/group"/>
</component>
</collection>
<collection name="browserplugins" long-name="Browser Plugins" level="plugin">
<component name="browsersysteminfoplugin" filter="s60" long-name="Browser System Info Plugin" plugin="Y">
<!-- uncomment the unit when configuration is in place, it's currently #included from browserplugins_build -->
<!-- <unit bldFile="browserplugins/browsersysteminfoplugin/group"/>-->
</component>
<component name="browsergpsplugin" filter="s60" long-name="Browser GPS Plugin" plugin="Y">
<!-- uncomment the unit when configuration is in place, it's currently #included from browserplugins_build -->
<!-- <unit bldFile="browserplugins/browsergpsplugin/group"/>-->
</component>
<component name="browseraudiovideoplugin" filter="s60" long-name="Browser Audio Video Plugin" plugin="Y">
<unit bldFile="app/webuis/browserplugins/browseraudiovideoplugin/group"/>
</component>
<component name="browserplugins_build" filter="s60" long-name="Browser Plugins Build">
<!-- when configuration is in place, the #ifdef is no longer needed and this component can be removed -->
<unit bldFile="app/webuis/browserplugins/group"/>
</component>
</collection>
<collection name="pushmtm" long-name="Push MTM" level="plugin">
<component name="pushmtm_help" filter="s60" long-name="Push MTM Help">
<unit bldFile="app/webuis/pushmtm/help/group"/>
</component>
<component name="plugins" filter="s60" long-name="Push MTM Plugins" plugin="Y">
<unit bldFile="app/webuis/pushmtm/plugins/group"/>
</component>
<component name="pushmtm_build" filter="s60" long-name="Push MTM Build">
<!-- Some content is at collection level and some is at comopnent level. Either make this a single
component and move it down a diretcory, or make separate independent components in this collection -->
<unit bldFile="app/webuis/pushmtm/group"/>
</component>
</collection>
</block>
<block name="jrt" level="services" long-name="Java Runtime" levels="util generic rt ui">
<collection name="jrt_plat" long-name="JRT Platform Interfaces" level="ui">
<component name="java_registry_api" long-name="Java Registry API" filter="s60" class="api">
<unit bldFile="app/jrt/jrt_plat/java_registry_api/build"/>
</component>
<component name="java_env_info_api" long-name="Java Environment Info API" filter="s60" class="api">
<unit bldFile="app/jrt/jrt_plat/java_env_info_api/build"/>
</component>
<component name="java_debug_api" long-name="Java Debug API" filter="s60" class="api">
<unit bldFile="app/jrt/jrt_plat/java_debug_api/build"/>
</component>
</collection>
<collection name="java_stubs" long-name="Java Stubs" level="util">
<component name="java_stubs_build" filter="s60" long-name="JRT Stubs Build">
<unit bldFile="app/jrt/java_stubs/group"/>
</component>
</collection>
</block>
<block name="conntools" level="services" long-name="Connectivity Tools" levels="config app">
<collection name="nettools" long-name="Net Tools" level="app">
<component name="conntest" filter="s60" long-name="Connection Test" purpose="development">
<unit bldFile="app/conntools/nettools/conntest/group"/>
</component>
</collection>
<collection name="emulatorlan" long-name="Emulator LAN" level="config">
<!-- component is actually a colleciton, should be moved down a directory -->
<component name="emulatorlan_build" filter="s60" long-name="Emulator LAN Build" purpose="development" class="config">
<unit bldFile="app/conntools/emulatorlan/group"/>
</component>
</collection>
</block>
<block name="rndtools" level="services" long-name="R&D tools" levels="support generic test util">
<collection name="creator" long-name="Creator" level="support">
<!-- collection is really a component. Should move down a directory -->
<component name="creator_build" filter="s60" long-name="Creator Tool" purpose="development" class="tool">
<unit bldFile="app/rndtools/creator/group"/>
</component>
</collection>
<collection name="filebrowser" long-name="File Browser" level="util">
<!-- consider collapsing into a single component -->
<component name="fileopserver" filter="s60" long-name="File Operations Server" purpose="development" class="tool">
<!-- uncomment the unit when configuration is in place, it's currently #included from filebrowser_build -->
<!-- <unit bldFile="filebrowser/fileopserver/group"/>-->
</component>
<component name="fileopclient" filter="s60" long-name="File Operations Client" purpose="development" class="tool">
<!-- uncomment the unit when configuration is in place, it's currently #included from filebrowser_build -->
<!--<unit bldFile="filebrowser/fileopclient/group"/>-->
</component>
<component name="filebrowser_build" filter="s60" long-name="File Browser Application" purpose="development" class="tool">
<!-- Need to make this a self-contained component by removing #includes. Can only do when configuration is in place-->
<unit bldFile="app/rndtools/filebrowser/group"/>
</component>
</collection>
<collection name="launcher" long-name="Launcher" level="util">
<!-- collection is really a component. Should move down a directory -->
<component name="launcher_build" filter="s60" long-name="Launcher Utility" purpose="development" class="tool">
<unit bldFile="app/rndtools/launcher/group"/>
</component>
</collection>
<collection name="loadgen" long-name="Load Generator" level="test">
<!-- collection is really a component. Should move down a directory -->
<component name="loadgen_build" filter="s60" long-name="Load Generator Application" purpose="development" class="tool">
<unit bldFile="app/rndtools/loadgen/group"/>
</component>
</collection>
<collection name="perfmon" long-name="Performance Monitor" level="test">
<!-- collection is really a component. Should move down a directory -->
<component name="perfmon_build" filter="s60" long-name="Performance Monitor Tool" purpose="development" class="tool">
<unit bldFile="app/rndtools/perfmon/group"/>
</component>
</collection>
<collection name="screengrabber" long-name="Screen Grabber" level="util">
<!-- collection is really a component. Should move down a directory -->
<component name="screengrabber_build" filter="s60" long-name="ScreenGrabber" purpose="development" class="tool">
<unit bldFile="app/rndtools/screengrabber/group"/>
</component>
</collection>
<collection name="stifui" long-name="STIF UI" level="generic">
<component name="stifui_avkon" filter="s60" long-name="STIF UI for Avkon" purpose="development">
<unit bldFile="app/rndtools/stifui/avkon/group"/>
</component>
</collection>
<collection name="memspyui" long-name="Memspy UI" level="generic">
<!-- collection is really a component. Should move down a directory -->
<component name="memspyui_build" filter="s60" long-name="Memspy UI Application" purpose="development" class="tool">
<unit bldFile="app/rndtools/memspyui/group"/>
</component>
</collection>
<collection name="htiui" long-name="Harmonized Test Interface UI" level="generic">
<component name="HtiServicePlugins" filter="s60" long-name="HTI Service Plugins" purpose="development" plugin="Y">
<!-- can only have a single unit. Should #include from a common bld.inf file -->
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiAppServicePlugin/group"/>
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiAudioServicePlugin/group"/>
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiKeyEventServicePlugin/group"/>
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiMessagesServicePlugin/group"/>
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiPIMServicePlugin/group"/>
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiScreenshotServicePlugin/group"/>
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiSysInfoServicePlugin/group"/>
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiFtpBackupFake/group"/>
</component>
<component name="htidevicereboot" filter="s60" long-name="HTI Device Reboot" purpose="development">
<unit bldFile="app/rndtools/htiui/htidevicereboot/group"/>
</component>
<component name="htistartupwait" filter="s60" long-name="HTI Startup Wait" purpose="development">
<unit bldFile="app/rndtools/htiui/htistartupwait/group"/>
</component>
<component name="htiadmin" filter="s60" long-name="HTI Admin" purpose="development">
<unit bldFile="app/rndtools/htiui/htiadmin/group"/>
</component>
<component name="htiui_build" filter="s60" long-name="HTI UI Build" purpose="development">
<!-- can this be split up into the other components or made a ROM component? -->
<unit bldFile="app/rndtools/htiui/group"/>
</component>
</collection>
</block>
<block name="helps" level="apps" span="2" long-name="Help Apps" levels="eng tools if ui">
<collection name="csxhelp" long-name="Context Sensitive Extended Help" level="if">
<!-- this is really a component. Should move it down a directory -->
<component name="csxhelp_build" filter="s60" long-name="Context Sensitive Extended Help Build">
<unit bldFile="app/helps/csxhelp/group"/>
</component>
</collection>
<collection name="symhelp" long-name="Symbian Help" level="eng">
<component name="helpmodel" long-name="Help" introduced="6.0" purpose="optional">
<unit bldFile="app/helps/symhelp/helpmodel/group" mrp="app/helps/symhelp/helpmodel/group/app-services_hlpmodel.mrp"/>
</component>
</collection>
<collection name="helps_info" long-name="Help Apps Info" level="ui">
<component name="helps_metadata" long-name="Help Apps Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="app/helps/helps_info/helps_metadata/helps_metadata.mrp"/>
</component>
</collection>
</block>
<block name="techview" level="apps" span="2" long-name="Techview" levels="services ui utils apps1 apps2 apps3">
<collection name="buildverification" long-name="Build Verification" level="services">
<component name="autosmoketest" long-name="Auto Smoke Test" filter="gt" purpose="development" introduced="9.1">
<unit bldFile="app/techview/buildverification/autosmoketest/Group" mrp="app/techview/buildverification/autosmoketest/Group/testtools_autosmoketest.mrp"/>
</component>
<component name="smoketest" long-name="Smoke Test" filter="gt" purpose="development">
<unit bldFile="app/techview/buildverification/smoketest/Group" mrp="app/techview/buildverification/smoketest/Group/testtools_smoketest.mrp"/>
</component>
</collection>
<collection name="techviewplat" long-name="Techview Platform" level="services"/>
<collection name="techviewui" long-name="Techview UI" level="ui"/>
<collection name="controlpanel" long-name="Control Panel" level="ui"/>
<collection name="pimapps" long-name="PIM Apps" level="apps3"/>
<collection name="securityapps" long-name="Security Apps" level="apps3"/>
<collection name="utilityapps" long-name="Utility Apps" level="apps2"/>
<collection name="installationapps" long-name="Installation Apps" level="apps2"/>
<collection name="messagingapps" long-name="Messaging Apps" level="apps2"/>
<collection name="telephonyapps" long-name="Telephony Apps" level="apps1"/>
<collection name="networkingapps" long-name="Networking Apps" level="apps1"/>
<collection name="networkingutils" long-name="Networking Utils" level="utils"/>
<collection name="shortlinkapps" long-name="Shortlink Apps" level="apps1"/>
<collection name="testapps" long-name="Test Apps" level="utils"/>
<collection name="avapps" long-name="A/V Apps" level="apps3"/>
<collection name="toolkit" long-name="Toolkit" level="utils"/>
<collection name="techview_info" long-name="Techview Info" level="apps3">
<component name="techview_metadata" long-name="Techview Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="app/techview/techview_info/techview_metadata/techview_metadata.mrp"/>
</component>
</collection>
</block>
</layer>
</systemModel>
</SystemDefinition>