1*4d7e907cSAndroid Build Coastguard Worker<?xml version="1.0"?> 2*4d7e907cSAndroid Build Coastguard Worker<!-- Copyright 2020 The Android Open Source Project 3*4d7e907cSAndroid Build Coastguard Worker 4*4d7e907cSAndroid Build Coastguard Worker Licensed under the Apache License, Version 2.0 (the "License"); 5*4d7e907cSAndroid Build Coastguard Worker you may not use this file except in compliance with the License. 6*4d7e907cSAndroid Build Coastguard Worker You may obtain a copy of the License at 7*4d7e907cSAndroid Build Coastguard Worker 8*4d7e907cSAndroid Build Coastguard Worker http://www.apache.org/licenses/LICENSE-2.0 9*4d7e907cSAndroid Build Coastguard Worker 10*4d7e907cSAndroid Build Coastguard Worker Unless required by applicable law or agreed to in writing, software 11*4d7e907cSAndroid Build Coastguard Worker distributed under the License is distributed on an "AS IS" BASIS, 12*4d7e907cSAndroid Build Coastguard Worker WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13*4d7e907cSAndroid Build Coastguard Worker See the License for the specific language governing permissions and 14*4d7e907cSAndroid Build Coastguard Worker limitations under the License. 15*4d7e907cSAndroid Build Coastguard Worker--> 16*4d7e907cSAndroid Build Coastguard Worker<xs:schema version="1.0" 17*4d7e907cSAndroid Build Coastguard Worker xmlns:xs="http://www.w3.org/2001/XMLSchema"> 18*4d7e907cSAndroid Build Coastguard Worker <!-- List of the Tuner Resource Manager client use case priority hint. --> 19*4d7e907cSAndroid Build Coastguard Worker <xs:simpleType name="version"> 20*4d7e907cSAndroid Build Coastguard Worker <xs:restriction base="xs:decimal"> 21*4d7e907cSAndroid Build Coastguard Worker <xs:enumeration value="1.0"/> 22*4d7e907cSAndroid Build Coastguard Worker </xs:restriction> 23*4d7e907cSAndroid Build Coastguard Worker </xs:simpleType> 24*4d7e907cSAndroid Build Coastguard Worker <xs:complexType name="config"> 25*4d7e907cSAndroid Build Coastguard Worker <xs:sequence> 26*4d7e907cSAndroid Build Coastguard Worker <xs:element name="useCaseDefault" type="useCaseDefault" minOccurs="1" maxOccurs="1"/> 27*4d7e907cSAndroid Build Coastguard Worker <xs:element name="useCasePreDefined" type="useCasePreDefined" minOccurs="0" maxOccurs="5"/> 28*4d7e907cSAndroid Build Coastguard Worker <xs:element name="useCaseVendor" type="useCaseVendor" minOccurs="0" maxOccurs="unbounded"/> 29*4d7e907cSAndroid Build Coastguard Worker </xs:sequence> 30*4d7e907cSAndroid Build Coastguard Worker <xs:attribute name="version" type="version"/> 31*4d7e907cSAndroid Build Coastguard Worker </xs:complexType> 32*4d7e907cSAndroid Build Coastguard Worker 33*4d7e907cSAndroid Build Coastguard Worker <xs:complexType name="useCaseDefault"> 34*4d7e907cSAndroid Build Coastguard Worker <xs:annotation> 35*4d7e907cSAndroid Build Coastguard Worker <xs:documentation xml:lang="en"> 36*4d7e907cSAndroid Build Coastguard Worker useCaseDefault section: 37*4d7e907cSAndroid Build Coastguard Worker Default value for predefined use cases priority hint. 38*4d7e907cSAndroid Build Coastguard Worker "fgPriority": priority when the use case is in foreground. 39*4d7e907cSAndroid Build Coastguard Worker "bgPriority": priority when the use case is in background. 40*4d7e907cSAndroid Build Coastguard Worker </xs:documentation> 41*4d7e907cSAndroid Build Coastguard Worker </xs:annotation> 42*4d7e907cSAndroid Build Coastguard Worker <xs:attribute name="fgPriority" type="priority"/> 43*4d7e907cSAndroid Build Coastguard Worker <xs:attribute name="bgPriority" type="priority"/> 44*4d7e907cSAndroid Build Coastguard Worker </xs:complexType> 45*4d7e907cSAndroid Build Coastguard Worker 46*4d7e907cSAndroid Build Coastguard Worker <xs:complexType name="useCasePreDefined"> 47*4d7e907cSAndroid Build Coastguard Worker <xs:annotation> 48*4d7e907cSAndroid Build Coastguard Worker <xs:documentation xml:lang="en"> 49*4d7e907cSAndroid Build Coastguard Worker useCasePreDefined section: 50*4d7e907cSAndroid Build Coastguard Worker A list of predefined use cases and their foreground/background priority hint. 51*4d7e907cSAndroid Build Coastguard Worker Each use case has the following attributes: 52*4d7e907cSAndroid Build Coastguard Worker "type": type of the use case. Pre-defined use cases start with "USE_CASE_" 53*4d7e907cSAndroid Build Coastguard Worker and have been predefined in "predefinedUseCaseType". 54*4d7e907cSAndroid Build Coastguard Worker "fgPriority": priority when the use case is in foreground. 55*4d7e907cSAndroid Build Coastguard Worker "bgPriority": priority when the use case is in background. 56*4d7e907cSAndroid Build Coastguard Worker </xs:documentation> 57*4d7e907cSAndroid Build Coastguard Worker </xs:annotation> 58*4d7e907cSAndroid Build Coastguard Worker <xs:attribute name="type" type="predefinedUseCaseType"/> 59*4d7e907cSAndroid Build Coastguard Worker <xs:attribute name="fgPriority" type="priority"/> 60*4d7e907cSAndroid Build Coastguard Worker <xs:attribute name="bgPriority" type="priority"/> 61*4d7e907cSAndroid Build Coastguard Worker </xs:complexType> 62*4d7e907cSAndroid Build Coastguard Worker 63*4d7e907cSAndroid Build Coastguard Worker <xs:complexType name="useCaseVendor"> 64*4d7e907cSAndroid Build Coastguard Worker <xs:annotation> 65*4d7e907cSAndroid Build Coastguard Worker <xs:documentation xml:lang="en"> 66*4d7e907cSAndroid Build Coastguard Worker useCaseVendor section: 67*4d7e907cSAndroid Build Coastguard Worker A list of vendor defined use cases and their foreground/background priority hint. 68*4d7e907cSAndroid Build Coastguard Worker Each use case has the following attributes: 69*4d7e907cSAndroid Build Coastguard Worker "type": type of the use case. Vendor defined use cases start with "VENDOR_USE_CASE_". 70*4d7e907cSAndroid Build Coastguard Worker "fgPriority": priority when the use case is in foreground. 71*4d7e907cSAndroid Build Coastguard Worker "bgPriority": priority when the use case is in background. 72*4d7e907cSAndroid Build Coastguard Worker "id": Vendor defined use case must have an id greater than 1000 to be associated with. 73*4d7e907cSAndroid Build Coastguard Worker </xs:documentation> 74*4d7e907cSAndroid Build Coastguard Worker </xs:annotation> 75*4d7e907cSAndroid Build Coastguard Worker <xs:attribute name="type" type="vendorUseCaseType"/> 76*4d7e907cSAndroid Build Coastguard Worker <xs:attribute name="id" type="id"/> 77*4d7e907cSAndroid Build Coastguard Worker <xs:attribute name="fgPriority" type="priority"/> 78*4d7e907cSAndroid Build Coastguard Worker <xs:attribute name="bgPriority" type="priority"/> 79*4d7e907cSAndroid Build Coastguard Worker </xs:complexType> 80*4d7e907cSAndroid Build Coastguard Worker 81*4d7e907cSAndroid Build Coastguard Worker <xs:simpleType name="predefinedUseCaseType"> 82*4d7e907cSAndroid Build Coastguard Worker <xs:restriction base="xs:string"> 83*4d7e907cSAndroid Build Coastguard Worker <xs:enumeration value="USE_CASE_RECORD"/> 84*4d7e907cSAndroid Build Coastguard Worker <xs:enumeration value="USE_CASE_LIVE"/> 85*4d7e907cSAndroid Build Coastguard Worker <xs:enumeration value="USE_CASE_PLAYBACK"/> 86*4d7e907cSAndroid Build Coastguard Worker <xs:enumeration value="USE_CASE_SCAN"/> 87*4d7e907cSAndroid Build Coastguard Worker <xs:enumeration value="USE_CASE_BACKGROUND"/> 88*4d7e907cSAndroid Build Coastguard Worker </xs:restriction> 89*4d7e907cSAndroid Build Coastguard Worker </xs:simpleType> 90*4d7e907cSAndroid Build Coastguard Worker 91*4d7e907cSAndroid Build Coastguard Worker <xs:simpleType name="vendorUseCaseType"> 92*4d7e907cSAndroid Build Coastguard Worker <xs:restriction base="xs:string"> 93*4d7e907cSAndroid Build Coastguard Worker <xs:pattern value="VENDOR_USE_CASE_[_A-Z0-9]+"/> 94*4d7e907cSAndroid Build Coastguard Worker </xs:restriction> 95*4d7e907cSAndroid Build Coastguard Worker </xs:simpleType> 96*4d7e907cSAndroid Build Coastguard Worker 97*4d7e907cSAndroid Build Coastguard Worker <xs:simpleType name="priority"> 98*4d7e907cSAndroid Build Coastguard Worker <xs:restriction base="xs:integer"> 99*4d7e907cSAndroid Build Coastguard Worker <xs:minInclusive value="0"/> 100*4d7e907cSAndroid Build Coastguard Worker <xs:maxInclusive value="1000"/> 101*4d7e907cSAndroid Build Coastguard Worker </xs:restriction> 102*4d7e907cSAndroid Build Coastguard Worker </xs:simpleType> 103*4d7e907cSAndroid Build Coastguard Worker 104*4d7e907cSAndroid Build Coastguard Worker <xs:simpleType name="id"> 105*4d7e907cSAndroid Build Coastguard Worker <xs:restriction base="xs:integer"> 106*4d7e907cSAndroid Build Coastguard Worker <xs:minInclusive value="1001"/> 107*4d7e907cSAndroid Build Coastguard Worker </xs:restriction> 108*4d7e907cSAndroid Build Coastguard Worker </xs:simpleType> 109*4d7e907cSAndroid Build Coastguard Worker 110*4d7e907cSAndroid Build Coastguard Worker <xs:element name="config" type="config"/> 111*4d7e907cSAndroid Build Coastguard Worker</xs:schema> 112