// GENERATED from registry.json. R3-draft, wire 0.2. Not a transport implementation. package koobique.contracts const val KQIP_PROFILE: Int = 2 enum class MessageType(val code: Int) { Hello(1), Ready(2), Describe(16), Snapshot(17), Observation(32), Event(33), Command(48), CommandResult(49), StatusQuery(50), Resync(51), Ping(64), Pong(65), TelemetryAck(66), Error(255); } enum class ErrorCode(val code: Int) { OK(0), UNAUTHORIZED(1), BOOT_MISMATCH(2), FENCE_MISMATCH(3), ID_CONFLICT(4), RESULT_EVICTED(5), INVALID_VALUE(6), MANUAL_HOLD(7), EXPIRED(9), RESOURCE_LIMIT(10), UNKNOWN_COMMAND(11), PROFILE_MISMATCH(12), INVALID_FRAME(13), SYNC_REQUIRED(14), STORAGE_FAILURE(15), STATE_CONFLICT(8); } object HelloFields { const val PROFILE: Int = 1 const val INSTALLATION_ID: Int = 2 const val PEER_ID: Int = 3 const val BOOT_ID: Int = 4 const val ROLE: Int = 5 const val MAX_BODY: Int = 6 const val CAPABILITIES: Int = 7 } object ReadyFields { const val PROFILE: Int = 1 const val REPLY_TO: Int = 2 const val ACCEPTED: Int = 3 const val MAX_BODY: Int = 4 } object DescribeFields { const val DEVICE_ID: Int = 1 const val DESCRIPTOR_REVISION: Int = 2 const val CHANNELS: Int = 3 const val REPLY_TO: Int = 4 } object SnapshotFields { const val DEVICE_ID: Int = 1 const val CHANNEL_ID: Int = 2 const val BOOT_ID: Int = 3 const val CONTROLLER_FENCE: Int = 4 const val OUTPUT_REVISION: Int = 5 const val MANUAL_REVISION: Int = 6 const val OUTPUT: Int = 7 const val MANUAL_MODE: Int = 8 const val EXECUTION_HIGHWATER: Int = 9 const val SAMPLE_DEVICE_US: Int = 10 const val REPLY_TO: Int = 11 const val DESCRIPTOR_REVISION: Int = 12 } object ObservationFields { const val DEVICE_ID: Int = 1 const val CHANNEL_ID: Int = 2 const val BOOT_ID: Int = 3 const val SAMPLE_SEQ: Int = 4 const val SAMPLE_START_US: Int = 5 const val SAMPLE_END_US: Int = 6 const val MANTISSA: Int = 7 const val EXPONENT: Int = 8 const val UNIT: Int = 9 const val STATUS: Int = 10 const val FLAGS: Int = 11 const val DESCRIPTOR_REVISION: Int = 12 const val PLACEMENT_REVISION: Int = 13 const val MODE_ID: Int = 14 const val DELIVERY_KIND: Int = 15 } object EventFields { const val DEVICE_ID: Int = 1 const val CHANNEL_ID: Int = 2 const val BOOT_ID: Int = 3 const val SAMPLE_SEQ: Int = 4 const val DEVICE_US: Int = 5 const val EVENT_KIND: Int = 6 const val VALUE: Int = 7 const val DELIVERY_KIND: Int = 8 } object CommandFields { const val COMMAND_ID: Int = 1 const val TARGET_DEVICE_ID: Int = 2 const val CHANNEL_ID: Int = 3 const val EXPECTED_BOOT_ID: Int = 4 const val CONTROLLER_FENCE: Int = 5 const val EXECUTION_SEQ: Int = 6 const val EXPECTED_OUTPUT_REVISION: Int = 7 const val EXPECTED_MANUAL_REVISION: Int = 8 const val NOT_AFTER_DEVICE_US: Int = 9 const val OPERATION: Int = 10 const val ARGUMENT: Int = 11 const val CAUSE: Int = 12 } object CommandResultFields { const val COMMAND_ID: Int = 1 const val BOOT_ID: Int = 2 const val EXECUTION_SEQ: Int = 3 const val STATUS: Int = 4 const val ERROR_CODE: Int = 5 const val OUTPUT_REVISION: Int = 6 const val MANUAL_REVISION: Int = 7 const val OUTPUT_AT_RESULT: Int = 8 const val RESULT_DEVICE_US: Int = 9 const val CONTROLLER_FENCE: Int = 10 const val REPLY_TO: Int = 11 } object StatusQueryFields { const val COMMAND_ID: Int = 1 const val TARGET_DEVICE_ID: Int = 2 const val CHANNEL_ID: Int = 3 const val EXPECTED_BOOT_ID: Int = 4 } object ResyncFields { const val TARGET_DEVICE_ID: Int = 1 const val CHANNEL_ID: Int = 2 const val KNOWN_BOOT_ID: Int = 3 const val KNOWN_OUTPUT_REVISION: Int = 4 const val KNOWN_MANUAL_REVISION: Int = 5 const val KNOWN_DESCRIPTOR_REVISION: Int = 6 } object PingFields { const val NONCE: Int = 1 const val CORE_BOOT_ID: Int = 2 const val C1_US: Int = 3 } object PongFields { const val NONCE: Int = 1 const val CORE_BOOT_ID: Int = 2 const val DEVICE_BOOT_ID: Int = 3 const val C1_US: Int = 4 const val D2_US: Int = 5 const val D3_US: Int = 6 const val CLOCK_MODE: Int = 7 const val REPLY_TO: Int = 8 } object TelemetryAckFields { const val DEVICE_ID: Int = 1 const val CHANNEL_ID: Int = 2 const val BOOT_ID: Int = 3 const val DURABLE_THROUGH_SEQ: Int = 4 const val CREDIT: Int = 5 } object ErrorFields { const val ERROR_CODE: Int = 1 const val REPLY_TO: Int = 2 const val DIAGNOSTIC: Int = 3 }