{
	"description": "Receiver Internals",
	"type": "object",
	"$schema": "http://json-schema.org/draft-04/schema#",
	"title": "Receiver Internals",
	"definitions": {
		"fp_table_row": {
			"type": "array",
			"minItems": 1,
			"items": {
				"type": "number"
			},
			"maxItems": 2048
		},
		"fp_table": {
			"type": "object",
			"desription": "scanner internal data",
			"properties": {
				"ch": {
					"type": "integer",
					"max": 255,
					"min": 0,
					"description": "channel number"
				},
				"tc": {
					"type": "integer",
					"max": 255,
					"min": 0,
					"description": "table data type code"
				},
				"ny": {
					"type": "integer",
					"max": 2048,
					"min": 1,
					"description": "number of y entries"
				},
				"tv": {
					"type": "array",
					"minItems": 1,
					"items": {
						"oneOf": [
							{
								"$ref": "#/definitions/fp_table_row"
							},
							{
								"type": "number"
							}
						]
					},
					"maxItems": 2048
				},
				"nx": {
					"type": "integer",
					"max": 2048,
					"min": 1,
					"description": "number of x entries"
				}
			},
			"required": [
				"ch",
				"tc",
				"nx",
				"ny",
				"tv"
			]
		},
		"fp": {
			"type": "object",
			"description": "Fingerprint values",
			"properties": {
				"s": {
					"type": "array",
					"minItems": 1,
					"items": {
						"type": "array",
						"minItems": 1,
						"items": {
							"type": "number"
						},
						"maxItems": 4096
					},
					"maxItems": 256
				},
				"w": {
					"type": "array",
					"minItems": 1,
					"items": {
						"type": "array",
						"minItems": 5,
						"items": {
							"type": "number"
						},
						"maxItems": 5
					},
					"maxItems": 256
				}
			},
			"required": [
				"s",
				"w"
			]
		}
	},
	"properties": {
		"a": {
			"type": "array",
			"minItems": 1,
			"description": "Amplitude [dB]",
			"items": {
				"type": "number"
			},
			"maxItems": 256
		},
		"tbl": {
			"type": "array",
			"minItems": 1,
			"items": {
				"$ref": "#/definitions/fp_table"
			},
			"description": "various internal data"
		},
		"sr": {
			"type": "number",
			"exclusiveMinimum": true,
			"minimum": 0,
			"description": "Sample rate [Hz]"
		},
		"mw": {
			"type": "number",
			"exclusiveMinimum": true,
			"maximum": 4095,
			"minimum": 0,
			"description": "Maximum weight"
		},
		"ex": {
			"type": "object",
			"description": "DEPRECATED, use 'riegl.exponential_decomposition' instead"
		},
		"ns": {
			"type": "integer",
			"description": "Number of samples",
			"maximum": 4095,
			"minimum": 0
		},
		"nt": {
			"type": "integer",
			"description": "Number of traces",
			"maximum": 255,
			"minimum": 0
		},
		"t": {
			"type": "object",
			"additionalProperties": false,
			"patternProperties": {
				"^[0-9]+$": {
					"description": "one field per channel, field name is channel index",
					"$ref": "#/definitions/fp"
				}
			}
		},
		"si": {
			"type": "number",
			"description": "Start index (hw_start)",
			"maximum": 255,
			"minimum": 0
		}
	}
}