xref: /aosp_15_r20/hardware/interfaces/tv/tuner/1.0/config/tunerResourceManagerUseCaseConfig.xsd (revision 4d7e907c777eeecc4c5bd7cf640a754fac206ff7)
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