summaryrefslogtreecommitdiff
path: root/libperfmgr/config_schema.json
blob: b74bacbe6e451df5857350d35309471d8145d995 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
{
  "definitions": {},
  "$schema": "http://json-schema.org/draft-06/schema#",
  "type": "object",
  "id": "config_schema.json",
  "required": [
    "Nodes",
    "Actions"
  ],
  "properties": {
    "Nodes": {
      "type": "array",
      "id": "/properties/Nodes",
      "minItems": 1,
      "uniqueItems": true,
      "items": {
        "type": "object",
        "id": "/properties/Nodes/items",
        "required": [
          "Name",
          "Path",
          "Values"
        ],
        "properties": {
          "Name": {
            "type": "string",
            "id": "/properties/Nodes/items/properties/Name",
            "title": "The Name Schema.",
            "description": "The name of the node.",
            "minLength": 1
          },
          "Path": {
            "type": "string",
            "id": "/properties/Nodes/items/properties/Path",
            "title": "The Path Schema.",
            "description": "The path of the node.",
            "minLength": 1
          },
          "Values": {
            "type": "array",
            "id": "/properties/Nodes/items/properties/Values",
            "minItems": 1,
            "uniqueItems": true,
            "items": {
              "type": "string",
              "id": "/properties/Nodes/items/properties/Values/items",
              "title": "The Values Schema.",
              "description": "The Values array lists all possible values that can be set in the Actions section, and the list of values is sorted based on their priority, with the highest priority first.",
              "minLength": 1
            }
          },
          "DefaultIndex": {
            "type": "integer",
            "id": "/properties/Nodes/items/properties/DefaultIndex",
            "title": "The Default Index Schema.",
            "description": "The default index of the node, if not present, it will be set to max index of Values.",
            "minimum": 0
          },
          "ResetOnInit": {
            "type": "boolean",
            "id": "/properties/Nodes/items/properties/ResetOnInit",
            "title": "The Reset On Init Schema.",
            "description": "Flag if node will be set to default value on initialization; if not present, it will be set to false."
          },
          "HoldFd": {
            "type": "boolean",
            "id": "/properties/Nodes/items/properties/HoldFd",
            "title": "The Hold Fd Schema.",
            "description": "Flag if node will hold the file descriptor on non-default values; if not present, it will be set to false."
          }
        }
      }
    },
    "Actions": {
      "type": "array",
      "id": "/properties/Actions",
      "minItems": 1,
      "uniqueItems": true,
      "items": {
        "type": "object",
        "id": "/properties/Actions/items",
        "required": [
          "PowerHint",
          "Node",
          "ValueIndex",
          "Duration"
        ],
        "properties": {
          "PowerHint": {
            "type": "string",
            "id": "/properties/Actions/items/properties/PowerHint",
            "title": "The PowerHint Schema.",
            "description": "The PowerHint name of the action.",
            "minLength": 1
          },
          "Node": {
            "type": "string",
            "id": "/properties/Actions/items/properties/Node",
            "title": "The Node Schema.",
            "description": "The Node name of the action, which is defined in Nodes.",
            "minLength": 1
          },
          "Value": {
            "type": "string",
            "id": "/properties/Actions/items/properties/Value",
            "title": "The Value Index Schema.",
            "description": "The value of action, which is defined in Nodes.",
            "minLength": 1
          },
          "Duration": {
            "type": "integer",
            "id": "/properties/Actions/items/properties/Duration",
            "title": "The Duration Schema.",
            "description": "The number of milliseconds that this action will be active (zero means forever).",
            "minimum": 0
          }
        }
      }
    }
  }
}