symbian3/mw/camerasrv/package_definition.xml
branchHighFidelityModel
changeset 45 262790aa488d
parent 30 0f4f00318d20
child 63 d7aa110911c4
--- a/symbian3/mw/camerasrv/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/camerasrv/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,127 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="camerasrv">
-<collection name="s60">
-<component name="camerasrv">
-<unit bldFile="/sf/mw/camerasrv/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="camerasrv" level="specific" long-name="Camera Services" levels="plugin fw api">
+        <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="/sf/mw/camerasrv/camappengine/asynchfilesavequeue/group"/>
+          </component>
+          <component name="camappengine_build" filter="s60" long-name="Camera App Engine Build">
+            <unit bldFile="/sf/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="/sf/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="/sf/mw/camerasrv/configmanagers/imagingconfigmanager/group"/>
+          </component>
+        </collection>
+        <collection name="camerasrv_info" long-name="Camera Services Info" level="api">
+          <component name="camerasrv_plat" filter="s60" long-name="Camera Services Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/camerasrv/camerasrv_plat/group"/>
+          </component>
+          <component name="camerasrv_test" filter="s60,api_test" long-name="Camera Services API Test" purpose="development">
+            <!-- #include from a single bld.inf or split into mutliple componens -->
+            <unit bldFile="/sf/mw/camerasrv/camerasrv_plat/asynchronous_file_saving_queue_api/tsrc/group"/>
+            <unit bldFile="/sf/mw/camerasrv/camerasrv_plat/camera_application_engine_api/tsrc/group"/>
+            <unit bldFile="/sf/mw/camerasrv/camerasrv_plat/imaging_configuration_manager_api/tsrc/group"/>
+            <unit bldFile="/sf/mw/camerasrv/camerasrv_plat/media_recorder_api/tsrc/group"/>
+          </component>
+          <component name="camerasrv_build" filter="s60" long-name="Camera Services Build">
+            <!-- should split into individual bld.infs -->
+            <unit bldFile="/sf/mw/camerasrv/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>