3D sensor
40
13.1.5 Conguration of PCIC Output
The user has the possibility to define his own PCIC output. This configuration is only valid for the current
PCIC connection. It does not affect any other connection and will get lost after disconnecting.
For configuring the PCIC output a “flexible” layouter concept is used, represented by a JSON string. The
format of the default configuration is as follows:
{
"layouter": "flexible",
"format": { "dataencoding": "ascii" },
"elements": [
{ "type": "string", "value": "star", "id": "start_string" },
{ "type": "blob", "id": "normalized_amplitude_image" },
{ "type": "blob", "id": "X_image" },
{ "type": "blob", "id": "Y_image" },
{ "type": "blob", "id": "Z_image" },
{ "type": "blob", "id": "confidence_image" },
{ "type": "blob", "id": "diagnostic_data" },
{ "type": "string", "value": "stop", "id": "end_string" }
]
}
This string can be retrieved by the C? command, altered and sent back using the c command.
The layout software has the following main object properties:
Name Description Details
layouter Defines the basic data output format.
So far only “flexible” is supported
Type: string
format Defines format details, the definitions in the main object are
the defaults for any of the following data elements (e.g. if it
says dataencoding=binary, all data elements should be binary
encoded instead of ASCII).
Type: object
elements List of data elements which must be written. Type: array of objects
The actual data is defined within the “elements” properties and may consist of these settings:
Name Description Details
type Defines the type of data which must be written.
The data might be stored in a different type (e.g. stored as integer but
should be output as Float32)
The type "records" will need some special handling.
Type: string
id Defines an identifier for this data element.
If there is no fixed value (property "value"), the data should be
retrieved via id.
Type: string
value Optional property for defining a fixed output value. Type: any JSON value
format Type-depending option for fine-tuning the output format.
E.g. cut an integer to less than 4 bytes.
Type: object