aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Native
diff options
context:
space:
mode:
authorRoy Ben-Shabat <Roy@Twine-s.com>2018-05-22 14:24:19 +0300
committerRoy Ben-Shabat <Roy@Twine-s.com>2018-05-22 14:24:19 +0300
commite29de860906682fb744aa703c47dc91883700e49 (patch)
tree1646b79e17bdbe50d94221a5443e740d83c57db0 /Software/Visual_Studio/Native
parent9be3bbce0bc582e44ac2518ee471d825b81143d1 (diff)
downloadTango-e29de860906682fb744aa703c47dc91883700e49.tar.gz
Tango-e29de860906682fb744aa703c47dc91883700e49.zip
Implemented Numeric touch keyboard.
Implemented Native RoundTrip for Machine Emulator.
Diffstat (limited to 'Software/Visual_Studio/Native')
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/EmbeddedEmulator.cpp65
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/EmbeddedEmulator.h23
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/Exports.cpp17
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/Exports.h6
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationData.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationData.pb-c.h76
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationPoint.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationPoint.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ColorSpace.pb-c.c43
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ColorSpace.pb-c.h46
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionInput.pb-c.c209
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionInput.pb-c.h91
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionOutput.pb-c.c132
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionOutput.pb-c.h78
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputCoordinates.pb-c.c248
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputCoordinates.pb-c.h97
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputLiquid.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputLiquid.pb-c.h79
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/LiquidType.pb-c.c47
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/LiquidType.pb-c.h48
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputCoordinates.pb-c.c144
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputCoordinates.pb-c.h81
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputLiquid.pb-c.c106
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputLiquid.pb-c.h75
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/ErrorCode.pb-c.c41
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/ErrorCode.pb-c.h51
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageContainer.pb-c.c170
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageContainer.pb-c.h85
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageType.pb-c.c317
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageType.pb-c.h207
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectRequest.pb-c.h71
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectResponse.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectResponse.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DeviceInformation.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DeviceInformation.pb-c.h73
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/DebugLogCategory.pb-c.c43
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/DebugLogCategory.pb-c.h46
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogResponse.pb-c.c157
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogResponse.pb-c.h81
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DataFileFrame.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DataFileFrame.pb-c.h76
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DiagnosticsMonitors.pb-c.c547
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DiagnosticsMonitors.pb-c.h251
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DigitalPin.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DigitalPin.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingRequest.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingRequest.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingResponse.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingResponse.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingRequest.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingRequest.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingResponse.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingResponse.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingRequest.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingRequest.pb-c.h77
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DoubleArray.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DoubleArray.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/Event.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/Event.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/EventType.pb-c.c109
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/EventType.pb-c.h193
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingRequest.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingRequest.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingResponse.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingResponse.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorDirection.pb-c.c37
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorDirection.pb-c.h43
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingRequest.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingRequest.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingResponse.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingResponse.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingRequest.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingRequest.pb-c.h77
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventRequest.pb-c.h73
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueRequest.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueRequest.pb-c.h75
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutRequest.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutRequest.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsResponse.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsResponse.pb-c.h93
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingRequest.pb-c.c106
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingRequest.pb-c.h75
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponent.pb-c.c37
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponent.pb-c.h49
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponentState.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponentState.pb-c.h75
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeInput.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeInput.pb-c.h71
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeOutput.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeOutput.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileInput.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileInput.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileOutput.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileOutput.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/EmbroideryFile.pb-c.c170
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/EmbroideryFile.pb-c.h84
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Extents.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Extents.pb-c.h78
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Stitch.pb-c.c196
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Stitch.pb-c.h89
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchColor.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchColor.pb-c.h76
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchFlag.pb-c.c45
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchFlag.pb-c.h47
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareConfiguration.pb-c.c157
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareConfiguration.pb-c.h88
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancer.pb-c.c196
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancer.pb-c.h89
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancerType.pb-c.c39
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancerType.pb-c.h53
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenser.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenser.pb-c.h79
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenserType.pb-c.c35
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenserType.pb-c.h42
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotor.pb-c.c391
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotor.pb-c.h119
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotorType.pb-c.c91
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotorType.pb-c.h157
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControl.pb-c.c313
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControl.pb-c.h107
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControlType.pb-c.c75
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControlType.pb-c.h125
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensor.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensor.pb-c.h77
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensorType.pb-c.c35
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensorType.pb-c.h45
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinder.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinder.pb-c.h75
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinderType.pb-c.c35
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinderType.pb-c.h45
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationRequest.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationResponse.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationResponse.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalBridgeUdpDiscoveryPacket.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalBridgeUdpDiscoveryPacket.pb-c.h71
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginRequest.pb-c.h71
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginResponse.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginResponse.pb-c.h73
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseRequest.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseResponse.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseResponse.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserLiquidType.pb-c.c47
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserLiquidType.pb-c.h48
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserStepDivision.pb-c.c51
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserStepDivision.pb-c.h50
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobBrushStop.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobBrushStop.pb-c.h79
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobDispenser.pb-c.c196
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobDispenser.pb-c.h90
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobRequest.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobResponse.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobResponse.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSegment.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSegment.pb-c.h76
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpool.pb-c.c196
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpool.pb-c.h89
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpoolType.pb-c.c35
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpoolType.pb-c.h42
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobStatus.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobStatus.pb-c.h75
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobTicket.pb-c.c183
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobTicket.pb-c.h87
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobWindingMethod.pb-c.c37
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobWindingMethod.pb-c.h49
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/ProcessParameters.pb-c.c287
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/ProcessParameters.pb-c.h102
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersRequest.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersResponse.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersResponse.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateRequest.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateRequest.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateResponse.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateResponse.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressRequest.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressRequest.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressResponse.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressResponse.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadRequest.pb-c.h75
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadResponse.pb-c.c170
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadResponse.pb-c.h89
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteRequest.pb-c.c144
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteRequest.pb-c.h88
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteResponse.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteResponse.pb-c.h81
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionRequest.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionResponse.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionResponse.pb-c.h78
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserRequest.pb-c.c144
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserRequest.pb-c.h92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserResponse.pb-c.c144
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserResponse.pb-c.h93
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadRequest.pb-c.h75
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadResponse.pb-c.c170
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadResponse.pb-c.h99
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteRequest.pb-c.c144
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteRequest.pb-c.h95
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteResponse.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteResponse.pb-c.h79
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteRequest.pb-c.c235
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteRequest.pb-c.h100
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteResponse.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteResponse.pb-c.h79
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegRequest.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegRequest.pb-c.h80
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegResponse.pb-c.c132
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegResponse.pb-c.h89
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionRequest.pb-c.h75
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionResponse.pb-c.c170
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionResponse.pb-c.h92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegRequest.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegResponse.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegResponse.pb-c.h83
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegRequest.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegRequest.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegResponse.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegResponse.pb-c.h79
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupRequest.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupRequest.pb-c.h89
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupResponse.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupResponse.pb-c.h88
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitRequest.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitRequest.pb-c.h89
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitResponse.pb-c.c144
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitResponse.pb-c.h90
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteRequest.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteResponse.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteResponse.pb-c.h85
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitRequest.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitRequest.pb-c.h81
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitResponse.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitResponse.pb-c.h88
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteRequest.pb-c.c106
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteRequest.pb-c.h76
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteResponse.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteResponse.pb-c.h83
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionResponse.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionResponse.pb-c.h83
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterRequest.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterRequest.pb-c.h82
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterResponse.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterResponse.pb-c.h86
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollResponse.pb-c.c183
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollResponse.pb-c.h88
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestRequest.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestRequest.pb-c.h77
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestResponse.pb-c.c170
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestResponse.pb-c.h87
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverRequest.pb-c.c339
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverRequest.pb-c.h110
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverResponse.pb-c.c274
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverResponse.pb-c.h105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderRequest.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderRequest.pb-c.h87
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderResponse.pb-c.c157
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderResponse.pb-c.h93
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkRequest.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkRequest.pb-c.h77
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkResponse.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkResponse.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitRequest.pb-c.c339
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitRequest.pb-c.h113
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitResponse.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitResponse.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovRequest.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovRequest.pb-c.h76
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovResponse.pb-c.c170
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovResponse.pb-c.h90
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionRequest.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionResponse.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionResponse.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRequest.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRequest.pb-c.h78
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorResponse.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorResponse.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunRequest.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunRequest.pb-c.h76
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunResponse.pb-c.c183
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunResponse.pb-c.h92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickRequest.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickRequest.pb-c.h76
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickResponse.pb-c.c183
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickResponse.pb-c.h92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedRequest.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedResponse.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedResponse.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusRequest.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusRequest.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusResponse.pb-c.c287
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusResponse.pb-c.h102
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopRequest.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopRequest.pb-c.h77
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopResponse.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopResponse.pb-c.h84
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchRequest.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchRequest.pb-c.h80
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchResponse.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchResponse.pb-c.h88
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionResponse.pb-c.c144
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionResponse.pb-c.h79
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageResponse.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageResponse.pb-c.h75
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorRequest.pb-c.c72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorRequest.pb-c.h70
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorResponse.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorResponse.pb-c.h75
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorRequest.pb-c.c144
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorRequest.pb-c.h95
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorResponse.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorResponse.pb-c.h88
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegRequest.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegRequest.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegResponse.pb-c.c131
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegResponse.pb-c.h83
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegRequest.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegRequest.pb-c.h74
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegResponse.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegResponse.pb-c.h79
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveRequest.pb-c.c118
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveRequest.pb-c.h85
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveResponse.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveResponse.pb-c.h79
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBRequest.pb-c.c105
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBRequest.pb-c.h73
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBResponse.pb-c.c92
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBResponse.pb-c.h72
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/ReadMe.txt48
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/Tango.Emulations.Native.vcxproj203
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/Tango.Emulations.Native.vcxproj.filters174
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/protobuf-c/protobuf-c.c3642
-rw-r--r--Software/Visual_Studio/Native/Tango.Emulations.Native/protobuf-c/protobuf-c.h1106
409 files changed, 44511 insertions, 0 deletions
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/EmbeddedEmulator.cpp b/Software/Visual_Studio/Native/Tango.Emulations.Native/EmbeddedEmulator.cpp
new file mode 100644
index 000000000..431b641cd
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/EmbeddedEmulator.cpp
@@ -0,0 +1,65 @@
+#include "EmbeddedEmulator.h"
+#include "MessageContainer.pb-c.h"
+#include "MessageType.pb-c.h"
+#include "UploadHardwareConfigurationRequest.pb-c.h";
+
+using namespace std;
+
+namespace Tango
+{
+ namespace Emulations
+ {
+ namespace Native
+ {
+ EmbeddedEmulator::EmbeddedEmulator()
+ {
+ }
+
+
+ EmbeddedEmulator::~EmbeddedEmulator()
+ {
+
+ }
+
+ MessageContainer createContainer(MessageType type, char* token, protobuf_c_boolean completed, void* response, size_t(*packPtr)(void*, uint8_t*), size_t(*sizePtr)(void*))
+ {
+ MessageContainer container = MESSAGE_CONTAINER__INIT;
+ container.completed = completed;
+ container.token = token;
+ container.has_completed = true;
+ container.has_data = true;
+ container.has_type = true;
+ container.type = type;
+
+
+
+ uint8_t* response_buffer = (uint8_t*)malloc((*sizePtr)(response));
+ size_t response_size = (*packPtr)(response, response_buffer);
+ container.data.data = response_buffer;
+ container.data.len = response_size;
+
+ //free(response);
+ return container;
+ }
+
+ size_t EmbeddedEmulator::ProcessMessage(uint8_t * input_buffer, size_t input_buffer_size, uint8_t *& output_buffer)
+ {
+ MessageContainer * container = message_container__unpack(NULL, input_buffer_size, input_buffer);
+
+ switch (container->type)
+ {
+ case MESSAGE_TYPE__UploadHardwareConfigurationRequest:
+
+ UploadHardwareConfigurationRequest* hardwareRequest = upload_hardware_configuration_request__unpack(NULL, container->data.len, container->data.data);
+ MessageContainer responseContainer = createContainer(MESSAGE_TYPE__UploadHardwareConfigurationRequest, container->token, true, hardwareRequest, (size_t(*)(void*, uint8_t*))&upload_hardware_configuration_request__pack, (size_t(*)(void*))&upload_hardware_configuration_request__get_packed_size);
+
+ output_buffer = (uint8_t*)malloc(message_container__get_packed_size(&responseContainer));
+ size_t container_size = message_container__pack(&responseContainer, output_buffer);
+ return container_size;
+ }
+
+ return 0;
+ }
+ }
+ }
+}
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/EmbeddedEmulator.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/EmbeddedEmulator.h
new file mode 100644
index 000000000..e7366d9e2
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/EmbeddedEmulator.h
@@ -0,0 +1,23 @@
+#include <cstdlib>
+#include <cstdint>
+
+#pragma once
+
+namespace Tango
+{
+ namespace Emulations
+ {
+ namespace Native
+ {
+ class EmbeddedEmulator
+ {
+ public:
+ EmbeddedEmulator();
+ ~EmbeddedEmulator();
+
+ size_t ProcessMessage(uint8_t * input_buffer, size_t input_buffer_size, uint8_t *& output_buffer);
+ };
+ }
+ }
+}
+
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/Exports.cpp b/Software/Visual_Studio/Native/Tango.Emulations.Native/Exports.cpp
new file mode 100644
index 000000000..a0be37c42
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/Exports.cpp
@@ -0,0 +1,17 @@
+#include <cstdlib>
+#include "Exports.h"
+#include "EmbeddedEmulator.h"
+
+#pragma once
+
+#define EXPORT_API __declspec(dllexport)
+
+using namespace std;
+using namespace Tango::Emulations::Native;
+
+extern "C" EXPORT_API size_t __cdecl ProcessMessage(uint8_t* input_buffer, size_t input_buffer_size, uint8_t*& output_buffer)
+{
+ EmbeddedEmulator emulator;
+ return emulator.ProcessMessage(input_buffer, input_buffer_size, output_buffer);
+}
+
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/Exports.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/Exports.h
new file mode 100644
index 000000000..0bcf5a8a8
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/Exports.h
@@ -0,0 +1,6 @@
+#include <cstdlib>
+#include <cstdint>
+
+#define EXPORT_API __declspec(dllexport)
+
+extern "C" EXPORT_API size_t ProcessMessage(uint8_t* input_buffer, size_t input_buffer_size, uint8_t*& output_buffer);
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationData.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationData.pb-c.c
new file mode 100644
index 000000000..981988d99
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationData.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: CalibrationData.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "CalibrationData.pb-c.h"
+void calibration_data__init
+ (CalibrationData *message)
+{
+ static const CalibrationData init_value = CALIBRATION_DATA__INIT;
+ *message = init_value;
+}
+size_t calibration_data__get_packed_size
+ (const CalibrationData *message)
+{
+ assert(message->base.descriptor == &calibration_data__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t calibration_data__pack
+ (const CalibrationData *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &calibration_data__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t calibration_data__pack_to_buffer
+ (const CalibrationData *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &calibration_data__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CalibrationData *
+ calibration_data__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CalibrationData *)
+ protobuf_c_message_unpack (&calibration_data__descriptor,
+ allocator, len, data);
+}
+void calibration_data__free_unpacked
+ (CalibrationData *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &calibration_data__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor calibration_data__field_descriptors[2] =
+{
+ {
+ "LiquidType",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(CalibrationData, has_liquidtype),
+ offsetof(CalibrationData, liquidtype),
+ &liquid_type__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "CalibrationPoints",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(CalibrationData, n_calibrationpoints),
+ offsetof(CalibrationData, calibrationpoints),
+ &calibration_point__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned calibration_data__field_indices_by_name[] = {
+ 1, /* field[1] = CalibrationPoints */
+ 0, /* field[0] = LiquidType */
+};
+static const ProtobufCIntRange calibration_data__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor calibration_data__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CalibrationData",
+ "CalibrationData",
+ "CalibrationData",
+ "",
+ sizeof(CalibrationData),
+ 2,
+ calibration_data__field_descriptors,
+ calibration_data__field_indices_by_name,
+ 1, calibration_data__number_ranges,
+ (ProtobufCMessageInit) calibration_data__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationData.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationData.pb-c.h
new file mode 100644
index 000000000..ccecc327e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationData.pb-c.h
@@ -0,0 +1,76 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: CalibrationData.proto */
+
+#ifndef PROTOBUF_C_CalibrationData_2eproto__INCLUDED
+#define PROTOBUF_C_CalibrationData_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "CalibrationPoint.pb-c.h"
+#include "LiquidType.pb-c.h"
+
+typedef struct _CalibrationData CalibrationData;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _CalibrationData
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_liquidtype;
+ LiquidType liquidtype;
+ size_t n_calibrationpoints;
+ CalibrationPoint **calibrationpoints;
+};
+#define CALIBRATION_DATA__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&calibration_data__descriptor) \
+ , 0, LIQUID_TYPE__Cyan, 0,NULL }
+
+
+/* CalibrationData methods */
+void calibration_data__init
+ (CalibrationData *message);
+size_t calibration_data__get_packed_size
+ (const CalibrationData *message);
+size_t calibration_data__pack
+ (const CalibrationData *message,
+ uint8_t *out);
+size_t calibration_data__pack_to_buffer
+ (const CalibrationData *message,
+ ProtobufCBuffer *buffer);
+CalibrationData *
+ calibration_data__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void calibration_data__free_unpacked
+ (CalibrationData *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*CalibrationData_Closure)
+ (const CalibrationData *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor calibration_data__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_CalibrationData_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationPoint.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationPoint.pb-c.c
new file mode 100644
index 000000000..691a97ea6
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationPoint.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: CalibrationPoint.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "CalibrationPoint.pb-c.h"
+void calibration_point__init
+ (CalibrationPoint *message)
+{
+ static const CalibrationPoint init_value = CALIBRATION_POINT__INIT;
+ *message = init_value;
+}
+size_t calibration_point__get_packed_size
+ (const CalibrationPoint *message)
+{
+ assert(message->base.descriptor == &calibration_point__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t calibration_point__pack
+ (const CalibrationPoint *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &calibration_point__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t calibration_point__pack_to_buffer
+ (const CalibrationPoint *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &calibration_point__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CalibrationPoint *
+ calibration_point__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CalibrationPoint *)
+ protobuf_c_message_unpack (&calibration_point__descriptor,
+ allocator, len, data);
+}
+void calibration_point__free_unpacked
+ (CalibrationPoint *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &calibration_point__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor calibration_point__field_descriptors[2] =
+{
+ {
+ "X",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(CalibrationPoint, has_x),
+ offsetof(CalibrationPoint, x),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Y",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(CalibrationPoint, has_y),
+ offsetof(CalibrationPoint, y),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned calibration_point__field_indices_by_name[] = {
+ 0, /* field[0] = X */
+ 1, /* field[1] = Y */
+};
+static const ProtobufCIntRange calibration_point__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor calibration_point__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CalibrationPoint",
+ "CalibrationPoint",
+ "CalibrationPoint",
+ "",
+ sizeof(CalibrationPoint),
+ 2,
+ calibration_point__field_descriptors,
+ calibration_point__field_indices_by_name,
+ 1, calibration_point__number_ranges,
+ (ProtobufCMessageInit) calibration_point__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationPoint.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationPoint.pb-c.h
new file mode 100644
index 000000000..a58bc1ec6
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/CalibrationPoint.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: CalibrationPoint.proto */
+
+#ifndef PROTOBUF_C_CalibrationPoint_2eproto__INCLUDED
+#define PROTOBUF_C_CalibrationPoint_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _CalibrationPoint CalibrationPoint;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _CalibrationPoint
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_x;
+ double x;
+ protobuf_c_boolean has_y;
+ double y;
+};
+#define CALIBRATION_POINT__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&calibration_point__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* CalibrationPoint methods */
+void calibration_point__init
+ (CalibrationPoint *message);
+size_t calibration_point__get_packed_size
+ (const CalibrationPoint *message);
+size_t calibration_point__pack
+ (const CalibrationPoint *message,
+ uint8_t *out);
+size_t calibration_point__pack_to_buffer
+ (const CalibrationPoint *message,
+ ProtobufCBuffer *buffer);
+CalibrationPoint *
+ calibration_point__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void calibration_point__free_unpacked
+ (CalibrationPoint *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*CalibrationPoint_Closure)
+ (const CalibrationPoint *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor calibration_point__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_CalibrationPoint_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ColorSpace.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ColorSpace.pb-c.c
new file mode 100644
index 000000000..23f827f18
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ColorSpace.pb-c.c
@@ -0,0 +1,43 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ColorSpace.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ColorSpace.pb-c.h"
+static const ProtobufCEnumValue color_space__enum_values_by_number[5] =
+{
+ { "Volume", "COLOR_SPACE__Volume", 0 },
+ { "RGB", "COLOR_SPACE__RGB", 1 },
+ { "CMYK", "COLOR_SPACE__CMYK", 2 },
+ { "LAB", "COLOR_SPACE__LAB", 3 },
+ { "PANTON", "COLOR_SPACE__PANTON", 4 },
+};
+static const ProtobufCIntRange color_space__value_ranges[] = {
+{0, 0},{0, 5}
+};
+static const ProtobufCEnumValueIndex color_space__enum_values_by_name[5] =
+{
+ { "CMYK", 2 },
+ { "LAB", 3 },
+ { "PANTON", 4 },
+ { "RGB", 1 },
+ { "Volume", 0 },
+};
+const ProtobufCEnumDescriptor color_space__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "ColorSpace",
+ "ColorSpace",
+ "ColorSpace",
+ "",
+ 5,
+ color_space__enum_values_by_number,
+ 5,
+ color_space__enum_values_by_name,
+ 1,
+ color_space__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ColorSpace.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ColorSpace.pb-c.h
new file mode 100644
index 000000000..2f25ef087
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ColorSpace.pb-c.h
@@ -0,0 +1,46 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ColorSpace.proto */
+
+#ifndef PROTOBUF_C_ColorSpace_2eproto__INCLUDED
+#define PROTOBUF_C_ColorSpace_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _ColorSpace {
+ COLOR_SPACE__Volume = 0,
+ COLOR_SPACE__RGB = 1,
+ COLOR_SPACE__CMYK = 2,
+ COLOR_SPACE__LAB = 3,
+ COLOR_SPACE__PANTON = 4
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(COLOR_SPACE)
+} ColorSpace;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor color_space__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ColorSpace_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionInput.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionInput.pb-c.c
new file mode 100644
index 000000000..46b4b2f54
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionInput.pb-c.c
@@ -0,0 +1,209 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ConversionInput.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ConversionInput.pb-c.h"
+void conversion_input__init
+ (ConversionInput *message)
+{
+ static const ConversionInput init_value = CONVERSION_INPUT__INIT;
+ *message = init_value;
+}
+size_t conversion_input__get_packed_size
+ (const ConversionInput *message)
+{
+ assert(message->base.descriptor == &conversion_input__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t conversion_input__pack
+ (const ConversionInput *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &conversion_input__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t conversion_input__pack_to_buffer
+ (const ConversionInput *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &conversion_input__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ConversionInput *
+ conversion_input__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ConversionInput *)
+ protobuf_c_message_unpack (&conversion_input__descriptor,
+ allocator, len, data);
+}
+void conversion_input__free_unpacked
+ (ConversionInput *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &conversion_input__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor conversion_input__field_descriptors[10] =
+{
+ {
+ "ThreadL",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ConversionInput, has_threadl),
+ offsetof(ConversionInput, threadl),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ThreadA",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ConversionInput, has_threada),
+ offsetof(ConversionInput, threada),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ThreadB",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ConversionInput, has_threadb),
+ offsetof(ConversionInput, threadb),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ColorSpace",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(ConversionInput, has_colorspace),
+ offsetof(ConversionInput, colorspace),
+ &color_space__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "InputCoordinates",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(ConversionInput, inputcoordinates),
+ &input_coordinates__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ForwardData",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(ConversionInput, has_forwarddata),
+ offsetof(ConversionInput, forwarddata),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "InverseData",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(ConversionInput, has_inversedata),
+ offsetof(ConversionInput, inversedata),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SegmentLength",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ConversionInput, has_segmentlength),
+ offsetof(ConversionInput, segmentlength),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DeltaChroma",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ConversionInput, has_deltachroma),
+ offsetof(ConversionInput, deltachroma),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DeltaL",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ConversionInput, has_deltal),
+ offsetof(ConversionInput, deltal),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned conversion_input__field_indices_by_name[] = {
+ 3, /* field[3] = ColorSpace */
+ 8, /* field[8] = DeltaChroma */
+ 9, /* field[9] = DeltaL */
+ 5, /* field[5] = ForwardData */
+ 4, /* field[4] = InputCoordinates */
+ 6, /* field[6] = InverseData */
+ 7, /* field[7] = SegmentLength */
+ 1, /* field[1] = ThreadA */
+ 2, /* field[2] = ThreadB */
+ 0, /* field[0] = ThreadL */
+};
+static const ProtobufCIntRange conversion_input__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 10 }
+};
+const ProtobufCMessageDescriptor conversion_input__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ConversionInput",
+ "ConversionInput",
+ "ConversionInput",
+ "",
+ sizeof(ConversionInput),
+ 10,
+ conversion_input__field_descriptors,
+ conversion_input__field_indices_by_name,
+ 1, conversion_input__number_ranges,
+ (ProtobufCMessageInit) conversion_input__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionInput.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionInput.pb-c.h
new file mode 100644
index 000000000..4184f6551
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionInput.pb-c.h
@@ -0,0 +1,91 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ConversionInput.proto */
+
+#ifndef PROTOBUF_C_ConversionInput_2eproto__INCLUDED
+#define PROTOBUF_C_ConversionInput_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "InputCoordinates.pb-c.h"
+#include "ColorSpace.pb-c.h"
+
+typedef struct _ConversionInput ConversionInput;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ConversionInput
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_threadl;
+ double threadl;
+ protobuf_c_boolean has_threada;
+ double threada;
+ protobuf_c_boolean has_threadb;
+ double threadb;
+ protobuf_c_boolean has_colorspace;
+ ColorSpace colorspace;
+ InputCoordinates *inputcoordinates;
+ protobuf_c_boolean has_forwarddata;
+ ProtobufCBinaryData forwarddata;
+ protobuf_c_boolean has_inversedata;
+ ProtobufCBinaryData inversedata;
+ protobuf_c_boolean has_segmentlength;
+ double segmentlength;
+ protobuf_c_boolean has_deltachroma;
+ double deltachroma;
+ protobuf_c_boolean has_deltal;
+ double deltal;
+};
+#define CONVERSION_INPUT__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&conversion_input__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, COLOR_SPACE__Volume, NULL, 0, {0,NULL}, 0, {0,NULL}, 0, 0, 0, 0, 0, 0 }
+
+
+/* ConversionInput methods */
+void conversion_input__init
+ (ConversionInput *message);
+size_t conversion_input__get_packed_size
+ (const ConversionInput *message);
+size_t conversion_input__pack
+ (const ConversionInput *message,
+ uint8_t *out);
+size_t conversion_input__pack_to_buffer
+ (const ConversionInput *message,
+ ProtobufCBuffer *buffer);
+ConversionInput *
+ conversion_input__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void conversion_input__free_unpacked
+ (ConversionInput *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ConversionInput_Closure)
+ (const ConversionInput *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor conversion_input__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ConversionInput_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionOutput.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionOutput.pb-c.c
new file mode 100644
index 000000000..bfc40f0a3
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionOutput.pb-c.c
@@ -0,0 +1,132 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ConversionOutput.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ConversionOutput.pb-c.h"
+void conversion_output__init
+ (ConversionOutput *message)
+{
+ static const ConversionOutput init_value = CONVERSION_OUTPUT__INIT;
+ *message = init_value;
+}
+size_t conversion_output__get_packed_size
+ (const ConversionOutput *message)
+{
+ assert(message->base.descriptor == &conversion_output__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t conversion_output__pack
+ (const ConversionOutput *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &conversion_output__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t conversion_output__pack_to_buffer
+ (const ConversionOutput *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &conversion_output__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ConversionOutput *
+ conversion_output__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ConversionOutput *)
+ protobuf_c_message_unpack (&conversion_output__descriptor,
+ allocator, len, data);
+}
+void conversion_output__free_unpacked
+ (ConversionOutput *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &conversion_output__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor conversion_output__field_descriptors[4] =
+{
+ {
+ "HiveCoordinates",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(ConversionOutput, n_hivecoordinates),
+ offsetof(ConversionOutput, hivecoordinates),
+ &output_coordinates__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TripleCoordinates",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(ConversionOutput, n_triplecoordinates),
+ offsetof(ConversionOutput, triplecoordinates),
+ &output_coordinates__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SingleCoordinates",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(ConversionOutput, singlecoordinates),
+ &output_coordinates__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "OutOfGamut",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(ConversionOutput, has_outofgamut),
+ offsetof(ConversionOutput, outofgamut),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned conversion_output__field_indices_by_name[] = {
+ 0, /* field[0] = HiveCoordinates */
+ 3, /* field[3] = OutOfGamut */
+ 2, /* field[2] = SingleCoordinates */
+ 1, /* field[1] = TripleCoordinates */
+};
+static const ProtobufCIntRange conversion_output__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 5, 3 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor conversion_output__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ConversionOutput",
+ "ConversionOutput",
+ "ConversionOutput",
+ "",
+ sizeof(ConversionOutput),
+ 4,
+ conversion_output__field_descriptors,
+ conversion_output__field_indices_by_name,
+ 2, conversion_output__number_ranges,
+ (ProtobufCMessageInit) conversion_output__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionOutput.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionOutput.pb-c.h
new file mode 100644
index 000000000..0c58721db
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/ConversionOutput.pb-c.h
@@ -0,0 +1,78 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ConversionOutput.proto */
+
+#ifndef PROTOBUF_C_ConversionOutput_2eproto__INCLUDED
+#define PROTOBUF_C_ConversionOutput_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "OutputCoordinates.pb-c.h"
+
+typedef struct _ConversionOutput ConversionOutput;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ConversionOutput
+{
+ ProtobufCMessage base;
+ size_t n_hivecoordinates;
+ OutputCoordinates **hivecoordinates;
+ size_t n_triplecoordinates;
+ OutputCoordinates **triplecoordinates;
+ OutputCoordinates *singlecoordinates;
+ protobuf_c_boolean has_outofgamut;
+ protobuf_c_boolean outofgamut;
+};
+#define CONVERSION_OUTPUT__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&conversion_output__descriptor) \
+ , 0,NULL, 0,NULL, NULL, 0, 0 }
+
+
+/* ConversionOutput methods */
+void conversion_output__init
+ (ConversionOutput *message);
+size_t conversion_output__get_packed_size
+ (const ConversionOutput *message);
+size_t conversion_output__pack
+ (const ConversionOutput *message,
+ uint8_t *out);
+size_t conversion_output__pack_to_buffer
+ (const ConversionOutput *message,
+ ProtobufCBuffer *buffer);
+ConversionOutput *
+ conversion_output__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void conversion_output__free_unpacked
+ (ConversionOutput *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ConversionOutput_Closure)
+ (const ConversionOutput *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor conversion_output__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ConversionOutput_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputCoordinates.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputCoordinates.pb-c.c
new file mode 100644
index 000000000..a12759a89
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputCoordinates.pb-c.c
@@ -0,0 +1,248 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: InputCoordinates.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "InputCoordinates.pb-c.h"
+void input_coordinates__init
+ (InputCoordinates *message)
+{
+ static const InputCoordinates init_value = INPUT_COORDINATES__INIT;
+ *message = init_value;
+}
+size_t input_coordinates__get_packed_size
+ (const InputCoordinates *message)
+{
+ assert(message->base.descriptor == &input_coordinates__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t input_coordinates__pack
+ (const InputCoordinates *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &input_coordinates__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t input_coordinates__pack_to_buffer
+ (const InputCoordinates *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &input_coordinates__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+InputCoordinates *
+ input_coordinates__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (InputCoordinates *)
+ protobuf_c_message_unpack (&input_coordinates__descriptor,
+ allocator, len, data);
+}
+void input_coordinates__free_unpacked
+ (InputCoordinates *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &input_coordinates__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor input_coordinates__field_descriptors[13] =
+{
+ {
+ "Length",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(InputCoordinates, has_length),
+ offsetof(InputCoordinates, length),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Red",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(InputCoordinates, has_red),
+ offsetof(InputCoordinates, red),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Green",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(InputCoordinates, has_green),
+ offsetof(InputCoordinates, green),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Blue",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(InputCoordinates, has_blue),
+ offsetof(InputCoordinates, blue),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Cyan",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(InputCoordinates, has_cyan),
+ offsetof(InputCoordinates, cyan),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Magenta",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(InputCoordinates, has_magenta),
+ offsetof(InputCoordinates, magenta),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Yellow",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(InputCoordinates, has_yellow),
+ offsetof(InputCoordinates, yellow),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Key",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(InputCoordinates, has_key),
+ offsetof(InputCoordinates, key),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "L",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(InputCoordinates, has_l),
+ offsetof(InputCoordinates, l),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "A",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(InputCoordinates, has_a),
+ offsetof(InputCoordinates, a),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "B",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(InputCoordinates, has_b),
+ offsetof(InputCoordinates, b),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PantonCode",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(InputCoordinates, has_pantoncode),
+ offsetof(InputCoordinates, pantoncode),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "InputLiquids",
+ 13,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(InputCoordinates, n_inputliquids),
+ offsetof(InputCoordinates, inputliquids),
+ &input_liquid__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned input_coordinates__field_indices_by_name[] = {
+ 9, /* field[9] = A */
+ 10, /* field[10] = B */
+ 3, /* field[3] = Blue */
+ 4, /* field[4] = Cyan */
+ 2, /* field[2] = Green */
+ 12, /* field[12] = InputLiquids */
+ 7, /* field[7] = Key */
+ 8, /* field[8] = L */
+ 0, /* field[0] = Length */
+ 5, /* field[5] = Magenta */
+ 11, /* field[11] = PantonCode */
+ 1, /* field[1] = Red */
+ 6, /* field[6] = Yellow */
+};
+static const ProtobufCIntRange input_coordinates__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 13 }
+};
+const ProtobufCMessageDescriptor input_coordinates__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "InputCoordinates",
+ "InputCoordinates",
+ "InputCoordinates",
+ "",
+ sizeof(InputCoordinates),
+ 13,
+ input_coordinates__field_descriptors,
+ input_coordinates__field_indices_by_name,
+ 1, input_coordinates__number_ranges,
+ (ProtobufCMessageInit) input_coordinates__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputCoordinates.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputCoordinates.pb-c.h
new file mode 100644
index 000000000..0b159cd59
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputCoordinates.pb-c.h
@@ -0,0 +1,97 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: InputCoordinates.proto */
+
+#ifndef PROTOBUF_C_InputCoordinates_2eproto__INCLUDED
+#define PROTOBUF_C_InputCoordinates_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "InputLiquid.pb-c.h"
+
+typedef struct _InputCoordinates InputCoordinates;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _InputCoordinates
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_length;
+ double length;
+ protobuf_c_boolean has_red;
+ int32_t red;
+ protobuf_c_boolean has_green;
+ int32_t green;
+ protobuf_c_boolean has_blue;
+ int32_t blue;
+ protobuf_c_boolean has_cyan;
+ double cyan;
+ protobuf_c_boolean has_magenta;
+ double magenta;
+ protobuf_c_boolean has_yellow;
+ double yellow;
+ protobuf_c_boolean has_key;
+ double key;
+ protobuf_c_boolean has_l;
+ double l;
+ protobuf_c_boolean has_a;
+ double a;
+ protobuf_c_boolean has_b;
+ double b;
+ protobuf_c_boolean has_pantoncode;
+ int32_t pantoncode;
+ size_t n_inputliquids;
+ InputLiquid **inputliquids;
+};
+#define INPUT_COORDINATES__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&input_coordinates__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,NULL }
+
+
+/* InputCoordinates methods */
+void input_coordinates__init
+ (InputCoordinates *message);
+size_t input_coordinates__get_packed_size
+ (const InputCoordinates *message);
+size_t input_coordinates__pack
+ (const InputCoordinates *message,
+ uint8_t *out);
+size_t input_coordinates__pack_to_buffer
+ (const InputCoordinates *message,
+ ProtobufCBuffer *buffer);
+InputCoordinates *
+ input_coordinates__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void input_coordinates__free_unpacked
+ (InputCoordinates *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*InputCoordinates_Closure)
+ (const InputCoordinates *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor input_coordinates__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_InputCoordinates_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputLiquid.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputLiquid.pb-c.c
new file mode 100644
index 000000000..2d033e2a1
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputLiquid.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: InputLiquid.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "InputLiquid.pb-c.h"
+void input_liquid__init
+ (InputLiquid *message)
+{
+ static const InputLiquid init_value = INPUT_LIQUID__INIT;
+ *message = init_value;
+}
+size_t input_liquid__get_packed_size
+ (const InputLiquid *message)
+{
+ assert(message->base.descriptor == &input_liquid__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t input_liquid__pack
+ (const InputLiquid *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &input_liquid__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t input_liquid__pack_to_buffer
+ (const InputLiquid *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &input_liquid__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+InputLiquid *
+ input_liquid__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (InputLiquid *)
+ protobuf_c_message_unpack (&input_liquid__descriptor,
+ allocator, len, data);
+}
+void input_liquid__free_unpacked
+ (InputLiquid *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &input_liquid__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor input_liquid__field_descriptors[4] =
+{
+ {
+ "LiquidType",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(InputLiquid, has_liquidtype),
+ offsetof(InputLiquid, liquidtype),
+ &liquid_type__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "CalibrationData",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(InputLiquid, calibrationdata),
+ &calibration_data__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MaxNanoliterPerCentimeter",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(InputLiquid, has_maxnanoliterpercentimeter),
+ offsetof(InputLiquid, maxnanoliterpercentimeter),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Volume",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(InputLiquid, has_volume),
+ offsetof(InputLiquid, volume),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned input_liquid__field_indices_by_name[] = {
+ 1, /* field[1] = CalibrationData */
+ 0, /* field[0] = LiquidType */
+ 2, /* field[2] = MaxNanoliterPerCentimeter */
+ 3, /* field[3] = Volume */
+};
+static const ProtobufCIntRange input_liquid__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor input_liquid__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "InputLiquid",
+ "InputLiquid",
+ "InputLiquid",
+ "",
+ sizeof(InputLiquid),
+ 4,
+ input_liquid__field_descriptors,
+ input_liquid__field_indices_by_name,
+ 1, input_liquid__number_ranges,
+ (ProtobufCMessageInit) input_liquid__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputLiquid.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputLiquid.pb-c.h
new file mode 100644
index 000000000..c2a47b166
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/InputLiquid.pb-c.h
@@ -0,0 +1,79 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: InputLiquid.proto */
+
+#ifndef PROTOBUF_C_InputLiquid_2eproto__INCLUDED
+#define PROTOBUF_C_InputLiquid_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "LiquidType.pb-c.h"
+#include "CalibrationData.pb-c.h"
+
+typedef struct _InputLiquid InputLiquid;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _InputLiquid
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_liquidtype;
+ LiquidType liquidtype;
+ CalibrationData *calibrationdata;
+ protobuf_c_boolean has_maxnanoliterpercentimeter;
+ double maxnanoliterpercentimeter;
+ protobuf_c_boolean has_volume;
+ double volume;
+};
+#define INPUT_LIQUID__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&input_liquid__descriptor) \
+ , 0, LIQUID_TYPE__Cyan, NULL, 0, 0, 0, 0 }
+
+
+/* InputLiquid methods */
+void input_liquid__init
+ (InputLiquid *message);
+size_t input_liquid__get_packed_size
+ (const InputLiquid *message);
+size_t input_liquid__pack
+ (const InputLiquid *message,
+ uint8_t *out);
+size_t input_liquid__pack_to_buffer
+ (const InputLiquid *message,
+ ProtobufCBuffer *buffer);
+InputLiquid *
+ input_liquid__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void input_liquid__free_unpacked
+ (InputLiquid *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*InputLiquid_Closure)
+ (const InputLiquid *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor input_liquid__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_InputLiquid_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/LiquidType.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/LiquidType.pb-c.c
new file mode 100644
index 000000000..d1bc8c432
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/LiquidType.pb-c.c
@@ -0,0 +1,47 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: LiquidType.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "LiquidType.pb-c.h"
+static const ProtobufCEnumValue liquid_type__enum_values_by_number[7] =
+{
+ { "Cyan", "LIQUID_TYPE__Cyan", 0 },
+ { "Magenta", "LIQUID_TYPE__Magenta", 1 },
+ { "Yellow", "LIQUID_TYPE__Yellow", 2 },
+ { "Black", "LIQUID_TYPE__Black", 3 },
+ { "TransparentInk", "LIQUID_TYPE__TransparentInk", 4 },
+ { "Lubricant", "LIQUID_TYPE__Lubricant", 5 },
+ { "Red", "LIQUID_TYPE__Red", 7 },
+};
+static const ProtobufCIntRange liquid_type__value_ranges[] = {
+{0, 0},{7, 6},{0, 7}
+};
+static const ProtobufCEnumValueIndex liquid_type__enum_values_by_name[7] =
+{
+ { "Black", 3 },
+ { "Cyan", 0 },
+ { "Lubricant", 5 },
+ { "Magenta", 1 },
+ { "Red", 6 },
+ { "TransparentInk", 4 },
+ { "Yellow", 2 },
+};
+const ProtobufCEnumDescriptor liquid_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "LiquidType",
+ "LiquidType",
+ "LiquidType",
+ "",
+ 7,
+ liquid_type__enum_values_by_number,
+ 7,
+ liquid_type__enum_values_by_name,
+ 2,
+ liquid_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/LiquidType.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/LiquidType.pb-c.h
new file mode 100644
index 000000000..19f99411c
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/LiquidType.pb-c.h
@@ -0,0 +1,48 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: LiquidType.proto */
+
+#ifndef PROTOBUF_C_LiquidType_2eproto__INCLUDED
+#define PROTOBUF_C_LiquidType_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _LiquidType {
+ LIQUID_TYPE__Cyan = 0,
+ LIQUID_TYPE__Magenta = 1,
+ LIQUID_TYPE__Yellow = 2,
+ LIQUID_TYPE__Black = 3,
+ LIQUID_TYPE__TransparentInk = 4,
+ LIQUID_TYPE__Lubricant = 5,
+ LIQUID_TYPE__Red = 7
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(LIQUID_TYPE)
+} LiquidType;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor liquid_type__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_LiquidType_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputCoordinates.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputCoordinates.pb-c.c
new file mode 100644
index 000000000..c41585415
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputCoordinates.pb-c.c
@@ -0,0 +1,144 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: OutputCoordinates.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "OutputCoordinates.pb-c.h"
+void output_coordinates__init
+ (OutputCoordinates *message)
+{
+ static const OutputCoordinates init_value = OUTPUT_COORDINATES__INIT;
+ *message = init_value;
+}
+size_t output_coordinates__get_packed_size
+ (const OutputCoordinates *message)
+{
+ assert(message->base.descriptor == &output_coordinates__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t output_coordinates__pack
+ (const OutputCoordinates *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &output_coordinates__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t output_coordinates__pack_to_buffer
+ (const OutputCoordinates *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &output_coordinates__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+OutputCoordinates *
+ output_coordinates__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (OutputCoordinates *)
+ protobuf_c_message_unpack (&output_coordinates__descriptor,
+ allocator, len, data);
+}
+void output_coordinates__free_unpacked
+ (OutputCoordinates *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &output_coordinates__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor output_coordinates__field_descriptors[5] =
+{
+ {
+ "Red",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(OutputCoordinates, has_red),
+ offsetof(OutputCoordinates, red),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Green",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(OutputCoordinates, has_green),
+ offsetof(OutputCoordinates, green),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Blue",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(OutputCoordinates, has_blue),
+ offsetof(OutputCoordinates, blue),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "OutputLiquids",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(OutputCoordinates, n_outputliquids),
+ offsetof(OutputCoordinates, outputliquids),
+ &output_liquid__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ProcessParametersTableIndex",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(OutputCoordinates, has_processparameterstableindex),
+ offsetof(OutputCoordinates, processparameterstableindex),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned output_coordinates__field_indices_by_name[] = {
+ 2, /* field[2] = Blue */
+ 1, /* field[1] = Green */
+ 3, /* field[3] = OutputLiquids */
+ 4, /* field[4] = ProcessParametersTableIndex */
+ 0, /* field[0] = Red */
+};
+static const ProtobufCIntRange output_coordinates__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor output_coordinates__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "OutputCoordinates",
+ "OutputCoordinates",
+ "OutputCoordinates",
+ "",
+ sizeof(OutputCoordinates),
+ 5,
+ output_coordinates__field_descriptors,
+ output_coordinates__field_indices_by_name,
+ 1, output_coordinates__number_ranges,
+ (ProtobufCMessageInit) output_coordinates__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputCoordinates.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputCoordinates.pb-c.h
new file mode 100644
index 000000000..410f0660a
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputCoordinates.pb-c.h
@@ -0,0 +1,81 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: OutputCoordinates.proto */
+
+#ifndef PROTOBUF_C_OutputCoordinates_2eproto__INCLUDED
+#define PROTOBUF_C_OutputCoordinates_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "OutputLiquid.pb-c.h"
+
+typedef struct _OutputCoordinates OutputCoordinates;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _OutputCoordinates
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_red;
+ int32_t red;
+ protobuf_c_boolean has_green;
+ int32_t green;
+ protobuf_c_boolean has_blue;
+ int32_t blue;
+ size_t n_outputliquids;
+ OutputLiquid **outputliquids;
+ protobuf_c_boolean has_processparameterstableindex;
+ int32_t processparameterstableindex;
+};
+#define OUTPUT_COORDINATES__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&output_coordinates__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0,NULL, 0, 0 }
+
+
+/* OutputCoordinates methods */
+void output_coordinates__init
+ (OutputCoordinates *message);
+size_t output_coordinates__get_packed_size
+ (const OutputCoordinates *message);
+size_t output_coordinates__pack
+ (const OutputCoordinates *message,
+ uint8_t *out);
+size_t output_coordinates__pack_to_buffer
+ (const OutputCoordinates *message,
+ ProtobufCBuffer *buffer);
+OutputCoordinates *
+ output_coordinates__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void output_coordinates__free_unpacked
+ (OutputCoordinates *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*OutputCoordinates_Closure)
+ (const OutputCoordinates *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor output_coordinates__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_OutputCoordinates_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputLiquid.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputLiquid.pb-c.c
new file mode 100644
index 000000000..73f47bb20
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputLiquid.pb-c.c
@@ -0,0 +1,106 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: OutputLiquid.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "OutputLiquid.pb-c.h"
+void output_liquid__init
+ (OutputLiquid *message)
+{
+ static const OutputLiquid init_value = OUTPUT_LIQUID__INIT;
+ *message = init_value;
+}
+size_t output_liquid__get_packed_size
+ (const OutputLiquid *message)
+{
+ assert(message->base.descriptor == &output_liquid__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t output_liquid__pack
+ (const OutputLiquid *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &output_liquid__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t output_liquid__pack_to_buffer
+ (const OutputLiquid *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &output_liquid__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+OutputLiquid *
+ output_liquid__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (OutputLiquid *)
+ protobuf_c_message_unpack (&output_liquid__descriptor,
+ allocator, len, data);
+}
+void output_liquid__free_unpacked
+ (OutputLiquid *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &output_liquid__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor output_liquid__field_descriptors[2] =
+{
+ {
+ "LiquidType",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(OutputLiquid, has_liquidtype),
+ offsetof(OutputLiquid, liquidtype),
+ &liquid_type__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Volume",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(OutputLiquid, has_volume),
+ offsetof(OutputLiquid, volume),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned output_liquid__field_indices_by_name[] = {
+ 0, /* field[0] = LiquidType */
+ 1, /* field[1] = Volume */
+};
+static const ProtobufCIntRange output_liquid__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 4, 1 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor output_liquid__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "OutputLiquid",
+ "OutputLiquid",
+ "OutputLiquid",
+ "",
+ sizeof(OutputLiquid),
+ 2,
+ output_liquid__field_descriptors,
+ output_liquid__field_indices_by_name,
+ 2, output_liquid__number_ranges,
+ (ProtobufCMessageInit) output_liquid__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputLiquid.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputLiquid.pb-c.h
new file mode 100644
index 000000000..5401b8114
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/ColorLab/OutputLiquid.pb-c.h
@@ -0,0 +1,75 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: OutputLiquid.proto */
+
+#ifndef PROTOBUF_C_OutputLiquid_2eproto__INCLUDED
+#define PROTOBUF_C_OutputLiquid_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "LiquidType.pb-c.h"
+
+typedef struct _OutputLiquid OutputLiquid;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _OutputLiquid
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_liquidtype;
+ LiquidType liquidtype;
+ protobuf_c_boolean has_volume;
+ double volume;
+};
+#define OUTPUT_LIQUID__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&output_liquid__descriptor) \
+ , 0, LIQUID_TYPE__Cyan, 0, 0 }
+
+
+/* OutputLiquid methods */
+void output_liquid__init
+ (OutputLiquid *message);
+size_t output_liquid__get_packed_size
+ (const OutputLiquid *message);
+size_t output_liquid__pack
+ (const OutputLiquid *message,
+ uint8_t *out);
+size_t output_liquid__pack_to_buffer
+ (const OutputLiquid *message,
+ ProtobufCBuffer *buffer);
+OutputLiquid *
+ output_liquid__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void output_liquid__free_unpacked
+ (OutputLiquid *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*OutputLiquid_Closure)
+ (const OutputLiquid *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor output_liquid__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_OutputLiquid_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/ErrorCode.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/ErrorCode.pb-c.c
new file mode 100644
index 000000000..3718210c6
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/ErrorCode.pb-c.c
@@ -0,0 +1,41 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ErrorCode.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ErrorCode.pb-c.h"
+static const ProtobufCEnumValue error_code__enum_values_by_number[4] =
+{
+ { "NONE", "ERROR_CODE__NONE", 0 },
+ { "BAD_CRC", "ERROR_CODE__BAD_CRC", 1 },
+ { "INVALID_DIGITAL_PIN_NUMBER", "ERROR_CODE__INVALID_DIGITAL_PIN_NUMBER", 2 },
+ { "UNAUTHORIZED_CONNECTION", "ERROR_CODE__UNAUTHORIZED_CONNECTION", 3 },
+};
+static const ProtobufCIntRange error_code__value_ranges[] = {
+{0, 0},{0, 4}
+};
+static const ProtobufCEnumValueIndex error_code__enum_values_by_name[4] =
+{
+ { "BAD_CRC", 1 },
+ { "INVALID_DIGITAL_PIN_NUMBER", 2 },
+ { "NONE", 0 },
+ { "UNAUTHORIZED_CONNECTION", 3 },
+};
+const ProtobufCEnumDescriptor error_code__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "ErrorCode",
+ "ErrorCode",
+ "ErrorCode",
+ "",
+ 4,
+ error_code__enum_values_by_number,
+ 4,
+ error_code__enum_values_by_name,
+ 1,
+ error_code__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/ErrorCode.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/ErrorCode.pb-c.h
new file mode 100644
index 000000000..cf51252aa
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/ErrorCode.pb-c.h
@@ -0,0 +1,51 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ErrorCode.proto */
+
+#ifndef PROTOBUF_C_ErrorCode_2eproto__INCLUDED
+#define PROTOBUF_C_ErrorCode_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _ErrorCode {
+ ERROR_CODE__NONE = 0,
+ ERROR_CODE__BAD_CRC = 1,
+ /*
+ *Can be returned by SetDigitalOutResponse.
+ */
+ ERROR_CODE__INVALID_DIGITAL_PIN_NUMBER = 2,
+ /*
+ *Should be returned if no ConnectionRequest with a valid password was made.
+ */
+ ERROR_CODE__UNAUTHORIZED_CONNECTION = 3
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(ERROR_CODE)
+} ErrorCode;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor error_code__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ErrorCode_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageContainer.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageContainer.pb-c.c
new file mode 100644
index 000000000..de74c4054
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageContainer.pb-c.c
@@ -0,0 +1,170 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MessageContainer.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "MessageContainer.pb-c.h"
+void message_container__init
+ (MessageContainer *message)
+{
+ static const MessageContainer init_value = MESSAGE_CONTAINER__INIT;
+ *message = init_value;
+}
+size_t message_container__get_packed_size
+ (const MessageContainer *message)
+{
+ assert(message->base.descriptor == &message_container__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t message_container__pack
+ (const MessageContainer *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &message_container__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t message_container__pack_to_buffer
+ (const MessageContainer *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &message_container__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+MessageContainer *
+ message_container__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (MessageContainer *)
+ protobuf_c_message_unpack (&message_container__descriptor,
+ allocator, len, data);
+}
+void message_container__free_unpacked
+ (MessageContainer *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &message_container__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor message_container__field_descriptors[7] =
+{
+ {
+ "Type",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(MessageContainer, has_type),
+ offsetof(MessageContainer, type),
+ &message_type__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Token",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(MessageContainer, token),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Continuous",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(MessageContainer, has_continuous),
+ offsetof(MessageContainer, continuous),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Completed",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(MessageContainer, has_completed),
+ offsetof(MessageContainer, completed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Data",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(MessageContainer, has_data),
+ offsetof(MessageContainer, data),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "CRC",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(MessageContainer, has_crc),
+ offsetof(MessageContainer, crc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Error",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(MessageContainer, has_error),
+ offsetof(MessageContainer, error),
+ &error_code__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned message_container__field_indices_by_name[] = {
+ 5, /* field[5] = CRC */
+ 3, /* field[3] = Completed */
+ 2, /* field[2] = Continuous */
+ 4, /* field[4] = Data */
+ 6, /* field[6] = Error */
+ 1, /* field[1] = Token */
+ 0, /* field[0] = Type */
+};
+static const ProtobufCIntRange message_container__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor message_container__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "MessageContainer",
+ "MessageContainer",
+ "MessageContainer",
+ "",
+ sizeof(MessageContainer),
+ 7,
+ message_container__field_descriptors,
+ message_container__field_indices_by_name,
+ 1, message_container__number_ranges,
+ (ProtobufCMessageInit) message_container__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageContainer.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageContainer.pb-c.h
new file mode 100644
index 000000000..edb24d775
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageContainer.pb-c.h
@@ -0,0 +1,85 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MessageContainer.proto */
+
+#ifndef PROTOBUF_C_MessageContainer_2eproto__INCLUDED
+#define PROTOBUF_C_MessageContainer_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "MessageType.pb-c.h"
+#include "ErrorCode.pb-c.h"
+
+typedef struct _MessageContainer MessageContainer;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _MessageContainer
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_type;
+ MessageType type;
+ char *token;
+ protobuf_c_boolean has_continuous;
+ protobuf_c_boolean continuous;
+ protobuf_c_boolean has_completed;
+ protobuf_c_boolean completed;
+ protobuf_c_boolean has_data;
+ ProtobufCBinaryData data;
+ protobuf_c_boolean has_crc;
+ uint32_t crc;
+ protobuf_c_boolean has_error;
+ ErrorCode error;
+};
+#define MESSAGE_CONTAINER__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&message_container__descriptor) \
+ , 0, MESSAGE_TYPE__None, NULL, 0, 0, 0, 0, 0, {0,NULL}, 0, 0, 0, ERROR_CODE__NONE }
+
+
+/* MessageContainer methods */
+void message_container__init
+ (MessageContainer *message);
+size_t message_container__get_packed_size
+ (const MessageContainer *message);
+size_t message_container__pack
+ (const MessageContainer *message,
+ uint8_t *out);
+size_t message_container__pack_to_buffer
+ (const MessageContainer *message,
+ ProtobufCBuffer *buffer);
+MessageContainer *
+ message_container__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void message_container__free_unpacked
+ (MessageContainer *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*MessageContainer_Closure)
+ (const MessageContainer *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor message_container__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_MessageContainer_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageType.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageType.pb-c.c
new file mode 100644
index 000000000..a02e321d1
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageType.pb-c.c
@@ -0,0 +1,317 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MessageType.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "MessageType.pb-c.h"
+static const ProtobufCEnumValue message_type__enum_values_by_number[142] =
+{
+ { "None", "MESSAGE_TYPE__None", 0 },
+ { "CalculateRequest", "MESSAGE_TYPE__CalculateRequest", 3 },
+ { "CalculateResponse", "MESSAGE_TYPE__CalculateResponse", 4 },
+ { "ProgressRequest", "MESSAGE_TYPE__ProgressRequest", 5 },
+ { "ProgressResponse", "MESSAGE_TYPE__ProgressResponse", 6 },
+ { "StubCartridgeReadRequest", "MESSAGE_TYPE__StubCartridgeReadRequest", 7 },
+ { "StubCartridgeReadResponse", "MESSAGE_TYPE__StubCartridgeReadResponse", 8 },
+ { "StubCartridgeWriteRequest", "MESSAGE_TYPE__StubCartridgeWriteRequest", 9 },
+ { "StubCartridgeWriteResponse", "MESSAGE_TYPE__StubCartridgeWriteResponse", 10 },
+ { "StubDispenserRequest", "MESSAGE_TYPE__StubDispenserRequest", 11 },
+ { "StubDispenserResponse", "MESSAGE_TYPE__StubDispenserResponse", 12 },
+ { "StubGPIOInputSetupRequest", "MESSAGE_TYPE__StubGPIOInputSetupRequest", 13 },
+ { "StubGPIOInputSetupResponse", "MESSAGE_TYPE__StubGPIOInputSetupResponse", 14 },
+ { "StubGPIOReadBitRequest", "MESSAGE_TYPE__StubGPIOReadBitRequest", 15 },
+ { "StubGPIOReadBitResponse", "MESSAGE_TYPE__StubGPIOReadBitResponse", 16 },
+ { "StubGPIOReadByteRequest", "MESSAGE_TYPE__StubGPIOReadByteRequest", 17 },
+ { "StubGPIOReadByteResponse", "MESSAGE_TYPE__StubGPIOReadByteResponse", 18 },
+ { "StubGPIOWriteBitRequest", "MESSAGE_TYPE__StubGPIOWriteBitRequest", 19 },
+ { "StubGPIOWriteBitResponse", "MESSAGE_TYPE__StubGPIOWriteBitResponse", 20 },
+ { "StubGPIOWriteByteRequest", "MESSAGE_TYPE__StubGPIOWriteByteRequest", 21 },
+ { "StubGPIOWriteByteResponse", "MESSAGE_TYPE__StubGPIOWriteByteResponse", 22 },
+ { "StubHeaterRequest", "MESSAGE_TYPE__StubHeaterRequest", 23 },
+ { "StubHeaterResponse", "MESSAGE_TYPE__StubHeaterResponse", 24 },
+ { "StubMotorEncoderRequest", "MESSAGE_TYPE__StubMotorEncoderRequest", 25 },
+ { "StubMotorEncoderResponse", "MESSAGE_TYPE__StubMotorEncoderResponse", 26 },
+ { "StubOptLimitSwitchRequest", "MESSAGE_TYPE__StubOptLimitSwitchRequest", 27 },
+ { "StubOptLimitSwitchResponse", "MESSAGE_TYPE__StubOptLimitSwitchResponse", 28 },
+ { "StubSteperMotorRequest", "MESSAGE_TYPE__StubSteperMotorRequest", 29 },
+ { "StubSteperMotorResponse", "MESSAGE_TYPE__StubSteperMotorResponse", 30 },
+ { "StubValveRequest", "MESSAGE_TYPE__StubValveRequest", 31 },
+ { "StubValveResponse", "MESSAGE_TYPE__StubValveResponse", 32 },
+ { "StubExtFlashReadRequest", "MESSAGE_TYPE__StubExtFlashReadRequest", 33 },
+ { "StubExtFlashReadResponse", "MESSAGE_TYPE__StubExtFlashReadResponse", 34 },
+ { "StubExtFlashWriteRequest", "MESSAGE_TYPE__StubExtFlashWriteRequest", 35 },
+ { "StubExtFlashWriteResponse", "MESSAGE_TYPE__StubExtFlashWriteResponse", 36 },
+ { "StubFPGAReadBackRegRequest", "MESSAGE_TYPE__StubFPGAReadBackRegRequest", 37 },
+ { "StubFPGAReadBackRegResponse", "MESSAGE_TYPE__StubFPGAReadBackRegResponse", 38 },
+ { "StubFPGAReadVersionRequest", "MESSAGE_TYPE__StubFPGAReadVersionRequest", 39 },
+ { "StubFPGAReadVersionResponse", "MESSAGE_TYPE__StubFPGAReadVersionResponse", 40 },
+ { "StubL6470DriverRequest", "MESSAGE_TYPE__StubL6470DriverRequest", 41 },
+ { "StubL6470DriverResponse", "MESSAGE_TYPE__StubL6470DriverResponse", 42 },
+ { "StubMotorInitRequest", "MESSAGE_TYPE__StubMotorInitRequest", 43 },
+ { "StubMotorInitResponse", "MESSAGE_TYPE__StubMotorInitResponse", 44 },
+ { "StubMotorRunRequest", "MESSAGE_TYPE__StubMotorRunRequest", 45 },
+ { "StubMotorRunResponse", "MESSAGE_TYPE__StubMotorRunResponse", 46 },
+ { "StubMotorStopRequest", "MESSAGE_TYPE__StubMotorStopRequest", 47 },
+ { "StubMotorStopResponse", "MESSAGE_TYPE__StubMotorStopResponse", 48 },
+ { "StubMotorStatusRequest", "MESSAGE_TYPE__StubMotorStatusRequest", 49 },
+ { "StubMotorStatusResponse", "MESSAGE_TYPE__StubMotorStatusResponse", 50 },
+ { "StubMotorMovRequest", "MESSAGE_TYPE__StubMotorMovRequest", 51 },
+ { "StubMotorMovResponse", "MESSAGE_TYPE__StubMotorMovResponse", 52 },
+ { "StubMotorSpeedRequest", "MESSAGE_TYPE__StubMotorSpeedRequest", 53 },
+ { "StubMotorSpeedResponse", "MESSAGE_TYPE__StubMotorSpeedResponse", 54 },
+ { "StubMotorPositionRequest", "MESSAGE_TYPE__StubMotorPositionRequest", 55 },
+ { "StubMotorPositionResponse", "MESSAGE_TYPE__StubMotorPositionResponse", 56 },
+ { "StubHWVersionRequest", "MESSAGE_TYPE__StubHWVersionRequest", 57 },
+ { "StubHWVersionResponse", "MESSAGE_TYPE__StubHWVersionResponse", 58 },
+ { "StubF3Gpo01WriteRequest", "MESSAGE_TYPE__StubF3Gpo01WriteRequest", 59 },
+ { "StubF3Gpo01WriteResponse", "MESSAGE_TYPE__StubF3Gpo01WriteResponse", 60 },
+ { "StubHeatingTestRequest", "MESSAGE_TYPE__StubHeatingTestRequest", 61 },
+ { "StubHeatingTestResponse", "MESSAGE_TYPE__StubHeatingTestResponse", 62 },
+ { "StubHeatingTestPollRequest", "MESSAGE_TYPE__StubHeatingTestPollRequest", 63 },
+ { "StubHeatingTestPollResponse", "MESSAGE_TYPE__StubHeatingTestPollResponse", 64 },
+ { "StubMotorRequest", "MESSAGE_TYPE__StubMotorRequest", 65 },
+ { "StubMotorResponse", "MESSAGE_TYPE__StubMotorResponse", 66 },
+ { "StubMotorHomeMarkRequest", "MESSAGE_TYPE__StubMotorHomeMarkRequest", 67 },
+ { "StubMotorHomeMarkResponse", "MESSAGE_TYPE__StubMotorHomeMarkResponse", 68 },
+ { "StubMotorRunStepTickRequest", "MESSAGE_TYPE__StubMotorRunStepTickRequest", 69 },
+ { "StubMotorRunStepTickResponse", "MESSAGE_TYPE__StubMotorRunStepTickResponse", 70 },
+ { "StubFpgaReadRegRequest", "MESSAGE_TYPE__StubFpgaReadRegRequest", 71 },
+ { "StubFpgaReadRegResponse", "MESSAGE_TYPE__StubFpgaReadRegResponse", 72 },
+ { "StubFpgaWriteRegRequest", "MESSAGE_TYPE__StubFpgaWriteRegRequest", 73 },
+ { "StubFpgaWriteRegResponse", "MESSAGE_TYPE__StubFpgaWriteRegResponse", 74 },
+ { "StubReadEmbeddedVersionRequest", "MESSAGE_TYPE__StubReadEmbeddedVersionRequest", 75 },
+ { "StubReadEmbeddedVersionResponse", "MESSAGE_TYPE__StubReadEmbeddedVersionResponse", 76 },
+ { "StubTivaReadRegRequest", "MESSAGE_TYPE__StubTivaReadRegRequest", 77 },
+ { "StubTivaReadRegResponse", "MESSAGE_TYPE__StubTivaReadRegResponse", 78 },
+ { "StubTivaWriteRegRequest", "MESSAGE_TYPE__StubTivaWriteRegRequest", 79 },
+ { "StubTivaWriteRegResponse", "MESSAGE_TYPE__StubTivaWriteRegResponse", 80 },
+ { "StubDancerPositionRequest", "MESSAGE_TYPE__StubDancerPositionRequest", 81 },
+ { "StubDancerPositionResponse", "MESSAGE_TYPE__StubDancerPositionResponse", 82 },
+ { "StubSpeedSensorRequest", "MESSAGE_TYPE__StubSpeedSensorRequest", 83 },
+ { "StubSpeedSensorResponse", "MESSAGE_TYPE__StubSpeedSensorResponse", 84 },
+ { "StubRealTimeUsageRequest", "MESSAGE_TYPE__StubRealTimeUsageRequest", 85 },
+ { "StubRealTimeUsageResponse", "MESSAGE_TYPE__StubRealTimeUsageResponse", 86 },
+ { "ExternalBridgeUdpDiscoveryPacket", "MESSAGE_TYPE__ExternalBridgeUdpDiscoveryPacket", 1000 },
+ { "ExternalClientLoginRequest", "MESSAGE_TYPE__ExternalClientLoginRequest", 1001 },
+ { "ExternalClientLoginResponse", "MESSAGE_TYPE__ExternalClientLoginResponse", 1002 },
+ { "DirectSynchronizationRequest", "MESSAGE_TYPE__DirectSynchronizationRequest", 1003 },
+ { "DirectSynchronizationResponse", "MESSAGE_TYPE__DirectSynchronizationResponse", 1004 },
+ { "OverrideDataBaseRequest", "MESSAGE_TYPE__OverrideDataBaseRequest", 1005 },
+ { "OverrideDataBaseResponse", "MESSAGE_TYPE__OverrideDataBaseResponse", 1006 },
+ { "StartDiagnosticsRequest", "MESSAGE_TYPE__StartDiagnosticsRequest", 2000 },
+ { "StartDiagnosticsResponse", "MESSAGE_TYPE__StartDiagnosticsResponse", 2001 },
+ { "MotorAbortHomingRequest", "MESSAGE_TYPE__MotorAbortHomingRequest", 2002 },
+ { "MotorAbortHomingResponse", "MESSAGE_TYPE__MotorAbortHomingResponse", 2003 },
+ { "MotorHomingRequest", "MESSAGE_TYPE__MotorHomingRequest", 2004 },
+ { "MotorHomingResponse", "MESSAGE_TYPE__MotorHomingResponse", 2005 },
+ { "MotorJoggingRequest", "MESSAGE_TYPE__MotorJoggingRequest", 2006 },
+ { "MotorJoggingResponse", "MESSAGE_TYPE__MotorJoggingResponse", 2007 },
+ { "MotorAbortJoggingRequest", "MESSAGE_TYPE__MotorAbortJoggingRequest", 2008 },
+ { "MotorAbortJoggingResponse", "MESSAGE_TYPE__MotorAbortJoggingResponse", 2009 },
+ { "DispenserAbortHomingRequest", "MESSAGE_TYPE__DispenserAbortHomingRequest", 2010 },
+ { "DispenserAbortHomingResponse", "MESSAGE_TYPE__DispenserAbortHomingResponse", 2011 },
+ { "DispenserHomingRequest", "MESSAGE_TYPE__DispenserHomingRequest", 2012 },
+ { "DispenserHomingResponse", "MESSAGE_TYPE__DispenserHomingResponse", 2013 },
+ { "DispenserJoggingRequest", "MESSAGE_TYPE__DispenserJoggingRequest", 2014 },
+ { "DispenserJoggingResponse", "MESSAGE_TYPE__DispenserJoggingResponse", 2015 },
+ { "DispenserAbortJoggingRequest", "MESSAGE_TYPE__DispenserAbortJoggingRequest", 2016 },
+ { "DispenserAbortJoggingResponse", "MESSAGE_TYPE__DispenserAbortJoggingResponse", 2017 },
+ { "SetDigitalOutRequest", "MESSAGE_TYPE__SetDigitalOutRequest", 2018 },
+ { "SetDigitalOutResponse", "MESSAGE_TYPE__SetDigitalOutResponse", 2019 },
+ { "ThreadJoggingRequest", "MESSAGE_TYPE__ThreadJoggingRequest", 2020 },
+ { "ThreadJoggingResponse", "MESSAGE_TYPE__ThreadJoggingResponse", 2021 },
+ { "ThreadAbortJoggingRequest", "MESSAGE_TYPE__ThreadAbortJoggingRequest", 2022 },
+ { "ThreadAbortJoggingResponse", "MESSAGE_TYPE__ThreadAbortJoggingResponse", 2023 },
+ { "SetComponentValueRequest", "MESSAGE_TYPE__SetComponentValueRequest", 2024 },
+ { "SetComponentValueResponse", "MESSAGE_TYPE__SetComponentValueResponse", 2025 },
+ { "ResolveEventRequest", "MESSAGE_TYPE__ResolveEventRequest", 2026 },
+ { "ResolveEventResponse", "MESSAGE_TYPE__ResolveEventResponse", 2027 },
+ { "StopDiagnosticsRequest", "MESSAGE_TYPE__StopDiagnosticsRequest", 2028 },
+ { "StopDiagnosticsResponse", "MESSAGE_TYPE__StopDiagnosticsResponse", 2029 },
+ { "JobRequest", "MESSAGE_TYPE__JobRequest", 3000 },
+ { "JobResponse", "MESSAGE_TYPE__JobResponse", 3001 },
+ { "AbortJobRequest", "MESSAGE_TYPE__AbortJobRequest", 3002 },
+ { "AbortJobResponse", "MESSAGE_TYPE__AbortJobResponse", 3003 },
+ { "UploadProcessParametersRequest", "MESSAGE_TYPE__UploadProcessParametersRequest", 3004 },
+ { "UploadProcessParametersResponse", "MESSAGE_TYPE__UploadProcessParametersResponse", 3005 },
+ { "StartDebugLogRequest", "MESSAGE_TYPE__StartDebugLogRequest", 4000 },
+ { "StartDebugLogResponse", "MESSAGE_TYPE__StartDebugLogResponse", 4001 },
+ { "StopDebugLogRequest", "MESSAGE_TYPE__StopDebugLogRequest", 4002 },
+ { "StopDebugLogResponse", "MESSAGE_TYPE__StopDebugLogResponse", 4003 },
+ { "UploadHardwareConfigurationRequest", "MESSAGE_TYPE__UploadHardwareConfigurationRequest", 5000 },
+ { "UploadHardwareConfigurationResponse", "MESSAGE_TYPE__UploadHardwareConfigurationResponse", 5001 },
+ { "SystemResetRequest", "MESSAGE_TYPE__SystemResetRequest", 5002 },
+ { "SystemResetResponse", "MESSAGE_TYPE__SystemResetResponse", 5003 },
+ { "KeepAliveRequest", "MESSAGE_TYPE__KeepAliveRequest", 6000 },
+ { "KeepAliveResponse", "MESSAGE_TYPE__KeepAliveResponse", 6001 },
+ { "ConnectRequest", "MESSAGE_TYPE__ConnectRequest", 6002 },
+ { "ConnectResponse", "MESSAGE_TYPE__ConnectResponse", 6003 },
+ { "DisconnectRequest", "MESSAGE_TYPE__DisconnectRequest", 6004 },
+ { "DisconnectResponse", "MESSAGE_TYPE__DisconnectResponse", 6005 },
+};
+static const ProtobufCIntRange message_type__value_ranges[] = {
+{0, 0},{3, 1},{1000, 85},{2000, 92},{3000, 122},{4000, 128},{5000, 132},{6000, 136},{0, 142}
+};
+static const ProtobufCEnumValueIndex message_type__enum_values_by_name[142] =
+{
+ { "AbortJobRequest", 124 },
+ { "AbortJobResponse", 125 },
+ { "CalculateRequest", 1 },
+ { "CalculateResponse", 2 },
+ { "ConnectRequest", 138 },
+ { "ConnectResponse", 139 },
+ { "DirectSynchronizationRequest", 88 },
+ { "DirectSynchronizationResponse", 89 },
+ { "DisconnectRequest", 140 },
+ { "DisconnectResponse", 141 },
+ { "DispenserAbortHomingRequest", 102 },
+ { "DispenserAbortHomingResponse", 103 },
+ { "DispenserAbortJoggingRequest", 108 },
+ { "DispenserAbortJoggingResponse", 109 },
+ { "DispenserHomingRequest", 104 },
+ { "DispenserHomingResponse", 105 },
+ { "DispenserJoggingRequest", 106 },
+ { "DispenserJoggingResponse", 107 },
+ { "ExternalBridgeUdpDiscoveryPacket", 85 },
+ { "ExternalClientLoginRequest", 86 },
+ { "ExternalClientLoginResponse", 87 },
+ { "JobRequest", 122 },
+ { "JobResponse", 123 },
+ { "KeepAliveRequest", 136 },
+ { "KeepAliveResponse", 137 },
+ { "MotorAbortHomingRequest", 94 },
+ { "MotorAbortHomingResponse", 95 },
+ { "MotorAbortJoggingRequest", 100 },
+ { "MotorAbortJoggingResponse", 101 },
+ { "MotorHomingRequest", 96 },
+ { "MotorHomingResponse", 97 },
+ { "MotorJoggingRequest", 98 },
+ { "MotorJoggingResponse", 99 },
+ { "None", 0 },
+ { "OverrideDataBaseRequest", 90 },
+ { "OverrideDataBaseResponse", 91 },
+ { "ProgressRequest", 3 },
+ { "ProgressResponse", 4 },
+ { "ResolveEventRequest", 118 },
+ { "ResolveEventResponse", 119 },
+ { "SetComponentValueRequest", 116 },
+ { "SetComponentValueResponse", 117 },
+ { "SetDigitalOutRequest", 110 },
+ { "SetDigitalOutResponse", 111 },
+ { "StartDebugLogRequest", 128 },
+ { "StartDebugLogResponse", 129 },
+ { "StartDiagnosticsRequest", 92 },
+ { "StartDiagnosticsResponse", 93 },
+ { "StopDebugLogRequest", 130 },
+ { "StopDebugLogResponse", 131 },
+ { "StopDiagnosticsRequest", 120 },
+ { "StopDiagnosticsResponse", 121 },
+ { "StubCartridgeReadRequest", 5 },
+ { "StubCartridgeReadResponse", 6 },
+ { "StubCartridgeWriteRequest", 7 },
+ { "StubCartridgeWriteResponse", 8 },
+ { "StubDancerPositionRequest", 79 },
+ { "StubDancerPositionResponse", 80 },
+ { "StubDispenserRequest", 9 },
+ { "StubDispenserResponse", 10 },
+ { "StubExtFlashReadRequest", 31 },
+ { "StubExtFlashReadResponse", 32 },
+ { "StubExtFlashWriteRequest", 33 },
+ { "StubExtFlashWriteResponse", 34 },
+ { "StubF3Gpo01WriteRequest", 57 },
+ { "StubF3Gpo01WriteResponse", 58 },
+ { "StubFPGAReadBackRegRequest", 35 },
+ { "StubFPGAReadBackRegResponse", 36 },
+ { "StubFPGAReadVersionRequest", 37 },
+ { "StubFPGAReadVersionResponse", 38 },
+ { "StubFpgaReadRegRequest", 69 },
+ { "StubFpgaReadRegResponse", 70 },
+ { "StubFpgaWriteRegRequest", 71 },
+ { "StubFpgaWriteRegResponse", 72 },
+ { "StubGPIOInputSetupRequest", 11 },
+ { "StubGPIOInputSetupResponse", 12 },
+ { "StubGPIOReadBitRequest", 13 },
+ { "StubGPIOReadBitResponse", 14 },
+ { "StubGPIOReadByteRequest", 15 },
+ { "StubGPIOReadByteResponse", 16 },
+ { "StubGPIOWriteBitRequest", 17 },
+ { "StubGPIOWriteBitResponse", 18 },
+ { "StubGPIOWriteByteRequest", 19 },
+ { "StubGPIOWriteByteResponse", 20 },
+ { "StubHWVersionRequest", 55 },
+ { "StubHWVersionResponse", 56 },
+ { "StubHeaterRequest", 21 },
+ { "StubHeaterResponse", 22 },
+ { "StubHeatingTestPollRequest", 61 },
+ { "StubHeatingTestPollResponse", 62 },
+ { "StubHeatingTestRequest", 59 },
+ { "StubHeatingTestResponse", 60 },
+ { "StubL6470DriverRequest", 39 },
+ { "StubL6470DriverResponse", 40 },
+ { "StubMotorEncoderRequest", 23 },
+ { "StubMotorEncoderResponse", 24 },
+ { "StubMotorHomeMarkRequest", 65 },
+ { "StubMotorHomeMarkResponse", 66 },
+ { "StubMotorInitRequest", 41 },
+ { "StubMotorInitResponse", 42 },
+ { "StubMotorMovRequest", 49 },
+ { "StubMotorMovResponse", 50 },
+ { "StubMotorPositionRequest", 53 },
+ { "StubMotorPositionResponse", 54 },
+ { "StubMotorRequest", 63 },
+ { "StubMotorResponse", 64 },
+ { "StubMotorRunRequest", 43 },
+ { "StubMotorRunResponse", 44 },
+ { "StubMotorRunStepTickRequest", 67 },
+ { "StubMotorRunStepTickResponse", 68 },
+ { "StubMotorSpeedRequest", 51 },
+ { "StubMotorSpeedResponse", 52 },
+ { "StubMotorStatusRequest", 47 },
+ { "StubMotorStatusResponse", 48 },
+ { "StubMotorStopRequest", 45 },
+ { "StubMotorStopResponse", 46 },
+ { "StubOptLimitSwitchRequest", 25 },
+ { "StubOptLimitSwitchResponse", 26 },
+ { "StubReadEmbeddedVersionRequest", 73 },
+ { "StubReadEmbeddedVersionResponse", 74 },
+ { "StubRealTimeUsageRequest", 83 },
+ { "StubRealTimeUsageResponse", 84 },
+ { "StubSpeedSensorRequest", 81 },
+ { "StubSpeedSensorResponse", 82 },
+ { "StubSteperMotorRequest", 27 },
+ { "StubSteperMotorResponse", 28 },
+ { "StubTivaReadRegRequest", 75 },
+ { "StubTivaReadRegResponse", 76 },
+ { "StubTivaWriteRegRequest", 77 },
+ { "StubTivaWriteRegResponse", 78 },
+ { "StubValveRequest", 29 },
+ { "StubValveResponse", 30 },
+ { "SystemResetRequest", 134 },
+ { "SystemResetResponse", 135 },
+ { "ThreadAbortJoggingRequest", 114 },
+ { "ThreadAbortJoggingResponse", 115 },
+ { "ThreadJoggingRequest", 112 },
+ { "ThreadJoggingResponse", 113 },
+ { "UploadHardwareConfigurationRequest", 132 },
+ { "UploadHardwareConfigurationResponse", 133 },
+ { "UploadProcessParametersRequest", 126 },
+ { "UploadProcessParametersResponse", 127 },
+};
+const ProtobufCEnumDescriptor message_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "MessageType",
+ "MessageType",
+ "MessageType",
+ "",
+ 142,
+ message_type__enum_values_by_number,
+ 142,
+ message_type__enum_values_by_name,
+ 8,
+ message_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageType.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageType.pb-c.h
new file mode 100644
index 000000000..43986e784
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Common/MessageType.pb-c.h
@@ -0,0 +1,207 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MessageType.proto */
+
+#ifndef PROTOBUF_C_MessageType_2eproto__INCLUDED
+#define PROTOBUF_C_MessageType_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _MessageType {
+ /*
+ *The first enumeration value must be zero so..
+ */
+ MESSAGE_TYPE__None = 0,
+ /*
+ *Stubs
+ */
+ MESSAGE_TYPE__CalculateRequest = 3,
+ MESSAGE_TYPE__CalculateResponse = 4,
+ MESSAGE_TYPE__ProgressRequest = 5,
+ MESSAGE_TYPE__ProgressResponse = 6,
+ MESSAGE_TYPE__StubCartridgeReadRequest = 7,
+ MESSAGE_TYPE__StubCartridgeReadResponse = 8,
+ MESSAGE_TYPE__StubCartridgeWriteRequest = 9,
+ MESSAGE_TYPE__StubCartridgeWriteResponse = 10,
+ MESSAGE_TYPE__StubDispenserRequest = 11,
+ MESSAGE_TYPE__StubDispenserResponse = 12,
+ MESSAGE_TYPE__StubGPIOInputSetupRequest = 13,
+ MESSAGE_TYPE__StubGPIOInputSetupResponse = 14,
+ MESSAGE_TYPE__StubGPIOReadBitRequest = 15,
+ MESSAGE_TYPE__StubGPIOReadBitResponse = 16,
+ MESSAGE_TYPE__StubGPIOReadByteRequest = 17,
+ MESSAGE_TYPE__StubGPIOReadByteResponse = 18,
+ MESSAGE_TYPE__StubGPIOWriteBitRequest = 19,
+ MESSAGE_TYPE__StubGPIOWriteBitResponse = 20,
+ MESSAGE_TYPE__StubGPIOWriteByteRequest = 21,
+ MESSAGE_TYPE__StubGPIOWriteByteResponse = 22,
+ MESSAGE_TYPE__StubHeaterRequest = 23,
+ MESSAGE_TYPE__StubHeaterResponse = 24,
+ MESSAGE_TYPE__StubMotorEncoderRequest = 25,
+ MESSAGE_TYPE__StubMotorEncoderResponse = 26,
+ MESSAGE_TYPE__StubOptLimitSwitchRequest = 27,
+ MESSAGE_TYPE__StubOptLimitSwitchResponse = 28,
+ MESSAGE_TYPE__StubSteperMotorRequest = 29,
+ MESSAGE_TYPE__StubSteperMotorResponse = 30,
+ MESSAGE_TYPE__StubValveRequest = 31,
+ MESSAGE_TYPE__StubValveResponse = 32,
+ MESSAGE_TYPE__StubExtFlashReadRequest = 33,
+ MESSAGE_TYPE__StubExtFlashReadResponse = 34,
+ MESSAGE_TYPE__StubExtFlashWriteRequest = 35,
+ MESSAGE_TYPE__StubExtFlashWriteResponse = 36,
+ MESSAGE_TYPE__StubFPGAReadBackRegRequest = 37,
+ MESSAGE_TYPE__StubFPGAReadBackRegResponse = 38,
+ MESSAGE_TYPE__StubFPGAReadVersionRequest = 39,
+ MESSAGE_TYPE__StubFPGAReadVersionResponse = 40,
+ MESSAGE_TYPE__StubL6470DriverRequest = 41,
+ MESSAGE_TYPE__StubL6470DriverResponse = 42,
+ MESSAGE_TYPE__StubMotorInitRequest = 43,
+ MESSAGE_TYPE__StubMotorInitResponse = 44,
+ MESSAGE_TYPE__StubMotorRunRequest = 45,
+ MESSAGE_TYPE__StubMotorRunResponse = 46,
+ MESSAGE_TYPE__StubMotorStopRequest = 47,
+ MESSAGE_TYPE__StubMotorStopResponse = 48,
+ MESSAGE_TYPE__StubMotorStatusRequest = 49,
+ MESSAGE_TYPE__StubMotorStatusResponse = 50,
+ MESSAGE_TYPE__StubMotorMovRequest = 51,
+ MESSAGE_TYPE__StubMotorMovResponse = 52,
+ MESSAGE_TYPE__StubMotorSpeedRequest = 53,
+ MESSAGE_TYPE__StubMotorSpeedResponse = 54,
+ MESSAGE_TYPE__StubMotorPositionRequest = 55,
+ MESSAGE_TYPE__StubMotorPositionResponse = 56,
+ MESSAGE_TYPE__StubHWVersionRequest = 57,
+ MESSAGE_TYPE__StubHWVersionResponse = 58,
+ MESSAGE_TYPE__StubF3Gpo01WriteRequest = 59,
+ MESSAGE_TYPE__StubF3Gpo01WriteResponse = 60,
+ MESSAGE_TYPE__StubHeatingTestRequest = 61,
+ MESSAGE_TYPE__StubHeatingTestResponse = 62,
+ MESSAGE_TYPE__StubHeatingTestPollRequest = 63,
+ MESSAGE_TYPE__StubHeatingTestPollResponse = 64,
+ MESSAGE_TYPE__StubMotorRequest = 65,
+ MESSAGE_TYPE__StubMotorResponse = 66,
+ MESSAGE_TYPE__StubMotorHomeMarkRequest = 67,
+ MESSAGE_TYPE__StubMotorHomeMarkResponse = 68,
+ MESSAGE_TYPE__StubMotorRunStepTickRequest = 69,
+ MESSAGE_TYPE__StubMotorRunStepTickResponse = 70,
+ MESSAGE_TYPE__StubFpgaReadRegRequest = 71,
+ MESSAGE_TYPE__StubFpgaReadRegResponse = 72,
+ MESSAGE_TYPE__StubFpgaWriteRegRequest = 73,
+ MESSAGE_TYPE__StubFpgaWriteRegResponse = 74,
+ MESSAGE_TYPE__StubReadEmbeddedVersionRequest = 75,
+ MESSAGE_TYPE__StubReadEmbeddedVersionResponse = 76,
+ MESSAGE_TYPE__StubTivaReadRegRequest = 77,
+ MESSAGE_TYPE__StubTivaReadRegResponse = 78,
+ MESSAGE_TYPE__StubTivaWriteRegRequest = 79,
+ MESSAGE_TYPE__StubTivaWriteRegResponse = 80,
+ MESSAGE_TYPE__StubDancerPositionRequest = 81,
+ MESSAGE_TYPE__StubDancerPositionResponse = 82,
+ MESSAGE_TYPE__StubSpeedSensorRequest = 83,
+ MESSAGE_TYPE__StubSpeedSensorResponse = 84,
+ MESSAGE_TYPE__StubRealTimeUsageRequest = 85,
+ MESSAGE_TYPE__StubRealTimeUsageResponse = 86,
+ /*
+ *Integration
+ */
+ MESSAGE_TYPE__ExternalBridgeUdpDiscoveryPacket = 1000,
+ MESSAGE_TYPE__ExternalClientLoginRequest = 1001,
+ MESSAGE_TYPE__ExternalClientLoginResponse = 1002,
+ MESSAGE_TYPE__DirectSynchronizationRequest = 1003,
+ MESSAGE_TYPE__DirectSynchronizationResponse = 1004,
+ MESSAGE_TYPE__OverrideDataBaseRequest = 1005,
+ MESSAGE_TYPE__OverrideDataBaseResponse = 1006,
+ /*
+ *Diagnostics
+ */
+ MESSAGE_TYPE__StartDiagnosticsRequest = 2000,
+ MESSAGE_TYPE__StartDiagnosticsResponse = 2001,
+ MESSAGE_TYPE__MotorAbortHomingRequest = 2002,
+ MESSAGE_TYPE__MotorAbortHomingResponse = 2003,
+ MESSAGE_TYPE__MotorHomingRequest = 2004,
+ MESSAGE_TYPE__MotorHomingResponse = 2005,
+ MESSAGE_TYPE__MotorJoggingRequest = 2006,
+ MESSAGE_TYPE__MotorJoggingResponse = 2007,
+ MESSAGE_TYPE__MotorAbortJoggingRequest = 2008,
+ MESSAGE_TYPE__MotorAbortJoggingResponse = 2009,
+ MESSAGE_TYPE__DispenserAbortHomingRequest = 2010,
+ MESSAGE_TYPE__DispenserAbortHomingResponse = 2011,
+ MESSAGE_TYPE__DispenserHomingRequest = 2012,
+ MESSAGE_TYPE__DispenserHomingResponse = 2013,
+ MESSAGE_TYPE__DispenserJoggingRequest = 2014,
+ MESSAGE_TYPE__DispenserJoggingResponse = 2015,
+ MESSAGE_TYPE__DispenserAbortJoggingRequest = 2016,
+ MESSAGE_TYPE__DispenserAbortJoggingResponse = 2017,
+ MESSAGE_TYPE__SetDigitalOutRequest = 2018,
+ MESSAGE_TYPE__SetDigitalOutResponse = 2019,
+ MESSAGE_TYPE__ThreadJoggingRequest = 2020,
+ MESSAGE_TYPE__ThreadJoggingResponse = 2021,
+ MESSAGE_TYPE__ThreadAbortJoggingRequest = 2022,
+ MESSAGE_TYPE__ThreadAbortJoggingResponse = 2023,
+ MESSAGE_TYPE__SetComponentValueRequest = 2024,
+ MESSAGE_TYPE__SetComponentValueResponse = 2025,
+ MESSAGE_TYPE__ResolveEventRequest = 2026,
+ MESSAGE_TYPE__ResolveEventResponse = 2027,
+ MESSAGE_TYPE__StopDiagnosticsRequest = 2028,
+ MESSAGE_TYPE__StopDiagnosticsResponse = 2029,
+ /*
+ *Printing
+ */
+ MESSAGE_TYPE__JobRequest = 3000,
+ MESSAGE_TYPE__JobResponse = 3001,
+ MESSAGE_TYPE__AbortJobRequest = 3002,
+ MESSAGE_TYPE__AbortJobResponse = 3003,
+ MESSAGE_TYPE__UploadProcessParametersRequest = 3004,
+ MESSAGE_TYPE__UploadProcessParametersResponse = 3005,
+ /*
+ *Debugging
+ */
+ MESSAGE_TYPE__StartDebugLogRequest = 4000,
+ MESSAGE_TYPE__StartDebugLogResponse = 4001,
+ MESSAGE_TYPE__StopDebugLogRequest = 4002,
+ MESSAGE_TYPE__StopDebugLogResponse = 4003,
+ /*
+ *Hardware
+ */
+ MESSAGE_TYPE__UploadHardwareConfigurationRequest = 5000,
+ MESSAGE_TYPE__UploadHardwareConfigurationResponse = 5001,
+ MESSAGE_TYPE__SystemResetRequest = 5002,
+ MESSAGE_TYPE__SystemResetResponse = 5003,
+ /*
+ *Connection
+ */
+ MESSAGE_TYPE__KeepAliveRequest = 6000,
+ MESSAGE_TYPE__KeepAliveResponse = 6001,
+ MESSAGE_TYPE__ConnectRequest = 6002,
+ MESSAGE_TYPE__ConnectResponse = 6003,
+ MESSAGE_TYPE__DisconnectRequest = 6004,
+ MESSAGE_TYPE__DisconnectResponse = 6005
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(MESSAGE_TYPE)
+} MessageType;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor message_type__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_MessageType_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectRequest.pb-c.c
new file mode 100644
index 000000000..127b22ef3
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ConnectRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ConnectRequest.pb-c.h"
+void connect_request__init
+ (ConnectRequest *message)
+{
+ static const ConnectRequest init_value = CONNECT_REQUEST__INIT;
+ *message = init_value;
+}
+size_t connect_request__get_packed_size
+ (const ConnectRequest *message)
+{
+ assert(message->base.descriptor == &connect_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t connect_request__pack
+ (const ConnectRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &connect_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t connect_request__pack_to_buffer
+ (const ConnectRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &connect_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ConnectRequest *
+ connect_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ConnectRequest *)
+ protobuf_c_message_unpack (&connect_request__descriptor,
+ allocator, len, data);
+}
+void connect_request__free_unpacked
+ (ConnectRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &connect_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor connect_request__field_descriptors[1] =
+{
+ {
+ "Password",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(ConnectRequest, password),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned connect_request__field_indices_by_name[] = {
+ 0, /* field[0] = Password */
+};
+static const ProtobufCIntRange connect_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor connect_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ConnectRequest",
+ "ConnectRequest",
+ "ConnectRequest",
+ "",
+ sizeof(ConnectRequest),
+ 1,
+ connect_request__field_descriptors,
+ connect_request__field_indices_by_name,
+ 1, connect_request__number_ranges,
+ (ProtobufCMessageInit) connect_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectRequest.pb-c.h
new file mode 100644
index 000000000..6e6be56e5
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectRequest.pb-c.h
@@ -0,0 +1,71 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ConnectRequest.proto */
+
+#ifndef PROTOBUF_C_ConnectRequest_2eproto__INCLUDED
+#define PROTOBUF_C_ConnectRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _ConnectRequest ConnectRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ConnectRequest
+{
+ ProtobufCMessage base;
+ char *password;
+};
+#define CONNECT_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&connect_request__descriptor) \
+ , NULL }
+
+
+/* ConnectRequest methods */
+void connect_request__init
+ (ConnectRequest *message);
+size_t connect_request__get_packed_size
+ (const ConnectRequest *message);
+size_t connect_request__pack
+ (const ConnectRequest *message,
+ uint8_t *out);
+size_t connect_request__pack_to_buffer
+ (const ConnectRequest *message,
+ ProtobufCBuffer *buffer);
+ConnectRequest *
+ connect_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void connect_request__free_unpacked
+ (ConnectRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ConnectRequest_Closure)
+ (const ConnectRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor connect_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ConnectRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectResponse.pb-c.c
new file mode 100644
index 000000000..ce449266e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectResponse.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ConnectResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ConnectResponse.pb-c.h"
+void connect_response__init
+ (ConnectResponse *message)
+{
+ static const ConnectResponse init_value = CONNECT_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t connect_response__get_packed_size
+ (const ConnectResponse *message)
+{
+ assert(message->base.descriptor == &connect_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t connect_response__pack
+ (const ConnectResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &connect_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t connect_response__pack_to_buffer
+ (const ConnectResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &connect_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ConnectResponse *
+ connect_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ConnectResponse *)
+ protobuf_c_message_unpack (&connect_response__descriptor,
+ allocator, len, data);
+}
+void connect_response__free_unpacked
+ (ConnectResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &connect_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor connect_response__field_descriptors[1] =
+{
+ {
+ "DeviceInformation",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(ConnectResponse, deviceinformation),
+ &device_information__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned connect_response__field_indices_by_name[] = {
+ 0, /* field[0] = DeviceInformation */
+};
+static const ProtobufCIntRange connect_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor connect_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ConnectResponse",
+ "ConnectResponse",
+ "ConnectResponse",
+ "",
+ sizeof(ConnectResponse),
+ 1,
+ connect_response__field_descriptors,
+ connect_response__field_indices_by_name,
+ 1, connect_response__number_ranges,
+ (ProtobufCMessageInit) connect_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectResponse.pb-c.h
new file mode 100644
index 000000000..85a15995c
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/ConnectResponse.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ConnectResponse.proto */
+
+#ifndef PROTOBUF_C_ConnectResponse_2eproto__INCLUDED
+#define PROTOBUF_C_ConnectResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "DeviceInformation.pb-c.h"
+
+typedef struct _ConnectResponse ConnectResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ConnectResponse
+{
+ ProtobufCMessage base;
+ DeviceInformation *deviceinformation;
+};
+#define CONNECT_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&connect_response__descriptor) \
+ , NULL }
+
+
+/* ConnectResponse methods */
+void connect_response__init
+ (ConnectResponse *message);
+size_t connect_response__get_packed_size
+ (const ConnectResponse *message);
+size_t connect_response__pack
+ (const ConnectResponse *message,
+ uint8_t *out);
+size_t connect_response__pack_to_buffer
+ (const ConnectResponse *message,
+ ProtobufCBuffer *buffer);
+ConnectResponse *
+ connect_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void connect_response__free_unpacked
+ (ConnectResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ConnectResponse_Closure)
+ (const ConnectResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor connect_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ConnectResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DeviceInformation.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DeviceInformation.pb-c.c
new file mode 100644
index 000000000..2ecae726e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DeviceInformation.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DeviceInformation.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DeviceInformation.pb-c.h"
+void device_information__init
+ (DeviceInformation *message)
+{
+ static const DeviceInformation init_value = DEVICE_INFORMATION__INIT;
+ *message = init_value;
+}
+size_t device_information__get_packed_size
+ (const DeviceInformation *message)
+{
+ assert(message->base.descriptor == &device_information__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t device_information__pack
+ (const DeviceInformation *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &device_information__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t device_information__pack_to_buffer
+ (const DeviceInformation *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &device_information__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DeviceInformation *
+ device_information__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DeviceInformation *)
+ protobuf_c_message_unpack (&device_information__descriptor,
+ allocator, len, data);
+}
+void device_information__free_unpacked
+ (DeviceInformation *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &device_information__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor device_information__field_descriptors[3] =
+{
+ {
+ "Name",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(DeviceInformation, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Version",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(DeviceInformation, version),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "BuildDate",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(DeviceInformation, builddate),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned device_information__field_indices_by_name[] = {
+ 2, /* field[2] = BuildDate */
+ 0, /* field[0] = Name */
+ 1, /* field[1] = Version */
+};
+static const ProtobufCIntRange device_information__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor device_information__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DeviceInformation",
+ "DeviceInformation",
+ "DeviceInformation",
+ "",
+ sizeof(DeviceInformation),
+ 3,
+ device_information__field_descriptors,
+ device_information__field_indices_by_name,
+ 1, device_information__number_ranges,
+ (ProtobufCMessageInit) device_information__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DeviceInformation.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DeviceInformation.pb-c.h
new file mode 100644
index 000000000..521c77424
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DeviceInformation.pb-c.h
@@ -0,0 +1,73 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DeviceInformation.proto */
+
+#ifndef PROTOBUF_C_DeviceInformation_2eproto__INCLUDED
+#define PROTOBUF_C_DeviceInformation_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _DeviceInformation DeviceInformation;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DeviceInformation
+{
+ ProtobufCMessage base;
+ char *name;
+ char *version;
+ char *builddate;
+};
+#define DEVICE_INFORMATION__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&device_information__descriptor) \
+ , NULL, NULL, NULL }
+
+
+/* DeviceInformation methods */
+void device_information__init
+ (DeviceInformation *message);
+size_t device_information__get_packed_size
+ (const DeviceInformation *message);
+size_t device_information__pack
+ (const DeviceInformation *message,
+ uint8_t *out);
+size_t device_information__pack_to_buffer
+ (const DeviceInformation *message,
+ ProtobufCBuffer *buffer);
+DeviceInformation *
+ device_information__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void device_information__free_unpacked
+ (DeviceInformation *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DeviceInformation_Closure)
+ (const DeviceInformation *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor device_information__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DeviceInformation_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectRequest.pb-c.c
new file mode 100644
index 000000000..39e442cbe
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DisconnectRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DisconnectRequest.pb-c.h"
+void disconnect_request__init
+ (DisconnectRequest *message)
+{
+ static const DisconnectRequest init_value = DISCONNECT_REQUEST__INIT;
+ *message = init_value;
+}
+size_t disconnect_request__get_packed_size
+ (const DisconnectRequest *message)
+{
+ assert(message->base.descriptor == &disconnect_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t disconnect_request__pack
+ (const DisconnectRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &disconnect_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t disconnect_request__pack_to_buffer
+ (const DisconnectRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &disconnect_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DisconnectRequest *
+ disconnect_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DisconnectRequest *)
+ protobuf_c_message_unpack (&disconnect_request__descriptor,
+ allocator, len, data);
+}
+void disconnect_request__free_unpacked
+ (DisconnectRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &disconnect_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define disconnect_request__field_descriptors NULL
+#define disconnect_request__field_indices_by_name NULL
+#define disconnect_request__number_ranges NULL
+const ProtobufCMessageDescriptor disconnect_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DisconnectRequest",
+ "DisconnectRequest",
+ "DisconnectRequest",
+ "",
+ sizeof(DisconnectRequest),
+ 0,
+ disconnect_request__field_descriptors,
+ disconnect_request__field_indices_by_name,
+ 0, disconnect_request__number_ranges,
+ (ProtobufCMessageInit) disconnect_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectRequest.pb-c.h
new file mode 100644
index 000000000..1f7fa145b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DisconnectRequest.proto */
+
+#ifndef PROTOBUF_C_DisconnectRequest_2eproto__INCLUDED
+#define PROTOBUF_C_DisconnectRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _DisconnectRequest DisconnectRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DisconnectRequest
+{
+ ProtobufCMessage base;
+};
+#define DISCONNECT_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&disconnect_request__descriptor) \
+ }
+
+
+/* DisconnectRequest methods */
+void disconnect_request__init
+ (DisconnectRequest *message);
+size_t disconnect_request__get_packed_size
+ (const DisconnectRequest *message);
+size_t disconnect_request__pack
+ (const DisconnectRequest *message,
+ uint8_t *out);
+size_t disconnect_request__pack_to_buffer
+ (const DisconnectRequest *message,
+ ProtobufCBuffer *buffer);
+DisconnectRequest *
+ disconnect_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void disconnect_request__free_unpacked
+ (DisconnectRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DisconnectRequest_Closure)
+ (const DisconnectRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor disconnect_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DisconnectRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectResponse.pb-c.c
new file mode 100644
index 000000000..e17f48d2b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DisconnectResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DisconnectResponse.pb-c.h"
+void disconnect_response__init
+ (DisconnectResponse *message)
+{
+ static const DisconnectResponse init_value = DISCONNECT_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t disconnect_response__get_packed_size
+ (const DisconnectResponse *message)
+{
+ assert(message->base.descriptor == &disconnect_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t disconnect_response__pack
+ (const DisconnectResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &disconnect_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t disconnect_response__pack_to_buffer
+ (const DisconnectResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &disconnect_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DisconnectResponse *
+ disconnect_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DisconnectResponse *)
+ protobuf_c_message_unpack (&disconnect_response__descriptor,
+ allocator, len, data);
+}
+void disconnect_response__free_unpacked
+ (DisconnectResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &disconnect_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define disconnect_response__field_descriptors NULL
+#define disconnect_response__field_indices_by_name NULL
+#define disconnect_response__number_ranges NULL
+const ProtobufCMessageDescriptor disconnect_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DisconnectResponse",
+ "DisconnectResponse",
+ "DisconnectResponse",
+ "",
+ sizeof(DisconnectResponse),
+ 0,
+ disconnect_response__field_descriptors,
+ disconnect_response__field_indices_by_name,
+ 0, disconnect_response__number_ranges,
+ (ProtobufCMessageInit) disconnect_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectResponse.pb-c.h
new file mode 100644
index 000000000..3518f360f
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/DisconnectResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DisconnectResponse.proto */
+
+#ifndef PROTOBUF_C_DisconnectResponse_2eproto__INCLUDED
+#define PROTOBUF_C_DisconnectResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _DisconnectResponse DisconnectResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DisconnectResponse
+{
+ ProtobufCMessage base;
+};
+#define DISCONNECT_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&disconnect_response__descriptor) \
+ }
+
+
+/* DisconnectResponse methods */
+void disconnect_response__init
+ (DisconnectResponse *message);
+size_t disconnect_response__get_packed_size
+ (const DisconnectResponse *message);
+size_t disconnect_response__pack
+ (const DisconnectResponse *message,
+ uint8_t *out);
+size_t disconnect_response__pack_to_buffer
+ (const DisconnectResponse *message,
+ ProtobufCBuffer *buffer);
+DisconnectResponse *
+ disconnect_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void disconnect_response__free_unpacked
+ (DisconnectResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DisconnectResponse_Closure)
+ (const DisconnectResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor disconnect_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DisconnectResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveRequest.pb-c.c
new file mode 100644
index 000000000..70fca2425
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: KeepAliveRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "KeepAliveRequest.pb-c.h"
+void keep_alive_request__init
+ (KeepAliveRequest *message)
+{
+ static const KeepAliveRequest init_value = KEEP_ALIVE_REQUEST__INIT;
+ *message = init_value;
+}
+size_t keep_alive_request__get_packed_size
+ (const KeepAliveRequest *message)
+{
+ assert(message->base.descriptor == &keep_alive_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t keep_alive_request__pack
+ (const KeepAliveRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &keep_alive_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t keep_alive_request__pack_to_buffer
+ (const KeepAliveRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &keep_alive_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+KeepAliveRequest *
+ keep_alive_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (KeepAliveRequest *)
+ protobuf_c_message_unpack (&keep_alive_request__descriptor,
+ allocator, len, data);
+}
+void keep_alive_request__free_unpacked
+ (KeepAliveRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &keep_alive_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define keep_alive_request__field_descriptors NULL
+#define keep_alive_request__field_indices_by_name NULL
+#define keep_alive_request__number_ranges NULL
+const ProtobufCMessageDescriptor keep_alive_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "KeepAliveRequest",
+ "KeepAliveRequest",
+ "KeepAliveRequest",
+ "",
+ sizeof(KeepAliveRequest),
+ 0,
+ keep_alive_request__field_descriptors,
+ keep_alive_request__field_indices_by_name,
+ 0, keep_alive_request__number_ranges,
+ (ProtobufCMessageInit) keep_alive_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveRequest.pb-c.h
new file mode 100644
index 000000000..379aa6caa
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: KeepAliveRequest.proto */
+
+#ifndef PROTOBUF_C_KeepAliveRequest_2eproto__INCLUDED
+#define PROTOBUF_C_KeepAliveRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _KeepAliveRequest KeepAliveRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _KeepAliveRequest
+{
+ ProtobufCMessage base;
+};
+#define KEEP_ALIVE_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&keep_alive_request__descriptor) \
+ }
+
+
+/* KeepAliveRequest methods */
+void keep_alive_request__init
+ (KeepAliveRequest *message);
+size_t keep_alive_request__get_packed_size
+ (const KeepAliveRequest *message);
+size_t keep_alive_request__pack
+ (const KeepAliveRequest *message,
+ uint8_t *out);
+size_t keep_alive_request__pack_to_buffer
+ (const KeepAliveRequest *message,
+ ProtobufCBuffer *buffer);
+KeepAliveRequest *
+ keep_alive_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void keep_alive_request__free_unpacked
+ (KeepAliveRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*KeepAliveRequest_Closure)
+ (const KeepAliveRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor keep_alive_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_KeepAliveRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveResponse.pb-c.c
new file mode 100644
index 000000000..9bae1f119
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: KeepAliveResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "KeepAliveResponse.pb-c.h"
+void keep_alive_response__init
+ (KeepAliveResponse *message)
+{
+ static const KeepAliveResponse init_value = KEEP_ALIVE_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t keep_alive_response__get_packed_size
+ (const KeepAliveResponse *message)
+{
+ assert(message->base.descriptor == &keep_alive_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t keep_alive_response__pack
+ (const KeepAliveResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &keep_alive_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t keep_alive_response__pack_to_buffer
+ (const KeepAliveResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &keep_alive_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+KeepAliveResponse *
+ keep_alive_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (KeepAliveResponse *)
+ protobuf_c_message_unpack (&keep_alive_response__descriptor,
+ allocator, len, data);
+}
+void keep_alive_response__free_unpacked
+ (KeepAliveResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &keep_alive_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define keep_alive_response__field_descriptors NULL
+#define keep_alive_response__field_indices_by_name NULL
+#define keep_alive_response__number_ranges NULL
+const ProtobufCMessageDescriptor keep_alive_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "KeepAliveResponse",
+ "KeepAliveResponse",
+ "KeepAliveResponse",
+ "",
+ sizeof(KeepAliveResponse),
+ 0,
+ keep_alive_response__field_descriptors,
+ keep_alive_response__field_indices_by_name,
+ 0, keep_alive_response__number_ranges,
+ (ProtobufCMessageInit) keep_alive_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveResponse.pb-c.h
new file mode 100644
index 000000000..a29f79c99
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Connection/KeepAliveResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: KeepAliveResponse.proto */
+
+#ifndef PROTOBUF_C_KeepAliveResponse_2eproto__INCLUDED
+#define PROTOBUF_C_KeepAliveResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _KeepAliveResponse KeepAliveResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _KeepAliveResponse
+{
+ ProtobufCMessage base;
+};
+#define KEEP_ALIVE_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&keep_alive_response__descriptor) \
+ }
+
+
+/* KeepAliveResponse methods */
+void keep_alive_response__init
+ (KeepAliveResponse *message);
+size_t keep_alive_response__get_packed_size
+ (const KeepAliveResponse *message);
+size_t keep_alive_response__pack
+ (const KeepAliveResponse *message,
+ uint8_t *out);
+size_t keep_alive_response__pack_to_buffer
+ (const KeepAliveResponse *message,
+ ProtobufCBuffer *buffer);
+KeepAliveResponse *
+ keep_alive_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void keep_alive_response__free_unpacked
+ (KeepAliveResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*KeepAliveResponse_Closure)
+ (const KeepAliveResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor keep_alive_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_KeepAliveResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/DebugLogCategory.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/DebugLogCategory.pb-c.c
new file mode 100644
index 000000000..ebb901ba8
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/DebugLogCategory.pb-c.c
@@ -0,0 +1,43 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DebugLogCategory.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DebugLogCategory.pb-c.h"
+static const ProtobufCEnumValue debug_log_category__enum_values_by_number[5] =
+{
+ { "Info", "DEBUG_LOG_CATEGORY__Info", 0 },
+ { "Warning", "DEBUG_LOG_CATEGORY__Warning", 1 },
+ { "Error", "DEBUG_LOG_CATEGORY__Error", 2 },
+ { "Critical", "DEBUG_LOG_CATEGORY__Critical", 3 },
+ { "Debug", "DEBUG_LOG_CATEGORY__Debug", 4 },
+};
+static const ProtobufCIntRange debug_log_category__value_ranges[] = {
+{0, 0},{0, 5}
+};
+static const ProtobufCEnumValueIndex debug_log_category__enum_values_by_name[5] =
+{
+ { "Critical", 3 },
+ { "Debug", 4 },
+ { "Error", 2 },
+ { "Info", 0 },
+ { "Warning", 1 },
+};
+const ProtobufCEnumDescriptor debug_log_category__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "DebugLogCategory",
+ "DebugLogCategory",
+ "DebugLogCategory",
+ "",
+ 5,
+ debug_log_category__enum_values_by_number,
+ 5,
+ debug_log_category__enum_values_by_name,
+ 1,
+ debug_log_category__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/DebugLogCategory.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/DebugLogCategory.pb-c.h
new file mode 100644
index 000000000..d97b42d33
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/DebugLogCategory.pb-c.h
@@ -0,0 +1,46 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DebugLogCategory.proto */
+
+#ifndef PROTOBUF_C_DebugLogCategory_2eproto__INCLUDED
+#define PROTOBUF_C_DebugLogCategory_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _DebugLogCategory {
+ DEBUG_LOG_CATEGORY__Info = 0,
+ DEBUG_LOG_CATEGORY__Warning = 1,
+ DEBUG_LOG_CATEGORY__Error = 2,
+ DEBUG_LOG_CATEGORY__Critical = 3,
+ DEBUG_LOG_CATEGORY__Debug = 4
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(DEBUG_LOG_CATEGORY)
+} DebugLogCategory;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor debug_log_category__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DebugLogCategory_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogRequest.pb-c.c
new file mode 100644
index 000000000..4c9f854c8
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StartDebugLogRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StartDebugLogRequest.pb-c.h"
+void start_debug_log_request__init
+ (StartDebugLogRequest *message)
+{
+ static const StartDebugLogRequest init_value = START_DEBUG_LOG_REQUEST__INIT;
+ *message = init_value;
+}
+size_t start_debug_log_request__get_packed_size
+ (const StartDebugLogRequest *message)
+{
+ assert(message->base.descriptor == &start_debug_log_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t start_debug_log_request__pack
+ (const StartDebugLogRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &start_debug_log_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t start_debug_log_request__pack_to_buffer
+ (const StartDebugLogRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &start_debug_log_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StartDebugLogRequest *
+ start_debug_log_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StartDebugLogRequest *)
+ protobuf_c_message_unpack (&start_debug_log_request__descriptor,
+ allocator, len, data);
+}
+void start_debug_log_request__free_unpacked
+ (StartDebugLogRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &start_debug_log_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define start_debug_log_request__field_descriptors NULL
+#define start_debug_log_request__field_indices_by_name NULL
+#define start_debug_log_request__number_ranges NULL
+const ProtobufCMessageDescriptor start_debug_log_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StartDebugLogRequest",
+ "StartDebugLogRequest",
+ "StartDebugLogRequest",
+ "",
+ sizeof(StartDebugLogRequest),
+ 0,
+ start_debug_log_request__field_descriptors,
+ start_debug_log_request__field_indices_by_name,
+ 0, start_debug_log_request__number_ranges,
+ (ProtobufCMessageInit) start_debug_log_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogRequest.pb-c.h
new file mode 100644
index 000000000..13de9c765
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StartDebugLogRequest.proto */
+
+#ifndef PROTOBUF_C_StartDebugLogRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StartDebugLogRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StartDebugLogRequest StartDebugLogRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StartDebugLogRequest
+{
+ ProtobufCMessage base;
+};
+#define START_DEBUG_LOG_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&start_debug_log_request__descriptor) \
+ }
+
+
+/* StartDebugLogRequest methods */
+void start_debug_log_request__init
+ (StartDebugLogRequest *message);
+size_t start_debug_log_request__get_packed_size
+ (const StartDebugLogRequest *message);
+size_t start_debug_log_request__pack
+ (const StartDebugLogRequest *message,
+ uint8_t *out);
+size_t start_debug_log_request__pack_to_buffer
+ (const StartDebugLogRequest *message,
+ ProtobufCBuffer *buffer);
+StartDebugLogRequest *
+ start_debug_log_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void start_debug_log_request__free_unpacked
+ (StartDebugLogRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StartDebugLogRequest_Closure)
+ (const StartDebugLogRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor start_debug_log_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StartDebugLogRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogResponse.pb-c.c
new file mode 100644
index 000000000..c9a1e6405
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogResponse.pb-c.c
@@ -0,0 +1,157 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StartDebugLogResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StartDebugLogResponse.pb-c.h"
+void start_debug_log_response__init
+ (StartDebugLogResponse *message)
+{
+ static const StartDebugLogResponse init_value = START_DEBUG_LOG_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t start_debug_log_response__get_packed_size
+ (const StartDebugLogResponse *message)
+{
+ assert(message->base.descriptor == &start_debug_log_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t start_debug_log_response__pack
+ (const StartDebugLogResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &start_debug_log_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t start_debug_log_response__pack_to_buffer
+ (const StartDebugLogResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &start_debug_log_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StartDebugLogResponse *
+ start_debug_log_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StartDebugLogResponse *)
+ protobuf_c_message_unpack (&start_debug_log_response__descriptor,
+ allocator, len, data);
+}
+void start_debug_log_response__free_unpacked
+ (StartDebugLogResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &start_debug_log_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor start_debug_log_response__field_descriptors[6] =
+{
+ {
+ "Category",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(StartDebugLogResponse, has_category),
+ offsetof(StartDebugLogResponse, category),
+ &debug_log_category__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "FileName",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StartDebugLogResponse, filename),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "LineNumber",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StartDebugLogResponse, has_linenumber),
+ offsetof(StartDebugLogResponse, linenumber),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Filter",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StartDebugLogResponse, has_filter),
+ offsetof(StartDebugLogResponse, filter),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Message",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StartDebugLogResponse, message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ModuleId",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StartDebugLogResponse, has_moduleid),
+ offsetof(StartDebugLogResponse, moduleid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned start_debug_log_response__field_indices_by_name[] = {
+ 0, /* field[0] = Category */
+ 1, /* field[1] = FileName */
+ 3, /* field[3] = Filter */
+ 2, /* field[2] = LineNumber */
+ 4, /* field[4] = Message */
+ 5, /* field[5] = ModuleId */
+};
+static const ProtobufCIntRange start_debug_log_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor start_debug_log_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StartDebugLogResponse",
+ "StartDebugLogResponse",
+ "StartDebugLogResponse",
+ "",
+ sizeof(StartDebugLogResponse),
+ 6,
+ start_debug_log_response__field_descriptors,
+ start_debug_log_response__field_indices_by_name,
+ 1, start_debug_log_response__number_ranges,
+ (ProtobufCMessageInit) start_debug_log_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogResponse.pb-c.h
new file mode 100644
index 000000000..4301223de
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StartDebugLogResponse.pb-c.h
@@ -0,0 +1,81 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StartDebugLogResponse.proto */
+
+#ifndef PROTOBUF_C_StartDebugLogResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StartDebugLogResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "DebugLogCategory.pb-c.h"
+
+typedef struct _StartDebugLogResponse StartDebugLogResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StartDebugLogResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_category;
+ DebugLogCategory category;
+ char *filename;
+ protobuf_c_boolean has_linenumber;
+ uint32_t linenumber;
+ protobuf_c_boolean has_filter;
+ uint32_t filter;
+ char *message;
+ protobuf_c_boolean has_moduleid;
+ uint32_t moduleid;
+};
+#define START_DEBUG_LOG_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&start_debug_log_response__descriptor) \
+ , 0, DEBUG_LOG_CATEGORY__Info, NULL, 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StartDebugLogResponse methods */
+void start_debug_log_response__init
+ (StartDebugLogResponse *message);
+size_t start_debug_log_response__get_packed_size
+ (const StartDebugLogResponse *message);
+size_t start_debug_log_response__pack
+ (const StartDebugLogResponse *message,
+ uint8_t *out);
+size_t start_debug_log_response__pack_to_buffer
+ (const StartDebugLogResponse *message,
+ ProtobufCBuffer *buffer);
+StartDebugLogResponse *
+ start_debug_log_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void start_debug_log_response__free_unpacked
+ (StartDebugLogResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StartDebugLogResponse_Closure)
+ (const StartDebugLogResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor start_debug_log_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StartDebugLogResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogRequest.pb-c.c
new file mode 100644
index 000000000..74194f1d3
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StopDebugLogRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StopDebugLogRequest.pb-c.h"
+void stop_debug_log_request__init
+ (StopDebugLogRequest *message)
+{
+ static const StopDebugLogRequest init_value = STOP_DEBUG_LOG_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stop_debug_log_request__get_packed_size
+ (const StopDebugLogRequest *message)
+{
+ assert(message->base.descriptor == &stop_debug_log_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stop_debug_log_request__pack
+ (const StopDebugLogRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stop_debug_log_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stop_debug_log_request__pack_to_buffer
+ (const StopDebugLogRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stop_debug_log_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StopDebugLogRequest *
+ stop_debug_log_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StopDebugLogRequest *)
+ protobuf_c_message_unpack (&stop_debug_log_request__descriptor,
+ allocator, len, data);
+}
+void stop_debug_log_request__free_unpacked
+ (StopDebugLogRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stop_debug_log_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define stop_debug_log_request__field_descriptors NULL
+#define stop_debug_log_request__field_indices_by_name NULL
+#define stop_debug_log_request__number_ranges NULL
+const ProtobufCMessageDescriptor stop_debug_log_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StopDebugLogRequest",
+ "StopDebugLogRequest",
+ "StopDebugLogRequest",
+ "",
+ sizeof(StopDebugLogRequest),
+ 0,
+ stop_debug_log_request__field_descriptors,
+ stop_debug_log_request__field_indices_by_name,
+ 0, stop_debug_log_request__number_ranges,
+ (ProtobufCMessageInit) stop_debug_log_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogRequest.pb-c.h
new file mode 100644
index 000000000..ffd8ea9f9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StopDebugLogRequest.proto */
+
+#ifndef PROTOBUF_C_StopDebugLogRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StopDebugLogRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StopDebugLogRequest StopDebugLogRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StopDebugLogRequest
+{
+ ProtobufCMessage base;
+};
+#define STOP_DEBUG_LOG_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stop_debug_log_request__descriptor) \
+ }
+
+
+/* StopDebugLogRequest methods */
+void stop_debug_log_request__init
+ (StopDebugLogRequest *message);
+size_t stop_debug_log_request__get_packed_size
+ (const StopDebugLogRequest *message);
+size_t stop_debug_log_request__pack
+ (const StopDebugLogRequest *message,
+ uint8_t *out);
+size_t stop_debug_log_request__pack_to_buffer
+ (const StopDebugLogRequest *message,
+ ProtobufCBuffer *buffer);
+StopDebugLogRequest *
+ stop_debug_log_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stop_debug_log_request__free_unpacked
+ (StopDebugLogRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StopDebugLogRequest_Closure)
+ (const StopDebugLogRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stop_debug_log_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StopDebugLogRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogResponse.pb-c.c
new file mode 100644
index 000000000..7a885594e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StopDebugLogResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StopDebugLogResponse.pb-c.h"
+void stop_debug_log_response__init
+ (StopDebugLogResponse *message)
+{
+ static const StopDebugLogResponse init_value = STOP_DEBUG_LOG_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stop_debug_log_response__get_packed_size
+ (const StopDebugLogResponse *message)
+{
+ assert(message->base.descriptor == &stop_debug_log_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stop_debug_log_response__pack
+ (const StopDebugLogResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stop_debug_log_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stop_debug_log_response__pack_to_buffer
+ (const StopDebugLogResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stop_debug_log_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StopDebugLogResponse *
+ stop_debug_log_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StopDebugLogResponse *)
+ protobuf_c_message_unpack (&stop_debug_log_response__descriptor,
+ allocator, len, data);
+}
+void stop_debug_log_response__free_unpacked
+ (StopDebugLogResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stop_debug_log_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define stop_debug_log_response__field_descriptors NULL
+#define stop_debug_log_response__field_indices_by_name NULL
+#define stop_debug_log_response__number_ranges NULL
+const ProtobufCMessageDescriptor stop_debug_log_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StopDebugLogResponse",
+ "StopDebugLogResponse",
+ "StopDebugLogResponse",
+ "",
+ sizeof(StopDebugLogResponse),
+ 0,
+ stop_debug_log_response__field_descriptors,
+ stop_debug_log_response__field_indices_by_name,
+ 0, stop_debug_log_response__number_ranges,
+ (ProtobufCMessageInit) stop_debug_log_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogResponse.pb-c.h
new file mode 100644
index 000000000..2a4c21b85
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Debugging/StopDebugLogResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StopDebugLogResponse.proto */
+
+#ifndef PROTOBUF_C_StopDebugLogResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StopDebugLogResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StopDebugLogResponse StopDebugLogResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StopDebugLogResponse
+{
+ ProtobufCMessage base;
+};
+#define STOP_DEBUG_LOG_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stop_debug_log_response__descriptor) \
+ }
+
+
+/* StopDebugLogResponse methods */
+void stop_debug_log_response__init
+ (StopDebugLogResponse *message);
+size_t stop_debug_log_response__get_packed_size
+ (const StopDebugLogResponse *message);
+size_t stop_debug_log_response__pack
+ (const StopDebugLogResponse *message,
+ uint8_t *out);
+size_t stop_debug_log_response__pack_to_buffer
+ (const StopDebugLogResponse *message,
+ ProtobufCBuffer *buffer);
+StopDebugLogResponse *
+ stop_debug_log_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stop_debug_log_response__free_unpacked
+ (StopDebugLogResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StopDebugLogResponse_Closure)
+ (const StopDebugLogResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stop_debug_log_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StopDebugLogResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DataFileFrame.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DataFileFrame.pb-c.c
new file mode 100644
index 000000000..afbafe2c0
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DataFileFrame.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DataFileFrame.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DataFileFrame.pb-c.h"
+void data_file_frame__init
+ (DataFileFrame *message)
+{
+ static const DataFileFrame init_value = DATA_FILE_FRAME__INIT;
+ *message = init_value;
+}
+size_t data_file_frame__get_packed_size
+ (const DataFileFrame *message)
+{
+ assert(message->base.descriptor == &data_file_frame__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t data_file_frame__pack
+ (const DataFileFrame *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &data_file_frame__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t data_file_frame__pack_to_buffer
+ (const DataFileFrame *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &data_file_frame__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DataFileFrame *
+ data_file_frame__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DataFileFrame *)
+ protobuf_c_message_unpack (&data_file_frame__descriptor,
+ allocator, len, data);
+}
+void data_file_frame__free_unpacked
+ (DataFileFrame *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &data_file_frame__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor data_file_frame__field_descriptors[3] =
+{
+ {
+ "Milliseconds",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(DataFileFrame, has_milliseconds),
+ offsetof(DataFileFrame, milliseconds),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StartDiagnosticsResponse",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(DataFileFrame, startdiagnosticsresponse),
+ &start_diagnostics_response__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "VideoFrames",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(DataFileFrame, n_videoframes),
+ offsetof(DataFileFrame, videoframes),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned data_file_frame__field_indices_by_name[] = {
+ 0, /* field[0] = Milliseconds */
+ 1, /* field[1] = StartDiagnosticsResponse */
+ 2, /* field[2] = VideoFrames */
+};
+static const ProtobufCIntRange data_file_frame__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor data_file_frame__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DataFileFrame",
+ "DataFileFrame",
+ "DataFileFrame",
+ "",
+ sizeof(DataFileFrame),
+ 3,
+ data_file_frame__field_descriptors,
+ data_file_frame__field_indices_by_name,
+ 1, data_file_frame__number_ranges,
+ (ProtobufCMessageInit) data_file_frame__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DataFileFrame.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DataFileFrame.pb-c.h
new file mode 100644
index 000000000..2392027da
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DataFileFrame.pb-c.h
@@ -0,0 +1,76 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DataFileFrame.proto */
+
+#ifndef PROTOBUF_C_DataFileFrame_2eproto__INCLUDED
+#define PROTOBUF_C_DataFileFrame_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "StartDiagnosticsResponse.pb-c.h"
+
+typedef struct _DataFileFrame DataFileFrame;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DataFileFrame
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_milliseconds;
+ int32_t milliseconds;
+ StartDiagnosticsResponse *startdiagnosticsresponse;
+ size_t n_videoframes;
+ ProtobufCBinaryData *videoframes;
+};
+#define DATA_FILE_FRAME__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&data_file_frame__descriptor) \
+ , 0, 0, NULL, 0,NULL }
+
+
+/* DataFileFrame methods */
+void data_file_frame__init
+ (DataFileFrame *message);
+size_t data_file_frame__get_packed_size
+ (const DataFileFrame *message);
+size_t data_file_frame__pack
+ (const DataFileFrame *message,
+ uint8_t *out);
+size_t data_file_frame__pack_to_buffer
+ (const DataFileFrame *message,
+ ProtobufCBuffer *buffer);
+DataFileFrame *
+ data_file_frame__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void data_file_frame__free_unpacked
+ (DataFileFrame *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DataFileFrame_Closure)
+ (const DataFileFrame *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor data_file_frame__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DataFileFrame_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DiagnosticsMonitors.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DiagnosticsMonitors.pb-c.c
new file mode 100644
index 000000000..35bbafdd9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DiagnosticsMonitors.pb-c.c
@@ -0,0 +1,547 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DiagnosticsMonitors.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DiagnosticsMonitors.pb-c.h"
+void diagnostics_monitors__init
+ (DiagnosticsMonitors *message)
+{
+ static const DiagnosticsMonitors init_value = DIAGNOSTICS_MONITORS__INIT;
+ *message = init_value;
+}
+size_t diagnostics_monitors__get_packed_size
+ (const DiagnosticsMonitors *message)
+{
+ assert(message->base.descriptor == &diagnostics_monitors__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t diagnostics_monitors__pack
+ (const DiagnosticsMonitors *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &diagnostics_monitors__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t diagnostics_monitors__pack_to_buffer
+ (const DiagnosticsMonitors *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &diagnostics_monitors__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DiagnosticsMonitors *
+ diagnostics_monitors__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DiagnosticsMonitors *)
+ protobuf_c_message_unpack (&diagnostics_monitors__descriptor,
+ allocator, len, data);
+}
+void diagnostics_monitors__free_unpacked
+ (DiagnosticsMonitors *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &diagnostics_monitors__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor diagnostics_monitors__field_descriptors[36] =
+{
+ {
+ "Dancer1Angle",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dancer1angle),
+ offsetof(DiagnosticsMonitors, dancer1angle),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Dancer2Angle",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dancer2angle),
+ offsetof(DiagnosticsMonitors, dancer2angle),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Dancer3Angle",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dancer3angle),
+ offsetof(DiagnosticsMonitors, dancer3angle),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "FeederMotorFrequency",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_feedermotorfrequency),
+ offsetof(DiagnosticsMonitors, feedermotorfrequency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DryerMotor",
+ 5,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dryermotor),
+ offsetof(DiagnosticsMonitors, dryermotor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PollerMotor",
+ 6,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_pollermotor),
+ offsetof(DiagnosticsMonitors, pollermotor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "WinderMotor",
+ 7,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_windermotor),
+ offsetof(DiagnosticsMonitors, windermotor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ScrewMotor",
+ 8,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_screwmotor),
+ offsetof(DiagnosticsMonitors, screwmotor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ThreadSpeed",
+ 9,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_threadspeed),
+ offsetof(DiagnosticsMonitors, threadspeed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MixerTemperature",
+ 10,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_mixertemperature),
+ offsetof(DiagnosticsMonitors, mixertemperature),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HeadZone1Temperature",
+ 11,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_headzone1temperature),
+ offsetof(DiagnosticsMonitors, headzone1temperature),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HeadZone2Temperature",
+ 12,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_headzone2temperature),
+ offsetof(DiagnosticsMonitors, headzone2temperature),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HeadZone3Temperature",
+ 13,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_headzone3temperature),
+ offsetof(DiagnosticsMonitors, headzone3temperature),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HeadAirFlow",
+ 14,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_headairflow),
+ offsetof(DiagnosticsMonitors, headairflow),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "FeederTension",
+ 15,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_feedertension),
+ offsetof(DiagnosticsMonitors, feedertension),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PullerTension",
+ 16,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_pullertension),
+ offsetof(DiagnosticsMonitors, pullertension),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DryerZone1Temperature",
+ 17,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dryerzone1temperature),
+ offsetof(DiagnosticsMonitors, dryerzone1temperature),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DryerZone2Temperature",
+ 18,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dryerzone2temperature),
+ offsetof(DiagnosticsMonitors, dryerzone2temperature),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DryerZone3Temperature",
+ 19,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dryerzone3temperature),
+ offsetof(DiagnosticsMonitors, dryerzone3temperature),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DryerAirFlow",
+ 20,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dryerairflow),
+ offsetof(DiagnosticsMonitors, dryerairflow),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "WinderTension",
+ 21,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_windertension),
+ offsetof(DiagnosticsMonitors, windertension),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DispensersMotorsFrequency",
+ 22,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(DiagnosticsMonitors, n_dispensersmotorsfrequency),
+ offsetof(DiagnosticsMonitors, dispensersmotorsfrequency),
+ &double_array__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DispensersAngularEncoders",
+ 23,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(DiagnosticsMonitors, n_dispensersangularencoders),
+ offsetof(DiagnosticsMonitors, dispensersangularencoders),
+ &double_array__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DispensersLinearPositions",
+ 24,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(DiagnosticsMonitors, n_dispenserslinearpositions),
+ offsetof(DiagnosticsMonitors, dispenserslinearpositions),
+ &double_array__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DispensersPressure",
+ 25,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(DiagnosticsMonitors, n_dispenserspressure),
+ offsetof(DiagnosticsMonitors, dispenserspressure),
+ &double_array__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MidTankPressure",
+ 26,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_midtankpressure),
+ offsetof(DiagnosticsMonitors, midtankpressure),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "FilterDeltaPressure",
+ 27,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_filterdeltapressure),
+ offsetof(DiagnosticsMonitors, filterdeltapressure),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ChillerTemperature",
+ 28,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_chillertemperature),
+ offsetof(DiagnosticsMonitors, chillertemperature),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Dispenser1MotorFrequency",
+ 29,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dispenser1motorfrequency),
+ offsetof(DiagnosticsMonitors, dispenser1motorfrequency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Dispenser2MotorFrequency",
+ 30,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dispenser2motorfrequency),
+ offsetof(DiagnosticsMonitors, dispenser2motorfrequency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Dispenser3MotorFrequency",
+ 31,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dispenser3motorfrequency),
+ offsetof(DiagnosticsMonitors, dispenser3motorfrequency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Dispenser4MotorFrequency",
+ 32,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dispenser4motorfrequency),
+ offsetof(DiagnosticsMonitors, dispenser4motorfrequency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Dispenser5MotorFrequency",
+ 33,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dispenser5motorfrequency),
+ offsetof(DiagnosticsMonitors, dispenser5motorfrequency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Dispenser6MotorFrequency",
+ 34,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dispenser6motorfrequency),
+ offsetof(DiagnosticsMonitors, dispenser6motorfrequency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Dispenser7MotorFrequency",
+ 35,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dispenser7motorfrequency),
+ offsetof(DiagnosticsMonitors, dispenser7motorfrequency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Dispenser8MotorFrequency",
+ 36,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DiagnosticsMonitors, n_dispenser8motorfrequency),
+ offsetof(DiagnosticsMonitors, dispenser8motorfrequency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned diagnostics_monitors__field_indices_by_name[] = {
+ 27, /* field[27] = ChillerTemperature */
+ 0, /* field[0] = Dancer1Angle */
+ 1, /* field[1] = Dancer2Angle */
+ 2, /* field[2] = Dancer3Angle */
+ 28, /* field[28] = Dispenser1MotorFrequency */
+ 29, /* field[29] = Dispenser2MotorFrequency */
+ 30, /* field[30] = Dispenser3MotorFrequency */
+ 31, /* field[31] = Dispenser4MotorFrequency */
+ 32, /* field[32] = Dispenser5MotorFrequency */
+ 33, /* field[33] = Dispenser6MotorFrequency */
+ 34, /* field[34] = Dispenser7MotorFrequency */
+ 35, /* field[35] = Dispenser8MotorFrequency */
+ 22, /* field[22] = DispensersAngularEncoders */
+ 23, /* field[23] = DispensersLinearPositions */
+ 21, /* field[21] = DispensersMotorsFrequency */
+ 24, /* field[24] = DispensersPressure */
+ 19, /* field[19] = DryerAirFlow */
+ 4, /* field[4] = DryerMotor */
+ 16, /* field[16] = DryerZone1Temperature */
+ 17, /* field[17] = DryerZone2Temperature */
+ 18, /* field[18] = DryerZone3Temperature */
+ 3, /* field[3] = FeederMotorFrequency */
+ 14, /* field[14] = FeederTension */
+ 26, /* field[26] = FilterDeltaPressure */
+ 13, /* field[13] = HeadAirFlow */
+ 10, /* field[10] = HeadZone1Temperature */
+ 11, /* field[11] = HeadZone2Temperature */
+ 12, /* field[12] = HeadZone3Temperature */
+ 25, /* field[25] = MidTankPressure */
+ 9, /* field[9] = MixerTemperature */
+ 5, /* field[5] = PollerMotor */
+ 15, /* field[15] = PullerTension */
+ 7, /* field[7] = ScrewMotor */
+ 8, /* field[8] = ThreadSpeed */
+ 6, /* field[6] = WinderMotor */
+ 20, /* field[20] = WinderTension */
+};
+static const ProtobufCIntRange diagnostics_monitors__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 36 }
+};
+const ProtobufCMessageDescriptor diagnostics_monitors__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DiagnosticsMonitors",
+ "DiagnosticsMonitors",
+ "DiagnosticsMonitors",
+ "",
+ sizeof(DiagnosticsMonitors),
+ 36,
+ diagnostics_monitors__field_descriptors,
+ diagnostics_monitors__field_indices_by_name,
+ 1, diagnostics_monitors__number_ranges,
+ (ProtobufCMessageInit) diagnostics_monitors__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DiagnosticsMonitors.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DiagnosticsMonitors.pb-c.h
new file mode 100644
index 000000000..55ca10ce0
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DiagnosticsMonitors.pb-c.h
@@ -0,0 +1,251 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DiagnosticsMonitors.proto */
+
+#ifndef PROTOBUF_C_DiagnosticsMonitors_2eproto__INCLUDED
+#define PROTOBUF_C_DiagnosticsMonitors_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "DoubleArray.pb-c.h"
+
+typedef struct _DiagnosticsMonitors DiagnosticsMonitors;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DiagnosticsMonitors
+{
+ ProtobufCMessage base;
+ /*
+ *Dancer 1 (Min = 0, Max = 255, PPF = 10)
+ */
+ size_t n_dancer1angle;
+ double *dancer1angle;
+ /*
+ *Dancer 2 (Min = 0, Max = 1200, PPF = 1)
+ */
+ size_t n_dancer2angle;
+ double *dancer2angle;
+ /*
+ *Dancer 3 (Min = 0, Max = 1200, PPF = 1)
+ */
+ size_t n_dancer3angle;
+ double *dancer3angle;
+ /*
+ *Feeder Motor (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_feedermotorfrequency;
+ double *feedermotorfrequency;
+ /*
+ *Dryer Motor (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_dryermotor;
+ double *dryermotor;
+ /*
+ *Poller Motor (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_pollermotor;
+ double *pollermotor;
+ /*
+ *Winder Motor (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_windermotor;
+ double *windermotor;
+ /*
+ *Screw Motor (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_screwmotor;
+ double *screwmotor;
+ /*
+ *Thread Speed (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_threadspeed;
+ double *threadspeed;
+ /*
+ *Mixer (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_mixertemperature;
+ double *mixertemperature;
+ /*
+ *Head Zone 1 (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_headzone1temperature;
+ double *headzone1temperature;
+ /*
+ *Head Zone 2 (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_headzone2temperature;
+ double *headzone2temperature;
+ /*
+ *Head Zone 3 (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_headzone3temperature;
+ double *headzone3temperature;
+ /*
+ *Head Air Flow (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_headairflow;
+ double *headairflow;
+ /*
+ *Feeder Tension (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_feedertension;
+ double *feedertension;
+ /*
+ *Puller Tension (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_pullertension;
+ double *pullertension;
+ /*
+ *Dryer Zone 1 (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_dryerzone1temperature;
+ double *dryerzone1temperature;
+ /*
+ *Dryer Zone 2 (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_dryerzone2temperature;
+ double *dryerzone2temperature;
+ /*
+ *Dryer Zone 3 (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_dryerzone3temperature;
+ double *dryerzone3temperature;
+ /*
+ *Dryer Air Flow (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_dryerairflow;
+ double *dryerairflow;
+ /*
+ *Winder Tension (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_windertension;
+ double *windertension;
+ /*
+ *Dispensers Motors (Min = 0, Max = 1080, PPF = 10) Channel Count = 8
+ */
+ size_t n_dispensersmotorsfrequency;
+ DoubleArray **dispensersmotorsfrequency;
+ /*
+ *Dispensers Angular Encoders (Min = 0, Max = 100, PPF = 1) Channel Count = 8
+ */
+ size_t n_dispensersangularencoders;
+ DoubleArray **dispensersangularencoders;
+ /*
+ *Dispensers Linear Positions (Min = 0, Max = 100, PPF = 1) Channel Count = 8
+ */
+ size_t n_dispenserslinearpositions;
+ DoubleArray **dispenserslinearpositions;
+ /*
+ *Dispensers Pressure (Min = 0, Max = 100, PPF = 1) Channel Count = 8
+ */
+ size_t n_dispenserspressure;
+ DoubleArray **dispenserspressure;
+ /*
+ *Mid Tank Pressure (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_midtankpressure;
+ double *midtankpressure;
+ /*
+ *Filter Delta Pressure (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_filterdeltapressure;
+ double *filterdeltapressure;
+ /*
+ *Chiller Temperature (Min = 0, Max = 100, PPF = 1)
+ */
+ size_t n_chillertemperature;
+ double *chillertemperature;
+ /*
+ *Dispenser 1 Motor Frequency (Min = 0, Max = 1080, PPF = 10)
+ */
+ size_t n_dispenser1motorfrequency;
+ double *dispenser1motorfrequency;
+ /*
+ *Dispenser 2 Motor Frequency (Min = 0, Max = 1080, PPF = 10)
+ */
+ size_t n_dispenser2motorfrequency;
+ double *dispenser2motorfrequency;
+ /*
+ *Dispenser 3 Motor Frequency (Min = 0, Max = 1080, PPF = 10)
+ */
+ size_t n_dispenser3motorfrequency;
+ double *dispenser3motorfrequency;
+ /*
+ *Dispenser 4 Motor Frequency (Min = 0, Max = 1080, PPF = 10)
+ */
+ size_t n_dispenser4motorfrequency;
+ double *dispenser4motorfrequency;
+ /*
+ *Dispenser 5 Motor Frequency (Min = 0, Max = 1080, PPF = 10)
+ */
+ size_t n_dispenser5motorfrequency;
+ double *dispenser5motorfrequency;
+ /*
+ *Dispenser 6 Motor Frequency (Min = 0, Max = 1080, PPF = 10)
+ */
+ size_t n_dispenser6motorfrequency;
+ double *dispenser6motorfrequency;
+ /*
+ *Dispenser 7 Motor Frequency (Min = 0, Max = 1080, PPF = 10)
+ */
+ size_t n_dispenser7motorfrequency;
+ double *dispenser7motorfrequency;
+ /*
+ *Dispenser 8 Motor Frequency (Min = 0, Max = 1080, PPF = 10)
+ */
+ size_t n_dispenser8motorfrequency;
+ double *dispenser8motorfrequency;
+};
+#define DIAGNOSTICS_MONITORS__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&diagnostics_monitors__descriptor) \
+ , 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL }
+
+
+/* DiagnosticsMonitors methods */
+void diagnostics_monitors__init
+ (DiagnosticsMonitors *message);
+size_t diagnostics_monitors__get_packed_size
+ (const DiagnosticsMonitors *message);
+size_t diagnostics_monitors__pack
+ (const DiagnosticsMonitors *message,
+ uint8_t *out);
+size_t diagnostics_monitors__pack_to_buffer
+ (const DiagnosticsMonitors *message,
+ ProtobufCBuffer *buffer);
+DiagnosticsMonitors *
+ diagnostics_monitors__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void diagnostics_monitors__free_unpacked
+ (DiagnosticsMonitors *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DiagnosticsMonitors_Closure)
+ (const DiagnosticsMonitors *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor diagnostics_monitors__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DiagnosticsMonitors_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DigitalPin.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DigitalPin.pb-c.c
new file mode 100644
index 000000000..48e358d3d
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DigitalPin.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DigitalPin.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DigitalPin.pb-c.h"
+void digital_pin__init
+ (DigitalPin *message)
+{
+ static const DigitalPin init_value = DIGITAL_PIN__INIT;
+ *message = init_value;
+}
+size_t digital_pin__get_packed_size
+ (const DigitalPin *message)
+{
+ assert(message->base.descriptor == &digital_pin__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t digital_pin__pack
+ (const DigitalPin *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &digital_pin__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t digital_pin__pack_to_buffer
+ (const DigitalPin *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &digital_pin__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DigitalPin *
+ digital_pin__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DigitalPin *)
+ protobuf_c_message_unpack (&digital_pin__descriptor,
+ allocator, len, data);
+}
+void digital_pin__free_unpacked
+ (DigitalPin *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &digital_pin__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor digital_pin__field_descriptors[2] =
+{
+ {
+ "Port",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(DigitalPin, has_port),
+ offsetof(DigitalPin, port),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Value",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(DigitalPin, has_value),
+ offsetof(DigitalPin, value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned digital_pin__field_indices_by_name[] = {
+ 0, /* field[0] = Port */
+ 1, /* field[1] = Value */
+};
+static const ProtobufCIntRange digital_pin__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor digital_pin__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DigitalPin",
+ "DigitalPin",
+ "DigitalPin",
+ "",
+ sizeof(DigitalPin),
+ 2,
+ digital_pin__field_descriptors,
+ digital_pin__field_indices_by_name,
+ 1, digital_pin__number_ranges,
+ (ProtobufCMessageInit) digital_pin__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DigitalPin.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DigitalPin.pb-c.h
new file mode 100644
index 000000000..2fd18cdff
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DigitalPin.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DigitalPin.proto */
+
+#ifndef PROTOBUF_C_DigitalPin_2eproto__INCLUDED
+#define PROTOBUF_C_DigitalPin_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _DigitalPin DigitalPin;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DigitalPin
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_port;
+ int32_t port;
+ protobuf_c_boolean has_value;
+ protobuf_c_boolean value;
+};
+#define DIGITAL_PIN__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&digital_pin__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* DigitalPin methods */
+void digital_pin__init
+ (DigitalPin *message);
+size_t digital_pin__get_packed_size
+ (const DigitalPin *message);
+size_t digital_pin__pack
+ (const DigitalPin *message,
+ uint8_t *out);
+size_t digital_pin__pack_to_buffer
+ (const DigitalPin *message,
+ ProtobufCBuffer *buffer);
+DigitalPin *
+ digital_pin__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void digital_pin__free_unpacked
+ (DigitalPin *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DigitalPin_Closure)
+ (const DigitalPin *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor digital_pin__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DigitalPin_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingRequest.pb-c.c
new file mode 100644
index 000000000..57826af15
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserAbortHomingRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DispenserAbortHomingRequest.pb-c.h"
+void dispenser_abort_homing_request__init
+ (DispenserAbortHomingRequest *message)
+{
+ static const DispenserAbortHomingRequest init_value = DISPENSER_ABORT_HOMING_REQUEST__INIT;
+ *message = init_value;
+}
+size_t dispenser_abort_homing_request__get_packed_size
+ (const DispenserAbortHomingRequest *message)
+{
+ assert(message->base.descriptor == &dispenser_abort_homing_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t dispenser_abort_homing_request__pack
+ (const DispenserAbortHomingRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &dispenser_abort_homing_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t dispenser_abort_homing_request__pack_to_buffer
+ (const DispenserAbortHomingRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &dispenser_abort_homing_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DispenserAbortHomingRequest *
+ dispenser_abort_homing_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DispenserAbortHomingRequest *)
+ protobuf_c_message_unpack (&dispenser_abort_homing_request__descriptor,
+ allocator, len, data);
+}
+void dispenser_abort_homing_request__free_unpacked
+ (DispenserAbortHomingRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &dispenser_abort_homing_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor dispenser_abort_homing_request__field_descriptors[1] =
+{
+ {
+ "Code",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(DispenserAbortHomingRequest, has_code),
+ offsetof(DispenserAbortHomingRequest, code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned dispenser_abort_homing_request__field_indices_by_name[] = {
+ 0, /* field[0] = Code */
+};
+static const ProtobufCIntRange dispenser_abort_homing_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor dispenser_abort_homing_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DispenserAbortHomingRequest",
+ "DispenserAbortHomingRequest",
+ "DispenserAbortHomingRequest",
+ "",
+ sizeof(DispenserAbortHomingRequest),
+ 1,
+ dispenser_abort_homing_request__field_descriptors,
+ dispenser_abort_homing_request__field_indices_by_name,
+ 1, dispenser_abort_homing_request__number_ranges,
+ (ProtobufCMessageInit) dispenser_abort_homing_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingRequest.pb-c.h
new file mode 100644
index 000000000..2e2395277
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingRequest.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserAbortHomingRequest.proto */
+
+#ifndef PROTOBUF_C_DispenserAbortHomingRequest_2eproto__INCLUDED
+#define PROTOBUF_C_DispenserAbortHomingRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _DispenserAbortHomingRequest DispenserAbortHomingRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DispenserAbortHomingRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_code;
+ int32_t code;
+};
+#define DISPENSER_ABORT_HOMING_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&dispenser_abort_homing_request__descriptor) \
+ , 0, 0 }
+
+
+/* DispenserAbortHomingRequest methods */
+void dispenser_abort_homing_request__init
+ (DispenserAbortHomingRequest *message);
+size_t dispenser_abort_homing_request__get_packed_size
+ (const DispenserAbortHomingRequest *message);
+size_t dispenser_abort_homing_request__pack
+ (const DispenserAbortHomingRequest *message,
+ uint8_t *out);
+size_t dispenser_abort_homing_request__pack_to_buffer
+ (const DispenserAbortHomingRequest *message,
+ ProtobufCBuffer *buffer);
+DispenserAbortHomingRequest *
+ dispenser_abort_homing_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void dispenser_abort_homing_request__free_unpacked
+ (DispenserAbortHomingRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DispenserAbortHomingRequest_Closure)
+ (const DispenserAbortHomingRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor dispenser_abort_homing_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DispenserAbortHomingRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingResponse.pb-c.c
new file mode 100644
index 000000000..a5de8be16
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserAbortHomingResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DispenserAbortHomingResponse.pb-c.h"
+void dispenser_abort_homing_response__init
+ (DispenserAbortHomingResponse *message)
+{
+ static const DispenserAbortHomingResponse init_value = DISPENSER_ABORT_HOMING_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t dispenser_abort_homing_response__get_packed_size
+ (const DispenserAbortHomingResponse *message)
+{
+ assert(message->base.descriptor == &dispenser_abort_homing_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t dispenser_abort_homing_response__pack
+ (const DispenserAbortHomingResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &dispenser_abort_homing_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t dispenser_abort_homing_response__pack_to_buffer
+ (const DispenserAbortHomingResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &dispenser_abort_homing_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DispenserAbortHomingResponse *
+ dispenser_abort_homing_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DispenserAbortHomingResponse *)
+ protobuf_c_message_unpack (&dispenser_abort_homing_response__descriptor,
+ allocator, len, data);
+}
+void dispenser_abort_homing_response__free_unpacked
+ (DispenserAbortHomingResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &dispenser_abort_homing_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define dispenser_abort_homing_response__field_descriptors NULL
+#define dispenser_abort_homing_response__field_indices_by_name NULL
+#define dispenser_abort_homing_response__number_ranges NULL
+const ProtobufCMessageDescriptor dispenser_abort_homing_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DispenserAbortHomingResponse",
+ "DispenserAbortHomingResponse",
+ "DispenserAbortHomingResponse",
+ "",
+ sizeof(DispenserAbortHomingResponse),
+ 0,
+ dispenser_abort_homing_response__field_descriptors,
+ dispenser_abort_homing_response__field_indices_by_name,
+ 0, dispenser_abort_homing_response__number_ranges,
+ (ProtobufCMessageInit) dispenser_abort_homing_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingResponse.pb-c.h
new file mode 100644
index 000000000..73e37250d
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortHomingResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserAbortHomingResponse.proto */
+
+#ifndef PROTOBUF_C_DispenserAbortHomingResponse_2eproto__INCLUDED
+#define PROTOBUF_C_DispenserAbortHomingResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _DispenserAbortHomingResponse DispenserAbortHomingResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DispenserAbortHomingResponse
+{
+ ProtobufCMessage base;
+};
+#define DISPENSER_ABORT_HOMING_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&dispenser_abort_homing_response__descriptor) \
+ }
+
+
+/* DispenserAbortHomingResponse methods */
+void dispenser_abort_homing_response__init
+ (DispenserAbortHomingResponse *message);
+size_t dispenser_abort_homing_response__get_packed_size
+ (const DispenserAbortHomingResponse *message);
+size_t dispenser_abort_homing_response__pack
+ (const DispenserAbortHomingResponse *message,
+ uint8_t *out);
+size_t dispenser_abort_homing_response__pack_to_buffer
+ (const DispenserAbortHomingResponse *message,
+ ProtobufCBuffer *buffer);
+DispenserAbortHomingResponse *
+ dispenser_abort_homing_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void dispenser_abort_homing_response__free_unpacked
+ (DispenserAbortHomingResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DispenserAbortHomingResponse_Closure)
+ (const DispenserAbortHomingResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor dispenser_abort_homing_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DispenserAbortHomingResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingRequest.pb-c.c
new file mode 100644
index 000000000..1a7a595d6
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserAbortJoggingRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DispenserAbortJoggingRequest.pb-c.h"
+void dispenser_abort_jogging_request__init
+ (DispenserAbortJoggingRequest *message)
+{
+ static const DispenserAbortJoggingRequest init_value = DISPENSER_ABORT_JOGGING_REQUEST__INIT;
+ *message = init_value;
+}
+size_t dispenser_abort_jogging_request__get_packed_size
+ (const DispenserAbortJoggingRequest *message)
+{
+ assert(message->base.descriptor == &dispenser_abort_jogging_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t dispenser_abort_jogging_request__pack
+ (const DispenserAbortJoggingRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &dispenser_abort_jogging_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t dispenser_abort_jogging_request__pack_to_buffer
+ (const DispenserAbortJoggingRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &dispenser_abort_jogging_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DispenserAbortJoggingRequest *
+ dispenser_abort_jogging_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DispenserAbortJoggingRequest *)
+ protobuf_c_message_unpack (&dispenser_abort_jogging_request__descriptor,
+ allocator, len, data);
+}
+void dispenser_abort_jogging_request__free_unpacked
+ (DispenserAbortJoggingRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &dispenser_abort_jogging_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor dispenser_abort_jogging_request__field_descriptors[1] =
+{
+ {
+ "Code",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(DispenserAbortJoggingRequest, has_code),
+ offsetof(DispenserAbortJoggingRequest, code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned dispenser_abort_jogging_request__field_indices_by_name[] = {
+ 0, /* field[0] = Code */
+};
+static const ProtobufCIntRange dispenser_abort_jogging_request__number_ranges[1 + 1] =
+{
+ { 2, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor dispenser_abort_jogging_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DispenserAbortJoggingRequest",
+ "DispenserAbortJoggingRequest",
+ "DispenserAbortJoggingRequest",
+ "",
+ sizeof(DispenserAbortJoggingRequest),
+ 1,
+ dispenser_abort_jogging_request__field_descriptors,
+ dispenser_abort_jogging_request__field_indices_by_name,
+ 1, dispenser_abort_jogging_request__number_ranges,
+ (ProtobufCMessageInit) dispenser_abort_jogging_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingRequest.pb-c.h
new file mode 100644
index 000000000..342d3fd25
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingRequest.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserAbortJoggingRequest.proto */
+
+#ifndef PROTOBUF_C_DispenserAbortJoggingRequest_2eproto__INCLUDED
+#define PROTOBUF_C_DispenserAbortJoggingRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _DispenserAbortJoggingRequest DispenserAbortJoggingRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DispenserAbortJoggingRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_code;
+ int32_t code;
+};
+#define DISPENSER_ABORT_JOGGING_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&dispenser_abort_jogging_request__descriptor) \
+ , 0, 0 }
+
+
+/* DispenserAbortJoggingRequest methods */
+void dispenser_abort_jogging_request__init
+ (DispenserAbortJoggingRequest *message);
+size_t dispenser_abort_jogging_request__get_packed_size
+ (const DispenserAbortJoggingRequest *message);
+size_t dispenser_abort_jogging_request__pack
+ (const DispenserAbortJoggingRequest *message,
+ uint8_t *out);
+size_t dispenser_abort_jogging_request__pack_to_buffer
+ (const DispenserAbortJoggingRequest *message,
+ ProtobufCBuffer *buffer);
+DispenserAbortJoggingRequest *
+ dispenser_abort_jogging_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void dispenser_abort_jogging_request__free_unpacked
+ (DispenserAbortJoggingRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DispenserAbortJoggingRequest_Closure)
+ (const DispenserAbortJoggingRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor dispenser_abort_jogging_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DispenserAbortJoggingRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingResponse.pb-c.c
new file mode 100644
index 000000000..70c7f1ee0
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingResponse.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserAbortJoggingResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DispenserAbortJoggingResponse.pb-c.h"
+void dispenser_abort_jogging_response__init
+ (DispenserAbortJoggingResponse *message)
+{
+ static const DispenserAbortJoggingResponse init_value = DISPENSER_ABORT_JOGGING_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t dispenser_abort_jogging_response__get_packed_size
+ (const DispenserAbortJoggingResponse *message)
+{
+ assert(message->base.descriptor == &dispenser_abort_jogging_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t dispenser_abort_jogging_response__pack
+ (const DispenserAbortJoggingResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &dispenser_abort_jogging_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t dispenser_abort_jogging_response__pack_to_buffer
+ (const DispenserAbortJoggingResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &dispenser_abort_jogging_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DispenserAbortJoggingResponse *
+ dispenser_abort_jogging_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DispenserAbortJoggingResponse *)
+ protobuf_c_message_unpack (&dispenser_abort_jogging_response__descriptor,
+ allocator, len, data);
+}
+void dispenser_abort_jogging_response__free_unpacked
+ (DispenserAbortJoggingResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &dispenser_abort_jogging_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor dispenser_abort_jogging_response__field_descriptors[1] =
+{
+ {
+ "Code",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(DispenserAbortJoggingResponse, has_code),
+ offsetof(DispenserAbortJoggingResponse, code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned dispenser_abort_jogging_response__field_indices_by_name[] = {
+ 0, /* field[0] = Code */
+};
+static const ProtobufCIntRange dispenser_abort_jogging_response__number_ranges[1 + 1] =
+{
+ { 2, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor dispenser_abort_jogging_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DispenserAbortJoggingResponse",
+ "DispenserAbortJoggingResponse",
+ "DispenserAbortJoggingResponse",
+ "",
+ sizeof(DispenserAbortJoggingResponse),
+ 1,
+ dispenser_abort_jogging_response__field_descriptors,
+ dispenser_abort_jogging_response__field_indices_by_name,
+ 1, dispenser_abort_jogging_response__number_ranges,
+ (ProtobufCMessageInit) dispenser_abort_jogging_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingResponse.pb-c.h
new file mode 100644
index 000000000..e9ddef6cb
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserAbortJoggingResponse.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserAbortJoggingResponse.proto */
+
+#ifndef PROTOBUF_C_DispenserAbortJoggingResponse_2eproto__INCLUDED
+#define PROTOBUF_C_DispenserAbortJoggingResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _DispenserAbortJoggingResponse DispenserAbortJoggingResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DispenserAbortJoggingResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_code;
+ int32_t code;
+};
+#define DISPENSER_ABORT_JOGGING_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&dispenser_abort_jogging_response__descriptor) \
+ , 0, 0 }
+
+
+/* DispenserAbortJoggingResponse methods */
+void dispenser_abort_jogging_response__init
+ (DispenserAbortJoggingResponse *message);
+size_t dispenser_abort_jogging_response__get_packed_size
+ (const DispenserAbortJoggingResponse *message);
+size_t dispenser_abort_jogging_response__pack
+ (const DispenserAbortJoggingResponse *message,
+ uint8_t *out);
+size_t dispenser_abort_jogging_response__pack_to_buffer
+ (const DispenserAbortJoggingResponse *message,
+ ProtobufCBuffer *buffer);
+DispenserAbortJoggingResponse *
+ dispenser_abort_jogging_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void dispenser_abort_jogging_response__free_unpacked
+ (DispenserAbortJoggingResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DispenserAbortJoggingResponse_Closure)
+ (const DispenserAbortJoggingResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor dispenser_abort_jogging_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DispenserAbortJoggingResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingRequest.pb-c.c
new file mode 100644
index 000000000..83e8f0f36
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserHomingRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DispenserHomingRequest.pb-c.h"
+void dispenser_homing_request__init
+ (DispenserHomingRequest *message)
+{
+ static const DispenserHomingRequest init_value = DISPENSER_HOMING_REQUEST__INIT;
+ *message = init_value;
+}
+size_t dispenser_homing_request__get_packed_size
+ (const DispenserHomingRequest *message)
+{
+ assert(message->base.descriptor == &dispenser_homing_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t dispenser_homing_request__pack
+ (const DispenserHomingRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &dispenser_homing_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t dispenser_homing_request__pack_to_buffer
+ (const DispenserHomingRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &dispenser_homing_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DispenserHomingRequest *
+ dispenser_homing_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DispenserHomingRequest *)
+ protobuf_c_message_unpack (&dispenser_homing_request__descriptor,
+ allocator, len, data);
+}
+void dispenser_homing_request__free_unpacked
+ (DispenserHomingRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &dispenser_homing_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor dispenser_homing_request__field_descriptors[2] =
+{
+ {
+ "Code",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(DispenserHomingRequest, has_code),
+ offsetof(DispenserHomingRequest, code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Speed",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DispenserHomingRequest, has_speed),
+ offsetof(DispenserHomingRequest, speed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned dispenser_homing_request__field_indices_by_name[] = {
+ 0, /* field[0] = Code */
+ 1, /* field[1] = Speed */
+};
+static const ProtobufCIntRange dispenser_homing_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor dispenser_homing_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DispenserHomingRequest",
+ "DispenserHomingRequest",
+ "DispenserHomingRequest",
+ "",
+ sizeof(DispenserHomingRequest),
+ 2,
+ dispenser_homing_request__field_descriptors,
+ dispenser_homing_request__field_indices_by_name,
+ 1, dispenser_homing_request__number_ranges,
+ (ProtobufCMessageInit) dispenser_homing_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingRequest.pb-c.h
new file mode 100644
index 000000000..ba7ab19cf
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingRequest.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserHomingRequest.proto */
+
+#ifndef PROTOBUF_C_DispenserHomingRequest_2eproto__INCLUDED
+#define PROTOBUF_C_DispenserHomingRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _DispenserHomingRequest DispenserHomingRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DispenserHomingRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_code;
+ int32_t code;
+ protobuf_c_boolean has_speed;
+ double speed;
+};
+#define DISPENSER_HOMING_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&dispenser_homing_request__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* DispenserHomingRequest methods */
+void dispenser_homing_request__init
+ (DispenserHomingRequest *message);
+size_t dispenser_homing_request__get_packed_size
+ (const DispenserHomingRequest *message);
+size_t dispenser_homing_request__pack
+ (const DispenserHomingRequest *message,
+ uint8_t *out);
+size_t dispenser_homing_request__pack_to_buffer
+ (const DispenserHomingRequest *message,
+ ProtobufCBuffer *buffer);
+DispenserHomingRequest *
+ dispenser_homing_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void dispenser_homing_request__free_unpacked
+ (DispenserHomingRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DispenserHomingRequest_Closure)
+ (const DispenserHomingRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor dispenser_homing_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DispenserHomingRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingResponse.pb-c.c
new file mode 100644
index 000000000..e37aaaa67
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingResponse.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserHomingResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DispenserHomingResponse.pb-c.h"
+void dispenser_homing_response__init
+ (DispenserHomingResponse *message)
+{
+ static const DispenserHomingResponse init_value = DISPENSER_HOMING_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t dispenser_homing_response__get_packed_size
+ (const DispenserHomingResponse *message)
+{
+ assert(message->base.descriptor == &dispenser_homing_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t dispenser_homing_response__pack
+ (const DispenserHomingResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &dispenser_homing_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t dispenser_homing_response__pack_to_buffer
+ (const DispenserHomingResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &dispenser_homing_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DispenserHomingResponse *
+ dispenser_homing_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DispenserHomingResponse *)
+ protobuf_c_message_unpack (&dispenser_homing_response__descriptor,
+ allocator, len, data);
+}
+void dispenser_homing_response__free_unpacked
+ (DispenserHomingResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &dispenser_homing_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor dispenser_homing_response__field_descriptors[2] =
+{
+ {
+ "Progress",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DispenserHomingResponse, has_progress),
+ offsetof(DispenserHomingResponse, progress),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MaxProgress",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DispenserHomingResponse, has_maxprogress),
+ offsetof(DispenserHomingResponse, maxprogress),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned dispenser_homing_response__field_indices_by_name[] = {
+ 1, /* field[1] = MaxProgress */
+ 0, /* field[0] = Progress */
+};
+static const ProtobufCIntRange dispenser_homing_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor dispenser_homing_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DispenserHomingResponse",
+ "DispenserHomingResponse",
+ "DispenserHomingResponse",
+ "",
+ sizeof(DispenserHomingResponse),
+ 2,
+ dispenser_homing_response__field_descriptors,
+ dispenser_homing_response__field_indices_by_name,
+ 1, dispenser_homing_response__number_ranges,
+ (ProtobufCMessageInit) dispenser_homing_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingResponse.pb-c.h
new file mode 100644
index 000000000..76899841b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserHomingResponse.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserHomingResponse.proto */
+
+#ifndef PROTOBUF_C_DispenserHomingResponse_2eproto__INCLUDED
+#define PROTOBUF_C_DispenserHomingResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _DispenserHomingResponse DispenserHomingResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DispenserHomingResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_progress;
+ double progress;
+ protobuf_c_boolean has_maxprogress;
+ double maxprogress;
+};
+#define DISPENSER_HOMING_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&dispenser_homing_response__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* DispenserHomingResponse methods */
+void dispenser_homing_response__init
+ (DispenserHomingResponse *message);
+size_t dispenser_homing_response__get_packed_size
+ (const DispenserHomingResponse *message);
+size_t dispenser_homing_response__pack
+ (const DispenserHomingResponse *message,
+ uint8_t *out);
+size_t dispenser_homing_response__pack_to_buffer
+ (const DispenserHomingResponse *message,
+ ProtobufCBuffer *buffer);
+DispenserHomingResponse *
+ dispenser_homing_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void dispenser_homing_response__free_unpacked
+ (DispenserHomingResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DispenserHomingResponse_Closure)
+ (const DispenserHomingResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor dispenser_homing_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DispenserHomingResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingRequest.pb-c.c
new file mode 100644
index 000000000..720e45d8f
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingRequest.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserJoggingRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DispenserJoggingRequest.pb-c.h"
+void dispenser_jogging_request__init
+ (DispenserJoggingRequest *message)
+{
+ static const DispenserJoggingRequest init_value = DISPENSER_JOGGING_REQUEST__INIT;
+ *message = init_value;
+}
+size_t dispenser_jogging_request__get_packed_size
+ (const DispenserJoggingRequest *message)
+{
+ assert(message->base.descriptor == &dispenser_jogging_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t dispenser_jogging_request__pack
+ (const DispenserJoggingRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &dispenser_jogging_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t dispenser_jogging_request__pack_to_buffer
+ (const DispenserJoggingRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &dispenser_jogging_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DispenserJoggingRequest *
+ dispenser_jogging_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DispenserJoggingRequest *)
+ protobuf_c_message_unpack (&dispenser_jogging_request__descriptor,
+ allocator, len, data);
+}
+void dispenser_jogging_request__free_unpacked
+ (DispenserJoggingRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &dispenser_jogging_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor dispenser_jogging_request__field_descriptors[3] =
+{
+ {
+ "Direction",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(DispenserJoggingRequest, has_direction),
+ offsetof(DispenserJoggingRequest, direction),
+ &motor_direction__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Code",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(DispenserJoggingRequest, has_code),
+ offsetof(DispenserJoggingRequest, code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Speed",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DispenserJoggingRequest, has_speed),
+ offsetof(DispenserJoggingRequest, speed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned dispenser_jogging_request__field_indices_by_name[] = {
+ 1, /* field[1] = Code */
+ 0, /* field[0] = Direction */
+ 2, /* field[2] = Speed */
+};
+static const ProtobufCIntRange dispenser_jogging_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor dispenser_jogging_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DispenserJoggingRequest",
+ "DispenserJoggingRequest",
+ "DispenserJoggingRequest",
+ "",
+ sizeof(DispenserJoggingRequest),
+ 3,
+ dispenser_jogging_request__field_descriptors,
+ dispenser_jogging_request__field_indices_by_name,
+ 1, dispenser_jogging_request__number_ranges,
+ (ProtobufCMessageInit) dispenser_jogging_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingRequest.pb-c.h
new file mode 100644
index 000000000..b3d962769
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingRequest.pb-c.h
@@ -0,0 +1,77 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserJoggingRequest.proto */
+
+#ifndef PROTOBUF_C_DispenserJoggingRequest_2eproto__INCLUDED
+#define PROTOBUF_C_DispenserJoggingRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "MotorDirection.pb-c.h"
+
+typedef struct _DispenserJoggingRequest DispenserJoggingRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DispenserJoggingRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_direction;
+ MotorDirection direction;
+ protobuf_c_boolean has_code;
+ int32_t code;
+ protobuf_c_boolean has_speed;
+ double speed;
+};
+#define DISPENSER_JOGGING_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&dispenser_jogging_request__descriptor) \
+ , 0, MOTOR_DIRECTION__Forward, 0, 0, 0, 0 }
+
+
+/* DispenserJoggingRequest methods */
+void dispenser_jogging_request__init
+ (DispenserJoggingRequest *message);
+size_t dispenser_jogging_request__get_packed_size
+ (const DispenserJoggingRequest *message);
+size_t dispenser_jogging_request__pack
+ (const DispenserJoggingRequest *message,
+ uint8_t *out);
+size_t dispenser_jogging_request__pack_to_buffer
+ (const DispenserJoggingRequest *message,
+ ProtobufCBuffer *buffer);
+DispenserJoggingRequest *
+ dispenser_jogging_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void dispenser_jogging_request__free_unpacked
+ (DispenserJoggingRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DispenserJoggingRequest_Closure)
+ (const DispenserJoggingRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor dispenser_jogging_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DispenserJoggingRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingResponse.pb-c.c
new file mode 100644
index 000000000..499387197
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserJoggingResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DispenserJoggingResponse.pb-c.h"
+void dispenser_jogging_response__init
+ (DispenserJoggingResponse *message)
+{
+ static const DispenserJoggingResponse init_value = DISPENSER_JOGGING_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t dispenser_jogging_response__get_packed_size
+ (const DispenserJoggingResponse *message)
+{
+ assert(message->base.descriptor == &dispenser_jogging_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t dispenser_jogging_response__pack
+ (const DispenserJoggingResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &dispenser_jogging_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t dispenser_jogging_response__pack_to_buffer
+ (const DispenserJoggingResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &dispenser_jogging_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DispenserJoggingResponse *
+ dispenser_jogging_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DispenserJoggingResponse *)
+ protobuf_c_message_unpack (&dispenser_jogging_response__descriptor,
+ allocator, len, data);
+}
+void dispenser_jogging_response__free_unpacked
+ (DispenserJoggingResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &dispenser_jogging_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define dispenser_jogging_response__field_descriptors NULL
+#define dispenser_jogging_response__field_indices_by_name NULL
+#define dispenser_jogging_response__number_ranges NULL
+const ProtobufCMessageDescriptor dispenser_jogging_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DispenserJoggingResponse",
+ "DispenserJoggingResponse",
+ "DispenserJoggingResponse",
+ "",
+ sizeof(DispenserJoggingResponse),
+ 0,
+ dispenser_jogging_response__field_descriptors,
+ dispenser_jogging_response__field_indices_by_name,
+ 0, dispenser_jogging_response__number_ranges,
+ (ProtobufCMessageInit) dispenser_jogging_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingResponse.pb-c.h
new file mode 100644
index 000000000..7cdda36f8
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DispenserJoggingResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserJoggingResponse.proto */
+
+#ifndef PROTOBUF_C_DispenserJoggingResponse_2eproto__INCLUDED
+#define PROTOBUF_C_DispenserJoggingResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _DispenserJoggingResponse DispenserJoggingResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DispenserJoggingResponse
+{
+ ProtobufCMessage base;
+};
+#define DISPENSER_JOGGING_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&dispenser_jogging_response__descriptor) \
+ }
+
+
+/* DispenserJoggingResponse methods */
+void dispenser_jogging_response__init
+ (DispenserJoggingResponse *message);
+size_t dispenser_jogging_response__get_packed_size
+ (const DispenserJoggingResponse *message);
+size_t dispenser_jogging_response__pack
+ (const DispenserJoggingResponse *message,
+ uint8_t *out);
+size_t dispenser_jogging_response__pack_to_buffer
+ (const DispenserJoggingResponse *message,
+ ProtobufCBuffer *buffer);
+DispenserJoggingResponse *
+ dispenser_jogging_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void dispenser_jogging_response__free_unpacked
+ (DispenserJoggingResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DispenserJoggingResponse_Closure)
+ (const DispenserJoggingResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor dispenser_jogging_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DispenserJoggingResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DoubleArray.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DoubleArray.pb-c.c
new file mode 100644
index 000000000..586e13984
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DoubleArray.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DoubleArray.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DoubleArray.pb-c.h"
+void double_array__init
+ (DoubleArray *message)
+{
+ static const DoubleArray init_value = DOUBLE_ARRAY__INIT;
+ *message = init_value;
+}
+size_t double_array__get_packed_size
+ (const DoubleArray *message)
+{
+ assert(message->base.descriptor == &double_array__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t double_array__pack
+ (const DoubleArray *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &double_array__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t double_array__pack_to_buffer
+ (const DoubleArray *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &double_array__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DoubleArray *
+ double_array__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DoubleArray *)
+ protobuf_c_message_unpack (&double_array__descriptor,
+ allocator, len, data);
+}
+void double_array__free_unpacked
+ (DoubleArray *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &double_array__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor double_array__field_descriptors[1] =
+{
+ {
+ "Data",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(DoubleArray, n_data),
+ offsetof(DoubleArray, data),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned double_array__field_indices_by_name[] = {
+ 0, /* field[0] = Data */
+};
+static const ProtobufCIntRange double_array__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor double_array__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DoubleArray",
+ "DoubleArray",
+ "DoubleArray",
+ "",
+ sizeof(DoubleArray),
+ 1,
+ double_array__field_descriptors,
+ double_array__field_indices_by_name,
+ 1, double_array__number_ranges,
+ (ProtobufCMessageInit) double_array__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DoubleArray.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DoubleArray.pb-c.h
new file mode 100644
index 000000000..7f4232530
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/DoubleArray.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DoubleArray.proto */
+
+#ifndef PROTOBUF_C_DoubleArray_2eproto__INCLUDED
+#define PROTOBUF_C_DoubleArray_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _DoubleArray DoubleArray;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DoubleArray
+{
+ ProtobufCMessage base;
+ size_t n_data;
+ double *data;
+};
+#define DOUBLE_ARRAY__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&double_array__descriptor) \
+ , 0,NULL }
+
+
+/* DoubleArray methods */
+void double_array__init
+ (DoubleArray *message);
+size_t double_array__get_packed_size
+ (const DoubleArray *message);
+size_t double_array__pack
+ (const DoubleArray *message,
+ uint8_t *out);
+size_t double_array__pack_to_buffer
+ (const DoubleArray *message,
+ ProtobufCBuffer *buffer);
+DoubleArray *
+ double_array__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void double_array__free_unpacked
+ (DoubleArray *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DoubleArray_Closure)
+ (const DoubleArray *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor double_array__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DoubleArray_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/Event.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/Event.pb-c.c
new file mode 100644
index 000000000..df4234755
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/Event.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: Event.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "Event.pb-c.h"
+void event__init
+ (Event *message)
+{
+ static const Event init_value = EVENT__INIT;
+ *message = init_value;
+}
+size_t event__get_packed_size
+ (const Event *message)
+{
+ assert(message->base.descriptor == &event__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t event__pack
+ (const Event *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &event__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t event__pack_to_buffer
+ (const Event *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &event__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+Event *
+ event__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (Event *)
+ protobuf_c_message_unpack (&event__descriptor,
+ allocator, len, data);
+}
+void event__free_unpacked
+ (Event *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &event__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor event__field_descriptors[2] =
+{
+ {
+ "Type",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(Event, has_type),
+ offsetof(Event, type),
+ &event_type__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Message",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(Event, message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned event__field_indices_by_name[] = {
+ 1, /* field[1] = Message */
+ 0, /* field[0] = Type */
+};
+static const ProtobufCIntRange event__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor event__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "Event",
+ "Event",
+ "Event",
+ "",
+ sizeof(Event),
+ 2,
+ event__field_descriptors,
+ event__field_indices_by_name,
+ 1, event__number_ranges,
+ (ProtobufCMessageInit) event__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/Event.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/Event.pb-c.h
new file mode 100644
index 000000000..f94e88480
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/Event.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: Event.proto */
+
+#ifndef PROTOBUF_C_Event_2eproto__INCLUDED
+#define PROTOBUF_C_Event_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "EventType.pb-c.h"
+
+typedef struct _Event Event;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _Event
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_type;
+ EventType type;
+ char *message;
+};
+#define EVENT__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&event__descriptor) \
+ , 0, EVENT_TYPE__ThreadBreak, NULL }
+
+
+/* Event methods */
+void event__init
+ (Event *message);
+size_t event__get_packed_size
+ (const Event *message);
+size_t event__pack
+ (const Event *message,
+ uint8_t *out);
+size_t event__pack_to_buffer
+ (const Event *message,
+ ProtobufCBuffer *buffer);
+Event *
+ event__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void event__free_unpacked
+ (Event *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*Event_Closure)
+ (const Event *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor event__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_Event_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/EventType.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/EventType.pb-c.c
new file mode 100644
index 000000000..92786b4ad
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/EventType.pb-c.c
@@ -0,0 +1,109 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: EventType.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "EventType.pb-c.h"
+static const ProtobufCEnumValue event_type__enum_values_by_number[38] =
+{
+ { "ThreadBreak", "EVENT_TYPE__ThreadBreak", 0 },
+ { "ThreadTensionControlFailure", "EVENT_TYPE__ThreadTensionControlFailure", 1 },
+ { "FeederConeInsufficiant", "EVENT_TYPE__FeederConeInsufficiant", 2 },
+ { "WinderGeneralError", "EVENT_TYPE__WinderGeneralError", 3 },
+ { "WinderConeNotExists", "EVENT_TYPE__WinderConeNotExists", 4 },
+ { "ThreadFeedingGeneralError", "EVENT_TYPE__ThreadFeedingGeneralError", 5 },
+ { "DyeingHeadOverTemperature", "EVENT_TYPE__DyeingHeadOverTemperature", 6 },
+ { "DHThermalCutoff", "EVENT_TYPE__DHThermalCutoff", 7 },
+ { "DryerOverTemperature", "EVENT_TYPE__DryerOverTemperature", 8 },
+ { "DryerThermalCutoff", "EVENT_TYPE__DryerThermalCutoff", 9 },
+ { "DyeingHeadHeatersCurrentOutOfRange", "EVENT_TYPE__DyeingHeadHeatersCurrentOutOfRange", 10 },
+ { "DryerHeatersCurrentOutOfRange", "EVENT_TYPE__DryerHeatersCurrentOutOfRange", 11 },
+ { "DryerDHeadCoverOpen", "EVENT_TYPE__DryerDHeadCoverOpen", 12 },
+ { "AirFilterClogged", "EVENT_TYPE__AirFilterClogged", 13 },
+ { "AirFilterNotInstalled", "EVENT_TYPE__AirFilterNotInstalled", 14 },
+ { "WHSFailure", "EVENT_TYPE__WHSFailure", 15 },
+ { "WasteContainerIsAlmostFull", "EVENT_TYPE__WasteContainerIsAlmostFull", 16 },
+ { "WasteContainerIsFull", "EVENT_TYPE__WasteContainerIsFull", 17 },
+ { "DispenserEmpty", "EVENT_TYPE__DispenserEmpty", 18 },
+ { "DispenserLowLevel", "EVENT_TYPE__DispenserLowLevel", 19 },
+ { "DispenserRefillFailure", "EVENT_TYPE__DispenserRefillFailure", 20 },
+ { "MidTankEmpty", "EVENT_TYPE__MidTankEmpty", 21 },
+ { "MidTankLowLevel", "EVENT_TYPE__MidTankLowLevel", 22 },
+ { "MidTankNotInPlace", "EVENT_TYPE__MidTankNotInPlace", 23 },
+ { "SystemBITFail", "EVENT_TYPE__SystemBITFail", 24 },
+ { "GeneralInternalOverTemperature", "EVENT_TYPE__GeneralInternalOverTemperature", 25 },
+ { "MachineCoverOpen", "EVENT_TYPE__MachineCoverOpen", 26 },
+ { "EmergencyPushButtonPressed", "EVENT_TYPE__EmergencyPushButtonPressed", 27 },
+ { "SystemGeneralError", "EVENT_TYPE__SystemGeneralError", 28 },
+ { "RequestSent", "EVENT_TYPE__RequestSent", 29 },
+ { "ResponseReceived", "EVENT_TYPE__ResponseReceived", 30 },
+ { "RequestFailed", "EVENT_TYPE__RequestFailed", 31 },
+ { "ApplicationException", "EVENT_TYPE__ApplicationException", 32 },
+ { "ApplicationInformation", "EVENT_TYPE__ApplicationInformation", 33 },
+ { "ApplicationStarted", "EVENT_TYPE__ApplicationStarted", 34 },
+ { "ApplicationTerminated", "EVENT_TYPE__ApplicationTerminated", 35 },
+ { "RecordingStarted", "EVENT_TYPE__RecordingStarted", 36 },
+ { "RecordingStopped", "EVENT_TYPE__RecordingStopped", 37 },
+};
+static const ProtobufCIntRange event_type__value_ranges[] = {
+{0, 0},{0, 38}
+};
+static const ProtobufCEnumValueIndex event_type__enum_values_by_name[38] =
+{
+ { "AirFilterClogged", 13 },
+ { "AirFilterNotInstalled", 14 },
+ { "ApplicationException", 32 },
+ { "ApplicationInformation", 33 },
+ { "ApplicationStarted", 34 },
+ { "ApplicationTerminated", 35 },
+ { "DHThermalCutoff", 7 },
+ { "DispenserEmpty", 18 },
+ { "DispenserLowLevel", 19 },
+ { "DispenserRefillFailure", 20 },
+ { "DryerDHeadCoverOpen", 12 },
+ { "DryerHeatersCurrentOutOfRange", 11 },
+ { "DryerOverTemperature", 8 },
+ { "DryerThermalCutoff", 9 },
+ { "DyeingHeadHeatersCurrentOutOfRange", 10 },
+ { "DyeingHeadOverTemperature", 6 },
+ { "EmergencyPushButtonPressed", 27 },
+ { "FeederConeInsufficiant", 2 },
+ { "GeneralInternalOverTemperature", 25 },
+ { "MachineCoverOpen", 26 },
+ { "MidTankEmpty", 21 },
+ { "MidTankLowLevel", 22 },
+ { "MidTankNotInPlace", 23 },
+ { "RecordingStarted", 36 },
+ { "RecordingStopped", 37 },
+ { "RequestFailed", 31 },
+ { "RequestSent", 29 },
+ { "ResponseReceived", 30 },
+ { "SystemBITFail", 24 },
+ { "SystemGeneralError", 28 },
+ { "ThreadBreak", 0 },
+ { "ThreadFeedingGeneralError", 5 },
+ { "ThreadTensionControlFailure", 1 },
+ { "WHSFailure", 15 },
+ { "WasteContainerIsAlmostFull", 16 },
+ { "WasteContainerIsFull", 17 },
+ { "WinderConeNotExists", 4 },
+ { "WinderGeneralError", 3 },
+};
+const ProtobufCEnumDescriptor event_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "EventType",
+ "EventType",
+ "EventType",
+ "",
+ 38,
+ event_type__enum_values_by_number,
+ 38,
+ event_type__enum_values_by_name,
+ 1,
+ event_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/EventType.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/EventType.pb-c.h
new file mode 100644
index 000000000..05cd19d3a
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/EventType.pb-c.h
@@ -0,0 +1,193 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: EventType.proto */
+
+#ifndef PROTOBUF_C_EventType_2eproto__INCLUDED
+#define PROTOBUF_C_EventType_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _EventType {
+ /*
+ *Dancer overshot / Thread break sensor (Group = Thread Feeding System, Category = Error, Actions = Abort Running Job, Prevent Job Execution, Soft Visual Notification)
+ */
+ EVENT_TYPE__ThreadBreak = 0,
+ /*
+ *Dancer not stable or got down (Group = Thread Feeding System, Category = Error, Actions = Abort Running Job, Soft Visual Notification, Prevent Job Execution)
+ */
+ EVENT_TYPE__ThreadTensionControlFailure = 1,
+ /*
+ *Source thread counter (counter shall be reset upon loading a new cone) (Group = Thread Feeding System, Category = Error, Actions = Abort Running Job, Prevent Job Execution, Soft Visual Notification)
+ */
+ EVENT_TYPE__FeederConeInsufficiant = 2,
+ /*
+ *Winder Controller (Group = Thread Feeding System, Category = Error, Actions = Abort Running Job, Prevent Job Execution, Soft Visual Notification)
+ */
+ EVENT_TYPE__WinderGeneralError = 3,
+ /*
+ *SW_SPOOL_EXISTS='0' or Winder Controller (Group = Thread Feeding System, Category = Error, Actions = Abort Running Job, Prevent Job Execution, Soft Visual Notification)
+ */
+ EVENT_TYPE__WinderConeNotExists = 4,
+ /*
+ *Motor Stall (Group = Thread Feeding System, Category = Error, Actions = Abort Running Job, Soft Visual Notification, Prevent Job Execution)
+ */
+ EVENT_TYPE__ThreadFeedingGeneralError = 5,
+ /*
+ *Dyeing Head Thermometers (Group = DH Dryer, Category = Error, Actions = Abort Running Job, Soft Visual Notification, Prevent Job Execution)
+ */
+ EVENT_TYPE__DyeingHeadOverTemperature = 6,
+ /*
+ *Current sense in all heaters is 0 (Group = DH Dryer, Category = Error, Actions = Abort Running Job, Soft Visual Notification, Prevent Job Execution)
+ */
+ EVENT_TYPE__DHThermalCutoff = 7,
+ /*
+ *Dryer Thermometers (Group = DH Dryer, Category = Error, Actions = Prevent Job Execution, Abort Running Job, Soft Visual Notification)
+ */
+ EVENT_TYPE__DryerOverTemperature = 8,
+ /*
+ *Current sense in all heaters is 0 (Group = DH Dryer, Category = Error, Actions = Abort Running Job, Soft Visual Notification, Prevent Job Execution)
+ */
+ EVENT_TYPE__DryerThermalCutoff = 9,
+ /*
+ *Dyeing head Heaters failure (Under /Over current) (Group = DH Dryer, Category = Error, Actions = Soft Visual Notification, Prevent Job Execution, Abort Running Job)
+ */
+ EVENT_TYPE__DyeingHeadHeatersCurrentOutOfRange = 10,
+ /*
+ *Dryer Heaters failure (Under /Over current) (Group = DH Dryer, Category = Error, Actions = Abort Running Job, Soft Visual Notification, Prevent Job Execution)
+ */
+ EVENT_TYPE__DryerHeatersCurrentOutOfRange = 11,
+ /*
+ *Covers Tampers (Group = DH Dryer, Category = Error, Actions = Prevent Job Execution, Soft Visual Notification)
+ */
+ EVENT_TYPE__DryerDHeadCoverOpen = 12,
+ /*
+ *Pressure sensor Purex or Air flow sensor (Flap) (Group = Waste Handling System, Category = Error, Actions = Abort Running Job, Prevent Job Execution, Soft Visual Notification)
+ */
+ EVENT_TYPE__AirFilterClogged = 13,
+ /*
+ *Micro-switch (Group = Waste Handling System, Category = Error, Actions = Abort Running Job, Prevent Job Execution, Soft Visual Notification)
+ */
+ EVENT_TYPE__AirFilterNotInstalled = 14,
+ /*
+ *blower techo. Feedback, air flap (Group = Waste Handling System, Category = Error, Actions = Prevent Job Execution, Soft Visual Notification, Abort Running Job)
+ */
+ EVENT_TYPE__WHSFailure = 15,
+ /*
+ *Check container float sensor (Group = Waste Handling System, Category = Warning, Actions = Soft Visual Notification)
+ */
+ EVENT_TYPE__WasteContainerIsAlmostFull = 16,
+ /*
+ *Check container float sensor (Group = Waste Handling System, Category = Error, Actions = Soft Visual Notification)
+ */
+ EVENT_TYPE__WasteContainerIsFull = 17,
+ /*
+ *Dispenser position sensor/s (Group = Ink Delivery System, Category = Error, Actions = Prevent Job Execution, Abort Running Job, Soft Visual Notification)
+ */
+ EVENT_TYPE__DispenserEmpty = 18,
+ /*
+ *Check if job can be executor refill needed (Group = Ink Delivery System, Category = Warning, Actions = Soft Visual Notification)
+ */
+ EVENT_TYPE__DispenserLowLevel = 19,
+ /*
+ *Cartridge float displacement (Group = Ink Delivery System, Category = Error, Actions = Prevent Job Execution, Soft Visual Notification)
+ */
+ EVENT_TYPE__DispenserRefillFailure = 20,
+ /*
+ *Mid-Tank (Group = Ink Delivery System, Category = Warning, Actions = Soft Visual Notification)
+ */
+ EVENT_TYPE__MidTankEmpty = 21,
+ /*
+ *Cartridge float sensor (Group = Ink Delivery System, Category = Warning, Actions = Soft Visual Notification)
+ */
+ EVENT_TYPE__MidTankLowLevel = 22,
+ /*
+ *Cartridge float sensor or Additional micro-switch (Group = Ink Delivery System, Category = Warning, Actions = Soft Visual Notification)
+ */
+ EVENT_TYPE__MidTankNotInPlace = 23,
+ /*
+ *System BIT Failure (Group = General Hardware, Category = Error, Actions = Soft Visual Notification)
+ */
+ EVENT_TYPE__SystemBITFail = 24,
+ /*
+ *Internal Thermostat (Group = General Hardware, Category = Error, Actions = Prevent Job Execution, Soft Visual Notification, Abort Running Job, Stop Heaters)
+ */
+ EVENT_TYPE__GeneralInternalOverTemperature = 25,
+ /*
+ *Covers Tampers (Group = General Hardware, Category = Warning, Actions = Soft Visual Notification)
+ */
+ EVENT_TYPE__MachineCoverOpen = 26,
+ /*
+ *EPB (Group = General Hardware, Category = Critical, Actions = Overall Power Down, Soft Visual Notification)
+ */
+ EVENT_TYPE__EmergencyPushButtonPressed = 27,
+ /*
+ *System General Error (Group = General Hardware, Category = Warning, Actions = Soft Visual Notification)
+ */
+ EVENT_TYPE__SystemGeneralError = 28,
+ /*
+ *Occurs a request has been sent to the machine or external bridge service (Group = Transport, Category = Info, Actions = )
+ */
+ EVENT_TYPE__RequestSent = 29,
+ /*
+ *Occures when a response has been received (Group = Transport, Category = Info, Actions = )
+ */
+ EVENT_TYPE__ResponseReceived = 30,
+ /*
+ *Occures when a request to the machine has failed (Group = Transport, Category = Error, Actions = )
+ */
+ EVENT_TYPE__RequestFailed = 31,
+ /*
+ *Occures when the application has encountered some error (Group = Application, Category = Error, Actions = )
+ */
+ EVENT_TYPE__ApplicationException = 32,
+ /*
+ *General application event logs (Group = Application, Category = Info, Actions = )
+ */
+ EVENT_TYPE__ApplicationInformation = 33,
+ /*
+ *Notifies about application succesfully started (Group = Application, Category = Info, Actions = )
+ */
+ EVENT_TYPE__ApplicationStarted = 34,
+ /*
+ *Notifies about application termination (Group = Application, Category = Info, Actions = )
+ */
+ EVENT_TYPE__ApplicationTerminated = 35,
+ /*
+ *Occures when a diagnostics recording has been started (Group = Application, Category = Info, Actions = )
+ */
+ EVENT_TYPE__RecordingStarted = 36,
+ /*
+ *Occures when a diagnostics recording has been stopped (Group = Application, Category = Info, Actions = )
+ */
+ EVENT_TYPE__RecordingStopped = 37
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(EVENT_TYPE)
+} EventType;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor event_type__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_EventType_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingRequest.pb-c.c
new file mode 100644
index 000000000..63c2bdf9e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorAbortHomingRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "MotorAbortHomingRequest.pb-c.h"
+void motor_abort_homing_request__init
+ (MotorAbortHomingRequest *message)
+{
+ static const MotorAbortHomingRequest init_value = MOTOR_ABORT_HOMING_REQUEST__INIT;
+ *message = init_value;
+}
+size_t motor_abort_homing_request__get_packed_size
+ (const MotorAbortHomingRequest *message)
+{
+ assert(message->base.descriptor == &motor_abort_homing_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t motor_abort_homing_request__pack
+ (const MotorAbortHomingRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &motor_abort_homing_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t motor_abort_homing_request__pack_to_buffer
+ (const MotorAbortHomingRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &motor_abort_homing_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+MotorAbortHomingRequest *
+ motor_abort_homing_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (MotorAbortHomingRequest *)
+ protobuf_c_message_unpack (&motor_abort_homing_request__descriptor,
+ allocator, len, data);
+}
+void motor_abort_homing_request__free_unpacked
+ (MotorAbortHomingRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &motor_abort_homing_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor motor_abort_homing_request__field_descriptors[1] =
+{
+ {
+ "Code",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(MotorAbortHomingRequest, has_code),
+ offsetof(MotorAbortHomingRequest, code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned motor_abort_homing_request__field_indices_by_name[] = {
+ 0, /* field[0] = Code */
+};
+static const ProtobufCIntRange motor_abort_homing_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor motor_abort_homing_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "MotorAbortHomingRequest",
+ "MotorAbortHomingRequest",
+ "MotorAbortHomingRequest",
+ "",
+ sizeof(MotorAbortHomingRequest),
+ 1,
+ motor_abort_homing_request__field_descriptors,
+ motor_abort_homing_request__field_indices_by_name,
+ 1, motor_abort_homing_request__number_ranges,
+ (ProtobufCMessageInit) motor_abort_homing_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingRequest.pb-c.h
new file mode 100644
index 000000000..e480d02b4
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingRequest.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorAbortHomingRequest.proto */
+
+#ifndef PROTOBUF_C_MotorAbortHomingRequest_2eproto__INCLUDED
+#define PROTOBUF_C_MotorAbortHomingRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _MotorAbortHomingRequest MotorAbortHomingRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _MotorAbortHomingRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_code;
+ int32_t code;
+};
+#define MOTOR_ABORT_HOMING_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&motor_abort_homing_request__descriptor) \
+ , 0, 0 }
+
+
+/* MotorAbortHomingRequest methods */
+void motor_abort_homing_request__init
+ (MotorAbortHomingRequest *message);
+size_t motor_abort_homing_request__get_packed_size
+ (const MotorAbortHomingRequest *message);
+size_t motor_abort_homing_request__pack
+ (const MotorAbortHomingRequest *message,
+ uint8_t *out);
+size_t motor_abort_homing_request__pack_to_buffer
+ (const MotorAbortHomingRequest *message,
+ ProtobufCBuffer *buffer);
+MotorAbortHomingRequest *
+ motor_abort_homing_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void motor_abort_homing_request__free_unpacked
+ (MotorAbortHomingRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*MotorAbortHomingRequest_Closure)
+ (const MotorAbortHomingRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor motor_abort_homing_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_MotorAbortHomingRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingResponse.pb-c.c
new file mode 100644
index 000000000..d95f3d978
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorAbortHomingResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "MotorAbortHomingResponse.pb-c.h"
+void motor_abort_homing_response__init
+ (MotorAbortHomingResponse *message)
+{
+ static const MotorAbortHomingResponse init_value = MOTOR_ABORT_HOMING_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t motor_abort_homing_response__get_packed_size
+ (const MotorAbortHomingResponse *message)
+{
+ assert(message->base.descriptor == &motor_abort_homing_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t motor_abort_homing_response__pack
+ (const MotorAbortHomingResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &motor_abort_homing_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t motor_abort_homing_response__pack_to_buffer
+ (const MotorAbortHomingResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &motor_abort_homing_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+MotorAbortHomingResponse *
+ motor_abort_homing_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (MotorAbortHomingResponse *)
+ protobuf_c_message_unpack (&motor_abort_homing_response__descriptor,
+ allocator, len, data);
+}
+void motor_abort_homing_response__free_unpacked
+ (MotorAbortHomingResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &motor_abort_homing_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define motor_abort_homing_response__field_descriptors NULL
+#define motor_abort_homing_response__field_indices_by_name NULL
+#define motor_abort_homing_response__number_ranges NULL
+const ProtobufCMessageDescriptor motor_abort_homing_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "MotorAbortHomingResponse",
+ "MotorAbortHomingResponse",
+ "MotorAbortHomingResponse",
+ "",
+ sizeof(MotorAbortHomingResponse),
+ 0,
+ motor_abort_homing_response__field_descriptors,
+ motor_abort_homing_response__field_indices_by_name,
+ 0, motor_abort_homing_response__number_ranges,
+ (ProtobufCMessageInit) motor_abort_homing_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingResponse.pb-c.h
new file mode 100644
index 000000000..fb69cf90f
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortHomingResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorAbortHomingResponse.proto */
+
+#ifndef PROTOBUF_C_MotorAbortHomingResponse_2eproto__INCLUDED
+#define PROTOBUF_C_MotorAbortHomingResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _MotorAbortHomingResponse MotorAbortHomingResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _MotorAbortHomingResponse
+{
+ ProtobufCMessage base;
+};
+#define MOTOR_ABORT_HOMING_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&motor_abort_homing_response__descriptor) \
+ }
+
+
+/* MotorAbortHomingResponse methods */
+void motor_abort_homing_response__init
+ (MotorAbortHomingResponse *message);
+size_t motor_abort_homing_response__get_packed_size
+ (const MotorAbortHomingResponse *message);
+size_t motor_abort_homing_response__pack
+ (const MotorAbortHomingResponse *message,
+ uint8_t *out);
+size_t motor_abort_homing_response__pack_to_buffer
+ (const MotorAbortHomingResponse *message,
+ ProtobufCBuffer *buffer);
+MotorAbortHomingResponse *
+ motor_abort_homing_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void motor_abort_homing_response__free_unpacked
+ (MotorAbortHomingResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*MotorAbortHomingResponse_Closure)
+ (const MotorAbortHomingResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor motor_abort_homing_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_MotorAbortHomingResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingRequest.pb-c.c
new file mode 100644
index 000000000..45c487e65
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorAbortJoggingRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "MotorAbortJoggingRequest.pb-c.h"
+void motor_abort_jogging_request__init
+ (MotorAbortJoggingRequest *message)
+{
+ static const MotorAbortJoggingRequest init_value = MOTOR_ABORT_JOGGING_REQUEST__INIT;
+ *message = init_value;
+}
+size_t motor_abort_jogging_request__get_packed_size
+ (const MotorAbortJoggingRequest *message)
+{
+ assert(message->base.descriptor == &motor_abort_jogging_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t motor_abort_jogging_request__pack
+ (const MotorAbortJoggingRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &motor_abort_jogging_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t motor_abort_jogging_request__pack_to_buffer
+ (const MotorAbortJoggingRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &motor_abort_jogging_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+MotorAbortJoggingRequest *
+ motor_abort_jogging_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (MotorAbortJoggingRequest *)
+ protobuf_c_message_unpack (&motor_abort_jogging_request__descriptor,
+ allocator, len, data);
+}
+void motor_abort_jogging_request__free_unpacked
+ (MotorAbortJoggingRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &motor_abort_jogging_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor motor_abort_jogging_request__field_descriptors[1] =
+{
+ {
+ "Code",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(MotorAbortJoggingRequest, has_code),
+ offsetof(MotorAbortJoggingRequest, code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned motor_abort_jogging_request__field_indices_by_name[] = {
+ 0, /* field[0] = Code */
+};
+static const ProtobufCIntRange motor_abort_jogging_request__number_ranges[1 + 1] =
+{
+ { 2, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor motor_abort_jogging_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "MotorAbortJoggingRequest",
+ "MotorAbortJoggingRequest",
+ "MotorAbortJoggingRequest",
+ "",
+ sizeof(MotorAbortJoggingRequest),
+ 1,
+ motor_abort_jogging_request__field_descriptors,
+ motor_abort_jogging_request__field_indices_by_name,
+ 1, motor_abort_jogging_request__number_ranges,
+ (ProtobufCMessageInit) motor_abort_jogging_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingRequest.pb-c.h
new file mode 100644
index 000000000..39511ffa9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingRequest.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorAbortJoggingRequest.proto */
+
+#ifndef PROTOBUF_C_MotorAbortJoggingRequest_2eproto__INCLUDED
+#define PROTOBUF_C_MotorAbortJoggingRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _MotorAbortJoggingRequest MotorAbortJoggingRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _MotorAbortJoggingRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_code;
+ int32_t code;
+};
+#define MOTOR_ABORT_JOGGING_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&motor_abort_jogging_request__descriptor) \
+ , 0, 0 }
+
+
+/* MotorAbortJoggingRequest methods */
+void motor_abort_jogging_request__init
+ (MotorAbortJoggingRequest *message);
+size_t motor_abort_jogging_request__get_packed_size
+ (const MotorAbortJoggingRequest *message);
+size_t motor_abort_jogging_request__pack
+ (const MotorAbortJoggingRequest *message,
+ uint8_t *out);
+size_t motor_abort_jogging_request__pack_to_buffer
+ (const MotorAbortJoggingRequest *message,
+ ProtobufCBuffer *buffer);
+MotorAbortJoggingRequest *
+ motor_abort_jogging_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void motor_abort_jogging_request__free_unpacked
+ (MotorAbortJoggingRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*MotorAbortJoggingRequest_Closure)
+ (const MotorAbortJoggingRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor motor_abort_jogging_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_MotorAbortJoggingRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingResponse.pb-c.c
new file mode 100644
index 000000000..f32b7aad0
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingResponse.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorAbortJoggingResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "MotorAbortJoggingResponse.pb-c.h"
+void motor_abort_jogging_response__init
+ (MotorAbortJoggingResponse *message)
+{
+ static const MotorAbortJoggingResponse init_value = MOTOR_ABORT_JOGGING_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t motor_abort_jogging_response__get_packed_size
+ (const MotorAbortJoggingResponse *message)
+{
+ assert(message->base.descriptor == &motor_abort_jogging_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t motor_abort_jogging_response__pack
+ (const MotorAbortJoggingResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &motor_abort_jogging_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t motor_abort_jogging_response__pack_to_buffer
+ (const MotorAbortJoggingResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &motor_abort_jogging_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+MotorAbortJoggingResponse *
+ motor_abort_jogging_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (MotorAbortJoggingResponse *)
+ protobuf_c_message_unpack (&motor_abort_jogging_response__descriptor,
+ allocator, len, data);
+}
+void motor_abort_jogging_response__free_unpacked
+ (MotorAbortJoggingResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &motor_abort_jogging_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor motor_abort_jogging_response__field_descriptors[1] =
+{
+ {
+ "Code",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(MotorAbortJoggingResponse, has_code),
+ offsetof(MotorAbortJoggingResponse, code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned motor_abort_jogging_response__field_indices_by_name[] = {
+ 0, /* field[0] = Code */
+};
+static const ProtobufCIntRange motor_abort_jogging_response__number_ranges[1 + 1] =
+{
+ { 2, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor motor_abort_jogging_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "MotorAbortJoggingResponse",
+ "MotorAbortJoggingResponse",
+ "MotorAbortJoggingResponse",
+ "",
+ sizeof(MotorAbortJoggingResponse),
+ 1,
+ motor_abort_jogging_response__field_descriptors,
+ motor_abort_jogging_response__field_indices_by_name,
+ 1, motor_abort_jogging_response__number_ranges,
+ (ProtobufCMessageInit) motor_abort_jogging_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingResponse.pb-c.h
new file mode 100644
index 000000000..e78157ab4
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorAbortJoggingResponse.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorAbortJoggingResponse.proto */
+
+#ifndef PROTOBUF_C_MotorAbortJoggingResponse_2eproto__INCLUDED
+#define PROTOBUF_C_MotorAbortJoggingResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _MotorAbortJoggingResponse MotorAbortJoggingResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _MotorAbortJoggingResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_code;
+ int32_t code;
+};
+#define MOTOR_ABORT_JOGGING_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&motor_abort_jogging_response__descriptor) \
+ , 0, 0 }
+
+
+/* MotorAbortJoggingResponse methods */
+void motor_abort_jogging_response__init
+ (MotorAbortJoggingResponse *message);
+size_t motor_abort_jogging_response__get_packed_size
+ (const MotorAbortJoggingResponse *message);
+size_t motor_abort_jogging_response__pack
+ (const MotorAbortJoggingResponse *message,
+ uint8_t *out);
+size_t motor_abort_jogging_response__pack_to_buffer
+ (const MotorAbortJoggingResponse *message,
+ ProtobufCBuffer *buffer);
+MotorAbortJoggingResponse *
+ motor_abort_jogging_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void motor_abort_jogging_response__free_unpacked
+ (MotorAbortJoggingResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*MotorAbortJoggingResponse_Closure)
+ (const MotorAbortJoggingResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor motor_abort_jogging_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_MotorAbortJoggingResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorDirection.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorDirection.pb-c.c
new file mode 100644
index 000000000..7eaa11ff6
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorDirection.pb-c.c
@@ -0,0 +1,37 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorDirection.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "MotorDirection.pb-c.h"
+static const ProtobufCEnumValue motor_direction__enum_values_by_number[2] =
+{
+ { "Forward", "MOTOR_DIRECTION__Forward", 0 },
+ { "Backward", "MOTOR_DIRECTION__Backward", 1 },
+};
+static const ProtobufCIntRange motor_direction__value_ranges[] = {
+{0, 0},{0, 2}
+};
+static const ProtobufCEnumValueIndex motor_direction__enum_values_by_name[2] =
+{
+ { "Backward", 1 },
+ { "Forward", 0 },
+};
+const ProtobufCEnumDescriptor motor_direction__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "MotorDirection",
+ "MotorDirection",
+ "MotorDirection",
+ "",
+ 2,
+ motor_direction__enum_values_by_number,
+ 2,
+ motor_direction__enum_values_by_name,
+ 1,
+ motor_direction__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorDirection.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorDirection.pb-c.h
new file mode 100644
index 000000000..e5b190f2b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorDirection.pb-c.h
@@ -0,0 +1,43 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorDirection.proto */
+
+#ifndef PROTOBUF_C_MotorDirection_2eproto__INCLUDED
+#define PROTOBUF_C_MotorDirection_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _MotorDirection {
+ MOTOR_DIRECTION__Forward = 0,
+ MOTOR_DIRECTION__Backward = 1
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(MOTOR_DIRECTION)
+} MotorDirection;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor motor_direction__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_MotorDirection_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingRequest.pb-c.c
new file mode 100644
index 000000000..39413d2a7
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorHomingRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "MotorHomingRequest.pb-c.h"
+void motor_homing_request__init
+ (MotorHomingRequest *message)
+{
+ static const MotorHomingRequest init_value = MOTOR_HOMING_REQUEST__INIT;
+ *message = init_value;
+}
+size_t motor_homing_request__get_packed_size
+ (const MotorHomingRequest *message)
+{
+ assert(message->base.descriptor == &motor_homing_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t motor_homing_request__pack
+ (const MotorHomingRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &motor_homing_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t motor_homing_request__pack_to_buffer
+ (const MotorHomingRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &motor_homing_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+MotorHomingRequest *
+ motor_homing_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (MotorHomingRequest *)
+ protobuf_c_message_unpack (&motor_homing_request__descriptor,
+ allocator, len, data);
+}
+void motor_homing_request__free_unpacked
+ (MotorHomingRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &motor_homing_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor motor_homing_request__field_descriptors[2] =
+{
+ {
+ "Code",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(MotorHomingRequest, has_code),
+ offsetof(MotorHomingRequest, code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Speed",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(MotorHomingRequest, has_speed),
+ offsetof(MotorHomingRequest, speed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned motor_homing_request__field_indices_by_name[] = {
+ 0, /* field[0] = Code */
+ 1, /* field[1] = Speed */
+};
+static const ProtobufCIntRange motor_homing_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor motor_homing_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "MotorHomingRequest",
+ "MotorHomingRequest",
+ "MotorHomingRequest",
+ "",
+ sizeof(MotorHomingRequest),
+ 2,
+ motor_homing_request__field_descriptors,
+ motor_homing_request__field_indices_by_name,
+ 1, motor_homing_request__number_ranges,
+ (ProtobufCMessageInit) motor_homing_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingRequest.pb-c.h
new file mode 100644
index 000000000..e2c9f3c91
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingRequest.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorHomingRequest.proto */
+
+#ifndef PROTOBUF_C_MotorHomingRequest_2eproto__INCLUDED
+#define PROTOBUF_C_MotorHomingRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _MotorHomingRequest MotorHomingRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _MotorHomingRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_code;
+ int32_t code;
+ protobuf_c_boolean has_speed;
+ double speed;
+};
+#define MOTOR_HOMING_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&motor_homing_request__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* MotorHomingRequest methods */
+void motor_homing_request__init
+ (MotorHomingRequest *message);
+size_t motor_homing_request__get_packed_size
+ (const MotorHomingRequest *message);
+size_t motor_homing_request__pack
+ (const MotorHomingRequest *message,
+ uint8_t *out);
+size_t motor_homing_request__pack_to_buffer
+ (const MotorHomingRequest *message,
+ ProtobufCBuffer *buffer);
+MotorHomingRequest *
+ motor_homing_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void motor_homing_request__free_unpacked
+ (MotorHomingRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*MotorHomingRequest_Closure)
+ (const MotorHomingRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor motor_homing_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_MotorHomingRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingResponse.pb-c.c
new file mode 100644
index 000000000..76d79e96b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingResponse.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorHomingResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "MotorHomingResponse.pb-c.h"
+void motor_homing_response__init
+ (MotorHomingResponse *message)
+{
+ static const MotorHomingResponse init_value = MOTOR_HOMING_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t motor_homing_response__get_packed_size
+ (const MotorHomingResponse *message)
+{
+ assert(message->base.descriptor == &motor_homing_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t motor_homing_response__pack
+ (const MotorHomingResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &motor_homing_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t motor_homing_response__pack_to_buffer
+ (const MotorHomingResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &motor_homing_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+MotorHomingResponse *
+ motor_homing_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (MotorHomingResponse *)
+ protobuf_c_message_unpack (&motor_homing_response__descriptor,
+ allocator, len, data);
+}
+void motor_homing_response__free_unpacked
+ (MotorHomingResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &motor_homing_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor motor_homing_response__field_descriptors[2] =
+{
+ {
+ "Progress",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(MotorHomingResponse, has_progress),
+ offsetof(MotorHomingResponse, progress),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MaxProgress",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(MotorHomingResponse, has_maxprogress),
+ offsetof(MotorHomingResponse, maxprogress),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned motor_homing_response__field_indices_by_name[] = {
+ 1, /* field[1] = MaxProgress */
+ 0, /* field[0] = Progress */
+};
+static const ProtobufCIntRange motor_homing_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor motor_homing_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "MotorHomingResponse",
+ "MotorHomingResponse",
+ "MotorHomingResponse",
+ "",
+ sizeof(MotorHomingResponse),
+ 2,
+ motor_homing_response__field_descriptors,
+ motor_homing_response__field_indices_by_name,
+ 1, motor_homing_response__number_ranges,
+ (ProtobufCMessageInit) motor_homing_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingResponse.pb-c.h
new file mode 100644
index 000000000..df0452482
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorHomingResponse.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorHomingResponse.proto */
+
+#ifndef PROTOBUF_C_MotorHomingResponse_2eproto__INCLUDED
+#define PROTOBUF_C_MotorHomingResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _MotorHomingResponse MotorHomingResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _MotorHomingResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_progress;
+ double progress;
+ protobuf_c_boolean has_maxprogress;
+ double maxprogress;
+};
+#define MOTOR_HOMING_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&motor_homing_response__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* MotorHomingResponse methods */
+void motor_homing_response__init
+ (MotorHomingResponse *message);
+size_t motor_homing_response__get_packed_size
+ (const MotorHomingResponse *message);
+size_t motor_homing_response__pack
+ (const MotorHomingResponse *message,
+ uint8_t *out);
+size_t motor_homing_response__pack_to_buffer
+ (const MotorHomingResponse *message,
+ ProtobufCBuffer *buffer);
+MotorHomingResponse *
+ motor_homing_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void motor_homing_response__free_unpacked
+ (MotorHomingResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*MotorHomingResponse_Closure)
+ (const MotorHomingResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor motor_homing_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_MotorHomingResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingRequest.pb-c.c
new file mode 100644
index 000000000..9beca81cc
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingRequest.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorJoggingRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "MotorJoggingRequest.pb-c.h"
+void motor_jogging_request__init
+ (MotorJoggingRequest *message)
+{
+ static const MotorJoggingRequest init_value = MOTOR_JOGGING_REQUEST__INIT;
+ *message = init_value;
+}
+size_t motor_jogging_request__get_packed_size
+ (const MotorJoggingRequest *message)
+{
+ assert(message->base.descriptor == &motor_jogging_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t motor_jogging_request__pack
+ (const MotorJoggingRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &motor_jogging_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t motor_jogging_request__pack_to_buffer
+ (const MotorJoggingRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &motor_jogging_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+MotorJoggingRequest *
+ motor_jogging_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (MotorJoggingRequest *)
+ protobuf_c_message_unpack (&motor_jogging_request__descriptor,
+ allocator, len, data);
+}
+void motor_jogging_request__free_unpacked
+ (MotorJoggingRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &motor_jogging_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor motor_jogging_request__field_descriptors[3] =
+{
+ {
+ "Direction",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(MotorJoggingRequest, has_direction),
+ offsetof(MotorJoggingRequest, direction),
+ &motor_direction__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Code",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(MotorJoggingRequest, has_code),
+ offsetof(MotorJoggingRequest, code),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Speed",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(MotorJoggingRequest, has_speed),
+ offsetof(MotorJoggingRequest, speed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned motor_jogging_request__field_indices_by_name[] = {
+ 1, /* field[1] = Code */
+ 0, /* field[0] = Direction */
+ 2, /* field[2] = Speed */
+};
+static const ProtobufCIntRange motor_jogging_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor motor_jogging_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "MotorJoggingRequest",
+ "MotorJoggingRequest",
+ "MotorJoggingRequest",
+ "",
+ sizeof(MotorJoggingRequest),
+ 3,
+ motor_jogging_request__field_descriptors,
+ motor_jogging_request__field_indices_by_name,
+ 1, motor_jogging_request__number_ranges,
+ (ProtobufCMessageInit) motor_jogging_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingRequest.pb-c.h
new file mode 100644
index 000000000..9832fdcdf
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingRequest.pb-c.h
@@ -0,0 +1,77 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorJoggingRequest.proto */
+
+#ifndef PROTOBUF_C_MotorJoggingRequest_2eproto__INCLUDED
+#define PROTOBUF_C_MotorJoggingRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "MotorDirection.pb-c.h"
+
+typedef struct _MotorJoggingRequest MotorJoggingRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _MotorJoggingRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_direction;
+ MotorDirection direction;
+ protobuf_c_boolean has_code;
+ int32_t code;
+ protobuf_c_boolean has_speed;
+ double speed;
+};
+#define MOTOR_JOGGING_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&motor_jogging_request__descriptor) \
+ , 0, MOTOR_DIRECTION__Forward, 0, 0, 0, 0 }
+
+
+/* MotorJoggingRequest methods */
+void motor_jogging_request__init
+ (MotorJoggingRequest *message);
+size_t motor_jogging_request__get_packed_size
+ (const MotorJoggingRequest *message);
+size_t motor_jogging_request__pack
+ (const MotorJoggingRequest *message,
+ uint8_t *out);
+size_t motor_jogging_request__pack_to_buffer
+ (const MotorJoggingRequest *message,
+ ProtobufCBuffer *buffer);
+MotorJoggingRequest *
+ motor_jogging_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void motor_jogging_request__free_unpacked
+ (MotorJoggingRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*MotorJoggingRequest_Closure)
+ (const MotorJoggingRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor motor_jogging_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_MotorJoggingRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingResponse.pb-c.c
new file mode 100644
index 000000000..e5af97d42
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorJoggingResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "MotorJoggingResponse.pb-c.h"
+void motor_jogging_response__init
+ (MotorJoggingResponse *message)
+{
+ static const MotorJoggingResponse init_value = MOTOR_JOGGING_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t motor_jogging_response__get_packed_size
+ (const MotorJoggingResponse *message)
+{
+ assert(message->base.descriptor == &motor_jogging_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t motor_jogging_response__pack
+ (const MotorJoggingResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &motor_jogging_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t motor_jogging_response__pack_to_buffer
+ (const MotorJoggingResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &motor_jogging_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+MotorJoggingResponse *
+ motor_jogging_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (MotorJoggingResponse *)
+ protobuf_c_message_unpack (&motor_jogging_response__descriptor,
+ allocator, len, data);
+}
+void motor_jogging_response__free_unpacked
+ (MotorJoggingResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &motor_jogging_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define motor_jogging_response__field_descriptors NULL
+#define motor_jogging_response__field_indices_by_name NULL
+#define motor_jogging_response__number_ranges NULL
+const ProtobufCMessageDescriptor motor_jogging_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "MotorJoggingResponse",
+ "MotorJoggingResponse",
+ "MotorJoggingResponse",
+ "",
+ sizeof(MotorJoggingResponse),
+ 0,
+ motor_jogging_response__field_descriptors,
+ motor_jogging_response__field_indices_by_name,
+ 0, motor_jogging_response__number_ranges,
+ (ProtobufCMessageInit) motor_jogging_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingResponse.pb-c.h
new file mode 100644
index 000000000..53d11d3fc
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/MotorJoggingResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: MotorJoggingResponse.proto */
+
+#ifndef PROTOBUF_C_MotorJoggingResponse_2eproto__INCLUDED
+#define PROTOBUF_C_MotorJoggingResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _MotorJoggingResponse MotorJoggingResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _MotorJoggingResponse
+{
+ ProtobufCMessage base;
+};
+#define MOTOR_JOGGING_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&motor_jogging_response__descriptor) \
+ }
+
+
+/* MotorJoggingResponse methods */
+void motor_jogging_response__init
+ (MotorJoggingResponse *message);
+size_t motor_jogging_response__get_packed_size
+ (const MotorJoggingResponse *message);
+size_t motor_jogging_response__pack
+ (const MotorJoggingResponse *message,
+ uint8_t *out);
+size_t motor_jogging_response__pack_to_buffer
+ (const MotorJoggingResponse *message,
+ ProtobufCBuffer *buffer);
+MotorJoggingResponse *
+ motor_jogging_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void motor_jogging_response__free_unpacked
+ (MotorJoggingResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*MotorJoggingResponse_Closure)
+ (const MotorJoggingResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor motor_jogging_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_MotorJoggingResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventRequest.pb-c.c
new file mode 100644
index 000000000..34d06d55d
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ResolveEventRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ResolveEventRequest.pb-c.h"
+void resolve_event_request__init
+ (ResolveEventRequest *message)
+{
+ static const ResolveEventRequest init_value = RESOLVE_EVENT_REQUEST__INIT;
+ *message = init_value;
+}
+size_t resolve_event_request__get_packed_size
+ (const ResolveEventRequest *message)
+{
+ assert(message->base.descriptor == &resolve_event_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t resolve_event_request__pack
+ (const ResolveEventRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &resolve_event_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t resolve_event_request__pack_to_buffer
+ (const ResolveEventRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &resolve_event_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ResolveEventRequest *
+ resolve_event_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ResolveEventRequest *)
+ protobuf_c_message_unpack (&resolve_event_request__descriptor,
+ allocator, len, data);
+}
+void resolve_event_request__free_unpacked
+ (ResolveEventRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &resolve_event_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor resolve_event_request__field_descriptors[1] =
+{
+ {
+ "Type",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(ResolveEventRequest, has_type),
+ offsetof(ResolveEventRequest, type),
+ &event_type__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned resolve_event_request__field_indices_by_name[] = {
+ 0, /* field[0] = Type */
+};
+static const ProtobufCIntRange resolve_event_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor resolve_event_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ResolveEventRequest",
+ "ResolveEventRequest",
+ "ResolveEventRequest",
+ "",
+ sizeof(ResolveEventRequest),
+ 1,
+ resolve_event_request__field_descriptors,
+ resolve_event_request__field_indices_by_name,
+ 1, resolve_event_request__number_ranges,
+ (ProtobufCMessageInit) resolve_event_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventRequest.pb-c.h
new file mode 100644
index 000000000..2553d657d
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventRequest.pb-c.h
@@ -0,0 +1,73 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ResolveEventRequest.proto */
+
+#ifndef PROTOBUF_C_ResolveEventRequest_2eproto__INCLUDED
+#define PROTOBUF_C_ResolveEventRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "EventType.pb-c.h"
+
+typedef struct _ResolveEventRequest ResolveEventRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ResolveEventRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_type;
+ EventType type;
+};
+#define RESOLVE_EVENT_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&resolve_event_request__descriptor) \
+ , 0, EVENT_TYPE__ThreadBreak }
+
+
+/* ResolveEventRequest methods */
+void resolve_event_request__init
+ (ResolveEventRequest *message);
+size_t resolve_event_request__get_packed_size
+ (const ResolveEventRequest *message);
+size_t resolve_event_request__pack
+ (const ResolveEventRequest *message,
+ uint8_t *out);
+size_t resolve_event_request__pack_to_buffer
+ (const ResolveEventRequest *message,
+ ProtobufCBuffer *buffer);
+ResolveEventRequest *
+ resolve_event_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void resolve_event_request__free_unpacked
+ (ResolveEventRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ResolveEventRequest_Closure)
+ (const ResolveEventRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor resolve_event_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ResolveEventRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventResponse.pb-c.c
new file mode 100644
index 000000000..e6dfe698b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ResolveEventResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ResolveEventResponse.pb-c.h"
+void resolve_event_response__init
+ (ResolveEventResponse *message)
+{
+ static const ResolveEventResponse init_value = RESOLVE_EVENT_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t resolve_event_response__get_packed_size
+ (const ResolveEventResponse *message)
+{
+ assert(message->base.descriptor == &resolve_event_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t resolve_event_response__pack
+ (const ResolveEventResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &resolve_event_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t resolve_event_response__pack_to_buffer
+ (const ResolveEventResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &resolve_event_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ResolveEventResponse *
+ resolve_event_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ResolveEventResponse *)
+ protobuf_c_message_unpack (&resolve_event_response__descriptor,
+ allocator, len, data);
+}
+void resolve_event_response__free_unpacked
+ (ResolveEventResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &resolve_event_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define resolve_event_response__field_descriptors NULL
+#define resolve_event_response__field_indices_by_name NULL
+#define resolve_event_response__number_ranges NULL
+const ProtobufCMessageDescriptor resolve_event_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ResolveEventResponse",
+ "ResolveEventResponse",
+ "ResolveEventResponse",
+ "",
+ sizeof(ResolveEventResponse),
+ 0,
+ resolve_event_response__field_descriptors,
+ resolve_event_response__field_indices_by_name,
+ 0, resolve_event_response__number_ranges,
+ (ProtobufCMessageInit) resolve_event_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventResponse.pb-c.h
new file mode 100644
index 000000000..e8f00a2ef
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ResolveEventResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ResolveEventResponse.proto */
+
+#ifndef PROTOBUF_C_ResolveEventResponse_2eproto__INCLUDED
+#define PROTOBUF_C_ResolveEventResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _ResolveEventResponse ResolveEventResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ResolveEventResponse
+{
+ ProtobufCMessage base;
+};
+#define RESOLVE_EVENT_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&resolve_event_response__descriptor) \
+ }
+
+
+/* ResolveEventResponse methods */
+void resolve_event_response__init
+ (ResolveEventResponse *message);
+size_t resolve_event_response__get_packed_size
+ (const ResolveEventResponse *message);
+size_t resolve_event_response__pack
+ (const ResolveEventResponse *message,
+ uint8_t *out);
+size_t resolve_event_response__pack_to_buffer
+ (const ResolveEventResponse *message,
+ ProtobufCBuffer *buffer);
+ResolveEventResponse *
+ resolve_event_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void resolve_event_response__free_unpacked
+ (ResolveEventResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ResolveEventResponse_Closure)
+ (const ResolveEventResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor resolve_event_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ResolveEventResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueRequest.pb-c.c
new file mode 100644
index 000000000..62bd95f35
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SetComponentValueRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "SetComponentValueRequest.pb-c.h"
+void set_component_value_request__init
+ (SetComponentValueRequest *message)
+{
+ static const SetComponentValueRequest init_value = SET_COMPONENT_VALUE_REQUEST__INIT;
+ *message = init_value;
+}
+size_t set_component_value_request__get_packed_size
+ (const SetComponentValueRequest *message)
+{
+ assert(message->base.descriptor == &set_component_value_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t set_component_value_request__pack
+ (const SetComponentValueRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &set_component_value_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t set_component_value_request__pack_to_buffer
+ (const SetComponentValueRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &set_component_value_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+SetComponentValueRequest *
+ set_component_value_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (SetComponentValueRequest *)
+ protobuf_c_message_unpack (&set_component_value_request__descriptor,
+ allocator, len, data);
+}
+void set_component_value_request__free_unpacked
+ (SetComponentValueRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &set_component_value_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor set_component_value_request__field_descriptors[2] =
+{
+ {
+ "Component",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(SetComponentValueRequest, has_component),
+ offsetof(SetComponentValueRequest, component),
+ &value_component__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Value",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(SetComponentValueRequest, has_value),
+ offsetof(SetComponentValueRequest, value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned set_component_value_request__field_indices_by_name[] = {
+ 0, /* field[0] = Component */
+ 1, /* field[1] = Value */
+};
+static const ProtobufCIntRange set_component_value_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor set_component_value_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "SetComponentValueRequest",
+ "SetComponentValueRequest",
+ "SetComponentValueRequest",
+ "",
+ sizeof(SetComponentValueRequest),
+ 2,
+ set_component_value_request__field_descriptors,
+ set_component_value_request__field_indices_by_name,
+ 1, set_component_value_request__number_ranges,
+ (ProtobufCMessageInit) set_component_value_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueRequest.pb-c.h
new file mode 100644
index 000000000..abcaf254f
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueRequest.pb-c.h
@@ -0,0 +1,75 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SetComponentValueRequest.proto */
+
+#ifndef PROTOBUF_C_SetComponentValueRequest_2eproto__INCLUDED
+#define PROTOBUF_C_SetComponentValueRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "ValueComponent.pb-c.h"
+
+typedef struct _SetComponentValueRequest SetComponentValueRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _SetComponentValueRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_component;
+ ValueComponent component;
+ protobuf_c_boolean has_value;
+ double value;
+};
+#define SET_COMPONENT_VALUE_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&set_component_value_request__descriptor) \
+ , 0, VALUE_COMPONENT__Heater1Temp, 0, 0 }
+
+
+/* SetComponentValueRequest methods */
+void set_component_value_request__init
+ (SetComponentValueRequest *message);
+size_t set_component_value_request__get_packed_size
+ (const SetComponentValueRequest *message);
+size_t set_component_value_request__pack
+ (const SetComponentValueRequest *message,
+ uint8_t *out);
+size_t set_component_value_request__pack_to_buffer
+ (const SetComponentValueRequest *message,
+ ProtobufCBuffer *buffer);
+SetComponentValueRequest *
+ set_component_value_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void set_component_value_request__free_unpacked
+ (SetComponentValueRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*SetComponentValueRequest_Closure)
+ (const SetComponentValueRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor set_component_value_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_SetComponentValueRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueResponse.pb-c.c
new file mode 100644
index 000000000..e6b1be0c2
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SetComponentValueResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "SetComponentValueResponse.pb-c.h"
+void set_component_value_response__init
+ (SetComponentValueResponse *message)
+{
+ static const SetComponentValueResponse init_value = SET_COMPONENT_VALUE_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t set_component_value_response__get_packed_size
+ (const SetComponentValueResponse *message)
+{
+ assert(message->base.descriptor == &set_component_value_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t set_component_value_response__pack
+ (const SetComponentValueResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &set_component_value_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t set_component_value_response__pack_to_buffer
+ (const SetComponentValueResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &set_component_value_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+SetComponentValueResponse *
+ set_component_value_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (SetComponentValueResponse *)
+ protobuf_c_message_unpack (&set_component_value_response__descriptor,
+ allocator, len, data);
+}
+void set_component_value_response__free_unpacked
+ (SetComponentValueResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &set_component_value_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define set_component_value_response__field_descriptors NULL
+#define set_component_value_response__field_indices_by_name NULL
+#define set_component_value_response__number_ranges NULL
+const ProtobufCMessageDescriptor set_component_value_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "SetComponentValueResponse",
+ "SetComponentValueResponse",
+ "SetComponentValueResponse",
+ "",
+ sizeof(SetComponentValueResponse),
+ 0,
+ set_component_value_response__field_descriptors,
+ set_component_value_response__field_indices_by_name,
+ 0, set_component_value_response__number_ranges,
+ (ProtobufCMessageInit) set_component_value_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueResponse.pb-c.h
new file mode 100644
index 000000000..129c1668c
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetComponentValueResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SetComponentValueResponse.proto */
+
+#ifndef PROTOBUF_C_SetComponentValueResponse_2eproto__INCLUDED
+#define PROTOBUF_C_SetComponentValueResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _SetComponentValueResponse SetComponentValueResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _SetComponentValueResponse
+{
+ ProtobufCMessage base;
+};
+#define SET_COMPONENT_VALUE_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&set_component_value_response__descriptor) \
+ }
+
+
+/* SetComponentValueResponse methods */
+void set_component_value_response__init
+ (SetComponentValueResponse *message);
+size_t set_component_value_response__get_packed_size
+ (const SetComponentValueResponse *message);
+size_t set_component_value_response__pack
+ (const SetComponentValueResponse *message,
+ uint8_t *out);
+size_t set_component_value_response__pack_to_buffer
+ (const SetComponentValueResponse *message,
+ ProtobufCBuffer *buffer);
+SetComponentValueResponse *
+ set_component_value_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void set_component_value_response__free_unpacked
+ (SetComponentValueResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*SetComponentValueResponse_Closure)
+ (const SetComponentValueResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor set_component_value_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_SetComponentValueResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutRequest.pb-c.c
new file mode 100644
index 000000000..060449149
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SetDigitalOutRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "SetDigitalOutRequest.pb-c.h"
+void set_digital_out_request__init
+ (SetDigitalOutRequest *message)
+{
+ static const SetDigitalOutRequest init_value = SET_DIGITAL_OUT_REQUEST__INIT;
+ *message = init_value;
+}
+size_t set_digital_out_request__get_packed_size
+ (const SetDigitalOutRequest *message)
+{
+ assert(message->base.descriptor == &set_digital_out_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t set_digital_out_request__pack
+ (const SetDigitalOutRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &set_digital_out_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t set_digital_out_request__pack_to_buffer
+ (const SetDigitalOutRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &set_digital_out_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+SetDigitalOutRequest *
+ set_digital_out_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (SetDigitalOutRequest *)
+ protobuf_c_message_unpack (&set_digital_out_request__descriptor,
+ allocator, len, data);
+}
+void set_digital_out_request__free_unpacked
+ (SetDigitalOutRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &set_digital_out_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor set_digital_out_request__field_descriptors[2] =
+{
+ {
+ "Port",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(SetDigitalOutRequest, has_port),
+ offsetof(SetDigitalOutRequest, port),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Value",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(SetDigitalOutRequest, has_value),
+ offsetof(SetDigitalOutRequest, value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned set_digital_out_request__field_indices_by_name[] = {
+ 0, /* field[0] = Port */
+ 1, /* field[1] = Value */
+};
+static const ProtobufCIntRange set_digital_out_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor set_digital_out_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "SetDigitalOutRequest",
+ "SetDigitalOutRequest",
+ "SetDigitalOutRequest",
+ "",
+ sizeof(SetDigitalOutRequest),
+ 2,
+ set_digital_out_request__field_descriptors,
+ set_digital_out_request__field_indices_by_name,
+ 1, set_digital_out_request__number_ranges,
+ (ProtobufCMessageInit) set_digital_out_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutRequest.pb-c.h
new file mode 100644
index 000000000..302b41749
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutRequest.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SetDigitalOutRequest.proto */
+
+#ifndef PROTOBUF_C_SetDigitalOutRequest_2eproto__INCLUDED
+#define PROTOBUF_C_SetDigitalOutRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _SetDigitalOutRequest SetDigitalOutRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _SetDigitalOutRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_port;
+ int32_t port;
+ protobuf_c_boolean has_value;
+ protobuf_c_boolean value;
+};
+#define SET_DIGITAL_OUT_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&set_digital_out_request__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* SetDigitalOutRequest methods */
+void set_digital_out_request__init
+ (SetDigitalOutRequest *message);
+size_t set_digital_out_request__get_packed_size
+ (const SetDigitalOutRequest *message);
+size_t set_digital_out_request__pack
+ (const SetDigitalOutRequest *message,
+ uint8_t *out);
+size_t set_digital_out_request__pack_to_buffer
+ (const SetDigitalOutRequest *message,
+ ProtobufCBuffer *buffer);
+SetDigitalOutRequest *
+ set_digital_out_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void set_digital_out_request__free_unpacked
+ (SetDigitalOutRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*SetDigitalOutRequest_Closure)
+ (const SetDigitalOutRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor set_digital_out_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_SetDigitalOutRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutResponse.pb-c.c
new file mode 100644
index 000000000..eff7f8973
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SetDigitalOutResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "SetDigitalOutResponse.pb-c.h"
+void set_digital_out_response__init
+ (SetDigitalOutResponse *message)
+{
+ static const SetDigitalOutResponse init_value = SET_DIGITAL_OUT_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t set_digital_out_response__get_packed_size
+ (const SetDigitalOutResponse *message)
+{
+ assert(message->base.descriptor == &set_digital_out_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t set_digital_out_response__pack
+ (const SetDigitalOutResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &set_digital_out_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t set_digital_out_response__pack_to_buffer
+ (const SetDigitalOutResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &set_digital_out_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+SetDigitalOutResponse *
+ set_digital_out_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (SetDigitalOutResponse *)
+ protobuf_c_message_unpack (&set_digital_out_response__descriptor,
+ allocator, len, data);
+}
+void set_digital_out_response__free_unpacked
+ (SetDigitalOutResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &set_digital_out_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define set_digital_out_response__field_descriptors NULL
+#define set_digital_out_response__field_indices_by_name NULL
+#define set_digital_out_response__number_ranges NULL
+const ProtobufCMessageDescriptor set_digital_out_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "SetDigitalOutResponse",
+ "SetDigitalOutResponse",
+ "SetDigitalOutResponse",
+ "",
+ sizeof(SetDigitalOutResponse),
+ 0,
+ set_digital_out_response__field_descriptors,
+ set_digital_out_response__field_indices_by_name,
+ 0, set_digital_out_response__number_ranges,
+ (ProtobufCMessageInit) set_digital_out_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutResponse.pb-c.h
new file mode 100644
index 000000000..00696e359
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/SetDigitalOutResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SetDigitalOutResponse.proto */
+
+#ifndef PROTOBUF_C_SetDigitalOutResponse_2eproto__INCLUDED
+#define PROTOBUF_C_SetDigitalOutResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _SetDigitalOutResponse SetDigitalOutResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _SetDigitalOutResponse
+{
+ ProtobufCMessage base;
+};
+#define SET_DIGITAL_OUT_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&set_digital_out_response__descriptor) \
+ }
+
+
+/* SetDigitalOutResponse methods */
+void set_digital_out_response__init
+ (SetDigitalOutResponse *message);
+size_t set_digital_out_response__get_packed_size
+ (const SetDigitalOutResponse *message);
+size_t set_digital_out_response__pack
+ (const SetDigitalOutResponse *message,
+ uint8_t *out);
+size_t set_digital_out_response__pack_to_buffer
+ (const SetDigitalOutResponse *message,
+ ProtobufCBuffer *buffer);
+SetDigitalOutResponse *
+ set_digital_out_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void set_digital_out_response__free_unpacked
+ (SetDigitalOutResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*SetDigitalOutResponse_Closure)
+ (const SetDigitalOutResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor set_digital_out_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_SetDigitalOutResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsRequest.pb-c.c
new file mode 100644
index 000000000..33f3360a8
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StartDiagnosticsRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StartDiagnosticsRequest.pb-c.h"
+void start_diagnostics_request__init
+ (StartDiagnosticsRequest *message)
+{
+ static const StartDiagnosticsRequest init_value = START_DIAGNOSTICS_REQUEST__INIT;
+ *message = init_value;
+}
+size_t start_diagnostics_request__get_packed_size
+ (const StartDiagnosticsRequest *message)
+{
+ assert(message->base.descriptor == &start_diagnostics_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t start_diagnostics_request__pack
+ (const StartDiagnosticsRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &start_diagnostics_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t start_diagnostics_request__pack_to_buffer
+ (const StartDiagnosticsRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &start_diagnostics_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StartDiagnosticsRequest *
+ start_diagnostics_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StartDiagnosticsRequest *)
+ protobuf_c_message_unpack (&start_diagnostics_request__descriptor,
+ allocator, len, data);
+}
+void start_diagnostics_request__free_unpacked
+ (StartDiagnosticsRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &start_diagnostics_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define start_diagnostics_request__field_descriptors NULL
+#define start_diagnostics_request__field_indices_by_name NULL
+#define start_diagnostics_request__number_ranges NULL
+const ProtobufCMessageDescriptor start_diagnostics_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StartDiagnosticsRequest",
+ "StartDiagnosticsRequest",
+ "StartDiagnosticsRequest",
+ "",
+ sizeof(StartDiagnosticsRequest),
+ 0,
+ start_diagnostics_request__field_descriptors,
+ start_diagnostics_request__field_indices_by_name,
+ 0, start_diagnostics_request__number_ranges,
+ (ProtobufCMessageInit) start_diagnostics_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsRequest.pb-c.h
new file mode 100644
index 000000000..5cd35b720
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StartDiagnosticsRequest.proto */
+
+#ifndef PROTOBUF_C_StartDiagnosticsRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StartDiagnosticsRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StartDiagnosticsRequest StartDiagnosticsRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StartDiagnosticsRequest
+{
+ ProtobufCMessage base;
+};
+#define START_DIAGNOSTICS_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&start_diagnostics_request__descriptor) \
+ }
+
+
+/* StartDiagnosticsRequest methods */
+void start_diagnostics_request__init
+ (StartDiagnosticsRequest *message);
+size_t start_diagnostics_request__get_packed_size
+ (const StartDiagnosticsRequest *message);
+size_t start_diagnostics_request__pack
+ (const StartDiagnosticsRequest *message,
+ uint8_t *out);
+size_t start_diagnostics_request__pack_to_buffer
+ (const StartDiagnosticsRequest *message,
+ ProtobufCBuffer *buffer);
+StartDiagnosticsRequest *
+ start_diagnostics_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void start_diagnostics_request__free_unpacked
+ (StartDiagnosticsRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StartDiagnosticsRequest_Closure)
+ (const StartDiagnosticsRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor start_diagnostics_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StartDiagnosticsRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsResponse.pb-c.c
new file mode 100644
index 000000000..a337e084d
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsResponse.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StartDiagnosticsResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StartDiagnosticsResponse.pb-c.h"
+void start_diagnostics_response__init
+ (StartDiagnosticsResponse *message)
+{
+ static const StartDiagnosticsResponse init_value = START_DIAGNOSTICS_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t start_diagnostics_response__get_packed_size
+ (const StartDiagnosticsResponse *message)
+{
+ assert(message->base.descriptor == &start_diagnostics_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t start_diagnostics_response__pack
+ (const StartDiagnosticsResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &start_diagnostics_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t start_diagnostics_response__pack_to_buffer
+ (const StartDiagnosticsResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &start_diagnostics_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StartDiagnosticsResponse *
+ start_diagnostics_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StartDiagnosticsResponse *)
+ protobuf_c_message_unpack (&start_diagnostics_response__descriptor,
+ allocator, len, data);
+}
+void start_diagnostics_response__free_unpacked
+ (StartDiagnosticsResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &start_diagnostics_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor start_diagnostics_response__field_descriptors[4] =
+{
+ {
+ "Monitors",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(StartDiagnosticsResponse, monitors),
+ &diagnostics_monitors__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DigitalPins",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(StartDiagnosticsResponse, n_digitalpins),
+ offsetof(StartDiagnosticsResponse, digitalpins),
+ &digital_pin__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ComponentsStates",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(StartDiagnosticsResponse, n_componentsstates),
+ offsetof(StartDiagnosticsResponse, componentsstates),
+ &value_component_state__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Events",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(StartDiagnosticsResponse, n_events),
+ offsetof(StartDiagnosticsResponse, events),
+ &event__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned start_diagnostics_response__field_indices_by_name[] = {
+ 2, /* field[2] = ComponentsStates */
+ 1, /* field[1] = DigitalPins */
+ 3, /* field[3] = Events */
+ 0, /* field[0] = Monitors */
+};
+static const ProtobufCIntRange start_diagnostics_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor start_diagnostics_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StartDiagnosticsResponse",
+ "StartDiagnosticsResponse",
+ "StartDiagnosticsResponse",
+ "",
+ sizeof(StartDiagnosticsResponse),
+ 4,
+ start_diagnostics_response__field_descriptors,
+ start_diagnostics_response__field_indices_by_name,
+ 1, start_diagnostics_response__number_ranges,
+ (ProtobufCMessageInit) start_diagnostics_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsResponse.pb-c.h
new file mode 100644
index 000000000..d3967ca49
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StartDiagnosticsResponse.pb-c.h
@@ -0,0 +1,93 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StartDiagnosticsResponse.proto */
+
+#ifndef PROTOBUF_C_StartDiagnosticsResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StartDiagnosticsResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "DigitalPin.pb-c.h"
+#include "ValueComponentState.pb-c.h"
+#include "DiagnosticsMonitors.pb-c.h"
+#include "Event.pb-c.h"
+
+typedef struct _StartDiagnosticsResponse StartDiagnosticsResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StartDiagnosticsResponse
+{
+ ProtobufCMessage base;
+ /*
+ *Monitors
+ */
+ DiagnosticsMonitors *monitors;
+ /*
+ *Digital Pins States
+ */
+ size_t n_digitalpins;
+ DigitalPin **digitalpins;
+ /*
+ *Value Components Effective Values
+ */
+ size_t n_componentsstates;
+ ValueComponentState **componentsstates;
+ /*
+ *Hardware Errors & Warnings
+ */
+ size_t n_events;
+ Event **events;
+};
+#define START_DIAGNOSTICS_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&start_diagnostics_response__descriptor) \
+ , NULL, 0,NULL, 0,NULL, 0,NULL }
+
+
+/* StartDiagnosticsResponse methods */
+void start_diagnostics_response__init
+ (StartDiagnosticsResponse *message);
+size_t start_diagnostics_response__get_packed_size
+ (const StartDiagnosticsResponse *message);
+size_t start_diagnostics_response__pack
+ (const StartDiagnosticsResponse *message,
+ uint8_t *out);
+size_t start_diagnostics_response__pack_to_buffer
+ (const StartDiagnosticsResponse *message,
+ ProtobufCBuffer *buffer);
+StartDiagnosticsResponse *
+ start_diagnostics_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void start_diagnostics_response__free_unpacked
+ (StartDiagnosticsResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StartDiagnosticsResponse_Closure)
+ (const StartDiagnosticsResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor start_diagnostics_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StartDiagnosticsResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsRequest.pb-c.c
new file mode 100644
index 000000000..3f8502a2c
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StopDiagnosticsRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StopDiagnosticsRequest.pb-c.h"
+void stop_diagnostics_request__init
+ (StopDiagnosticsRequest *message)
+{
+ static const StopDiagnosticsRequest init_value = STOP_DIAGNOSTICS_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stop_diagnostics_request__get_packed_size
+ (const StopDiagnosticsRequest *message)
+{
+ assert(message->base.descriptor == &stop_diagnostics_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stop_diagnostics_request__pack
+ (const StopDiagnosticsRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stop_diagnostics_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stop_diagnostics_request__pack_to_buffer
+ (const StopDiagnosticsRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stop_diagnostics_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StopDiagnosticsRequest *
+ stop_diagnostics_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StopDiagnosticsRequest *)
+ protobuf_c_message_unpack (&stop_diagnostics_request__descriptor,
+ allocator, len, data);
+}
+void stop_diagnostics_request__free_unpacked
+ (StopDiagnosticsRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stop_diagnostics_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define stop_diagnostics_request__field_descriptors NULL
+#define stop_diagnostics_request__field_indices_by_name NULL
+#define stop_diagnostics_request__number_ranges NULL
+const ProtobufCMessageDescriptor stop_diagnostics_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StopDiagnosticsRequest",
+ "StopDiagnosticsRequest",
+ "StopDiagnosticsRequest",
+ "",
+ sizeof(StopDiagnosticsRequest),
+ 0,
+ stop_diagnostics_request__field_descriptors,
+ stop_diagnostics_request__field_indices_by_name,
+ 0, stop_diagnostics_request__number_ranges,
+ (ProtobufCMessageInit) stop_diagnostics_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsRequest.pb-c.h
new file mode 100644
index 000000000..9a0cd955e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StopDiagnosticsRequest.proto */
+
+#ifndef PROTOBUF_C_StopDiagnosticsRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StopDiagnosticsRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StopDiagnosticsRequest StopDiagnosticsRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StopDiagnosticsRequest
+{
+ ProtobufCMessage base;
+};
+#define STOP_DIAGNOSTICS_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stop_diagnostics_request__descriptor) \
+ }
+
+
+/* StopDiagnosticsRequest methods */
+void stop_diagnostics_request__init
+ (StopDiagnosticsRequest *message);
+size_t stop_diagnostics_request__get_packed_size
+ (const StopDiagnosticsRequest *message);
+size_t stop_diagnostics_request__pack
+ (const StopDiagnosticsRequest *message,
+ uint8_t *out);
+size_t stop_diagnostics_request__pack_to_buffer
+ (const StopDiagnosticsRequest *message,
+ ProtobufCBuffer *buffer);
+StopDiagnosticsRequest *
+ stop_diagnostics_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stop_diagnostics_request__free_unpacked
+ (StopDiagnosticsRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StopDiagnosticsRequest_Closure)
+ (const StopDiagnosticsRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stop_diagnostics_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StopDiagnosticsRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsResponse.pb-c.c
new file mode 100644
index 000000000..ee0c95def
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StopDiagnosticsResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StopDiagnosticsResponse.pb-c.h"
+void stop_diagnostics_response__init
+ (StopDiagnosticsResponse *message)
+{
+ static const StopDiagnosticsResponse init_value = STOP_DIAGNOSTICS_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stop_diagnostics_response__get_packed_size
+ (const StopDiagnosticsResponse *message)
+{
+ assert(message->base.descriptor == &stop_diagnostics_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stop_diagnostics_response__pack
+ (const StopDiagnosticsResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stop_diagnostics_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stop_diagnostics_response__pack_to_buffer
+ (const StopDiagnosticsResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stop_diagnostics_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StopDiagnosticsResponse *
+ stop_diagnostics_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StopDiagnosticsResponse *)
+ protobuf_c_message_unpack (&stop_diagnostics_response__descriptor,
+ allocator, len, data);
+}
+void stop_diagnostics_response__free_unpacked
+ (StopDiagnosticsResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stop_diagnostics_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define stop_diagnostics_response__field_descriptors NULL
+#define stop_diagnostics_response__field_indices_by_name NULL
+#define stop_diagnostics_response__number_ranges NULL
+const ProtobufCMessageDescriptor stop_diagnostics_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StopDiagnosticsResponse",
+ "StopDiagnosticsResponse",
+ "StopDiagnosticsResponse",
+ "",
+ sizeof(StopDiagnosticsResponse),
+ 0,
+ stop_diagnostics_response__field_descriptors,
+ stop_diagnostics_response__field_indices_by_name,
+ 0, stop_diagnostics_response__number_ranges,
+ (ProtobufCMessageInit) stop_diagnostics_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsResponse.pb-c.h
new file mode 100644
index 000000000..d901dc6c7
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/StopDiagnosticsResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StopDiagnosticsResponse.proto */
+
+#ifndef PROTOBUF_C_StopDiagnosticsResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StopDiagnosticsResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StopDiagnosticsResponse StopDiagnosticsResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StopDiagnosticsResponse
+{
+ ProtobufCMessage base;
+};
+#define STOP_DIAGNOSTICS_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stop_diagnostics_response__descriptor) \
+ }
+
+
+/* StopDiagnosticsResponse methods */
+void stop_diagnostics_response__init
+ (StopDiagnosticsResponse *message);
+size_t stop_diagnostics_response__get_packed_size
+ (const StopDiagnosticsResponse *message);
+size_t stop_diagnostics_response__pack
+ (const StopDiagnosticsResponse *message,
+ uint8_t *out);
+size_t stop_diagnostics_response__pack_to_buffer
+ (const StopDiagnosticsResponse *message,
+ ProtobufCBuffer *buffer);
+StopDiagnosticsResponse *
+ stop_diagnostics_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stop_diagnostics_response__free_unpacked
+ (StopDiagnosticsResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StopDiagnosticsResponse_Closure)
+ (const StopDiagnosticsResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stop_diagnostics_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StopDiagnosticsResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingRequest.pb-c.c
new file mode 100644
index 000000000..1e1f22bcc
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ThreadAbortJoggingRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ThreadAbortJoggingRequest.pb-c.h"
+void thread_abort_jogging_request__init
+ (ThreadAbortJoggingRequest *message)
+{
+ static const ThreadAbortJoggingRequest init_value = THREAD_ABORT_JOGGING_REQUEST__INIT;
+ *message = init_value;
+}
+size_t thread_abort_jogging_request__get_packed_size
+ (const ThreadAbortJoggingRequest *message)
+{
+ assert(message->base.descriptor == &thread_abort_jogging_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t thread_abort_jogging_request__pack
+ (const ThreadAbortJoggingRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &thread_abort_jogging_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t thread_abort_jogging_request__pack_to_buffer
+ (const ThreadAbortJoggingRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &thread_abort_jogging_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ThreadAbortJoggingRequest *
+ thread_abort_jogging_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ThreadAbortJoggingRequest *)
+ protobuf_c_message_unpack (&thread_abort_jogging_request__descriptor,
+ allocator, len, data);
+}
+void thread_abort_jogging_request__free_unpacked
+ (ThreadAbortJoggingRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &thread_abort_jogging_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define thread_abort_jogging_request__field_descriptors NULL
+#define thread_abort_jogging_request__field_indices_by_name NULL
+#define thread_abort_jogging_request__number_ranges NULL
+const ProtobufCMessageDescriptor thread_abort_jogging_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ThreadAbortJoggingRequest",
+ "ThreadAbortJoggingRequest",
+ "ThreadAbortJoggingRequest",
+ "",
+ sizeof(ThreadAbortJoggingRequest),
+ 0,
+ thread_abort_jogging_request__field_descriptors,
+ thread_abort_jogging_request__field_indices_by_name,
+ 0, thread_abort_jogging_request__number_ranges,
+ (ProtobufCMessageInit) thread_abort_jogging_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingRequest.pb-c.h
new file mode 100644
index 000000000..4bc112122
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ThreadAbortJoggingRequest.proto */
+
+#ifndef PROTOBUF_C_ThreadAbortJoggingRequest_2eproto__INCLUDED
+#define PROTOBUF_C_ThreadAbortJoggingRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _ThreadAbortJoggingRequest ThreadAbortJoggingRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ThreadAbortJoggingRequest
+{
+ ProtobufCMessage base;
+};
+#define THREAD_ABORT_JOGGING_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&thread_abort_jogging_request__descriptor) \
+ }
+
+
+/* ThreadAbortJoggingRequest methods */
+void thread_abort_jogging_request__init
+ (ThreadAbortJoggingRequest *message);
+size_t thread_abort_jogging_request__get_packed_size
+ (const ThreadAbortJoggingRequest *message);
+size_t thread_abort_jogging_request__pack
+ (const ThreadAbortJoggingRequest *message,
+ uint8_t *out);
+size_t thread_abort_jogging_request__pack_to_buffer
+ (const ThreadAbortJoggingRequest *message,
+ ProtobufCBuffer *buffer);
+ThreadAbortJoggingRequest *
+ thread_abort_jogging_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void thread_abort_jogging_request__free_unpacked
+ (ThreadAbortJoggingRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ThreadAbortJoggingRequest_Closure)
+ (const ThreadAbortJoggingRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor thread_abort_jogging_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ThreadAbortJoggingRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingResponse.pb-c.c
new file mode 100644
index 000000000..4142dfc18
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ThreadAbortJoggingResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ThreadAbortJoggingResponse.pb-c.h"
+void thread_abort_jogging_response__init
+ (ThreadAbortJoggingResponse *message)
+{
+ static const ThreadAbortJoggingResponse init_value = THREAD_ABORT_JOGGING_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t thread_abort_jogging_response__get_packed_size
+ (const ThreadAbortJoggingResponse *message)
+{
+ assert(message->base.descriptor == &thread_abort_jogging_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t thread_abort_jogging_response__pack
+ (const ThreadAbortJoggingResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &thread_abort_jogging_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t thread_abort_jogging_response__pack_to_buffer
+ (const ThreadAbortJoggingResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &thread_abort_jogging_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ThreadAbortJoggingResponse *
+ thread_abort_jogging_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ThreadAbortJoggingResponse *)
+ protobuf_c_message_unpack (&thread_abort_jogging_response__descriptor,
+ allocator, len, data);
+}
+void thread_abort_jogging_response__free_unpacked
+ (ThreadAbortJoggingResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &thread_abort_jogging_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define thread_abort_jogging_response__field_descriptors NULL
+#define thread_abort_jogging_response__field_indices_by_name NULL
+#define thread_abort_jogging_response__number_ranges NULL
+const ProtobufCMessageDescriptor thread_abort_jogging_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ThreadAbortJoggingResponse",
+ "ThreadAbortJoggingResponse",
+ "ThreadAbortJoggingResponse",
+ "",
+ sizeof(ThreadAbortJoggingResponse),
+ 0,
+ thread_abort_jogging_response__field_descriptors,
+ thread_abort_jogging_response__field_indices_by_name,
+ 0, thread_abort_jogging_response__number_ranges,
+ (ProtobufCMessageInit) thread_abort_jogging_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingResponse.pb-c.h
new file mode 100644
index 000000000..7d3d7e82a
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadAbortJoggingResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ThreadAbortJoggingResponse.proto */
+
+#ifndef PROTOBUF_C_ThreadAbortJoggingResponse_2eproto__INCLUDED
+#define PROTOBUF_C_ThreadAbortJoggingResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _ThreadAbortJoggingResponse ThreadAbortJoggingResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ThreadAbortJoggingResponse
+{
+ ProtobufCMessage base;
+};
+#define THREAD_ABORT_JOGGING_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&thread_abort_jogging_response__descriptor) \
+ }
+
+
+/* ThreadAbortJoggingResponse methods */
+void thread_abort_jogging_response__init
+ (ThreadAbortJoggingResponse *message);
+size_t thread_abort_jogging_response__get_packed_size
+ (const ThreadAbortJoggingResponse *message);
+size_t thread_abort_jogging_response__pack
+ (const ThreadAbortJoggingResponse *message,
+ uint8_t *out);
+size_t thread_abort_jogging_response__pack_to_buffer
+ (const ThreadAbortJoggingResponse *message,
+ ProtobufCBuffer *buffer);
+ThreadAbortJoggingResponse *
+ thread_abort_jogging_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void thread_abort_jogging_response__free_unpacked
+ (ThreadAbortJoggingResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ThreadAbortJoggingResponse_Closure)
+ (const ThreadAbortJoggingResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor thread_abort_jogging_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ThreadAbortJoggingResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingRequest.pb-c.c
new file mode 100644
index 000000000..f0b387414
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingRequest.pb-c.c
@@ -0,0 +1,106 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ThreadJoggingRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ThreadJoggingRequest.pb-c.h"
+void thread_jogging_request__init
+ (ThreadJoggingRequest *message)
+{
+ static const ThreadJoggingRequest init_value = THREAD_JOGGING_REQUEST__INIT;
+ *message = init_value;
+}
+size_t thread_jogging_request__get_packed_size
+ (const ThreadJoggingRequest *message)
+{
+ assert(message->base.descriptor == &thread_jogging_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t thread_jogging_request__pack
+ (const ThreadJoggingRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &thread_jogging_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t thread_jogging_request__pack_to_buffer
+ (const ThreadJoggingRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &thread_jogging_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ThreadJoggingRequest *
+ thread_jogging_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ThreadJoggingRequest *)
+ protobuf_c_message_unpack (&thread_jogging_request__descriptor,
+ allocator, len, data);
+}
+void thread_jogging_request__free_unpacked
+ (ThreadJoggingRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &thread_jogging_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor thread_jogging_request__field_descriptors[2] =
+{
+ {
+ "Direction",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(ThreadJoggingRequest, has_direction),
+ offsetof(ThreadJoggingRequest, direction),
+ &motor_direction__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Speed",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ThreadJoggingRequest, has_speed),
+ offsetof(ThreadJoggingRequest, speed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned thread_jogging_request__field_indices_by_name[] = {
+ 0, /* field[0] = Direction */
+ 1, /* field[1] = Speed */
+};
+static const ProtobufCIntRange thread_jogging_request__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 3, 1 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor thread_jogging_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ThreadJoggingRequest",
+ "ThreadJoggingRequest",
+ "ThreadJoggingRequest",
+ "",
+ sizeof(ThreadJoggingRequest),
+ 2,
+ thread_jogging_request__field_descriptors,
+ thread_jogging_request__field_indices_by_name,
+ 2, thread_jogging_request__number_ranges,
+ (ProtobufCMessageInit) thread_jogging_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingRequest.pb-c.h
new file mode 100644
index 000000000..7669215aa
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingRequest.pb-c.h
@@ -0,0 +1,75 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ThreadJoggingRequest.proto */
+
+#ifndef PROTOBUF_C_ThreadJoggingRequest_2eproto__INCLUDED
+#define PROTOBUF_C_ThreadJoggingRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "MotorDirection.pb-c.h"
+
+typedef struct _ThreadJoggingRequest ThreadJoggingRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ThreadJoggingRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_direction;
+ MotorDirection direction;
+ protobuf_c_boolean has_speed;
+ double speed;
+};
+#define THREAD_JOGGING_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&thread_jogging_request__descriptor) \
+ , 0, MOTOR_DIRECTION__Forward, 0, 0 }
+
+
+/* ThreadJoggingRequest methods */
+void thread_jogging_request__init
+ (ThreadJoggingRequest *message);
+size_t thread_jogging_request__get_packed_size
+ (const ThreadJoggingRequest *message);
+size_t thread_jogging_request__pack
+ (const ThreadJoggingRequest *message,
+ uint8_t *out);
+size_t thread_jogging_request__pack_to_buffer
+ (const ThreadJoggingRequest *message,
+ ProtobufCBuffer *buffer);
+ThreadJoggingRequest *
+ thread_jogging_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void thread_jogging_request__free_unpacked
+ (ThreadJoggingRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ThreadJoggingRequest_Closure)
+ (const ThreadJoggingRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor thread_jogging_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ThreadJoggingRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingResponse.pb-c.c
new file mode 100644
index 000000000..c54896825
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ThreadJoggingResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ThreadJoggingResponse.pb-c.h"
+void thread_jogging_response__init
+ (ThreadJoggingResponse *message)
+{
+ static const ThreadJoggingResponse init_value = THREAD_JOGGING_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t thread_jogging_response__get_packed_size
+ (const ThreadJoggingResponse *message)
+{
+ assert(message->base.descriptor == &thread_jogging_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t thread_jogging_response__pack
+ (const ThreadJoggingResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &thread_jogging_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t thread_jogging_response__pack_to_buffer
+ (const ThreadJoggingResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &thread_jogging_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ThreadJoggingResponse *
+ thread_jogging_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ThreadJoggingResponse *)
+ protobuf_c_message_unpack (&thread_jogging_response__descriptor,
+ allocator, len, data);
+}
+void thread_jogging_response__free_unpacked
+ (ThreadJoggingResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &thread_jogging_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define thread_jogging_response__field_descriptors NULL
+#define thread_jogging_response__field_indices_by_name NULL
+#define thread_jogging_response__number_ranges NULL
+const ProtobufCMessageDescriptor thread_jogging_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ThreadJoggingResponse",
+ "ThreadJoggingResponse",
+ "ThreadJoggingResponse",
+ "",
+ sizeof(ThreadJoggingResponse),
+ 0,
+ thread_jogging_response__field_descriptors,
+ thread_jogging_response__field_indices_by_name,
+ 0, thread_jogging_response__number_ranges,
+ (ProtobufCMessageInit) thread_jogging_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingResponse.pb-c.h
new file mode 100644
index 000000000..669b0a7b4
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ThreadJoggingResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ThreadJoggingResponse.proto */
+
+#ifndef PROTOBUF_C_ThreadJoggingResponse_2eproto__INCLUDED
+#define PROTOBUF_C_ThreadJoggingResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _ThreadJoggingResponse ThreadJoggingResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ThreadJoggingResponse
+{
+ ProtobufCMessage base;
+};
+#define THREAD_JOGGING_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&thread_jogging_response__descriptor) \
+ }
+
+
+/* ThreadJoggingResponse methods */
+void thread_jogging_response__init
+ (ThreadJoggingResponse *message);
+size_t thread_jogging_response__get_packed_size
+ (const ThreadJoggingResponse *message);
+size_t thread_jogging_response__pack
+ (const ThreadJoggingResponse *message,
+ uint8_t *out);
+size_t thread_jogging_response__pack_to_buffer
+ (const ThreadJoggingResponse *message,
+ ProtobufCBuffer *buffer);
+ThreadJoggingResponse *
+ thread_jogging_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void thread_jogging_response__free_unpacked
+ (ThreadJoggingResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ThreadJoggingResponse_Closure)
+ (const ThreadJoggingResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor thread_jogging_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ThreadJoggingResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponent.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponent.pb-c.c
new file mode 100644
index 000000000..b69527bd0
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponent.pb-c.c
@@ -0,0 +1,37 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ValueComponent.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ValueComponent.pb-c.h"
+static const ProtobufCEnumValue value_component__enum_values_by_number[2] =
+{
+ { "Heater1Temp", "VALUE_COMPONENT__Heater1Temp", 0 },
+ { "Heater2Temp", "VALUE_COMPONENT__Heater2Temp", 1 },
+};
+static const ProtobufCIntRange value_component__value_ranges[] = {
+{0, 0},{0, 2}
+};
+static const ProtobufCEnumValueIndex value_component__enum_values_by_name[2] =
+{
+ { "Heater1Temp", 0 },
+ { "Heater2Temp", 1 },
+};
+const ProtobufCEnumDescriptor value_component__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "ValueComponent",
+ "ValueComponent",
+ "ValueComponent",
+ "",
+ 2,
+ value_component__enum_values_by_number,
+ 2,
+ value_component__enum_values_by_name,
+ 1,
+ value_component__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponent.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponent.pb-c.h
new file mode 100644
index 000000000..1e60dac27
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponent.pb-c.h
@@ -0,0 +1,49 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ValueComponent.proto */
+
+#ifndef PROTOBUF_C_ValueComponent_2eproto__INCLUDED
+#define PROTOBUF_C_ValueComponent_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _ValueComponent {
+ /*
+ *Heater 1 Temperature (Min = 0, Max = 100)
+ */
+ VALUE_COMPONENT__Heater1Temp = 0,
+ /*
+ *Heater 2 Temperature (Min = 0, Max = 100)
+ */
+ VALUE_COMPONENT__Heater2Temp = 1
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(VALUE_COMPONENT)
+} ValueComponent;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor value_component__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ValueComponent_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponentState.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponentState.pb-c.c
new file mode 100644
index 000000000..0dfc42f2c
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponentState.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ValueComponentState.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ValueComponentState.pb-c.h"
+void value_component_state__init
+ (ValueComponentState *message)
+{
+ static const ValueComponentState init_value = VALUE_COMPONENT_STATE__INIT;
+ *message = init_value;
+}
+size_t value_component_state__get_packed_size
+ (const ValueComponentState *message)
+{
+ assert(message->base.descriptor == &value_component_state__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t value_component_state__pack
+ (const ValueComponentState *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &value_component_state__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t value_component_state__pack_to_buffer
+ (const ValueComponentState *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &value_component_state__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ValueComponentState *
+ value_component_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ValueComponentState *)
+ protobuf_c_message_unpack (&value_component_state__descriptor,
+ allocator, len, data);
+}
+void value_component_state__free_unpacked
+ (ValueComponentState *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &value_component_state__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor value_component_state__field_descriptors[2] =
+{
+ {
+ "Component",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(ValueComponentState, has_component),
+ offsetof(ValueComponentState, component),
+ &value_component__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Value",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ValueComponentState, has_value),
+ offsetof(ValueComponentState, value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned value_component_state__field_indices_by_name[] = {
+ 0, /* field[0] = Component */
+ 1, /* field[1] = Value */
+};
+static const ProtobufCIntRange value_component_state__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor value_component_state__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ValueComponentState",
+ "ValueComponentState",
+ "ValueComponentState",
+ "",
+ sizeof(ValueComponentState),
+ 2,
+ value_component_state__field_descriptors,
+ value_component_state__field_indices_by_name,
+ 1, value_component_state__number_ranges,
+ (ProtobufCMessageInit) value_component_state__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponentState.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponentState.pb-c.h
new file mode 100644
index 000000000..29ee32d55
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Diagnostics/ValueComponentState.pb-c.h
@@ -0,0 +1,75 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ValueComponentState.proto */
+
+#ifndef PROTOBUF_C_ValueComponentState_2eproto__INCLUDED
+#define PROTOBUF_C_ValueComponentState_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "ValueComponent.pb-c.h"
+
+typedef struct _ValueComponentState ValueComponentState;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ValueComponentState
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_component;
+ ValueComponent component;
+ protobuf_c_boolean has_value;
+ double value;
+};
+#define VALUE_COMPONENT_STATE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&value_component_state__descriptor) \
+ , 0, VALUE_COMPONENT__Heater1Temp, 0, 0 }
+
+
+/* ValueComponentState methods */
+void value_component_state__init
+ (ValueComponentState *message);
+size_t value_component_state__get_packed_size
+ (const ValueComponentState *message);
+size_t value_component_state__pack
+ (const ValueComponentState *message,
+ uint8_t *out);
+size_t value_component_state__pack_to_buffer
+ (const ValueComponentState *message,
+ ProtobufCBuffer *buffer);
+ValueComponentState *
+ value_component_state__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void value_component_state__free_unpacked
+ (ValueComponentState *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ValueComponentState_Closure)
+ (const ValueComponentState *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor value_component_state__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ValueComponentState_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeInput.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeInput.pb-c.c
new file mode 100644
index 000000000..8cab316aa
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeInput.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: AnalyzeInput.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "AnalyzeInput.pb-c.h"
+void analyze_input__init
+ (AnalyzeInput *message)
+{
+ static const AnalyzeInput init_value = ANALYZE_INPUT__INIT;
+ *message = init_value;
+}
+size_t analyze_input__get_packed_size
+ (const AnalyzeInput *message)
+{
+ assert(message->base.descriptor == &analyze_input__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t analyze_input__pack
+ (const AnalyzeInput *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &analyze_input__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t analyze_input__pack_to_buffer
+ (const AnalyzeInput *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &analyze_input__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+AnalyzeInput *
+ analyze_input__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (AnalyzeInput *)
+ protobuf_c_message_unpack (&analyze_input__descriptor,
+ allocator, len, data);
+}
+void analyze_input__free_unpacked
+ (AnalyzeInput *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &analyze_input__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor analyze_input__field_descriptors[1] =
+{
+ {
+ "FilePath",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(AnalyzeInput, filepath),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned analyze_input__field_indices_by_name[] = {
+ 0, /* field[0] = FilePath */
+};
+static const ProtobufCIntRange analyze_input__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor analyze_input__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "AnalyzeInput",
+ "AnalyzeInput",
+ "AnalyzeInput",
+ "",
+ sizeof(AnalyzeInput),
+ 1,
+ analyze_input__field_descriptors,
+ analyze_input__field_indices_by_name,
+ 1, analyze_input__number_ranges,
+ (ProtobufCMessageInit) analyze_input__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeInput.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeInput.pb-c.h
new file mode 100644
index 000000000..15d124132
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeInput.pb-c.h
@@ -0,0 +1,71 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: AnalyzeInput.proto */
+
+#ifndef PROTOBUF_C_AnalyzeInput_2eproto__INCLUDED
+#define PROTOBUF_C_AnalyzeInput_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _AnalyzeInput AnalyzeInput;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _AnalyzeInput
+{
+ ProtobufCMessage base;
+ char *filepath;
+};
+#define ANALYZE_INPUT__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&analyze_input__descriptor) \
+ , NULL }
+
+
+/* AnalyzeInput methods */
+void analyze_input__init
+ (AnalyzeInput *message);
+size_t analyze_input__get_packed_size
+ (const AnalyzeInput *message);
+size_t analyze_input__pack
+ (const AnalyzeInput *message,
+ uint8_t *out);
+size_t analyze_input__pack_to_buffer
+ (const AnalyzeInput *message,
+ ProtobufCBuffer *buffer);
+AnalyzeInput *
+ analyze_input__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void analyze_input__free_unpacked
+ (AnalyzeInput *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*AnalyzeInput_Closure)
+ (const AnalyzeInput *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor analyze_input__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_AnalyzeInput_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeOutput.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeOutput.pb-c.c
new file mode 100644
index 000000000..9739abc10
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeOutput.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: AnalyzeOutput.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "AnalyzeOutput.pb-c.h"
+void analyze_output__init
+ (AnalyzeOutput *message)
+{
+ static const AnalyzeOutput init_value = ANALYZE_OUTPUT__INIT;
+ *message = init_value;
+}
+size_t analyze_output__get_packed_size
+ (const AnalyzeOutput *message)
+{
+ assert(message->base.descriptor == &analyze_output__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t analyze_output__pack
+ (const AnalyzeOutput *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &analyze_output__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t analyze_output__pack_to_buffer
+ (const AnalyzeOutput *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &analyze_output__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+AnalyzeOutput *
+ analyze_output__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (AnalyzeOutput *)
+ protobuf_c_message_unpack (&analyze_output__descriptor,
+ allocator, len, data);
+}
+void analyze_output__free_unpacked
+ (AnalyzeOutput *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &analyze_output__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor analyze_output__field_descriptors[1] =
+{
+ {
+ "EmbroideryFile",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(AnalyzeOutput, embroideryfile),
+ &embroidery_file__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned analyze_output__field_indices_by_name[] = {
+ 0, /* field[0] = EmbroideryFile */
+};
+static const ProtobufCIntRange analyze_output__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor analyze_output__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "AnalyzeOutput",
+ "AnalyzeOutput",
+ "AnalyzeOutput",
+ "",
+ sizeof(AnalyzeOutput),
+ 1,
+ analyze_output__field_descriptors,
+ analyze_output__field_indices_by_name,
+ 1, analyze_output__number_ranges,
+ (ProtobufCMessageInit) analyze_output__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeOutput.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeOutput.pb-c.h
new file mode 100644
index 000000000..6e0812aa2
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/AnalyzeOutput.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: AnalyzeOutput.proto */
+
+#ifndef PROTOBUF_C_AnalyzeOutput_2eproto__INCLUDED
+#define PROTOBUF_C_AnalyzeOutput_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "EmbroideryFile.pb-c.h"
+
+typedef struct _AnalyzeOutput AnalyzeOutput;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _AnalyzeOutput
+{
+ ProtobufCMessage base;
+ EmbroideryFile *embroideryfile;
+};
+#define ANALYZE_OUTPUT__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&analyze_output__descriptor) \
+ , NULL }
+
+
+/* AnalyzeOutput methods */
+void analyze_output__init
+ (AnalyzeOutput *message);
+size_t analyze_output__get_packed_size
+ (const AnalyzeOutput *message);
+size_t analyze_output__pack
+ (const AnalyzeOutput *message,
+ uint8_t *out);
+size_t analyze_output__pack_to_buffer
+ (const AnalyzeOutput *message,
+ ProtobufCBuffer *buffer);
+AnalyzeOutput *
+ analyze_output__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void analyze_output__free_unpacked
+ (AnalyzeOutput *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*AnalyzeOutput_Closure)
+ (const AnalyzeOutput *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor analyze_output__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_AnalyzeOutput_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileInput.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileInput.pb-c.c
new file mode 100644
index 000000000..7bc45b2cf
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileInput.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ConvertFileInput.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ConvertFileInput.pb-c.h"
+void convert_file_input__init
+ (ConvertFileInput *message)
+{
+ static const ConvertFileInput init_value = CONVERT_FILE_INPUT__INIT;
+ *message = init_value;
+}
+size_t convert_file_input__get_packed_size
+ (const ConvertFileInput *message)
+{
+ assert(message->base.descriptor == &convert_file_input__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t convert_file_input__pack
+ (const ConvertFileInput *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &convert_file_input__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t convert_file_input__pack_to_buffer
+ (const ConvertFileInput *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &convert_file_input__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ConvertFileInput *
+ convert_file_input__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ConvertFileInput *)
+ protobuf_c_message_unpack (&convert_file_input__descriptor,
+ allocator, len, data);
+}
+void convert_file_input__free_unpacked
+ (ConvertFileInput *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &convert_file_input__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor convert_file_input__field_descriptors[2] =
+{
+ {
+ "SourceFile",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(ConvertFileInput, sourcefile),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TargetFile",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(ConvertFileInput, targetfile),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned convert_file_input__field_indices_by_name[] = {
+ 0, /* field[0] = SourceFile */
+ 1, /* field[1] = TargetFile */
+};
+static const ProtobufCIntRange convert_file_input__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor convert_file_input__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ConvertFileInput",
+ "ConvertFileInput",
+ "ConvertFileInput",
+ "",
+ sizeof(ConvertFileInput),
+ 2,
+ convert_file_input__field_descriptors,
+ convert_file_input__field_indices_by_name,
+ 1, convert_file_input__number_ranges,
+ (ProtobufCMessageInit) convert_file_input__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileInput.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileInput.pb-c.h
new file mode 100644
index 000000000..085ba2129
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileInput.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ConvertFileInput.proto */
+
+#ifndef PROTOBUF_C_ConvertFileInput_2eproto__INCLUDED
+#define PROTOBUF_C_ConvertFileInput_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _ConvertFileInput ConvertFileInput;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ConvertFileInput
+{
+ ProtobufCMessage base;
+ char *sourcefile;
+ char *targetfile;
+};
+#define CONVERT_FILE_INPUT__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&convert_file_input__descriptor) \
+ , NULL, NULL }
+
+
+/* ConvertFileInput methods */
+void convert_file_input__init
+ (ConvertFileInput *message);
+size_t convert_file_input__get_packed_size
+ (const ConvertFileInput *message);
+size_t convert_file_input__pack
+ (const ConvertFileInput *message,
+ uint8_t *out);
+size_t convert_file_input__pack_to_buffer
+ (const ConvertFileInput *message,
+ ProtobufCBuffer *buffer);
+ConvertFileInput *
+ convert_file_input__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void convert_file_input__free_unpacked
+ (ConvertFileInput *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ConvertFileInput_Closure)
+ (const ConvertFileInput *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor convert_file_input__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ConvertFileInput_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileOutput.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileOutput.pb-c.c
new file mode 100644
index 000000000..01121784f
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileOutput.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ConvertFileOutput.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ConvertFileOutput.pb-c.h"
+void convert_file_output__init
+ (ConvertFileOutput *message)
+{
+ static const ConvertFileOutput init_value = CONVERT_FILE_OUTPUT__INIT;
+ *message = init_value;
+}
+size_t convert_file_output__get_packed_size
+ (const ConvertFileOutput *message)
+{
+ assert(message->base.descriptor == &convert_file_output__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t convert_file_output__pack
+ (const ConvertFileOutput *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &convert_file_output__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t convert_file_output__pack_to_buffer
+ (const ConvertFileOutput *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &convert_file_output__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ConvertFileOutput *
+ convert_file_output__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ConvertFileOutput *)
+ protobuf_c_message_unpack (&convert_file_output__descriptor,
+ allocator, len, data);
+}
+void convert_file_output__free_unpacked
+ (ConvertFileOutput *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &convert_file_output__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor convert_file_output__field_descriptors[1] =
+{
+ {
+ "Successful",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(ConvertFileOutput, has_successful),
+ offsetof(ConvertFileOutput, successful),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned convert_file_output__field_indices_by_name[] = {
+ 0, /* field[0] = Successful */
+};
+static const ProtobufCIntRange convert_file_output__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor convert_file_output__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ConvertFileOutput",
+ "ConvertFileOutput",
+ "ConvertFileOutput",
+ "",
+ sizeof(ConvertFileOutput),
+ 1,
+ convert_file_output__field_descriptors,
+ convert_file_output__field_indices_by_name,
+ 1, convert_file_output__number_ranges,
+ (ProtobufCMessageInit) convert_file_output__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileOutput.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileOutput.pb-c.h
new file mode 100644
index 000000000..c3714ce09
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/ConvertFileOutput.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ConvertFileOutput.proto */
+
+#ifndef PROTOBUF_C_ConvertFileOutput_2eproto__INCLUDED
+#define PROTOBUF_C_ConvertFileOutput_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _ConvertFileOutput ConvertFileOutput;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ConvertFileOutput
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_successful;
+ protobuf_c_boolean successful;
+};
+#define CONVERT_FILE_OUTPUT__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&convert_file_output__descriptor) \
+ , 0, 0 }
+
+
+/* ConvertFileOutput methods */
+void convert_file_output__init
+ (ConvertFileOutput *message);
+size_t convert_file_output__get_packed_size
+ (const ConvertFileOutput *message);
+size_t convert_file_output__pack
+ (const ConvertFileOutput *message,
+ uint8_t *out);
+size_t convert_file_output__pack_to_buffer
+ (const ConvertFileOutput *message,
+ ProtobufCBuffer *buffer);
+ConvertFileOutput *
+ convert_file_output__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void convert_file_output__free_unpacked
+ (ConvertFileOutput *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ConvertFileOutput_Closure)
+ (const ConvertFileOutput *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor convert_file_output__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ConvertFileOutput_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/EmbroideryFile.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/EmbroideryFile.pb-c.c
new file mode 100644
index 000000000..3d07907e9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/EmbroideryFile.pb-c.c
@@ -0,0 +1,170 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: EmbroideryFile.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "EmbroideryFile.pb-c.h"
+void embroidery_file__init
+ (EmbroideryFile *message)
+{
+ static const EmbroideryFile init_value = EMBROIDERY_FILE__INIT;
+ *message = init_value;
+}
+size_t embroidery_file__get_packed_size
+ (const EmbroideryFile *message)
+{
+ assert(message->base.descriptor == &embroidery_file__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t embroidery_file__pack
+ (const EmbroideryFile *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &embroidery_file__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t embroidery_file__pack_to_buffer
+ (const EmbroideryFile *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &embroidery_file__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+EmbroideryFile *
+ embroidery_file__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (EmbroideryFile *)
+ protobuf_c_message_unpack (&embroidery_file__descriptor,
+ allocator, len, data);
+}
+void embroidery_file__free_unpacked
+ (EmbroideryFile *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &embroidery_file__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor embroidery_file__field_descriptors[7] =
+{
+ {
+ "DesignName",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(EmbroideryFile, designname),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "FileName",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(EmbroideryFile, filename),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StitchCount",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(EmbroideryFile, has_stitchcount),
+ offsetof(EmbroideryFile, stitchcount),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ColorCount",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(EmbroideryFile, has_colorcount),
+ offsetof(EmbroideryFile, colorcount),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Extents",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(EmbroideryFile, extents),
+ &extents__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Colors",
+ 6,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(EmbroideryFile, n_colors),
+ offsetof(EmbroideryFile, colors),
+ &stitch_color__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Stitches",
+ 7,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(EmbroideryFile, n_stitches),
+ offsetof(EmbroideryFile, stitches),
+ &stitch__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned embroidery_file__field_indices_by_name[] = {
+ 3, /* field[3] = ColorCount */
+ 5, /* field[5] = Colors */
+ 0, /* field[0] = DesignName */
+ 4, /* field[4] = Extents */
+ 1, /* field[1] = FileName */
+ 2, /* field[2] = StitchCount */
+ 6, /* field[6] = Stitches */
+};
+static const ProtobufCIntRange embroidery_file__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor embroidery_file__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "EmbroideryFile",
+ "EmbroideryFile",
+ "EmbroideryFile",
+ "",
+ sizeof(EmbroideryFile),
+ 7,
+ embroidery_file__field_descriptors,
+ embroidery_file__field_indices_by_name,
+ 1, embroidery_file__number_ranges,
+ (ProtobufCMessageInit) embroidery_file__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/EmbroideryFile.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/EmbroideryFile.pb-c.h
new file mode 100644
index 000000000..2ffee6518
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/EmbroideryFile.pb-c.h
@@ -0,0 +1,84 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: EmbroideryFile.proto */
+
+#ifndef PROTOBUF_C_EmbroideryFile_2eproto__INCLUDED
+#define PROTOBUF_C_EmbroideryFile_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "Extents.pb-c.h"
+#include "Stitch.pb-c.h"
+#include "StitchColor.pb-c.h"
+
+typedef struct _EmbroideryFile EmbroideryFile;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _EmbroideryFile
+{
+ ProtobufCMessage base;
+ char *designname;
+ char *filename;
+ protobuf_c_boolean has_stitchcount;
+ int32_t stitchcount;
+ protobuf_c_boolean has_colorcount;
+ int32_t colorcount;
+ Extents *extents;
+ size_t n_colors;
+ StitchColor **colors;
+ size_t n_stitches;
+ Stitch **stitches;
+};
+#define EMBROIDERY_FILE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&embroidery_file__descriptor) \
+ , NULL, NULL, 0, 0, 0, 0, NULL, 0,NULL, 0,NULL }
+
+
+/* EmbroideryFile methods */
+void embroidery_file__init
+ (EmbroideryFile *message);
+size_t embroidery_file__get_packed_size
+ (const EmbroideryFile *message);
+size_t embroidery_file__pack
+ (const EmbroideryFile *message,
+ uint8_t *out);
+size_t embroidery_file__pack_to_buffer
+ (const EmbroideryFile *message,
+ ProtobufCBuffer *buffer);
+EmbroideryFile *
+ embroidery_file__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void embroidery_file__free_unpacked
+ (EmbroideryFile *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*EmbroideryFile_Closure)
+ (const EmbroideryFile *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor embroidery_file__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_EmbroideryFile_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Extents.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Extents.pb-c.c
new file mode 100644
index 000000000..69cba25cf
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Extents.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: Extents.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "Extents.pb-c.h"
+void extents__init
+ (Extents *message)
+{
+ static const Extents init_value = EXTENTS__INIT;
+ *message = init_value;
+}
+size_t extents__get_packed_size
+ (const Extents *message)
+{
+ assert(message->base.descriptor == &extents__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t extents__pack
+ (const Extents *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &extents__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t extents__pack_to_buffer
+ (const Extents *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &extents__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+Extents *
+ extents__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (Extents *)
+ protobuf_c_message_unpack (&extents__descriptor,
+ allocator, len, data);
+}
+void extents__free_unpacked
+ (Extents *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &extents__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor extents__field_descriptors[4] =
+{
+ {
+ "X1",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(Extents, has_x1),
+ offsetof(Extents, x1),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Y1",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(Extents, has_y1),
+ offsetof(Extents, y1),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "X2",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(Extents, has_x2),
+ offsetof(Extents, x2),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Y2",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(Extents, has_y2),
+ offsetof(Extents, y2),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned extents__field_indices_by_name[] = {
+ 0, /* field[0] = X1 */
+ 2, /* field[2] = X2 */
+ 1, /* field[1] = Y1 */
+ 3, /* field[3] = Y2 */
+};
+static const ProtobufCIntRange extents__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor extents__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "Extents",
+ "Extents",
+ "Extents",
+ "",
+ sizeof(Extents),
+ 4,
+ extents__field_descriptors,
+ extents__field_indices_by_name,
+ 1, extents__number_ranges,
+ (ProtobufCMessageInit) extents__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Extents.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Extents.pb-c.h
new file mode 100644
index 000000000..a7d867bab
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Extents.pb-c.h
@@ -0,0 +1,78 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: Extents.proto */
+
+#ifndef PROTOBUF_C_Extents_2eproto__INCLUDED
+#define PROTOBUF_C_Extents_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _Extents Extents;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _Extents
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_x1;
+ int32_t x1;
+ protobuf_c_boolean has_y1;
+ int32_t y1;
+ protobuf_c_boolean has_x2;
+ int32_t x2;
+ protobuf_c_boolean has_y2;
+ int32_t y2;
+};
+#define EXTENTS__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&extents__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* Extents methods */
+void extents__init
+ (Extents *message);
+size_t extents__get_packed_size
+ (const Extents *message);
+size_t extents__pack
+ (const Extents *message,
+ uint8_t *out);
+size_t extents__pack_to_buffer
+ (const Extents *message,
+ ProtobufCBuffer *buffer);
+Extents *
+ extents__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void extents__free_unpacked
+ (Extents *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*Extents_Closure)
+ (const Extents *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor extents__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_Extents_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Stitch.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Stitch.pb-c.c
new file mode 100644
index 000000000..3d0e895bf
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Stitch.pb-c.c
@@ -0,0 +1,196 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: Stitch.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "Stitch.pb-c.h"
+void stitch__init
+ (Stitch *message)
+{
+ static const Stitch init_value = STITCH__INIT;
+ *message = init_value;
+}
+size_t stitch__get_packed_size
+ (const Stitch *message)
+{
+ assert(message->base.descriptor == &stitch__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stitch__pack
+ (const Stitch *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stitch__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stitch__pack_to_buffer
+ (const Stitch *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stitch__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+Stitch *
+ stitch__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (Stitch *)
+ protobuf_c_message_unpack (&stitch__descriptor,
+ allocator, len, data);
+}
+void stitch__free_unpacked
+ (Stitch *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stitch__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stitch__field_descriptors[9] =
+{
+ {
+ "Flag",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(Stitch, has_flag),
+ offsetof(Stitch, flag),
+ &stitch_flag__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "XX",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(Stitch, has_xx),
+ offsetof(Stitch, xx),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "YY",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(Stitch, has_yy),
+ offsetof(Stitch, yy),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DX",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(Stitch, has_dx),
+ offsetof(Stitch, dx),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DY",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(Stitch, has_dy),
+ offsetof(Stitch, dy),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Length",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(Stitch, has_length),
+ offsetof(Stitch, length),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Angle",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(Stitch, has_angle),
+ offsetof(Stitch, angle),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DAngle",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(Stitch, has_dangle),
+ offsetof(Stitch, dangle),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ColorIndex",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(Stitch, has_colorindex),
+ offsetof(Stitch, colorindex),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stitch__field_indices_by_name[] = {
+ 6, /* field[6] = Angle */
+ 8, /* field[8] = ColorIndex */
+ 7, /* field[7] = DAngle */
+ 3, /* field[3] = DX */
+ 4, /* field[4] = DY */
+ 0, /* field[0] = Flag */
+ 5, /* field[5] = Length */
+ 1, /* field[1] = XX */
+ 2, /* field[2] = YY */
+};
+static const ProtobufCIntRange stitch__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 9 }
+};
+const ProtobufCMessageDescriptor stitch__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "Stitch",
+ "Stitch",
+ "Stitch",
+ "",
+ sizeof(Stitch),
+ 9,
+ stitch__field_descriptors,
+ stitch__field_indices_by_name,
+ 1, stitch__number_ranges,
+ (ProtobufCMessageInit) stitch__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Stitch.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Stitch.pb-c.h
new file mode 100644
index 000000000..157dbce02
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/Stitch.pb-c.h
@@ -0,0 +1,89 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: Stitch.proto */
+
+#ifndef PROTOBUF_C_Stitch_2eproto__INCLUDED
+#define PROTOBUF_C_Stitch_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "StitchFlag.pb-c.h"
+
+typedef struct _Stitch Stitch;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _Stitch
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_flag;
+ StitchFlag flag;
+ protobuf_c_boolean has_xx;
+ double xx;
+ protobuf_c_boolean has_yy;
+ double yy;
+ protobuf_c_boolean has_dx;
+ double dx;
+ protobuf_c_boolean has_dy;
+ double dy;
+ protobuf_c_boolean has_length;
+ double length;
+ protobuf_c_boolean has_angle;
+ double angle;
+ protobuf_c_boolean has_dangle;
+ double dangle;
+ protobuf_c_boolean has_colorindex;
+ int32_t colorindex;
+};
+#define STITCH__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stitch__descriptor) \
+ , 0, STITCH_FLAG__NORMAL, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* Stitch methods */
+void stitch__init
+ (Stitch *message);
+size_t stitch__get_packed_size
+ (const Stitch *message);
+size_t stitch__pack
+ (const Stitch *message,
+ uint8_t *out);
+size_t stitch__pack_to_buffer
+ (const Stitch *message,
+ ProtobufCBuffer *buffer);
+Stitch *
+ stitch__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stitch__free_unpacked
+ (Stitch *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*Stitch_Closure)
+ (const Stitch *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stitch__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_Stitch_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchColor.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchColor.pb-c.c
new file mode 100644
index 000000000..a33e76d5a
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchColor.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StitchColor.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StitchColor.pb-c.h"
+void stitch_color__init
+ (StitchColor *message)
+{
+ static const StitchColor init_value = STITCH_COLOR__INIT;
+ *message = init_value;
+}
+size_t stitch_color__get_packed_size
+ (const StitchColor *message)
+{
+ assert(message->base.descriptor == &stitch_color__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stitch_color__pack
+ (const StitchColor *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stitch_color__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stitch_color__pack_to_buffer
+ (const StitchColor *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stitch_color__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StitchColor *
+ stitch_color__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StitchColor *)
+ protobuf_c_message_unpack (&stitch_color__descriptor,
+ allocator, len, data);
+}
+void stitch_color__free_unpacked
+ (StitchColor *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stitch_color__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stitch_color__field_descriptors[3] =
+{
+ {
+ "Red",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StitchColor, has_red),
+ offsetof(StitchColor, red),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Green",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StitchColor, has_green),
+ offsetof(StitchColor, green),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Blue",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StitchColor, has_blue),
+ offsetof(StitchColor, blue),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stitch_color__field_indices_by_name[] = {
+ 2, /* field[2] = Blue */
+ 1, /* field[1] = Green */
+ 0, /* field[0] = Red */
+};
+static const ProtobufCIntRange stitch_color__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor stitch_color__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StitchColor",
+ "StitchColor",
+ "StitchColor",
+ "",
+ sizeof(StitchColor),
+ 3,
+ stitch_color__field_descriptors,
+ stitch_color__field_indices_by_name,
+ 1, stitch_color__number_ranges,
+ (ProtobufCMessageInit) stitch_color__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchColor.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchColor.pb-c.h
new file mode 100644
index 000000000..38ad23dca
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchColor.pb-c.h
@@ -0,0 +1,76 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StitchColor.proto */
+
+#ifndef PROTOBUF_C_StitchColor_2eproto__INCLUDED
+#define PROTOBUF_C_StitchColor_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StitchColor StitchColor;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StitchColor
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_red;
+ int32_t red;
+ protobuf_c_boolean has_green;
+ int32_t green;
+ protobuf_c_boolean has_blue;
+ int32_t blue;
+};
+#define STITCH_COLOR__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stitch_color__descriptor) \
+ , 0, 0, 0, 0, 0, 0 }
+
+
+/* StitchColor methods */
+void stitch_color__init
+ (StitchColor *message);
+size_t stitch_color__get_packed_size
+ (const StitchColor *message);
+size_t stitch_color__pack
+ (const StitchColor *message,
+ uint8_t *out);
+size_t stitch_color__pack_to_buffer
+ (const StitchColor *message,
+ ProtobufCBuffer *buffer);
+StitchColor *
+ stitch_color__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stitch_color__free_unpacked
+ (StitchColor *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StitchColor_Closure)
+ (const StitchColor *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stitch_color__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StitchColor_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchFlag.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchFlag.pb-c.c
new file mode 100644
index 000000000..1936a5436
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchFlag.pb-c.c
@@ -0,0 +1,45 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StitchFlag.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StitchFlag.pb-c.h"
+static const ProtobufCEnumValue stitch_flag__enum_values_by_number[6] =
+{
+ { "NORMAL", "STITCH_FLAG__NORMAL", 0 },
+ { "JUMP", "STITCH_FLAG__JUMP", 1 },
+ { "TRIM", "STITCH_FLAG__TRIM", 2 },
+ { "STOP", "STITCH_FLAG__STOP", 4 },
+ { "SEQUIN", "STITCH_FLAG__SEQUIN", 8 },
+ { "END", "STITCH_FLAG__END", 16 },
+};
+static const ProtobufCIntRange stitch_flag__value_ranges[] = {
+{0, 0},{4, 3},{8, 4},{16, 5},{0, 6}
+};
+static const ProtobufCEnumValueIndex stitch_flag__enum_values_by_name[6] =
+{
+ { "END", 5 },
+ { "JUMP", 1 },
+ { "NORMAL", 0 },
+ { "SEQUIN", 4 },
+ { "STOP", 3 },
+ { "TRIM", 2 },
+};
+const ProtobufCEnumDescriptor stitch_flag__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "StitchFlag",
+ "StitchFlag",
+ "StitchFlag",
+ "",
+ 6,
+ stitch_flag__enum_values_by_number,
+ 6,
+ stitch_flag__enum_values_by_name,
+ 4,
+ stitch_flag__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchFlag.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchFlag.pb-c.h
new file mode 100644
index 000000000..81c090e35
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Embroidery/StitchFlag.pb-c.h
@@ -0,0 +1,47 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StitchFlag.proto */
+
+#ifndef PROTOBUF_C_StitchFlag_2eproto__INCLUDED
+#define PROTOBUF_C_StitchFlag_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _StitchFlag {
+ STITCH_FLAG__NORMAL = 0,
+ STITCH_FLAG__JUMP = 1,
+ STITCH_FLAG__TRIM = 2,
+ STITCH_FLAG__STOP = 4,
+ STITCH_FLAG__SEQUIN = 8,
+ STITCH_FLAG__END = 16
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(STITCH_FLAG)
+} StitchFlag;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor stitch_flag__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StitchFlag_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareConfiguration.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareConfiguration.pb-c.c
new file mode 100644
index 000000000..113b04e58
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareConfiguration.pb-c.c
@@ -0,0 +1,157 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareConfiguration.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "HardwareConfiguration.pb-c.h"
+void hardware_configuration__init
+ (HardwareConfiguration *message)
+{
+ static const HardwareConfiguration init_value = HARDWARE_CONFIGURATION__INIT;
+ *message = init_value;
+}
+size_t hardware_configuration__get_packed_size
+ (const HardwareConfiguration *message)
+{
+ assert(message->base.descriptor == &hardware_configuration__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t hardware_configuration__pack
+ (const HardwareConfiguration *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &hardware_configuration__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t hardware_configuration__pack_to_buffer
+ (const HardwareConfiguration *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &hardware_configuration__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+HardwareConfiguration *
+ hardware_configuration__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (HardwareConfiguration *)
+ protobuf_c_message_unpack (&hardware_configuration__descriptor,
+ allocator, len, data);
+}
+void hardware_configuration__free_unpacked
+ (HardwareConfiguration *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &hardware_configuration__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor hardware_configuration__field_descriptors[6] =
+{
+ {
+ "Dancers",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(HardwareConfiguration, n_dancers),
+ offsetof(HardwareConfiguration, dancers),
+ &hardware_dancer__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Dispensers",
+ 2,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(HardwareConfiguration, n_dispensers),
+ offsetof(HardwareConfiguration, dispensers),
+ &hardware_dispenser__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Motors",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(HardwareConfiguration, n_motors),
+ offsetof(HardwareConfiguration, motors),
+ &hardware_motor__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PidControls",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(HardwareConfiguration, n_pidcontrols),
+ offsetof(HardwareConfiguration, pidcontrols),
+ &hardware_pid_control__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Winders",
+ 5,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(HardwareConfiguration, n_winders),
+ offsetof(HardwareConfiguration, winders),
+ &hardware_winder__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SpeedSensors",
+ 6,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(HardwareConfiguration, n_speedsensors),
+ offsetof(HardwareConfiguration, speedsensors),
+ &hardware_speed_sensor__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned hardware_configuration__field_indices_by_name[] = {
+ 0, /* field[0] = Dancers */
+ 1, /* field[1] = Dispensers */
+ 2, /* field[2] = Motors */
+ 3, /* field[3] = PidControls */
+ 5, /* field[5] = SpeedSensors */
+ 4, /* field[4] = Winders */
+};
+static const ProtobufCIntRange hardware_configuration__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor hardware_configuration__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "HardwareConfiguration",
+ "HardwareConfiguration",
+ "HardwareConfiguration",
+ "",
+ sizeof(HardwareConfiguration),
+ 6,
+ hardware_configuration__field_descriptors,
+ hardware_configuration__field_indices_by_name,
+ 1, hardware_configuration__number_ranges,
+ (ProtobufCMessageInit) hardware_configuration__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareConfiguration.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareConfiguration.pb-c.h
new file mode 100644
index 000000000..8bf232435
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareConfiguration.pb-c.h
@@ -0,0 +1,88 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareConfiguration.proto */
+
+#ifndef PROTOBUF_C_HardwareConfiguration_2eproto__INCLUDED
+#define PROTOBUF_C_HardwareConfiguration_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "HardwareDancer.pb-c.h"
+#include "HardwareDispenser.pb-c.h"
+#include "HardwareMotor.pb-c.h"
+#include "HardwarePidControl.pb-c.h"
+#include "HardwareWinder.pb-c.h"
+#include "HardwareSpeedSensor.pb-c.h"
+
+typedef struct _HardwareConfiguration HardwareConfiguration;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _HardwareConfiguration
+{
+ ProtobufCMessage base;
+ size_t n_dancers;
+ HardwareDancer **dancers;
+ size_t n_dispensers;
+ HardwareDispenser **dispensers;
+ size_t n_motors;
+ HardwareMotor **motors;
+ size_t n_pidcontrols;
+ HardwarePidControl **pidcontrols;
+ size_t n_winders;
+ HardwareWinder **winders;
+ size_t n_speedsensors;
+ HardwareSpeedSensor **speedsensors;
+};
+#define HARDWARE_CONFIGURATION__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&hardware_configuration__descriptor) \
+ , 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL, 0,NULL }
+
+
+/* HardwareConfiguration methods */
+void hardware_configuration__init
+ (HardwareConfiguration *message);
+size_t hardware_configuration__get_packed_size
+ (const HardwareConfiguration *message);
+size_t hardware_configuration__pack
+ (const HardwareConfiguration *message,
+ uint8_t *out);
+size_t hardware_configuration__pack_to_buffer
+ (const HardwareConfiguration *message,
+ ProtobufCBuffer *buffer);
+HardwareConfiguration *
+ hardware_configuration__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void hardware_configuration__free_unpacked
+ (HardwareConfiguration *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*HardwareConfiguration_Closure)
+ (const HardwareConfiguration *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor hardware_configuration__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_HardwareConfiguration_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancer.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancer.pb-c.c
new file mode 100644
index 000000000..10d055499
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancer.pb-c.c
@@ -0,0 +1,196 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareDancer.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "HardwareDancer.pb-c.h"
+void hardware_dancer__init
+ (HardwareDancer *message)
+{
+ static const HardwareDancer init_value = HARDWARE_DANCER__INIT;
+ *message = init_value;
+}
+size_t hardware_dancer__get_packed_size
+ (const HardwareDancer *message)
+{
+ assert(message->base.descriptor == &hardware_dancer__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t hardware_dancer__pack
+ (const HardwareDancer *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &hardware_dancer__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t hardware_dancer__pack_to_buffer
+ (const HardwareDancer *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &hardware_dancer__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+HardwareDancer *
+ hardware_dancer__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (HardwareDancer *)
+ protobuf_c_message_unpack (&hardware_dancer__descriptor,
+ allocator, len, data);
+}
+void hardware_dancer__free_unpacked
+ (HardwareDancer *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &hardware_dancer__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor hardware_dancer__field_descriptors[9] =
+{
+ {
+ "HardwareDancerType",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(HardwareDancer, has_hardwaredancertype),
+ offsetof(HardwareDancer, hardwaredancertype),
+ &hardware_dancer_type__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Gradual",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(HardwareDancer, has_gradual),
+ offsetof(HardwareDancer, gradual),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "K",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareDancer, has_k),
+ offsetof(HardwareDancer, k),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "X",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareDancer, has_x),
+ offsetof(HardwareDancer, x),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PulsePerMmSpring",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareDancer, has_pulsepermmspring),
+ offsetof(HardwareDancer, pulsepermmspring),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MaximalMovementMm",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareDancer, has_maximalmovementmm),
+ offsetof(HardwareDancer, maximalmovementmm),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ZeroPoint",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareDancer, has_zeropoint),
+ offsetof(HardwareDancer, zeropoint),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ResolutionBits",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareDancer, has_resolutionbits),
+ offsetof(HardwareDancer, resolutionbits),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ArmLength",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareDancer, has_armlength),
+ offsetof(HardwareDancer, armlength),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned hardware_dancer__field_indices_by_name[] = {
+ 8, /* field[8] = ArmLength */
+ 1, /* field[1] = Gradual */
+ 0, /* field[0] = HardwareDancerType */
+ 2, /* field[2] = K */
+ 5, /* field[5] = MaximalMovementMm */
+ 4, /* field[4] = PulsePerMmSpring */
+ 7, /* field[7] = ResolutionBits */
+ 3, /* field[3] = X */
+ 6, /* field[6] = ZeroPoint */
+};
+static const ProtobufCIntRange hardware_dancer__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 9 }
+};
+const ProtobufCMessageDescriptor hardware_dancer__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "HardwareDancer",
+ "HardwareDancer",
+ "HardwareDancer",
+ "",
+ sizeof(HardwareDancer),
+ 9,
+ hardware_dancer__field_descriptors,
+ hardware_dancer__field_indices_by_name,
+ 1, hardware_dancer__number_ranges,
+ (ProtobufCMessageInit) hardware_dancer__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancer.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancer.pb-c.h
new file mode 100644
index 000000000..9f14de052
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancer.pb-c.h
@@ -0,0 +1,89 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareDancer.proto */
+
+#ifndef PROTOBUF_C_HardwareDancer_2eproto__INCLUDED
+#define PROTOBUF_C_HardwareDancer_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "HardwareDancerType.pb-c.h"
+
+typedef struct _HardwareDancer HardwareDancer;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _HardwareDancer
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_hardwaredancertype;
+ HardwareDancerType hardwaredancertype;
+ protobuf_c_boolean has_gradual;
+ protobuf_c_boolean gradual;
+ protobuf_c_boolean has_k;
+ double k;
+ protobuf_c_boolean has_x;
+ double x;
+ protobuf_c_boolean has_pulsepermmspring;
+ int32_t pulsepermmspring;
+ protobuf_c_boolean has_maximalmovementmm;
+ int32_t maximalmovementmm;
+ protobuf_c_boolean has_zeropoint;
+ int32_t zeropoint;
+ protobuf_c_boolean has_resolutionbits;
+ int32_t resolutionbits;
+ protobuf_c_boolean has_armlength;
+ int32_t armlength;
+};
+#define HARDWARE_DANCER__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&hardware_dancer__descriptor) \
+ , 0, HARDWARE_DANCER_TYPE__LeftDancer, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* HardwareDancer methods */
+void hardware_dancer__init
+ (HardwareDancer *message);
+size_t hardware_dancer__get_packed_size
+ (const HardwareDancer *message);
+size_t hardware_dancer__pack
+ (const HardwareDancer *message,
+ uint8_t *out);
+size_t hardware_dancer__pack_to_buffer
+ (const HardwareDancer *message,
+ ProtobufCBuffer *buffer);
+HardwareDancer *
+ hardware_dancer__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void hardware_dancer__free_unpacked
+ (HardwareDancer *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*HardwareDancer_Closure)
+ (const HardwareDancer *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor hardware_dancer__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_HardwareDancer_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancerType.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancerType.pb-c.c
new file mode 100644
index 000000000..d1ad051e9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancerType.pb-c.c
@@ -0,0 +1,39 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareDancerType.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "HardwareDancerType.pb-c.h"
+static const ProtobufCEnumValue hardware_dancer_type__enum_values_by_number[3] =
+{
+ { "LeftDancer", "HARDWARE_DANCER_TYPE__LeftDancer", 0 },
+ { "MiddleDancer", "HARDWARE_DANCER_TYPE__MiddleDancer", 1 },
+ { "RightDancer", "HARDWARE_DANCER_TYPE__RightDancer", 2 },
+};
+static const ProtobufCIntRange hardware_dancer_type__value_ranges[] = {
+{0, 0},{0, 3}
+};
+static const ProtobufCEnumValueIndex hardware_dancer_type__enum_values_by_name[3] =
+{
+ { "LeftDancer", 0 },
+ { "MiddleDancer", 1 },
+ { "RightDancer", 2 },
+};
+const ProtobufCEnumDescriptor hardware_dancer_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "HardwareDancerType",
+ "HardwareDancerType",
+ "HardwareDancerType",
+ "",
+ 3,
+ hardware_dancer_type__enum_values_by_number,
+ 3,
+ hardware_dancer_type__enum_values_by_name,
+ 1,
+ hardware_dancer_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancerType.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancerType.pb-c.h
new file mode 100644
index 000000000..294363d95
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDancerType.pb-c.h
@@ -0,0 +1,53 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareDancerType.proto */
+
+#ifndef PROTOBUF_C_HardwareDancerType_2eproto__INCLUDED
+#define PROTOBUF_C_HardwareDancerType_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _HardwareDancerType {
+ /*
+ *Left Dancer
+ */
+ HARDWARE_DANCER_TYPE__LeftDancer = 0,
+ /*
+ *Middle Dancer
+ */
+ HARDWARE_DANCER_TYPE__MiddleDancer = 1,
+ /*
+ *Right Dancer
+ */
+ HARDWARE_DANCER_TYPE__RightDancer = 2
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(HARDWARE_DANCER_TYPE)
+} HardwareDancerType;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor hardware_dancer_type__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_HardwareDancerType_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenser.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenser.pb-c.c
new file mode 100644
index 000000000..fdfef474f
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenser.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareDispenser.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "HardwareDispenser.pb-c.h"
+void hardware_dispenser__init
+ (HardwareDispenser *message)
+{
+ static const HardwareDispenser init_value = HARDWARE_DISPENSER__INIT;
+ *message = init_value;
+}
+size_t hardware_dispenser__get_packed_size
+ (const HardwareDispenser *message)
+{
+ assert(message->base.descriptor == &hardware_dispenser__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t hardware_dispenser__pack
+ (const HardwareDispenser *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &hardware_dispenser__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t hardware_dispenser__pack_to_buffer
+ (const HardwareDispenser *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &hardware_dispenser__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+HardwareDispenser *
+ hardware_dispenser__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (HardwareDispenser *)
+ protobuf_c_message_unpack (&hardware_dispenser__descriptor,
+ allocator, len, data);
+}
+void hardware_dispenser__free_unpacked
+ (HardwareDispenser *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &hardware_dispenser__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor hardware_dispenser__field_descriptors[4] =
+{
+ {
+ "HardwareDispenserType",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(HardwareDispenser, has_hardwaredispensertype),
+ offsetof(HardwareDispenser, hardwaredispensertype),
+ &hardware_dispenser_type__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Index",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareDispenser, has_index),
+ offsetof(HardwareDispenser, index),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "NlPerPulse",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareDispenser, has_nlperpulse),
+ offsetof(HardwareDispenser, nlperpulse),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Capacity",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareDispenser, has_capacity),
+ offsetof(HardwareDispenser, capacity),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned hardware_dispenser__field_indices_by_name[] = {
+ 3, /* field[3] = Capacity */
+ 0, /* field[0] = HardwareDispenserType */
+ 1, /* field[1] = Index */
+ 2, /* field[2] = NlPerPulse */
+};
+static const ProtobufCIntRange hardware_dispenser__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor hardware_dispenser__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "HardwareDispenser",
+ "HardwareDispenser",
+ "HardwareDispenser",
+ "",
+ sizeof(HardwareDispenser),
+ 4,
+ hardware_dispenser__field_descriptors,
+ hardware_dispenser__field_indices_by_name,
+ 1, hardware_dispenser__number_ranges,
+ (ProtobufCMessageInit) hardware_dispenser__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenser.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenser.pb-c.h
new file mode 100644
index 000000000..cd910b833
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenser.pb-c.h
@@ -0,0 +1,79 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareDispenser.proto */
+
+#ifndef PROTOBUF_C_HardwareDispenser_2eproto__INCLUDED
+#define PROTOBUF_C_HardwareDispenser_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "HardwareDispenserType.pb-c.h"
+
+typedef struct _HardwareDispenser HardwareDispenser;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _HardwareDispenser
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_hardwaredispensertype;
+ HardwareDispenserType hardwaredispensertype;
+ protobuf_c_boolean has_index;
+ int32_t index;
+ protobuf_c_boolean has_nlperpulse;
+ double nlperpulse;
+ protobuf_c_boolean has_capacity;
+ double capacity;
+};
+#define HARDWARE_DISPENSER__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&hardware_dispenser__descriptor) \
+ , 0, HARDWARE_DISPENSER_TYPE__StandardDispenser, 0, 0, 0, 0, 0, 0 }
+
+
+/* HardwareDispenser methods */
+void hardware_dispenser__init
+ (HardwareDispenser *message);
+size_t hardware_dispenser__get_packed_size
+ (const HardwareDispenser *message);
+size_t hardware_dispenser__pack
+ (const HardwareDispenser *message,
+ uint8_t *out);
+size_t hardware_dispenser__pack_to_buffer
+ (const HardwareDispenser *message,
+ ProtobufCBuffer *buffer);
+HardwareDispenser *
+ hardware_dispenser__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void hardware_dispenser__free_unpacked
+ (HardwareDispenser *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*HardwareDispenser_Closure)
+ (const HardwareDispenser *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor hardware_dispenser__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_HardwareDispenser_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenserType.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenserType.pb-c.c
new file mode 100644
index 000000000..723d41bc3
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenserType.pb-c.c
@@ -0,0 +1,35 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareDispenserType.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "HardwareDispenserType.pb-c.h"
+static const ProtobufCEnumValue hardware_dispenser_type__enum_values_by_number[1] =
+{
+ { "StandardDispenser", "HARDWARE_DISPENSER_TYPE__StandardDispenser", 0 },
+};
+static const ProtobufCIntRange hardware_dispenser_type__value_ranges[] = {
+{0, 0},{0, 1}
+};
+static const ProtobufCEnumValueIndex hardware_dispenser_type__enum_values_by_name[1] =
+{
+ { "StandardDispenser", 0 },
+};
+const ProtobufCEnumDescriptor hardware_dispenser_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "HardwareDispenserType",
+ "HardwareDispenserType",
+ "HardwareDispenserType",
+ "",
+ 1,
+ hardware_dispenser_type__enum_values_by_number,
+ 1,
+ hardware_dispenser_type__enum_values_by_name,
+ 1,
+ hardware_dispenser_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenserType.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenserType.pb-c.h
new file mode 100644
index 000000000..cd6319f60
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareDispenserType.pb-c.h
@@ -0,0 +1,42 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareDispenserType.proto */
+
+#ifndef PROTOBUF_C_HardwareDispenserType_2eproto__INCLUDED
+#define PROTOBUF_C_HardwareDispenserType_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _HardwareDispenserType {
+ HARDWARE_DISPENSER_TYPE__StandardDispenser = 0
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(HARDWARE_DISPENSER_TYPE)
+} HardwareDispenserType;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor hardware_dispenser_type__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_HardwareDispenserType_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotor.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotor.pb-c.c
new file mode 100644
index 000000000..ad64bb77c
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotor.pb-c.c
@@ -0,0 +1,391 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareMotor.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "HardwareMotor.pb-c.h"
+void hardware_motor__init
+ (HardwareMotor *message)
+{
+ static const HardwareMotor init_value = HARDWARE_MOTOR__INIT;
+ *message = init_value;
+}
+size_t hardware_motor__get_packed_size
+ (const HardwareMotor *message)
+{
+ assert(message->base.descriptor == &hardware_motor__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t hardware_motor__pack
+ (const HardwareMotor *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &hardware_motor__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t hardware_motor__pack_to_buffer
+ (const HardwareMotor *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &hardware_motor__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+HardwareMotor *
+ hardware_motor__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (HardwareMotor *)
+ protobuf_c_message_unpack (&hardware_motor__descriptor,
+ allocator, len, data);
+}
+void hardware_motor__free_unpacked
+ (HardwareMotor *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &hardware_motor__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor hardware_motor__field_descriptors[24] =
+{
+ {
+ "HardwareMotorType",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(HardwareMotor, has_hardwaremotortype),
+ offsetof(HardwareMotor, hardwaremotortype),
+ &hardware_motor_type__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MinFrequency",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_minfrequency),
+ offsetof(HardwareMotor, minfrequency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MaxFrequency",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_maxfrequency),
+ offsetof(HardwareMotor, maxfrequency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SetMicroStep",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_setmicrostep),
+ offsetof(HardwareMotor, setmicrostep),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MicroStep",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_microstep),
+ offsetof(HardwareMotor, microstep),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MaxChangeSlope",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareMotor, has_maxchangeslope),
+ offsetof(HardwareMotor, maxchangeslope),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HighLengthMicroSecond",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareMotor, has_highlengthmicrosecond),
+ offsetof(HardwareMotor, highlengthmicrosecond),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SpeedMaster",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(HardwareMotor, has_speedmaster),
+ offsetof(HardwareMotor, speedmaster),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PulsePerRound",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_pulseperround),
+ offsetof(HardwareMotor, pulseperround),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PulleyRadius",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareMotor, has_pulleyradius),
+ offsetof(HardwareMotor, pulleyradius),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ConfigWord",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_configword),
+ offsetof(HardwareMotor, configword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DirectionThreadWize",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(HardwareMotor, has_directionthreadwize),
+ offsetof(HardwareMotor, directionthreadwize),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "KvalHold",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_kvalhold),
+ offsetof(HardwareMotor, kvalhold),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "KvalRun",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_kvalrun),
+ offsetof(HardwareMotor, kvalrun),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "KvalAcc",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_kvalacc),
+ offsetof(HardwareMotor, kvalacc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "KvalDec",
+ 16,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_kvaldec),
+ offsetof(HardwareMotor, kvaldec),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "OverCurrentThreshold",
+ 17,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_overcurrentthreshold),
+ offsetof(HardwareMotor, overcurrentthreshold),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StallThreshold",
+ 18,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_stallthreshold),
+ offsetof(HardwareMotor, stallthreshold),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ThermalCompensationFactor",
+ 19,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_thermalcompensationfactor),
+ offsetof(HardwareMotor, thermalcompensationfactor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "LowSpeedOptimization",
+ 20,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(HardwareMotor, has_lowspeedoptimization),
+ offsetof(HardwareMotor, lowspeedoptimization),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StSlp",
+ 21,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_stslp),
+ offsetof(HardwareMotor, stslp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "IntSpd",
+ 22,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_intspd),
+ offsetof(HardwareMotor, intspd),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "FnSlpAcc",
+ 23,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_fnslpacc),
+ offsetof(HardwareMotor, fnslpacc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "FnSlpDec",
+ 24,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_fnslpdec),
+ offsetof(HardwareMotor, fnslpdec),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned hardware_motor__field_indices_by_name[] = {
+ 10, /* field[10] = ConfigWord */
+ 11, /* field[11] = DirectionThreadWize */
+ 22, /* field[22] = FnSlpAcc */
+ 23, /* field[23] = FnSlpDec */
+ 0, /* field[0] = HardwareMotorType */
+ 6, /* field[6] = HighLengthMicroSecond */
+ 21, /* field[21] = IntSpd */
+ 14, /* field[14] = KvalAcc */
+ 15, /* field[15] = KvalDec */
+ 12, /* field[12] = KvalHold */
+ 13, /* field[13] = KvalRun */
+ 19, /* field[19] = LowSpeedOptimization */
+ 5, /* field[5] = MaxChangeSlope */
+ 2, /* field[2] = MaxFrequency */
+ 4, /* field[4] = MicroStep */
+ 1, /* field[1] = MinFrequency */
+ 16, /* field[16] = OverCurrentThreshold */
+ 9, /* field[9] = PulleyRadius */
+ 8, /* field[8] = PulsePerRound */
+ 3, /* field[3] = SetMicroStep */
+ 7, /* field[7] = SpeedMaster */
+ 20, /* field[20] = StSlp */
+ 17, /* field[17] = StallThreshold */
+ 18, /* field[18] = ThermalCompensationFactor */
+};
+static const ProtobufCIntRange hardware_motor__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 24 }
+};
+const ProtobufCMessageDescriptor hardware_motor__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "HardwareMotor",
+ "HardwareMotor",
+ "HardwareMotor",
+ "",
+ sizeof(HardwareMotor),
+ 24,
+ hardware_motor__field_descriptors,
+ hardware_motor__field_indices_by_name,
+ 1, hardware_motor__number_ranges,
+ (ProtobufCMessageInit) hardware_motor__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotor.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotor.pb-c.h
new file mode 100644
index 000000000..7194765e0
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotor.pb-c.h
@@ -0,0 +1,119 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareMotor.proto */
+
+#ifndef PROTOBUF_C_HardwareMotor_2eproto__INCLUDED
+#define PROTOBUF_C_HardwareMotor_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "HardwareMotorType.pb-c.h"
+
+typedef struct _HardwareMotor HardwareMotor;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _HardwareMotor
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_hardwaremotortype;
+ HardwareMotorType hardwaremotortype;
+ protobuf_c_boolean has_minfrequency;
+ int32_t minfrequency;
+ protobuf_c_boolean has_maxfrequency;
+ int32_t maxfrequency;
+ protobuf_c_boolean has_setmicrostep;
+ int32_t setmicrostep;
+ protobuf_c_boolean has_microstep;
+ int32_t microstep;
+ protobuf_c_boolean has_maxchangeslope;
+ double maxchangeslope;
+ protobuf_c_boolean has_highlengthmicrosecond;
+ double highlengthmicrosecond;
+ protobuf_c_boolean has_speedmaster;
+ protobuf_c_boolean speedmaster;
+ protobuf_c_boolean has_pulseperround;
+ int32_t pulseperround;
+ protobuf_c_boolean has_pulleyradius;
+ double pulleyradius;
+ protobuf_c_boolean has_configword;
+ int32_t configword;
+ protobuf_c_boolean has_directionthreadwize;
+ protobuf_c_boolean directionthreadwize;
+ protobuf_c_boolean has_kvalhold;
+ int32_t kvalhold;
+ protobuf_c_boolean has_kvalrun;
+ int32_t kvalrun;
+ protobuf_c_boolean has_kvalacc;
+ int32_t kvalacc;
+ protobuf_c_boolean has_kvaldec;
+ int32_t kvaldec;
+ protobuf_c_boolean has_overcurrentthreshold;
+ int32_t overcurrentthreshold;
+ protobuf_c_boolean has_stallthreshold;
+ int32_t stallthreshold;
+ protobuf_c_boolean has_thermalcompensationfactor;
+ int32_t thermalcompensationfactor;
+ protobuf_c_boolean has_lowspeedoptimization;
+ protobuf_c_boolean lowspeedoptimization;
+ protobuf_c_boolean has_stslp;
+ int32_t stslp;
+ protobuf_c_boolean has_intspd;
+ int32_t intspd;
+ protobuf_c_boolean has_fnslpacc;
+ int32_t fnslpacc;
+ protobuf_c_boolean has_fnslpdec;
+ int32_t fnslpdec;
+};
+#define HARDWARE_MOTOR__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&hardware_motor__descriptor) \
+ , 0, HARDWARE_MOTOR_TYPE__MOTO_DH_CLEANHEAD, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* HardwareMotor methods */
+void hardware_motor__init
+ (HardwareMotor *message);
+size_t hardware_motor__get_packed_size
+ (const HardwareMotor *message);
+size_t hardware_motor__pack
+ (const HardwareMotor *message,
+ uint8_t *out);
+size_t hardware_motor__pack_to_buffer
+ (const HardwareMotor *message,
+ ProtobufCBuffer *buffer);
+HardwareMotor *
+ hardware_motor__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void hardware_motor__free_unpacked
+ (HardwareMotor *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*HardwareMotor_Closure)
+ (const HardwareMotor *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor hardware_motor__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_HardwareMotor_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotorType.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotorType.pb-c.c
new file mode 100644
index 000000000..be7dcf517
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotorType.pb-c.c
@@ -0,0 +1,91 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareMotorType.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "HardwareMotorType.pb-c.h"
+static const ProtobufCEnumValue hardware_motor_type__enum_values_by_number[29] =
+{
+ { "MOTO_DH_CLEANHEAD", "HARDWARE_MOTOR_TYPE__MOTO_DH_CLEANHEAD", 0 },
+ { "MOTO_DH_CLEANMECH", "HARDWARE_MOTOR_TYPE__MOTO_DH_CLEANMECH", 1 },
+ { "MOTO_DH_LID", "HARDWARE_MOTOR_TYPE__MOTO_DH_LID", 2 },
+ { "MOTO_DRYER_DRIVING", "HARDWARE_MOTOR_TYPE__MOTO_DRYER_DRIVING", 3 },
+ { "MOTO_DRYER_LID", "HARDWARE_MOTOR_TYPE__MOTO_DRYER_LID", 4 },
+ { "MOTO_DRYER_LOADARM", "HARDWARE_MOTOR_TYPE__MOTO_DRYER_LOADARM", 5 },
+ { "MOTO_DISPENSER_1", "HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_1", 6 },
+ { "MOTO_DISPENSER_2", "HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_2", 7 },
+ { "MOTO_DISPENSER_3", "HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_3", 8 },
+ { "MOTO_DISPENSER_4", "HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_4", 9 },
+ { "MOTO_DISPENSER_5", "HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_5", 10 },
+ { "MOTO_DISPENSER_6", "HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_6", 11 },
+ { "MOTO_DISPENSER_7", "HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_7", 12 },
+ { "MOTO_DISPENSER_8", "HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_8", 13 },
+ { "MOTO_SCREW", "HARDWARE_MOTOR_TYPE__MOTO_SCREW", 14 },
+ { "MOTO_WINDER", "HARDWARE_MOTOR_TYPE__MOTO_WINDER", 15 },
+ { "MOTO_LDANCER1", "HARDWARE_MOTOR_TYPE__MOTO_LDANCER1", 16 },
+ { "MOTO_LDANCER2", "HARDWARE_MOTOR_TYPE__MOTO_LDANCER2", 17 },
+ { "MOTO_LDRIVING", "HARDWARE_MOTOR_TYPE__MOTO_LDRIVING", 18 },
+ { "MOTO_LLOADING", "HARDWARE_MOTOR_TYPE__MOTO_LLOADING", 19 },
+ { "MOTO_LPIVOT1", "HARDWARE_MOTOR_TYPE__MOTO_LPIVOT1", 20 },
+ { "MOTO_RDANCER", "HARDWARE_MOTOR_TYPE__MOTO_RDANCER", 21 },
+ { "MOTO_RDRIVING", "HARDWARE_MOTOR_TYPE__MOTO_RDRIVING", 22 },
+ { "MOTO_RLOADARM", "HARDWARE_MOTOR_TYPE__MOTO_RLOADARM", 23 },
+ { "MOTO_RLOADING", "HARDWARE_MOTOR_TYPE__MOTO_RLOADING", 24 },
+ { "MOTO_SPARE1_1", "HARDWARE_MOTOR_TYPE__MOTO_SPARE1_1", 25 },
+ { "MOTO_SPARE1_2", "HARDWARE_MOTOR_TYPE__MOTO_SPARE1_2", 26 },
+ { "MOTO_SPARE2_1", "HARDWARE_MOTOR_TYPE__MOTO_SPARE2_1", 27 },
+ { "MOTO_SPARE2_2", "HARDWARE_MOTOR_TYPE__MOTO_SPARE2_2", 28 },
+};
+static const ProtobufCIntRange hardware_motor_type__value_ranges[] = {
+{0, 0},{0, 29}
+};
+static const ProtobufCEnumValueIndex hardware_motor_type__enum_values_by_name[29] =
+{
+ { "MOTO_DH_CLEANHEAD", 0 },
+ { "MOTO_DH_CLEANMECH", 1 },
+ { "MOTO_DH_LID", 2 },
+ { "MOTO_DISPENSER_1", 6 },
+ { "MOTO_DISPENSER_2", 7 },
+ { "MOTO_DISPENSER_3", 8 },
+ { "MOTO_DISPENSER_4", 9 },
+ { "MOTO_DISPENSER_5", 10 },
+ { "MOTO_DISPENSER_6", 11 },
+ { "MOTO_DISPENSER_7", 12 },
+ { "MOTO_DISPENSER_8", 13 },
+ { "MOTO_DRYER_DRIVING", 3 },
+ { "MOTO_DRYER_LID", 4 },
+ { "MOTO_DRYER_LOADARM", 5 },
+ { "MOTO_LDANCER1", 16 },
+ { "MOTO_LDANCER2", 17 },
+ { "MOTO_LDRIVING", 18 },
+ { "MOTO_LLOADING", 19 },
+ { "MOTO_LPIVOT1", 20 },
+ { "MOTO_RDANCER", 21 },
+ { "MOTO_RDRIVING", 22 },
+ { "MOTO_RLOADARM", 23 },
+ { "MOTO_RLOADING", 24 },
+ { "MOTO_SCREW", 14 },
+ { "MOTO_SPARE1_1", 25 },
+ { "MOTO_SPARE1_2", 26 },
+ { "MOTO_SPARE2_1", 27 },
+ { "MOTO_SPARE2_2", 28 },
+ { "MOTO_WINDER", 15 },
+};
+const ProtobufCEnumDescriptor hardware_motor_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "HardwareMotorType",
+ "HardwareMotorType",
+ "HardwareMotorType",
+ "",
+ 29,
+ hardware_motor_type__enum_values_by_number,
+ 29,
+ hardware_motor_type__enum_values_by_name,
+ 1,
+ hardware_motor_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotorType.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotorType.pb-c.h
new file mode 100644
index 000000000..3352ffed6
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareMotorType.pb-c.h
@@ -0,0 +1,157 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareMotorType.proto */
+
+#ifndef PROTOBUF_C_HardwareMotorType_2eproto__INCLUDED
+#define PROTOBUF_C_HardwareMotorType_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _HardwareMotorType {
+ /*
+ *Cleaning Head Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_DH_CLEANHEAD = 0,
+ /*
+ *Cleaning Mechanism Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_DH_CLEANMECH = 1,
+ /*
+ *Dyeing Head Lid Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_DH_LID = 2,
+ /*
+ *Dryer Main Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_DRYER_DRIVING = 3,
+ /*
+ *Drier Lid Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_DRYER_LID = 4,
+ /*
+ *Drier Thread Loading Arm Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_DRYER_LOADARM = 5,
+ /*
+ *Dispenser 1 Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_1 = 6,
+ /*
+ *Dispenser 2 Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_2 = 7,
+ /*
+ *Dispenser 3 Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_3 = 8,
+ /*
+ *Dispenser 4 Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_4 = 9,
+ /*
+ *Dispenser 5 Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_5 = 10,
+ /*
+ *Dispenser 6 Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_6 = 11,
+ /*
+ *Dispenser 7 Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_7 = 12,
+ /*
+ *Dispenser 8 Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_8 = 13,
+ /*
+ *Winder Screw Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_SCREW = 14,
+ /*
+ *Winder Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_WINDER = 15,
+ /*
+ *Pooler Dancer Adjustment
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_LDANCER1 = 16,
+ /*
+ *Winder Dancer Adjustment #1
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_LDANCER2 = 17,
+ /*
+ *Pooler Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_LDRIVING = 18,
+ /*
+ *Pooler Loading Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_LLOADING = 19,
+ /*
+ *Pooler Loading Pivot Arm Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_LPIVOT1 = 20,
+ /*
+ *Feeder Dancer Adjustment Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_RDANCER = 21,
+ /*
+ *Feeder Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_RDRIVING = 22,
+ /*
+ *Right Loading Arm Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_RLOADARM = 23,
+ /*
+ *Right Loading Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_RLOADING = 24,
+ /*
+ *Spare 1 Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_SPARE1_1 = 25,
+ /*
+ *Spare 2 Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_SPARE1_2 = 26,
+ /*
+ *Spare 3 Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_SPARE2_1 = 27,
+ /*
+ *Spare 4 Motor
+ */
+ HARDWARE_MOTOR_TYPE__MOTO_SPARE2_2 = 28
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(HARDWARE_MOTOR_TYPE)
+} HardwareMotorType;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor hardware_motor_type__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_HardwareMotorType_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControl.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControl.pb-c.c
new file mode 100644
index 000000000..c2e0f4a75
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControl.pb-c.c
@@ -0,0 +1,313 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwarePidControl.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "HardwarePidControl.pb-c.h"
+void hardware_pid_control__init
+ (HardwarePidControl *message)
+{
+ static const HardwarePidControl init_value = HARDWARE_PID_CONTROL__INIT;
+ *message = init_value;
+}
+size_t hardware_pid_control__get_packed_size
+ (const HardwarePidControl *message)
+{
+ assert(message->base.descriptor == &hardware_pid_control__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t hardware_pid_control__pack
+ (const HardwarePidControl *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &hardware_pid_control__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t hardware_pid_control__pack_to_buffer
+ (const HardwarePidControl *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &hardware_pid_control__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+HardwarePidControl *
+ hardware_pid_control__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (HardwarePidControl *)
+ protobuf_c_message_unpack (&hardware_pid_control__descriptor,
+ allocator, len, data);
+}
+void hardware_pid_control__free_unpacked
+ (HardwarePidControl *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &hardware_pid_control__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor hardware_pid_control__field_descriptors[18] =
+{
+ {
+ "HardwarePidControlType",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(HardwarePidControl, has_hardwarepidcontroltype),
+ offsetof(HardwarePidControl, hardwarepidcontroltype),
+ &hardware_pid_control_type__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "OutputProportionalPowerLimit",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_outputproportionalpowerlimit),
+ offsetof(HardwarePidControl, outputproportionalpowerlimit),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "OutputProportionalBand",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_outputproportionalband),
+ offsetof(HardwarePidControl, outputproportionalband),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "IntegralTime",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_integraltime),
+ offsetof(HardwarePidControl, integraltime),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DerivativeTime",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_derivativetime),
+ offsetof(HardwarePidControl, derivativetime),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SensorCorrectionAdjustment",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_sensorcorrectionadjustment),
+ offsetof(HardwarePidControl, sensorcorrectionadjustment),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SensorMinValue",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_sensorminvalue),
+ offsetof(HardwarePidControl, sensorminvalue),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SensorMaxValue",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_sensormaxvalue),
+ offsetof(HardwarePidControl, sensormaxvalue),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SetPointRampRateorSoftStartRamp",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_setpointramprateorsoftstartramp),
+ offsetof(HardwarePidControl, setpointramprateorsoftstartramp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SetPointControlOutputRate",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_setpointcontroloutputrate),
+ offsetof(HardwarePidControl, setpointcontroloutputrate),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ControlOutputType",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_controloutputtype),
+ offsetof(HardwarePidControl, controloutputtype),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SsrControlOutputType",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_ssrcontroloutputtype),
+ offsetof(HardwarePidControl, ssrcontroloutputtype),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "OutputOnOffHysteresisValue",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_outputonoffhysteresisvalue),
+ offsetof(HardwarePidControl, outputonoffhysteresisvalue),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ProcessVariableSamplingRate",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_processvariablesamplingrate),
+ offsetof(HardwarePidControl, processvariablesamplingrate),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PvInputFilterFactorMode",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_pvinputfilterfactormode),
+ offsetof(HardwarePidControl, pvinputfilterfactormode),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "OutputProportionalCycleTime",
+ 16,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwarePidControl, has_outputproportionalcycletime),
+ offsetof(HardwarePidControl, outputproportionalcycletime),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "AcHeatersHalfCycleTime",
+ 17,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwarePidControl, has_acheatershalfcycletime),
+ offsetof(HardwarePidControl, acheatershalfcycletime),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ProportionalGain",
+ 18,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwarePidControl, has_proportionalgain),
+ offsetof(HardwarePidControl, proportionalgain),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned hardware_pid_control__field_indices_by_name[] = {
+ 16, /* field[16] = AcHeatersHalfCycleTime */
+ 10, /* field[10] = ControlOutputType */
+ 4, /* field[4] = DerivativeTime */
+ 0, /* field[0] = HardwarePidControlType */
+ 3, /* field[3] = IntegralTime */
+ 12, /* field[12] = OutputOnOffHysteresisValue */
+ 2, /* field[2] = OutputProportionalBand */
+ 15, /* field[15] = OutputProportionalCycleTime */
+ 1, /* field[1] = OutputProportionalPowerLimit */
+ 13, /* field[13] = ProcessVariableSamplingRate */
+ 17, /* field[17] = ProportionalGain */
+ 14, /* field[14] = PvInputFilterFactorMode */
+ 5, /* field[5] = SensorCorrectionAdjustment */
+ 7, /* field[7] = SensorMaxValue */
+ 6, /* field[6] = SensorMinValue */
+ 9, /* field[9] = SetPointControlOutputRate */
+ 8, /* field[8] = SetPointRampRateorSoftStartRamp */
+ 11, /* field[11] = SsrControlOutputType */
+};
+static const ProtobufCIntRange hardware_pid_control__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 18 }
+};
+const ProtobufCMessageDescriptor hardware_pid_control__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "HardwarePidControl",
+ "HardwarePidControl",
+ "HardwarePidControl",
+ "",
+ sizeof(HardwarePidControl),
+ 18,
+ hardware_pid_control__field_descriptors,
+ hardware_pid_control__field_indices_by_name,
+ 1, hardware_pid_control__number_ranges,
+ (ProtobufCMessageInit) hardware_pid_control__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControl.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControl.pb-c.h
new file mode 100644
index 000000000..0f9a23cad
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControl.pb-c.h
@@ -0,0 +1,107 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwarePidControl.proto */
+
+#ifndef PROTOBUF_C_HardwarePidControl_2eproto__INCLUDED
+#define PROTOBUF_C_HardwarePidControl_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "HardwarePidControlType.pb-c.h"
+
+typedef struct _HardwarePidControl HardwarePidControl;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _HardwarePidControl
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_hardwarepidcontroltype;
+ HardwarePidControlType hardwarepidcontroltype;
+ protobuf_c_boolean has_outputproportionalpowerlimit;
+ double outputproportionalpowerlimit;
+ protobuf_c_boolean has_outputproportionalband;
+ double outputproportionalband;
+ protobuf_c_boolean has_integraltime;
+ double integraltime;
+ protobuf_c_boolean has_derivativetime;
+ double derivativetime;
+ protobuf_c_boolean has_sensorcorrectionadjustment;
+ double sensorcorrectionadjustment;
+ protobuf_c_boolean has_sensorminvalue;
+ double sensorminvalue;
+ protobuf_c_boolean has_sensormaxvalue;
+ double sensormaxvalue;
+ protobuf_c_boolean has_setpointramprateorsoftstartramp;
+ double setpointramprateorsoftstartramp;
+ protobuf_c_boolean has_setpointcontroloutputrate;
+ double setpointcontroloutputrate;
+ protobuf_c_boolean has_controloutputtype;
+ double controloutputtype;
+ protobuf_c_boolean has_ssrcontroloutputtype;
+ double ssrcontroloutputtype;
+ protobuf_c_boolean has_outputonoffhysteresisvalue;
+ double outputonoffhysteresisvalue;
+ protobuf_c_boolean has_processvariablesamplingrate;
+ double processvariablesamplingrate;
+ protobuf_c_boolean has_pvinputfilterfactormode;
+ double pvinputfilterfactormode;
+ protobuf_c_boolean has_outputproportionalcycletime;
+ int32_t outputproportionalcycletime;
+ protobuf_c_boolean has_acheatershalfcycletime;
+ int32_t acheatershalfcycletime;
+ protobuf_c_boolean has_proportionalgain;
+ double proportionalgain;
+};
+#define HARDWARE_PID_CONTROL__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&hardware_pid_control__descriptor) \
+ , 0, HARDWARE_PID_CONTROL_TYPE__DryerHeater1000w, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* HardwarePidControl methods */
+void hardware_pid_control__init
+ (HardwarePidControl *message);
+size_t hardware_pid_control__get_packed_size
+ (const HardwarePidControl *message);
+size_t hardware_pid_control__pack
+ (const HardwarePidControl *message,
+ uint8_t *out);
+size_t hardware_pid_control__pack_to_buffer
+ (const HardwarePidControl *message,
+ ProtobufCBuffer *buffer);
+HardwarePidControl *
+ hardware_pid_control__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void hardware_pid_control__free_unpacked
+ (HardwarePidControl *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*HardwarePidControl_Closure)
+ (const HardwarePidControl *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor hardware_pid_control__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_HardwarePidControl_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControlType.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControlType.pb-c.c
new file mode 100644
index 000000000..e40a39f14
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControlType.pb-c.c
@@ -0,0 +1,75 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwarePidControlType.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "HardwarePidControlType.pb-c.h"
+static const ProtobufCEnumValue hardware_pid_control_type__enum_values_by_number[21] =
+{
+ { "DryerHeater1000w", "HARDWARE_PID_CONTROL_TYPE__DryerHeater1000w", 0 },
+ { "DryerHeater200w1", "HARDWARE_PID_CONTROL_TYPE__DryerHeater200w1", 1 },
+ { "DryerHeater200w2", "HARDWARE_PID_CONTROL_TYPE__DryerHeater200w2", 2 },
+ { "HeadHeaterZ1", "HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ1", 3 },
+ { "HeadHeaterZ2", "HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ2", 4 },
+ { "HeadHeaterZ3", "HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ3", 5 },
+ { "HeadHeaterZ4", "HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ4", 6 },
+ { "MixerHeater", "HARDWARE_PID_CONTROL_TYPE__MixerHeater", 7 },
+ { "WasteControl", "HARDWARE_PID_CONTROL_TYPE__WasteControl", 8 },
+ { "MotorDryer", "HARDWARE_PID_CONTROL_TYPE__MotorDryer", 9 },
+ { "MotorFeeder", "HARDWARE_PID_CONTROL_TYPE__MotorFeeder", 10 },
+ { "MotorPooler", "HARDWARE_PID_CONTROL_TYPE__MotorPooler", 11 },
+ { "MotorWinder", "HARDWARE_PID_CONTROL_TYPE__MotorWinder", 12 },
+ { "Dispenser1", "HARDWARE_PID_CONTROL_TYPE__Dispenser1", 13 },
+ { "Dispenser2", "HARDWARE_PID_CONTROL_TYPE__Dispenser2", 14 },
+ { "Dispenser3", "HARDWARE_PID_CONTROL_TYPE__Dispenser3", 15 },
+ { "Dispenser4", "HARDWARE_PID_CONTROL_TYPE__Dispenser4", 16 },
+ { "Dispenser5", "HARDWARE_PID_CONTROL_TYPE__Dispenser5", 17 },
+ { "Dispenser6", "HARDWARE_PID_CONTROL_TYPE__Dispenser6", 18 },
+ { "Dispenser7", "HARDWARE_PID_CONTROL_TYPE__Dispenser7", 19 },
+ { "Dispenser8", "HARDWARE_PID_CONTROL_TYPE__Dispenser8", 20 },
+};
+static const ProtobufCIntRange hardware_pid_control_type__value_ranges[] = {
+{0, 0},{0, 21}
+};
+static const ProtobufCEnumValueIndex hardware_pid_control_type__enum_values_by_name[21] =
+{
+ { "Dispenser1", 13 },
+ { "Dispenser2", 14 },
+ { "Dispenser3", 15 },
+ { "Dispenser4", 16 },
+ { "Dispenser5", 17 },
+ { "Dispenser6", 18 },
+ { "Dispenser7", 19 },
+ { "Dispenser8", 20 },
+ { "DryerHeater1000w", 0 },
+ { "DryerHeater200w1", 1 },
+ { "DryerHeater200w2", 2 },
+ { "HeadHeaterZ1", 3 },
+ { "HeadHeaterZ2", 4 },
+ { "HeadHeaterZ3", 5 },
+ { "HeadHeaterZ4", 6 },
+ { "MixerHeater", 7 },
+ { "MotorDryer", 9 },
+ { "MotorFeeder", 10 },
+ { "MotorPooler", 11 },
+ { "MotorWinder", 12 },
+ { "WasteControl", 8 },
+};
+const ProtobufCEnumDescriptor hardware_pid_control_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "HardwarePidControlType",
+ "HardwarePidControlType",
+ "HardwarePidControlType",
+ "",
+ 21,
+ hardware_pid_control_type__enum_values_by_number,
+ 21,
+ hardware_pid_control_type__enum_values_by_name,
+ 1,
+ hardware_pid_control_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControlType.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControlType.pb-c.h
new file mode 100644
index 000000000..04b128949
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwarePidControlType.pb-c.h
@@ -0,0 +1,125 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwarePidControlType.proto */
+
+#ifndef PROTOBUF_C_HardwarePidControlType_2eproto__INCLUDED
+#define PROTOBUF_C_HardwarePidControlType_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _HardwarePidControlType {
+ /*
+ *Dryer Heater 1000w
+ */
+ HARDWARE_PID_CONTROL_TYPE__DryerHeater1000w = 0,
+ /*
+ *Dryer Heater 200w 1
+ */
+ HARDWARE_PID_CONTROL_TYPE__DryerHeater200w1 = 1,
+ /*
+ *Dryer Heater 200w 2
+ */
+ HARDWARE_PID_CONTROL_TYPE__DryerHeater200w2 = 2,
+ /*
+ *Head Heater Zone 1
+ */
+ HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ1 = 3,
+ /*
+ *Head Heater Zone 2
+ */
+ HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ2 = 4,
+ /*
+ *Head Heater Zone 3
+ */
+ HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ3 = 5,
+ /*
+ *Head Heater Zone 4
+ */
+ HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ4 = 6,
+ /*
+ *Mixer Heater
+ */
+ HARDWARE_PID_CONTROL_TYPE__MixerHeater = 7,
+ /*
+ *Waste Control
+ */
+ HARDWARE_PID_CONTROL_TYPE__WasteControl = 8,
+ /*
+ *Dryer Motor
+ */
+ HARDWARE_PID_CONTROL_TYPE__MotorDryer = 9,
+ /*
+ *Feeder Motor
+ */
+ HARDWARE_PID_CONTROL_TYPE__MotorFeeder = 10,
+ /*
+ *Pooler Motor
+ */
+ HARDWARE_PID_CONTROL_TYPE__MotorPooler = 11,
+ /*
+ *Winder Motor
+ */
+ HARDWARE_PID_CONTROL_TYPE__MotorWinder = 12,
+ /*
+ *Dispenser 1
+ */
+ HARDWARE_PID_CONTROL_TYPE__Dispenser1 = 13,
+ /*
+ *Dispenser 2
+ */
+ HARDWARE_PID_CONTROL_TYPE__Dispenser2 = 14,
+ /*
+ *Dispenser 3
+ */
+ HARDWARE_PID_CONTROL_TYPE__Dispenser3 = 15,
+ /*
+ *Dispenser 4
+ */
+ HARDWARE_PID_CONTROL_TYPE__Dispenser4 = 16,
+ /*
+ *Dispenser 5
+ */
+ HARDWARE_PID_CONTROL_TYPE__Dispenser5 = 17,
+ /*
+ *Dispenser 6
+ */
+ HARDWARE_PID_CONTROL_TYPE__Dispenser6 = 18,
+ /*
+ *Dispenser 7
+ */
+ HARDWARE_PID_CONTROL_TYPE__Dispenser7 = 19,
+ /*
+ *Dispenser 8
+ */
+ HARDWARE_PID_CONTROL_TYPE__Dispenser8 = 20
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(HARDWARE_PID_CONTROL_TYPE)
+} HardwarePidControlType;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor hardware_pid_control_type__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_HardwarePidControlType_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensor.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensor.pb-c.c
new file mode 100644
index 000000000..a0f34fe31
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensor.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareSpeedSensor.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "HardwareSpeedSensor.pb-c.h"
+void hardware_speed_sensor__init
+ (HardwareSpeedSensor *message)
+{
+ static const HardwareSpeedSensor init_value = HARDWARE_SPEED_SENSOR__INIT;
+ *message = init_value;
+}
+size_t hardware_speed_sensor__get_packed_size
+ (const HardwareSpeedSensor *message)
+{
+ assert(message->base.descriptor == &hardware_speed_sensor__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t hardware_speed_sensor__pack
+ (const HardwareSpeedSensor *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &hardware_speed_sensor__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t hardware_speed_sensor__pack_to_buffer
+ (const HardwareSpeedSensor *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &hardware_speed_sensor__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+HardwareSpeedSensor *
+ hardware_speed_sensor__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (HardwareSpeedSensor *)
+ protobuf_c_message_unpack (&hardware_speed_sensor__descriptor,
+ allocator, len, data);
+}
+void hardware_speed_sensor__free_unpacked
+ (HardwareSpeedSensor *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &hardware_speed_sensor__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor hardware_speed_sensor__field_descriptors[3] =
+{
+ {
+ "HardwareSpeedSensorType",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(HardwareSpeedSensor, has_hardwarespeedsensortype),
+ offsetof(HardwareSpeedSensor, hardwarespeedsensortype),
+ &hardware_speed_sensor_type__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ResolutionBits",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareSpeedSensor, has_resolutionbits),
+ offsetof(HardwareSpeedSensor, resolutionbits),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Perimeter",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareSpeedSensor, has_perimeter),
+ offsetof(HardwareSpeedSensor, perimeter),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned hardware_speed_sensor__field_indices_by_name[] = {
+ 0, /* field[0] = HardwareSpeedSensorType */
+ 2, /* field[2] = Perimeter */
+ 1, /* field[1] = ResolutionBits */
+};
+static const ProtobufCIntRange hardware_speed_sensor__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor hardware_speed_sensor__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "HardwareSpeedSensor",
+ "HardwareSpeedSensor",
+ "HardwareSpeedSensor",
+ "",
+ sizeof(HardwareSpeedSensor),
+ 3,
+ hardware_speed_sensor__field_descriptors,
+ hardware_speed_sensor__field_indices_by_name,
+ 1, hardware_speed_sensor__number_ranges,
+ (ProtobufCMessageInit) hardware_speed_sensor__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensor.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensor.pb-c.h
new file mode 100644
index 000000000..8c46e86c0
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensor.pb-c.h
@@ -0,0 +1,77 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareSpeedSensor.proto */
+
+#ifndef PROTOBUF_C_HardwareSpeedSensor_2eproto__INCLUDED
+#define PROTOBUF_C_HardwareSpeedSensor_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "HardwareSpeedSensorType.pb-c.h"
+
+typedef struct _HardwareSpeedSensor HardwareSpeedSensor;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _HardwareSpeedSensor
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_hardwarespeedsensortype;
+ HardwareSpeedSensorType hardwarespeedsensortype;
+ protobuf_c_boolean has_resolutionbits;
+ int32_t resolutionbits;
+ protobuf_c_boolean has_perimeter;
+ double perimeter;
+};
+#define HARDWARE_SPEED_SENSOR__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&hardware_speed_sensor__descriptor) \
+ , 0, HARDWARE_SPEED_SENSOR_TYPE__DefaultSpeedSensor, 0, 0, 0, 0 }
+
+
+/* HardwareSpeedSensor methods */
+void hardware_speed_sensor__init
+ (HardwareSpeedSensor *message);
+size_t hardware_speed_sensor__get_packed_size
+ (const HardwareSpeedSensor *message);
+size_t hardware_speed_sensor__pack
+ (const HardwareSpeedSensor *message,
+ uint8_t *out);
+size_t hardware_speed_sensor__pack_to_buffer
+ (const HardwareSpeedSensor *message,
+ ProtobufCBuffer *buffer);
+HardwareSpeedSensor *
+ hardware_speed_sensor__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void hardware_speed_sensor__free_unpacked
+ (HardwareSpeedSensor *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*HardwareSpeedSensor_Closure)
+ (const HardwareSpeedSensor *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor hardware_speed_sensor__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_HardwareSpeedSensor_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensorType.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensorType.pb-c.c
new file mode 100644
index 000000000..20c66aff3
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensorType.pb-c.c
@@ -0,0 +1,35 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareSpeedSensorType.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "HardwareSpeedSensorType.pb-c.h"
+static const ProtobufCEnumValue hardware_speed_sensor_type__enum_values_by_number[1] =
+{
+ { "DefaultSpeedSensor", "HARDWARE_SPEED_SENSOR_TYPE__DefaultSpeedSensor", 0 },
+};
+static const ProtobufCIntRange hardware_speed_sensor_type__value_ranges[] = {
+{0, 0},{0, 1}
+};
+static const ProtobufCEnumValueIndex hardware_speed_sensor_type__enum_values_by_name[1] =
+{
+ { "DefaultSpeedSensor", 0 },
+};
+const ProtobufCEnumDescriptor hardware_speed_sensor_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "HardwareSpeedSensorType",
+ "HardwareSpeedSensorType",
+ "HardwareSpeedSensorType",
+ "",
+ 1,
+ hardware_speed_sensor_type__enum_values_by_number,
+ 1,
+ hardware_speed_sensor_type__enum_values_by_name,
+ 1,
+ hardware_speed_sensor_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensorType.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensorType.pb-c.h
new file mode 100644
index 000000000..567c2246e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareSpeedSensorType.pb-c.h
@@ -0,0 +1,45 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareSpeedSensorType.proto */
+
+#ifndef PROTOBUF_C_HardwareSpeedSensorType_2eproto__INCLUDED
+#define PROTOBUF_C_HardwareSpeedSensorType_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _HardwareSpeedSensorType {
+ /*
+ *Default Speed Sensor
+ */
+ HARDWARE_SPEED_SENSOR_TYPE__DefaultSpeedSensor = 0
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(HARDWARE_SPEED_SENSOR_TYPE)
+} HardwareSpeedSensorType;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor hardware_speed_sensor_type__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_HardwareSpeedSensorType_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinder.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinder.pb-c.c
new file mode 100644
index 000000000..2ed95d9a5
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinder.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareWinder.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "HardwareWinder.pb-c.h"
+void hardware_winder__init
+ (HardwareWinder *message)
+{
+ static const HardwareWinder init_value = HARDWARE_WINDER__INIT;
+ *message = init_value;
+}
+size_t hardware_winder__get_packed_size
+ (const HardwareWinder *message)
+{
+ assert(message->base.descriptor == &hardware_winder__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t hardware_winder__pack
+ (const HardwareWinder *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &hardware_winder__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t hardware_winder__pack_to_buffer
+ (const HardwareWinder *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &hardware_winder__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+HardwareWinder *
+ hardware_winder__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (HardwareWinder *)
+ protobuf_c_message_unpack (&hardware_winder__descriptor,
+ allocator, len, data);
+}
+void hardware_winder__free_unpacked
+ (HardwareWinder *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &hardware_winder__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor hardware_winder__field_descriptors[2] =
+{
+ {
+ "HardwareWinderType",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(HardwareWinder, has_hardwarewindertype),
+ offsetof(HardwareWinder, hardwarewindertype),
+ &hardware_winder_type__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MillimeterPerRotation",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareWinder, has_millimeterperrotation),
+ offsetof(HardwareWinder, millimeterperrotation),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned hardware_winder__field_indices_by_name[] = {
+ 0, /* field[0] = HardwareWinderType */
+ 1, /* field[1] = MillimeterPerRotation */
+};
+static const ProtobufCIntRange hardware_winder__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor hardware_winder__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "HardwareWinder",
+ "HardwareWinder",
+ "HardwareWinder",
+ "",
+ sizeof(HardwareWinder),
+ 2,
+ hardware_winder__field_descriptors,
+ hardware_winder__field_indices_by_name,
+ 1, hardware_winder__number_ranges,
+ (ProtobufCMessageInit) hardware_winder__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinder.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinder.pb-c.h
new file mode 100644
index 000000000..1595e4313
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinder.pb-c.h
@@ -0,0 +1,75 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareWinder.proto */
+
+#ifndef PROTOBUF_C_HardwareWinder_2eproto__INCLUDED
+#define PROTOBUF_C_HardwareWinder_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "HardwareWinderType.pb-c.h"
+
+typedef struct _HardwareWinder HardwareWinder;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _HardwareWinder
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_hardwarewindertype;
+ HardwareWinderType hardwarewindertype;
+ protobuf_c_boolean has_millimeterperrotation;
+ int32_t millimeterperrotation;
+};
+#define HARDWARE_WINDER__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&hardware_winder__descriptor) \
+ , 0, HARDWARE_WINDER_TYPE__InternalWinder, 0, 0 }
+
+
+/* HardwareWinder methods */
+void hardware_winder__init
+ (HardwareWinder *message);
+size_t hardware_winder__get_packed_size
+ (const HardwareWinder *message);
+size_t hardware_winder__pack
+ (const HardwareWinder *message,
+ uint8_t *out);
+size_t hardware_winder__pack_to_buffer
+ (const HardwareWinder *message,
+ ProtobufCBuffer *buffer);
+HardwareWinder *
+ hardware_winder__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void hardware_winder__free_unpacked
+ (HardwareWinder *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*HardwareWinder_Closure)
+ (const HardwareWinder *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor hardware_winder__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_HardwareWinder_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinderType.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinderType.pb-c.c
new file mode 100644
index 000000000..ed168e14d
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinderType.pb-c.c
@@ -0,0 +1,35 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareWinderType.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "HardwareWinderType.pb-c.h"
+static const ProtobufCEnumValue hardware_winder_type__enum_values_by_number[1] =
+{
+ { "InternalWinder", "HARDWARE_WINDER_TYPE__InternalWinder", 0 },
+};
+static const ProtobufCIntRange hardware_winder_type__value_ranges[] = {
+{0, 0},{0, 1}
+};
+static const ProtobufCEnumValueIndex hardware_winder_type__enum_values_by_name[1] =
+{
+ { "InternalWinder", 0 },
+};
+const ProtobufCEnumDescriptor hardware_winder_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "HardwareWinderType",
+ "HardwareWinderType",
+ "HardwareWinderType",
+ "",
+ 1,
+ hardware_winder_type__enum_values_by_number,
+ 1,
+ hardware_winder_type__enum_values_by_name,
+ 1,
+ hardware_winder_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinderType.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinderType.pb-c.h
new file mode 100644
index 000000000..2acabb018
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/HardwareWinderType.pb-c.h
@@ -0,0 +1,45 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: HardwareWinderType.proto */
+
+#ifndef PROTOBUF_C_HardwareWinderType_2eproto__INCLUDED
+#define PROTOBUF_C_HardwareWinderType_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _HardwareWinderType {
+ /*
+ *Internal Winder
+ */
+ HARDWARE_WINDER_TYPE__InternalWinder = 0
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(HARDWARE_WINDER_TYPE)
+} HardwareWinderType;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor hardware_winder_type__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_HardwareWinderType_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetRequest.pb-c.c
new file mode 100644
index 000000000..f33ad9db6
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SystemResetRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "SystemResetRequest.pb-c.h"
+void system_reset_request__init
+ (SystemResetRequest *message)
+{
+ static const SystemResetRequest init_value = SYSTEM_RESET_REQUEST__INIT;
+ *message = init_value;
+}
+size_t system_reset_request__get_packed_size
+ (const SystemResetRequest *message)
+{
+ assert(message->base.descriptor == &system_reset_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t system_reset_request__pack
+ (const SystemResetRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &system_reset_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t system_reset_request__pack_to_buffer
+ (const SystemResetRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &system_reset_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+SystemResetRequest *
+ system_reset_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (SystemResetRequest *)
+ protobuf_c_message_unpack (&system_reset_request__descriptor,
+ allocator, len, data);
+}
+void system_reset_request__free_unpacked
+ (SystemResetRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &system_reset_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define system_reset_request__field_descriptors NULL
+#define system_reset_request__field_indices_by_name NULL
+#define system_reset_request__number_ranges NULL
+const ProtobufCMessageDescriptor system_reset_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "SystemResetRequest",
+ "SystemResetRequest",
+ "SystemResetRequest",
+ "",
+ sizeof(SystemResetRequest),
+ 0,
+ system_reset_request__field_descriptors,
+ system_reset_request__field_indices_by_name,
+ 0, system_reset_request__number_ranges,
+ (ProtobufCMessageInit) system_reset_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetRequest.pb-c.h
new file mode 100644
index 000000000..80cac34d3
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SystemResetRequest.proto */
+
+#ifndef PROTOBUF_C_SystemResetRequest_2eproto__INCLUDED
+#define PROTOBUF_C_SystemResetRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _SystemResetRequest SystemResetRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _SystemResetRequest
+{
+ ProtobufCMessage base;
+};
+#define SYSTEM_RESET_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&system_reset_request__descriptor) \
+ }
+
+
+/* SystemResetRequest methods */
+void system_reset_request__init
+ (SystemResetRequest *message);
+size_t system_reset_request__get_packed_size
+ (const SystemResetRequest *message);
+size_t system_reset_request__pack
+ (const SystemResetRequest *message,
+ uint8_t *out);
+size_t system_reset_request__pack_to_buffer
+ (const SystemResetRequest *message,
+ ProtobufCBuffer *buffer);
+SystemResetRequest *
+ system_reset_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void system_reset_request__free_unpacked
+ (SystemResetRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*SystemResetRequest_Closure)
+ (const SystemResetRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor system_reset_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_SystemResetRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetResponse.pb-c.c
new file mode 100644
index 000000000..71962b031
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SystemResetResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "SystemResetResponse.pb-c.h"
+void system_reset_response__init
+ (SystemResetResponse *message)
+{
+ static const SystemResetResponse init_value = SYSTEM_RESET_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t system_reset_response__get_packed_size
+ (const SystemResetResponse *message)
+{
+ assert(message->base.descriptor == &system_reset_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t system_reset_response__pack
+ (const SystemResetResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &system_reset_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t system_reset_response__pack_to_buffer
+ (const SystemResetResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &system_reset_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+SystemResetResponse *
+ system_reset_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (SystemResetResponse *)
+ protobuf_c_message_unpack (&system_reset_response__descriptor,
+ allocator, len, data);
+}
+void system_reset_response__free_unpacked
+ (SystemResetResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &system_reset_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define system_reset_response__field_descriptors NULL
+#define system_reset_response__field_indices_by_name NULL
+#define system_reset_response__number_ranges NULL
+const ProtobufCMessageDescriptor system_reset_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "SystemResetResponse",
+ "SystemResetResponse",
+ "SystemResetResponse",
+ "",
+ sizeof(SystemResetResponse),
+ 0,
+ system_reset_response__field_descriptors,
+ system_reset_response__field_indices_by_name,
+ 0, system_reset_response__number_ranges,
+ (ProtobufCMessageInit) system_reset_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetResponse.pb-c.h
new file mode 100644
index 000000000..f8d035096
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/SystemResetResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SystemResetResponse.proto */
+
+#ifndef PROTOBUF_C_SystemResetResponse_2eproto__INCLUDED
+#define PROTOBUF_C_SystemResetResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _SystemResetResponse SystemResetResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _SystemResetResponse
+{
+ ProtobufCMessage base;
+};
+#define SYSTEM_RESET_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&system_reset_response__descriptor) \
+ }
+
+
+/* SystemResetResponse methods */
+void system_reset_response__init
+ (SystemResetResponse *message);
+size_t system_reset_response__get_packed_size
+ (const SystemResetResponse *message);
+size_t system_reset_response__pack
+ (const SystemResetResponse *message,
+ uint8_t *out);
+size_t system_reset_response__pack_to_buffer
+ (const SystemResetResponse *message,
+ ProtobufCBuffer *buffer);
+SystemResetResponse *
+ system_reset_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void system_reset_response__free_unpacked
+ (SystemResetResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*SystemResetResponse_Closure)
+ (const SystemResetResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor system_reset_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_SystemResetResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationRequest.pb-c.c
new file mode 100644
index 000000000..160c02c0b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: UploadHardwareConfigurationRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "UploadHardwareConfigurationRequest.pb-c.h"
+void upload_hardware_configuration_request__init
+ (UploadHardwareConfigurationRequest *message)
+{
+ static const UploadHardwareConfigurationRequest init_value = UPLOAD_HARDWARE_CONFIGURATION_REQUEST__INIT;
+ *message = init_value;
+}
+size_t upload_hardware_configuration_request__get_packed_size
+ (const UploadHardwareConfigurationRequest *message)
+{
+ assert(message->base.descriptor == &upload_hardware_configuration_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t upload_hardware_configuration_request__pack
+ (const UploadHardwareConfigurationRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &upload_hardware_configuration_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t upload_hardware_configuration_request__pack_to_buffer
+ (const UploadHardwareConfigurationRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &upload_hardware_configuration_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+UploadHardwareConfigurationRequest *
+ upload_hardware_configuration_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (UploadHardwareConfigurationRequest *)
+ protobuf_c_message_unpack (&upload_hardware_configuration_request__descriptor,
+ allocator, len, data);
+}
+void upload_hardware_configuration_request__free_unpacked
+ (UploadHardwareConfigurationRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &upload_hardware_configuration_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor upload_hardware_configuration_request__field_descriptors[1] =
+{
+ {
+ "HardwareConfiguration",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(UploadHardwareConfigurationRequest, hardwareconfiguration),
+ &hardware_configuration__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned upload_hardware_configuration_request__field_indices_by_name[] = {
+ 0, /* field[0] = HardwareConfiguration */
+};
+static const ProtobufCIntRange upload_hardware_configuration_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor upload_hardware_configuration_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "UploadHardwareConfigurationRequest",
+ "UploadHardwareConfigurationRequest",
+ "UploadHardwareConfigurationRequest",
+ "",
+ sizeof(UploadHardwareConfigurationRequest),
+ 1,
+ upload_hardware_configuration_request__field_descriptors,
+ upload_hardware_configuration_request__field_indices_by_name,
+ 1, upload_hardware_configuration_request__number_ranges,
+ (ProtobufCMessageInit) upload_hardware_configuration_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationRequest.pb-c.h
new file mode 100644
index 000000000..6e715a378
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationRequest.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: UploadHardwareConfigurationRequest.proto */
+
+#ifndef PROTOBUF_C_UploadHardwareConfigurationRequest_2eproto__INCLUDED
+#define PROTOBUF_C_UploadHardwareConfigurationRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "HardwareConfiguration.pb-c.h"
+
+typedef struct _UploadHardwareConfigurationRequest UploadHardwareConfigurationRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _UploadHardwareConfigurationRequest
+{
+ ProtobufCMessage base;
+ HardwareConfiguration *hardwareconfiguration;
+};
+#define UPLOAD_HARDWARE_CONFIGURATION_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&upload_hardware_configuration_request__descriptor) \
+ , NULL }
+
+
+/* UploadHardwareConfigurationRequest methods */
+void upload_hardware_configuration_request__init
+ (UploadHardwareConfigurationRequest *message);
+size_t upload_hardware_configuration_request__get_packed_size
+ (const UploadHardwareConfigurationRequest *message);
+size_t upload_hardware_configuration_request__pack
+ (const UploadHardwareConfigurationRequest *message,
+ uint8_t *out);
+size_t upload_hardware_configuration_request__pack_to_buffer
+ (const UploadHardwareConfigurationRequest *message,
+ ProtobufCBuffer *buffer);
+UploadHardwareConfigurationRequest *
+ upload_hardware_configuration_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void upload_hardware_configuration_request__free_unpacked
+ (UploadHardwareConfigurationRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*UploadHardwareConfigurationRequest_Closure)
+ (const UploadHardwareConfigurationRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor upload_hardware_configuration_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_UploadHardwareConfigurationRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationResponse.pb-c.c
new file mode 100644
index 000000000..56aff3176
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: UploadHardwareConfigurationResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "UploadHardwareConfigurationResponse.pb-c.h"
+void upload_hardware_configuration_response__init
+ (UploadHardwareConfigurationResponse *message)
+{
+ static const UploadHardwareConfigurationResponse init_value = UPLOAD_HARDWARE_CONFIGURATION_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t upload_hardware_configuration_response__get_packed_size
+ (const UploadHardwareConfigurationResponse *message)
+{
+ assert(message->base.descriptor == &upload_hardware_configuration_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t upload_hardware_configuration_response__pack
+ (const UploadHardwareConfigurationResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &upload_hardware_configuration_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t upload_hardware_configuration_response__pack_to_buffer
+ (const UploadHardwareConfigurationResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &upload_hardware_configuration_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+UploadHardwareConfigurationResponse *
+ upload_hardware_configuration_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (UploadHardwareConfigurationResponse *)
+ protobuf_c_message_unpack (&upload_hardware_configuration_response__descriptor,
+ allocator, len, data);
+}
+void upload_hardware_configuration_response__free_unpacked
+ (UploadHardwareConfigurationResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &upload_hardware_configuration_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define upload_hardware_configuration_response__field_descriptors NULL
+#define upload_hardware_configuration_response__field_indices_by_name NULL
+#define upload_hardware_configuration_response__number_ranges NULL
+const ProtobufCMessageDescriptor upload_hardware_configuration_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "UploadHardwareConfigurationResponse",
+ "UploadHardwareConfigurationResponse",
+ "UploadHardwareConfigurationResponse",
+ "",
+ sizeof(UploadHardwareConfigurationResponse),
+ 0,
+ upload_hardware_configuration_response__field_descriptors,
+ upload_hardware_configuration_response__field_indices_by_name,
+ 0, upload_hardware_configuration_response__number_ranges,
+ (ProtobufCMessageInit) upload_hardware_configuration_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationResponse.pb-c.h
new file mode 100644
index 000000000..7f754f3bf
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Hardware/UploadHardwareConfigurationResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: UploadHardwareConfigurationResponse.proto */
+
+#ifndef PROTOBUF_C_UploadHardwareConfigurationResponse_2eproto__INCLUDED
+#define PROTOBUF_C_UploadHardwareConfigurationResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _UploadHardwareConfigurationResponse UploadHardwareConfigurationResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _UploadHardwareConfigurationResponse
+{
+ ProtobufCMessage base;
+};
+#define UPLOAD_HARDWARE_CONFIGURATION_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&upload_hardware_configuration_response__descriptor) \
+ }
+
+
+/* UploadHardwareConfigurationResponse methods */
+void upload_hardware_configuration_response__init
+ (UploadHardwareConfigurationResponse *message);
+size_t upload_hardware_configuration_response__get_packed_size
+ (const UploadHardwareConfigurationResponse *message);
+size_t upload_hardware_configuration_response__pack
+ (const UploadHardwareConfigurationResponse *message,
+ uint8_t *out);
+size_t upload_hardware_configuration_response__pack_to_buffer
+ (const UploadHardwareConfigurationResponse *message,
+ ProtobufCBuffer *buffer);
+UploadHardwareConfigurationResponse *
+ upload_hardware_configuration_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void upload_hardware_configuration_response__free_unpacked
+ (UploadHardwareConfigurationResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*UploadHardwareConfigurationResponse_Closure)
+ (const UploadHardwareConfigurationResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor upload_hardware_configuration_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_UploadHardwareConfigurationResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationRequest.pb-c.c
new file mode 100644
index 000000000..cb729fed6
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DirectSynchronizationRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DirectSynchronizationRequest.pb-c.h"
+void direct_synchronization_request__init
+ (DirectSynchronizationRequest *message)
+{
+ static const DirectSynchronizationRequest init_value = DIRECT_SYNCHRONIZATION_REQUEST__INIT;
+ *message = init_value;
+}
+size_t direct_synchronization_request__get_packed_size
+ (const DirectSynchronizationRequest *message)
+{
+ assert(message->base.descriptor == &direct_synchronization_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t direct_synchronization_request__pack
+ (const DirectSynchronizationRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &direct_synchronization_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t direct_synchronization_request__pack_to_buffer
+ (const DirectSynchronizationRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &direct_synchronization_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DirectSynchronizationRequest *
+ direct_synchronization_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DirectSynchronizationRequest *)
+ protobuf_c_message_unpack (&direct_synchronization_request__descriptor,
+ allocator, len, data);
+}
+void direct_synchronization_request__free_unpacked
+ (DirectSynchronizationRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &direct_synchronization_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define direct_synchronization_request__field_descriptors NULL
+#define direct_synchronization_request__field_indices_by_name NULL
+#define direct_synchronization_request__number_ranges NULL
+const ProtobufCMessageDescriptor direct_synchronization_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DirectSynchronizationRequest",
+ "DirectSynchronizationRequest",
+ "DirectSynchronizationRequest",
+ "",
+ sizeof(DirectSynchronizationRequest),
+ 0,
+ direct_synchronization_request__field_descriptors,
+ direct_synchronization_request__field_indices_by_name,
+ 0, direct_synchronization_request__number_ranges,
+ (ProtobufCMessageInit) direct_synchronization_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationRequest.pb-c.h
new file mode 100644
index 000000000..81cdae5b9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DirectSynchronizationRequest.proto */
+
+#ifndef PROTOBUF_C_DirectSynchronizationRequest_2eproto__INCLUDED
+#define PROTOBUF_C_DirectSynchronizationRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _DirectSynchronizationRequest DirectSynchronizationRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DirectSynchronizationRequest
+{
+ ProtobufCMessage base;
+};
+#define DIRECT_SYNCHRONIZATION_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&direct_synchronization_request__descriptor) \
+ }
+
+
+/* DirectSynchronizationRequest methods */
+void direct_synchronization_request__init
+ (DirectSynchronizationRequest *message);
+size_t direct_synchronization_request__get_packed_size
+ (const DirectSynchronizationRequest *message);
+size_t direct_synchronization_request__pack
+ (const DirectSynchronizationRequest *message,
+ uint8_t *out);
+size_t direct_synchronization_request__pack_to_buffer
+ (const DirectSynchronizationRequest *message,
+ ProtobufCBuffer *buffer);
+DirectSynchronizationRequest *
+ direct_synchronization_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void direct_synchronization_request__free_unpacked
+ (DirectSynchronizationRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DirectSynchronizationRequest_Closure)
+ (const DirectSynchronizationRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor direct_synchronization_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DirectSynchronizationRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationResponse.pb-c.c
new file mode 100644
index 000000000..d37e0a020
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationResponse.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DirectSynchronizationResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DirectSynchronizationResponse.pb-c.h"
+void direct_synchronization_response__init
+ (DirectSynchronizationResponse *message)
+{
+ static const DirectSynchronizationResponse init_value = DIRECT_SYNCHRONIZATION_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t direct_synchronization_response__get_packed_size
+ (const DirectSynchronizationResponse *message)
+{
+ assert(message->base.descriptor == &direct_synchronization_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t direct_synchronization_response__pack
+ (const DirectSynchronizationResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &direct_synchronization_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t direct_synchronization_response__pack_to_buffer
+ (const DirectSynchronizationResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &direct_synchronization_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DirectSynchronizationResponse *
+ direct_synchronization_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DirectSynchronizationResponse *)
+ protobuf_c_message_unpack (&direct_synchronization_response__descriptor,
+ allocator, len, data);
+}
+void direct_synchronization_response__free_unpacked
+ (DirectSynchronizationResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &direct_synchronization_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor direct_synchronization_response__field_descriptors[1] =
+{
+ {
+ "LocalDB",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(DirectSynchronizationResponse, has_localdb),
+ offsetof(DirectSynchronizationResponse, localdb),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned direct_synchronization_response__field_indices_by_name[] = {
+ 0, /* field[0] = LocalDB */
+};
+static const ProtobufCIntRange direct_synchronization_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor direct_synchronization_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DirectSynchronizationResponse",
+ "DirectSynchronizationResponse",
+ "DirectSynchronizationResponse",
+ "",
+ sizeof(DirectSynchronizationResponse),
+ 1,
+ direct_synchronization_response__field_descriptors,
+ direct_synchronization_response__field_indices_by_name,
+ 1, direct_synchronization_response__number_ranges,
+ (ProtobufCMessageInit) direct_synchronization_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationResponse.pb-c.h
new file mode 100644
index 000000000..c263b6831
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/DirectSynchronizationResponse.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DirectSynchronizationResponse.proto */
+
+#ifndef PROTOBUF_C_DirectSynchronizationResponse_2eproto__INCLUDED
+#define PROTOBUF_C_DirectSynchronizationResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _DirectSynchronizationResponse DirectSynchronizationResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DirectSynchronizationResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_localdb;
+ ProtobufCBinaryData localdb;
+};
+#define DIRECT_SYNCHRONIZATION_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&direct_synchronization_response__descriptor) \
+ , 0, {0,NULL} }
+
+
+/* DirectSynchronizationResponse methods */
+void direct_synchronization_response__init
+ (DirectSynchronizationResponse *message);
+size_t direct_synchronization_response__get_packed_size
+ (const DirectSynchronizationResponse *message);
+size_t direct_synchronization_response__pack
+ (const DirectSynchronizationResponse *message,
+ uint8_t *out);
+size_t direct_synchronization_response__pack_to_buffer
+ (const DirectSynchronizationResponse *message,
+ ProtobufCBuffer *buffer);
+DirectSynchronizationResponse *
+ direct_synchronization_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void direct_synchronization_response__free_unpacked
+ (DirectSynchronizationResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DirectSynchronizationResponse_Closure)
+ (const DirectSynchronizationResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor direct_synchronization_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DirectSynchronizationResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalBridgeUdpDiscoveryPacket.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalBridgeUdpDiscoveryPacket.pb-c.c
new file mode 100644
index 000000000..b8a8d9c6e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalBridgeUdpDiscoveryPacket.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ExternalBridgeUdpDiscoveryPacket.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ExternalBridgeUdpDiscoveryPacket.pb-c.h"
+void external_bridge_udp_discovery_packet__init
+ (ExternalBridgeUdpDiscoveryPacket *message)
+{
+ static const ExternalBridgeUdpDiscoveryPacket init_value = EXTERNAL_BRIDGE_UDP_DISCOVERY_PACKET__INIT;
+ *message = init_value;
+}
+size_t external_bridge_udp_discovery_packet__get_packed_size
+ (const ExternalBridgeUdpDiscoveryPacket *message)
+{
+ assert(message->base.descriptor == &external_bridge_udp_discovery_packet__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t external_bridge_udp_discovery_packet__pack
+ (const ExternalBridgeUdpDiscoveryPacket *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &external_bridge_udp_discovery_packet__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t external_bridge_udp_discovery_packet__pack_to_buffer
+ (const ExternalBridgeUdpDiscoveryPacket *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &external_bridge_udp_discovery_packet__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ExternalBridgeUdpDiscoveryPacket *
+ external_bridge_udp_discovery_packet__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ExternalBridgeUdpDiscoveryPacket *)
+ protobuf_c_message_unpack (&external_bridge_udp_discovery_packet__descriptor,
+ allocator, len, data);
+}
+void external_bridge_udp_discovery_packet__free_unpacked
+ (ExternalBridgeUdpDiscoveryPacket *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &external_bridge_udp_discovery_packet__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor external_bridge_udp_discovery_packet__field_descriptors[1] =
+{
+ {
+ "SerialNumber",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(ExternalBridgeUdpDiscoveryPacket, serialnumber),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned external_bridge_udp_discovery_packet__field_indices_by_name[] = {
+ 0, /* field[0] = SerialNumber */
+};
+static const ProtobufCIntRange external_bridge_udp_discovery_packet__number_ranges[1 + 1] =
+{
+ { 2, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor external_bridge_udp_discovery_packet__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ExternalBridgeUdpDiscoveryPacket",
+ "ExternalBridgeUdpDiscoveryPacket",
+ "ExternalBridgeUdpDiscoveryPacket",
+ "",
+ sizeof(ExternalBridgeUdpDiscoveryPacket),
+ 1,
+ external_bridge_udp_discovery_packet__field_descriptors,
+ external_bridge_udp_discovery_packet__field_indices_by_name,
+ 1, external_bridge_udp_discovery_packet__number_ranges,
+ (ProtobufCMessageInit) external_bridge_udp_discovery_packet__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalBridgeUdpDiscoveryPacket.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalBridgeUdpDiscoveryPacket.pb-c.h
new file mode 100644
index 000000000..f40ade127
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalBridgeUdpDiscoveryPacket.pb-c.h
@@ -0,0 +1,71 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ExternalBridgeUdpDiscoveryPacket.proto */
+
+#ifndef PROTOBUF_C_ExternalBridgeUdpDiscoveryPacket_2eproto__INCLUDED
+#define PROTOBUF_C_ExternalBridgeUdpDiscoveryPacket_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _ExternalBridgeUdpDiscoveryPacket ExternalBridgeUdpDiscoveryPacket;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ExternalBridgeUdpDiscoveryPacket
+{
+ ProtobufCMessage base;
+ char *serialnumber;
+};
+#define EXTERNAL_BRIDGE_UDP_DISCOVERY_PACKET__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&external_bridge_udp_discovery_packet__descriptor) \
+ , NULL }
+
+
+/* ExternalBridgeUdpDiscoveryPacket methods */
+void external_bridge_udp_discovery_packet__init
+ (ExternalBridgeUdpDiscoveryPacket *message);
+size_t external_bridge_udp_discovery_packet__get_packed_size
+ (const ExternalBridgeUdpDiscoveryPacket *message);
+size_t external_bridge_udp_discovery_packet__pack
+ (const ExternalBridgeUdpDiscoveryPacket *message,
+ uint8_t *out);
+size_t external_bridge_udp_discovery_packet__pack_to_buffer
+ (const ExternalBridgeUdpDiscoveryPacket *message,
+ ProtobufCBuffer *buffer);
+ExternalBridgeUdpDiscoveryPacket *
+ external_bridge_udp_discovery_packet__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void external_bridge_udp_discovery_packet__free_unpacked
+ (ExternalBridgeUdpDiscoveryPacket *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ExternalBridgeUdpDiscoveryPacket_Closure)
+ (const ExternalBridgeUdpDiscoveryPacket *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor external_bridge_udp_discovery_packet__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ExternalBridgeUdpDiscoveryPacket_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginRequest.pb-c.c
new file mode 100644
index 000000000..d4be46d19
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ExternalClientLoginRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ExternalClientLoginRequest.pb-c.h"
+void external_client_login_request__init
+ (ExternalClientLoginRequest *message)
+{
+ static const ExternalClientLoginRequest init_value = EXTERNAL_CLIENT_LOGIN_REQUEST__INIT;
+ *message = init_value;
+}
+size_t external_client_login_request__get_packed_size
+ (const ExternalClientLoginRequest *message)
+{
+ assert(message->base.descriptor == &external_client_login_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t external_client_login_request__pack
+ (const ExternalClientLoginRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &external_client_login_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t external_client_login_request__pack_to_buffer
+ (const ExternalClientLoginRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &external_client_login_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ExternalClientLoginRequest *
+ external_client_login_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ExternalClientLoginRequest *)
+ protobuf_c_message_unpack (&external_client_login_request__descriptor,
+ allocator, len, data);
+}
+void external_client_login_request__free_unpacked
+ (ExternalClientLoginRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &external_client_login_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor external_client_login_request__field_descriptors[1] =
+{
+ {
+ "Password",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(ExternalClientLoginRequest, password),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned external_client_login_request__field_indices_by_name[] = {
+ 0, /* field[0] = Password */
+};
+static const ProtobufCIntRange external_client_login_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor external_client_login_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ExternalClientLoginRequest",
+ "ExternalClientLoginRequest",
+ "ExternalClientLoginRequest",
+ "",
+ sizeof(ExternalClientLoginRequest),
+ 1,
+ external_client_login_request__field_descriptors,
+ external_client_login_request__field_indices_by_name,
+ 1, external_client_login_request__number_ranges,
+ (ProtobufCMessageInit) external_client_login_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginRequest.pb-c.h
new file mode 100644
index 000000000..86ea53825
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginRequest.pb-c.h
@@ -0,0 +1,71 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ExternalClientLoginRequest.proto */
+
+#ifndef PROTOBUF_C_ExternalClientLoginRequest_2eproto__INCLUDED
+#define PROTOBUF_C_ExternalClientLoginRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _ExternalClientLoginRequest ExternalClientLoginRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ExternalClientLoginRequest
+{
+ ProtobufCMessage base;
+ char *password;
+};
+#define EXTERNAL_CLIENT_LOGIN_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&external_client_login_request__descriptor) \
+ , NULL }
+
+
+/* ExternalClientLoginRequest methods */
+void external_client_login_request__init
+ (ExternalClientLoginRequest *message);
+size_t external_client_login_request__get_packed_size
+ (const ExternalClientLoginRequest *message);
+size_t external_client_login_request__pack
+ (const ExternalClientLoginRequest *message,
+ uint8_t *out);
+size_t external_client_login_request__pack_to_buffer
+ (const ExternalClientLoginRequest *message,
+ ProtobufCBuffer *buffer);
+ExternalClientLoginRequest *
+ external_client_login_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void external_client_login_request__free_unpacked
+ (ExternalClientLoginRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ExternalClientLoginRequest_Closure)
+ (const ExternalClientLoginRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor external_client_login_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ExternalClientLoginRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginResponse.pb-c.c
new file mode 100644
index 000000000..6d8646415
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginResponse.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ExternalClientLoginResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ExternalClientLoginResponse.pb-c.h"
+void external_client_login_response__init
+ (ExternalClientLoginResponse *message)
+{
+ static const ExternalClientLoginResponse init_value = EXTERNAL_CLIENT_LOGIN_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t external_client_login_response__get_packed_size
+ (const ExternalClientLoginResponse *message)
+{
+ assert(message->base.descriptor == &external_client_login_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t external_client_login_response__pack
+ (const ExternalClientLoginResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &external_client_login_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t external_client_login_response__pack_to_buffer
+ (const ExternalClientLoginResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &external_client_login_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ExternalClientLoginResponse *
+ external_client_login_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ExternalClientLoginResponse *)
+ protobuf_c_message_unpack (&external_client_login_response__descriptor,
+ allocator, len, data);
+}
+void external_client_login_response__free_unpacked
+ (ExternalClientLoginResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &external_client_login_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor external_client_login_response__field_descriptors[2] =
+{
+ {
+ "Authenticated",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(ExternalClientLoginResponse, has_authenticated),
+ offsetof(ExternalClientLoginResponse, authenticated),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SerialNumber",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(ExternalClientLoginResponse, serialnumber),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned external_client_login_response__field_indices_by_name[] = {
+ 0, /* field[0] = Authenticated */
+ 1, /* field[1] = SerialNumber */
+};
+static const ProtobufCIntRange external_client_login_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor external_client_login_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ExternalClientLoginResponse",
+ "ExternalClientLoginResponse",
+ "ExternalClientLoginResponse",
+ "",
+ sizeof(ExternalClientLoginResponse),
+ 2,
+ external_client_login_response__field_descriptors,
+ external_client_login_response__field_indices_by_name,
+ 1, external_client_login_response__number_ranges,
+ (ProtobufCMessageInit) external_client_login_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginResponse.pb-c.h
new file mode 100644
index 000000000..46bdf15df
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/ExternalClientLoginResponse.pb-c.h
@@ -0,0 +1,73 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ExternalClientLoginResponse.proto */
+
+#ifndef PROTOBUF_C_ExternalClientLoginResponse_2eproto__INCLUDED
+#define PROTOBUF_C_ExternalClientLoginResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _ExternalClientLoginResponse ExternalClientLoginResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ExternalClientLoginResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_authenticated;
+ protobuf_c_boolean authenticated;
+ char *serialnumber;
+};
+#define EXTERNAL_CLIENT_LOGIN_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&external_client_login_response__descriptor) \
+ , 0, 0, NULL }
+
+
+/* ExternalClientLoginResponse methods */
+void external_client_login_response__init
+ (ExternalClientLoginResponse *message);
+size_t external_client_login_response__get_packed_size
+ (const ExternalClientLoginResponse *message);
+size_t external_client_login_response__pack
+ (const ExternalClientLoginResponse *message,
+ uint8_t *out);
+size_t external_client_login_response__pack_to_buffer
+ (const ExternalClientLoginResponse *message,
+ ProtobufCBuffer *buffer);
+ExternalClientLoginResponse *
+ external_client_login_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void external_client_login_response__free_unpacked
+ (ExternalClientLoginResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ExternalClientLoginResponse_Closure)
+ (const ExternalClientLoginResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor external_client_login_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ExternalClientLoginResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseRequest.pb-c.c
new file mode 100644
index 000000000..5c80a3949
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: OverrideDataBaseRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "OverrideDataBaseRequest.pb-c.h"
+void override_data_base_request__init
+ (OverrideDataBaseRequest *message)
+{
+ static const OverrideDataBaseRequest init_value = OVERRIDE_DATA_BASE_REQUEST__INIT;
+ *message = init_value;
+}
+size_t override_data_base_request__get_packed_size
+ (const OverrideDataBaseRequest *message)
+{
+ assert(message->base.descriptor == &override_data_base_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t override_data_base_request__pack
+ (const OverrideDataBaseRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &override_data_base_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t override_data_base_request__pack_to_buffer
+ (const OverrideDataBaseRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &override_data_base_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+OverrideDataBaseRequest *
+ override_data_base_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (OverrideDataBaseRequest *)
+ protobuf_c_message_unpack (&override_data_base_request__descriptor,
+ allocator, len, data);
+}
+void override_data_base_request__free_unpacked
+ (OverrideDataBaseRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &override_data_base_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor override_data_base_request__field_descriptors[1] =
+{
+ {
+ "RemoteDB",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(OverrideDataBaseRequest, has_remotedb),
+ offsetof(OverrideDataBaseRequest, remotedb),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned override_data_base_request__field_indices_by_name[] = {
+ 0, /* field[0] = RemoteDB */
+};
+static const ProtobufCIntRange override_data_base_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor override_data_base_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "OverrideDataBaseRequest",
+ "OverrideDataBaseRequest",
+ "OverrideDataBaseRequest",
+ "",
+ sizeof(OverrideDataBaseRequest),
+ 1,
+ override_data_base_request__field_descriptors,
+ override_data_base_request__field_indices_by_name,
+ 1, override_data_base_request__number_ranges,
+ (ProtobufCMessageInit) override_data_base_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseRequest.pb-c.h
new file mode 100644
index 000000000..e73ab63cc
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseRequest.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: OverrideDataBaseRequest.proto */
+
+#ifndef PROTOBUF_C_OverrideDataBaseRequest_2eproto__INCLUDED
+#define PROTOBUF_C_OverrideDataBaseRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _OverrideDataBaseRequest OverrideDataBaseRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _OverrideDataBaseRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_remotedb;
+ ProtobufCBinaryData remotedb;
+};
+#define OVERRIDE_DATA_BASE_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&override_data_base_request__descriptor) \
+ , 0, {0,NULL} }
+
+
+/* OverrideDataBaseRequest methods */
+void override_data_base_request__init
+ (OverrideDataBaseRequest *message);
+size_t override_data_base_request__get_packed_size
+ (const OverrideDataBaseRequest *message);
+size_t override_data_base_request__pack
+ (const OverrideDataBaseRequest *message,
+ uint8_t *out);
+size_t override_data_base_request__pack_to_buffer
+ (const OverrideDataBaseRequest *message,
+ ProtobufCBuffer *buffer);
+OverrideDataBaseRequest *
+ override_data_base_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void override_data_base_request__free_unpacked
+ (OverrideDataBaseRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*OverrideDataBaseRequest_Closure)
+ (const OverrideDataBaseRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor override_data_base_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_OverrideDataBaseRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseResponse.pb-c.c
new file mode 100644
index 000000000..fe11e66f0
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseResponse.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: OverrideDataBaseResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "OverrideDataBaseResponse.pb-c.h"
+void override_data_base_response__init
+ (OverrideDataBaseResponse *message)
+{
+ static const OverrideDataBaseResponse init_value = OVERRIDE_DATA_BASE_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t override_data_base_response__get_packed_size
+ (const OverrideDataBaseResponse *message)
+{
+ assert(message->base.descriptor == &override_data_base_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t override_data_base_response__pack
+ (const OverrideDataBaseResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &override_data_base_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t override_data_base_response__pack_to_buffer
+ (const OverrideDataBaseResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &override_data_base_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+OverrideDataBaseResponse *
+ override_data_base_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (OverrideDataBaseResponse *)
+ protobuf_c_message_unpack (&override_data_base_response__descriptor,
+ allocator, len, data);
+}
+void override_data_base_response__free_unpacked
+ (OverrideDataBaseResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &override_data_base_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor override_data_base_response__field_descriptors[1] =
+{
+ {
+ "Successful",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(OverrideDataBaseResponse, has_successful),
+ offsetof(OverrideDataBaseResponse, successful),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned override_data_base_response__field_indices_by_name[] = {
+ 0, /* field[0] = Successful */
+};
+static const ProtobufCIntRange override_data_base_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor override_data_base_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "OverrideDataBaseResponse",
+ "OverrideDataBaseResponse",
+ "OverrideDataBaseResponse",
+ "",
+ sizeof(OverrideDataBaseResponse),
+ 1,
+ override_data_base_response__field_descriptors,
+ override_data_base_response__field_indices_by_name,
+ 1, override_data_base_response__number_ranges,
+ (ProtobufCMessageInit) override_data_base_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseResponse.pb-c.h
new file mode 100644
index 000000000..339349441
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Integration/OverrideDataBaseResponse.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: OverrideDataBaseResponse.proto */
+
+#ifndef PROTOBUF_C_OverrideDataBaseResponse_2eproto__INCLUDED
+#define PROTOBUF_C_OverrideDataBaseResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _OverrideDataBaseResponse OverrideDataBaseResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _OverrideDataBaseResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_successful;
+ protobuf_c_boolean successful;
+};
+#define OVERRIDE_DATA_BASE_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&override_data_base_response__descriptor) \
+ , 0, 0 }
+
+
+/* OverrideDataBaseResponse methods */
+void override_data_base_response__init
+ (OverrideDataBaseResponse *message);
+size_t override_data_base_response__get_packed_size
+ (const OverrideDataBaseResponse *message);
+size_t override_data_base_response__pack
+ (const OverrideDataBaseResponse *message,
+ uint8_t *out);
+size_t override_data_base_response__pack_to_buffer
+ (const OverrideDataBaseResponse *message,
+ ProtobufCBuffer *buffer);
+OverrideDataBaseResponse *
+ override_data_base_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void override_data_base_response__free_unpacked
+ (OverrideDataBaseResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*OverrideDataBaseResponse_Closure)
+ (const OverrideDataBaseResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor override_data_base_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_OverrideDataBaseResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobRequest.pb-c.c
new file mode 100644
index 000000000..a2b2826c0
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: AbortJobRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "AbortJobRequest.pb-c.h"
+void abort_job_request__init
+ (AbortJobRequest *message)
+{
+ static const AbortJobRequest init_value = ABORT_JOB_REQUEST__INIT;
+ *message = init_value;
+}
+size_t abort_job_request__get_packed_size
+ (const AbortJobRequest *message)
+{
+ assert(message->base.descriptor == &abort_job_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t abort_job_request__pack
+ (const AbortJobRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &abort_job_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t abort_job_request__pack_to_buffer
+ (const AbortJobRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &abort_job_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+AbortJobRequest *
+ abort_job_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (AbortJobRequest *)
+ protobuf_c_message_unpack (&abort_job_request__descriptor,
+ allocator, len, data);
+}
+void abort_job_request__free_unpacked
+ (AbortJobRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &abort_job_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define abort_job_request__field_descriptors NULL
+#define abort_job_request__field_indices_by_name NULL
+#define abort_job_request__number_ranges NULL
+const ProtobufCMessageDescriptor abort_job_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "AbortJobRequest",
+ "AbortJobRequest",
+ "AbortJobRequest",
+ "",
+ sizeof(AbortJobRequest),
+ 0,
+ abort_job_request__field_descriptors,
+ abort_job_request__field_indices_by_name,
+ 0, abort_job_request__number_ranges,
+ (ProtobufCMessageInit) abort_job_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobRequest.pb-c.h
new file mode 100644
index 000000000..1635e0458
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: AbortJobRequest.proto */
+
+#ifndef PROTOBUF_C_AbortJobRequest_2eproto__INCLUDED
+#define PROTOBUF_C_AbortJobRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _AbortJobRequest AbortJobRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _AbortJobRequest
+{
+ ProtobufCMessage base;
+};
+#define ABORT_JOB_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&abort_job_request__descriptor) \
+ }
+
+
+/* AbortJobRequest methods */
+void abort_job_request__init
+ (AbortJobRequest *message);
+size_t abort_job_request__get_packed_size
+ (const AbortJobRequest *message);
+size_t abort_job_request__pack
+ (const AbortJobRequest *message,
+ uint8_t *out);
+size_t abort_job_request__pack_to_buffer
+ (const AbortJobRequest *message,
+ ProtobufCBuffer *buffer);
+AbortJobRequest *
+ abort_job_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void abort_job_request__free_unpacked
+ (AbortJobRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*AbortJobRequest_Closure)
+ (const AbortJobRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor abort_job_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_AbortJobRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobResponse.pb-c.c
new file mode 100644
index 000000000..7a6f4e341
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: AbortJobResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "AbortJobResponse.pb-c.h"
+void abort_job_response__init
+ (AbortJobResponse *message)
+{
+ static const AbortJobResponse init_value = ABORT_JOB_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t abort_job_response__get_packed_size
+ (const AbortJobResponse *message)
+{
+ assert(message->base.descriptor == &abort_job_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t abort_job_response__pack
+ (const AbortJobResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &abort_job_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t abort_job_response__pack_to_buffer
+ (const AbortJobResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &abort_job_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+AbortJobResponse *
+ abort_job_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (AbortJobResponse *)
+ protobuf_c_message_unpack (&abort_job_response__descriptor,
+ allocator, len, data);
+}
+void abort_job_response__free_unpacked
+ (AbortJobResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &abort_job_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define abort_job_response__field_descriptors NULL
+#define abort_job_response__field_indices_by_name NULL
+#define abort_job_response__number_ranges NULL
+const ProtobufCMessageDescriptor abort_job_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "AbortJobResponse",
+ "AbortJobResponse",
+ "AbortJobResponse",
+ "",
+ sizeof(AbortJobResponse),
+ 0,
+ abort_job_response__field_descriptors,
+ abort_job_response__field_indices_by_name,
+ 0, abort_job_response__number_ranges,
+ (ProtobufCMessageInit) abort_job_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobResponse.pb-c.h
new file mode 100644
index 000000000..66c887250
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/AbortJobResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: AbortJobResponse.proto */
+
+#ifndef PROTOBUF_C_AbortJobResponse_2eproto__INCLUDED
+#define PROTOBUF_C_AbortJobResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _AbortJobResponse AbortJobResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _AbortJobResponse
+{
+ ProtobufCMessage base;
+};
+#define ABORT_JOB_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&abort_job_response__descriptor) \
+ }
+
+
+/* AbortJobResponse methods */
+void abort_job_response__init
+ (AbortJobResponse *message);
+size_t abort_job_response__get_packed_size
+ (const AbortJobResponse *message);
+size_t abort_job_response__pack
+ (const AbortJobResponse *message,
+ uint8_t *out);
+size_t abort_job_response__pack_to_buffer
+ (const AbortJobResponse *message,
+ ProtobufCBuffer *buffer);
+AbortJobResponse *
+ abort_job_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void abort_job_response__free_unpacked
+ (AbortJobResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*AbortJobResponse_Closure)
+ (const AbortJobResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor abort_job_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_AbortJobResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserLiquidType.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserLiquidType.pb-c.c
new file mode 100644
index 000000000..15fe539f2
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserLiquidType.pb-c.c
@@ -0,0 +1,47 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserLiquidType.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DispenserLiquidType.pb-c.h"
+static const ProtobufCEnumValue dispenser_liquid_type__enum_values_by_number[7] =
+{
+ { "Cyan", "DISPENSER_LIQUID_TYPE__Cyan", 0 },
+ { "Magenta", "DISPENSER_LIQUID_TYPE__Magenta", 1 },
+ { "Yellow", "DISPENSER_LIQUID_TYPE__Yellow", 2 },
+ { "Black", "DISPENSER_LIQUID_TYPE__Black", 3 },
+ { "TransparentInk", "DISPENSER_LIQUID_TYPE__TransparentInk", 4 },
+ { "Lubricant", "DISPENSER_LIQUID_TYPE__Lubricant", 5 },
+ { "Red", "DISPENSER_LIQUID_TYPE__Red", 7 },
+};
+static const ProtobufCIntRange dispenser_liquid_type__value_ranges[] = {
+{0, 0},{7, 6},{0, 7}
+};
+static const ProtobufCEnumValueIndex dispenser_liquid_type__enum_values_by_name[7] =
+{
+ { "Black", 3 },
+ { "Cyan", 0 },
+ { "Lubricant", 5 },
+ { "Magenta", 1 },
+ { "Red", 6 },
+ { "TransparentInk", 4 },
+ { "Yellow", 2 },
+};
+const ProtobufCEnumDescriptor dispenser_liquid_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "DispenserLiquidType",
+ "DispenserLiquidType",
+ "DispenserLiquidType",
+ "",
+ 7,
+ dispenser_liquid_type__enum_values_by_number,
+ 7,
+ dispenser_liquid_type__enum_values_by_name,
+ 2,
+ dispenser_liquid_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserLiquidType.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserLiquidType.pb-c.h
new file mode 100644
index 000000000..a6ae3e867
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserLiquidType.pb-c.h
@@ -0,0 +1,48 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserLiquidType.proto */
+
+#ifndef PROTOBUF_C_DispenserLiquidType_2eproto__INCLUDED
+#define PROTOBUF_C_DispenserLiquidType_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _DispenserLiquidType {
+ DISPENSER_LIQUID_TYPE__Cyan = 0,
+ DISPENSER_LIQUID_TYPE__Magenta = 1,
+ DISPENSER_LIQUID_TYPE__Yellow = 2,
+ DISPENSER_LIQUID_TYPE__Black = 3,
+ DISPENSER_LIQUID_TYPE__TransparentInk = 4,
+ DISPENSER_LIQUID_TYPE__Lubricant = 5,
+ DISPENSER_LIQUID_TYPE__Red = 7
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(DISPENSER_LIQUID_TYPE)
+} DispenserLiquidType;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor dispenser_liquid_type__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DispenserLiquidType_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserStepDivision.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserStepDivision.pb-c.c
new file mode 100644
index 000000000..38da8a46b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserStepDivision.pb-c.c
@@ -0,0 +1,51 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserStepDivision.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DispenserStepDivision.pb-c.h"
+static const ProtobufCEnumValue dispenser_step_division__enum_values_by_number[9] =
+{
+ { "Auto", "DISPENSER_STEP_DIVISION__Auto", 0 },
+ { "D1", "DISPENSER_STEP_DIVISION__D1", 1 },
+ { "D2", "DISPENSER_STEP_DIVISION__D2", 2 },
+ { "D4", "DISPENSER_STEP_DIVISION__D4", 4 },
+ { "D8", "DISPENSER_STEP_DIVISION__D8", 8 },
+ { "D16", "DISPENSER_STEP_DIVISION__D16", 16 },
+ { "D32", "DISPENSER_STEP_DIVISION__D32", 32 },
+ { "D64", "DISPENSER_STEP_DIVISION__D64", 64 },
+ { "D128", "DISPENSER_STEP_DIVISION__D128", 128 },
+};
+static const ProtobufCIntRange dispenser_step_division__value_ranges[] = {
+{0, 0},{4, 3},{8, 4},{16, 5},{32, 6},{64, 7},{128, 8},{0, 9}
+};
+static const ProtobufCEnumValueIndex dispenser_step_division__enum_values_by_name[9] =
+{
+ { "Auto", 0 },
+ { "D1", 1 },
+ { "D128", 8 },
+ { "D16", 5 },
+ { "D2", 2 },
+ { "D32", 6 },
+ { "D4", 3 },
+ { "D64", 7 },
+ { "D8", 4 },
+};
+const ProtobufCEnumDescriptor dispenser_step_division__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "DispenserStepDivision",
+ "DispenserStepDivision",
+ "DispenserStepDivision",
+ "",
+ 9,
+ dispenser_step_division__enum_values_by_number,
+ 9,
+ dispenser_step_division__enum_values_by_name,
+ 7,
+ dispenser_step_division__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserStepDivision.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserStepDivision.pb-c.h
new file mode 100644
index 000000000..42e340daa
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/DispenserStepDivision.pb-c.h
@@ -0,0 +1,50 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DispenserStepDivision.proto */
+
+#ifndef PROTOBUF_C_DispenserStepDivision_2eproto__INCLUDED
+#define PROTOBUF_C_DispenserStepDivision_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _DispenserStepDivision {
+ DISPENSER_STEP_DIVISION__Auto = 0,
+ DISPENSER_STEP_DIVISION__D1 = 1,
+ DISPENSER_STEP_DIVISION__D2 = 2,
+ DISPENSER_STEP_DIVISION__D4 = 4,
+ DISPENSER_STEP_DIVISION__D8 = 8,
+ DISPENSER_STEP_DIVISION__D16 = 16,
+ DISPENSER_STEP_DIVISION__D32 = 32,
+ DISPENSER_STEP_DIVISION__D64 = 64,
+ DISPENSER_STEP_DIVISION__D128 = 128
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(DISPENSER_STEP_DIVISION)
+} DispenserStepDivision;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor dispenser_step_division__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DispenserStepDivision_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobBrushStop.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobBrushStop.pb-c.c
new file mode 100644
index 000000000..45e10394b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobBrushStop.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobBrushStop.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "JobBrushStop.pb-c.h"
+void job_brush_stop__init
+ (JobBrushStop *message)
+{
+ static const JobBrushStop init_value = JOB_BRUSH_STOP__INIT;
+ *message = init_value;
+}
+size_t job_brush_stop__get_packed_size
+ (const JobBrushStop *message)
+{
+ assert(message->base.descriptor == &job_brush_stop__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t job_brush_stop__pack
+ (const JobBrushStop *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &job_brush_stop__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t job_brush_stop__pack_to_buffer
+ (const JobBrushStop *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &job_brush_stop__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+JobBrushStop *
+ job_brush_stop__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (JobBrushStop *)
+ protobuf_c_message_unpack (&job_brush_stop__descriptor,
+ allocator, len, data);
+}
+void job_brush_stop__free_unpacked
+ (JobBrushStop *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &job_brush_stop__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor job_brush_stop__field_descriptors[4] =
+{
+ {
+ "Index",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(JobBrushStop, has_index),
+ offsetof(JobBrushStop, index),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "OffsetPercent",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobBrushStop, has_offsetpercent),
+ offsetof(JobBrushStop, offsetpercent),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "OffsetMeters",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobBrushStop, has_offsetmeters),
+ offsetof(JobBrushStop, offsetmeters),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Dispensers",
+ 4,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(JobBrushStop, n_dispensers),
+ offsetof(JobBrushStop, dispensers),
+ &job_dispenser__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned job_brush_stop__field_indices_by_name[] = {
+ 3, /* field[3] = Dispensers */
+ 0, /* field[0] = Index */
+ 2, /* field[2] = OffsetMeters */
+ 1, /* field[1] = OffsetPercent */
+};
+static const ProtobufCIntRange job_brush_stop__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor job_brush_stop__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "JobBrushStop",
+ "JobBrushStop",
+ "JobBrushStop",
+ "",
+ sizeof(JobBrushStop),
+ 4,
+ job_brush_stop__field_descriptors,
+ job_brush_stop__field_indices_by_name,
+ 1, job_brush_stop__number_ranges,
+ (ProtobufCMessageInit) job_brush_stop__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobBrushStop.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobBrushStop.pb-c.h
new file mode 100644
index 000000000..6e887a448
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobBrushStop.pb-c.h
@@ -0,0 +1,79 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobBrushStop.proto */
+
+#ifndef PROTOBUF_C_JobBrushStop_2eproto__INCLUDED
+#define PROTOBUF_C_JobBrushStop_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "JobDispenser.pb-c.h"
+
+typedef struct _JobBrushStop JobBrushStop;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _JobBrushStop
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_index;
+ int32_t index;
+ protobuf_c_boolean has_offsetpercent;
+ double offsetpercent;
+ protobuf_c_boolean has_offsetmeters;
+ double offsetmeters;
+ size_t n_dispensers;
+ JobDispenser **dispensers;
+};
+#define JOB_BRUSH_STOP__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&job_brush_stop__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0,NULL }
+
+
+/* JobBrushStop methods */
+void job_brush_stop__init
+ (JobBrushStop *message);
+size_t job_brush_stop__get_packed_size
+ (const JobBrushStop *message);
+size_t job_brush_stop__pack
+ (const JobBrushStop *message,
+ uint8_t *out);
+size_t job_brush_stop__pack_to_buffer
+ (const JobBrushStop *message,
+ ProtobufCBuffer *buffer);
+JobBrushStop *
+ job_brush_stop__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void job_brush_stop__free_unpacked
+ (JobBrushStop *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*JobBrushStop_Closure)
+ (const JobBrushStop *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor job_brush_stop__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_JobBrushStop_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobDispenser.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobDispenser.pb-c.c
new file mode 100644
index 000000000..f868d121e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobDispenser.pb-c.c
@@ -0,0 +1,196 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobDispenser.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "JobDispenser.pb-c.h"
+void job_dispenser__init
+ (JobDispenser *message)
+{
+ static const JobDispenser init_value = JOB_DISPENSER__INIT;
+ *message = init_value;
+}
+size_t job_dispenser__get_packed_size
+ (const JobDispenser *message)
+{
+ assert(message->base.descriptor == &job_dispenser__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t job_dispenser__pack
+ (const JobDispenser *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &job_dispenser__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t job_dispenser__pack_to_buffer
+ (const JobDispenser *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &job_dispenser__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+JobDispenser *
+ job_dispenser__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (JobDispenser *)
+ protobuf_c_message_unpack (&job_dispenser__descriptor,
+ allocator, len, data);
+}
+void job_dispenser__free_unpacked
+ (JobDispenser *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &job_dispenser__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor job_dispenser__field_descriptors[9] =
+{
+ {
+ "Index",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(JobDispenser, has_index),
+ offsetof(JobDispenser, index),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Volume",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobDispenser, has_volume),
+ offsetof(JobDispenser, volume),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DispenserStepDivision",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(JobDispenser, has_dispenserstepdivision),
+ offsetof(JobDispenser, dispenserstepdivision),
+ &dispenser_step_division__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "NanolitterPerSecond",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobDispenser, has_nanolitterpersecond),
+ offsetof(JobDispenser, nanolitterpersecond),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "NanoliterPerCentimeter",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobDispenser, has_nanoliterpercentimeter),
+ offsetof(JobDispenser, nanoliterpercentimeter),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PulsePerSecond",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobDispenser, has_pulsepersecond),
+ offsetof(JobDispenser, pulsepersecond),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DispenserLiquidType",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(JobDispenser, has_dispenserliquidtype),
+ offsetof(JobDispenser, dispenserliquidtype),
+ &dispenser_liquid_type__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "LiquidMaxNanoliterPerCentimeter",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobDispenser, has_liquidmaxnanoliterpercentimeter),
+ offsetof(JobDispenser, liquidmaxnanoliterpercentimeter),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "NanoliterPerPulse",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobDispenser, has_nanoliterperpulse),
+ offsetof(JobDispenser, nanoliterperpulse),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned job_dispenser__field_indices_by_name[] = {
+ 6, /* field[6] = DispenserLiquidType */
+ 2, /* field[2] = DispenserStepDivision */
+ 0, /* field[0] = Index */
+ 7, /* field[7] = LiquidMaxNanoliterPerCentimeter */
+ 4, /* field[4] = NanoliterPerCentimeter */
+ 8, /* field[8] = NanoliterPerPulse */
+ 3, /* field[3] = NanolitterPerSecond */
+ 5, /* field[5] = PulsePerSecond */
+ 1, /* field[1] = Volume */
+};
+static const ProtobufCIntRange job_dispenser__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 9 }
+};
+const ProtobufCMessageDescriptor job_dispenser__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "JobDispenser",
+ "JobDispenser",
+ "JobDispenser",
+ "",
+ sizeof(JobDispenser),
+ 9,
+ job_dispenser__field_descriptors,
+ job_dispenser__field_indices_by_name,
+ 1, job_dispenser__number_ranges,
+ (ProtobufCMessageInit) job_dispenser__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobDispenser.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobDispenser.pb-c.h
new file mode 100644
index 000000000..2b21e265c
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobDispenser.pb-c.h
@@ -0,0 +1,90 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobDispenser.proto */
+
+#ifndef PROTOBUF_C_JobDispenser_2eproto__INCLUDED
+#define PROTOBUF_C_JobDispenser_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "DispenserStepDivision.pb-c.h"
+#include "DispenserLiquidType.pb-c.h"
+
+typedef struct _JobDispenser JobDispenser;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _JobDispenser
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_index;
+ int32_t index;
+ protobuf_c_boolean has_volume;
+ double volume;
+ protobuf_c_boolean has_dispenserstepdivision;
+ DispenserStepDivision dispenserstepdivision;
+ protobuf_c_boolean has_nanolitterpersecond;
+ double nanolitterpersecond;
+ protobuf_c_boolean has_nanoliterpercentimeter;
+ double nanoliterpercentimeter;
+ protobuf_c_boolean has_pulsepersecond;
+ double pulsepersecond;
+ protobuf_c_boolean has_dispenserliquidtype;
+ DispenserLiquidType dispenserliquidtype;
+ protobuf_c_boolean has_liquidmaxnanoliterpercentimeter;
+ double liquidmaxnanoliterpercentimeter;
+ protobuf_c_boolean has_nanoliterperpulse;
+ double nanoliterperpulse;
+};
+#define JOB_DISPENSER__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&job_dispenser__descriptor) \
+ , 0, 0, 0, 0, 0, DISPENSER_STEP_DIVISION__Auto, 0, 0, 0, 0, 0, 0, 0, DISPENSER_LIQUID_TYPE__Cyan, 0, 0, 0, 0 }
+
+
+/* JobDispenser methods */
+void job_dispenser__init
+ (JobDispenser *message);
+size_t job_dispenser__get_packed_size
+ (const JobDispenser *message);
+size_t job_dispenser__pack
+ (const JobDispenser *message,
+ uint8_t *out);
+size_t job_dispenser__pack_to_buffer
+ (const JobDispenser *message,
+ ProtobufCBuffer *buffer);
+JobDispenser *
+ job_dispenser__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void job_dispenser__free_unpacked
+ (JobDispenser *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*JobDispenser_Closure)
+ (const JobDispenser *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor job_dispenser__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_JobDispenser_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobRequest.pb-c.c
new file mode 100644
index 000000000..d1e101dfd
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "JobRequest.pb-c.h"
+void job_request__init
+ (JobRequest *message)
+{
+ static const JobRequest init_value = JOB_REQUEST__INIT;
+ *message = init_value;
+}
+size_t job_request__get_packed_size
+ (const JobRequest *message)
+{
+ assert(message->base.descriptor == &job_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t job_request__pack
+ (const JobRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &job_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t job_request__pack_to_buffer
+ (const JobRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &job_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+JobRequest *
+ job_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (JobRequest *)
+ protobuf_c_message_unpack (&job_request__descriptor,
+ allocator, len, data);
+}
+void job_request__free_unpacked
+ (JobRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &job_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor job_request__field_descriptors[1] =
+{
+ {
+ "JobTicket",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(JobRequest, jobticket),
+ &job_ticket__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned job_request__field_indices_by_name[] = {
+ 0, /* field[0] = JobTicket */
+};
+static const ProtobufCIntRange job_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor job_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "JobRequest",
+ "JobRequest",
+ "JobRequest",
+ "",
+ sizeof(JobRequest),
+ 1,
+ job_request__field_descriptors,
+ job_request__field_indices_by_name,
+ 1, job_request__number_ranges,
+ (ProtobufCMessageInit) job_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobRequest.pb-c.h
new file mode 100644
index 000000000..224db64af
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobRequest.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobRequest.proto */
+
+#ifndef PROTOBUF_C_JobRequest_2eproto__INCLUDED
+#define PROTOBUF_C_JobRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "JobTicket.pb-c.h"
+
+typedef struct _JobRequest JobRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _JobRequest
+{
+ ProtobufCMessage base;
+ JobTicket *jobticket;
+};
+#define JOB_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&job_request__descriptor) \
+ , NULL }
+
+
+/* JobRequest methods */
+void job_request__init
+ (JobRequest *message);
+size_t job_request__get_packed_size
+ (const JobRequest *message);
+size_t job_request__pack
+ (const JobRequest *message,
+ uint8_t *out);
+size_t job_request__pack_to_buffer
+ (const JobRequest *message,
+ ProtobufCBuffer *buffer);
+JobRequest *
+ job_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void job_request__free_unpacked
+ (JobRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*JobRequest_Closure)
+ (const JobRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor job_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_JobRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobResponse.pb-c.c
new file mode 100644
index 000000000..692f2df66
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobResponse.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "JobResponse.pb-c.h"
+void job_response__init
+ (JobResponse *message)
+{
+ static const JobResponse init_value = JOB_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t job_response__get_packed_size
+ (const JobResponse *message)
+{
+ assert(message->base.descriptor == &job_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t job_response__pack
+ (const JobResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &job_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t job_response__pack_to_buffer
+ (const JobResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &job_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+JobResponse *
+ job_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (JobResponse *)
+ protobuf_c_message_unpack (&job_response__descriptor,
+ allocator, len, data);
+}
+void job_response__free_unpacked
+ (JobResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &job_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor job_response__field_descriptors[2] =
+{
+ {
+ "Status",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(JobResponse, status),
+ &job_status__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Canceled",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(JobResponse, has_canceled),
+ offsetof(JobResponse, canceled),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned job_response__field_indices_by_name[] = {
+ 1, /* field[1] = Canceled */
+ 0, /* field[0] = Status */
+};
+static const ProtobufCIntRange job_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor job_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "JobResponse",
+ "JobResponse",
+ "JobResponse",
+ "",
+ sizeof(JobResponse),
+ 2,
+ job_response__field_descriptors,
+ job_response__field_indices_by_name,
+ 1, job_response__number_ranges,
+ (ProtobufCMessageInit) job_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobResponse.pb-c.h
new file mode 100644
index 000000000..56efcd106
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobResponse.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobResponse.proto */
+
+#ifndef PROTOBUF_C_JobResponse_2eproto__INCLUDED
+#define PROTOBUF_C_JobResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "JobStatus.pb-c.h"
+
+typedef struct _JobResponse JobResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _JobResponse
+{
+ ProtobufCMessage base;
+ JobStatus *status;
+ protobuf_c_boolean has_canceled;
+ protobuf_c_boolean canceled;
+};
+#define JOB_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&job_response__descriptor) \
+ , NULL, 0, 0 }
+
+
+/* JobResponse methods */
+void job_response__init
+ (JobResponse *message);
+size_t job_response__get_packed_size
+ (const JobResponse *message);
+size_t job_response__pack
+ (const JobResponse *message,
+ uint8_t *out);
+size_t job_response__pack_to_buffer
+ (const JobResponse *message,
+ ProtobufCBuffer *buffer);
+JobResponse *
+ job_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void job_response__free_unpacked
+ (JobResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*JobResponse_Closure)
+ (const JobResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor job_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_JobResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSegment.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSegment.pb-c.c
new file mode 100644
index 000000000..8b1710079
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSegment.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobSegment.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "JobSegment.pb-c.h"
+void job_segment__init
+ (JobSegment *message)
+{
+ static const JobSegment init_value = JOB_SEGMENT__INIT;
+ *message = init_value;
+}
+size_t job_segment__get_packed_size
+ (const JobSegment *message)
+{
+ assert(message->base.descriptor == &job_segment__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t job_segment__pack
+ (const JobSegment *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &job_segment__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t job_segment__pack_to_buffer
+ (const JobSegment *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &job_segment__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+JobSegment *
+ job_segment__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (JobSegment *)
+ protobuf_c_message_unpack (&job_segment__descriptor,
+ allocator, len, data);
+}
+void job_segment__free_unpacked
+ (JobSegment *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &job_segment__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor job_segment__field_descriptors[3] =
+{
+ {
+ "Name",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(JobSegment, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Length",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobSegment, has_length),
+ offsetof(JobSegment, length),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "BrushStops",
+ 3,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(JobSegment, n_brushstops),
+ offsetof(JobSegment, brushstops),
+ &job_brush_stop__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned job_segment__field_indices_by_name[] = {
+ 2, /* field[2] = BrushStops */
+ 1, /* field[1] = Length */
+ 0, /* field[0] = Name */
+};
+static const ProtobufCIntRange job_segment__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor job_segment__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "JobSegment",
+ "JobSegment",
+ "JobSegment",
+ "",
+ sizeof(JobSegment),
+ 3,
+ job_segment__field_descriptors,
+ job_segment__field_indices_by_name,
+ 1, job_segment__number_ranges,
+ (ProtobufCMessageInit) job_segment__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSegment.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSegment.pb-c.h
new file mode 100644
index 000000000..2c077abaa
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSegment.pb-c.h
@@ -0,0 +1,76 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobSegment.proto */
+
+#ifndef PROTOBUF_C_JobSegment_2eproto__INCLUDED
+#define PROTOBUF_C_JobSegment_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "JobBrushStop.pb-c.h"
+
+typedef struct _JobSegment JobSegment;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _JobSegment
+{
+ ProtobufCMessage base;
+ char *name;
+ protobuf_c_boolean has_length;
+ double length;
+ size_t n_brushstops;
+ JobBrushStop **brushstops;
+};
+#define JOB_SEGMENT__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&job_segment__descriptor) \
+ , NULL, 0, 0, 0,NULL }
+
+
+/* JobSegment methods */
+void job_segment__init
+ (JobSegment *message);
+size_t job_segment__get_packed_size
+ (const JobSegment *message);
+size_t job_segment__pack
+ (const JobSegment *message,
+ uint8_t *out);
+size_t job_segment__pack_to_buffer
+ (const JobSegment *message,
+ ProtobufCBuffer *buffer);
+JobSegment *
+ job_segment__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void job_segment__free_unpacked
+ (JobSegment *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*JobSegment_Closure)
+ (const JobSegment *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor job_segment__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_JobSegment_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpool.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpool.pb-c.c
new file mode 100644
index 000000000..b7a7d8126
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpool.pb-c.c
@@ -0,0 +1,196 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobSpool.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "JobSpool.pb-c.h"
+void job_spool__init
+ (JobSpool *message)
+{
+ static const JobSpool init_value = JOB_SPOOL__INIT;
+ *message = init_value;
+}
+size_t job_spool__get_packed_size
+ (const JobSpool *message)
+{
+ assert(message->base.descriptor == &job_spool__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t job_spool__pack
+ (const JobSpool *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &job_spool__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t job_spool__pack_to_buffer
+ (const JobSpool *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &job_spool__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+JobSpool *
+ job_spool__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (JobSpool *)
+ protobuf_c_message_unpack (&job_spool__descriptor,
+ allocator, len, data);
+}
+void job_spool__free_unpacked
+ (JobSpool *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &job_spool__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor job_spool__field_descriptors[9] =
+{
+ {
+ "JobSpoolType",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(JobSpool, has_jobspooltype),
+ offsetof(JobSpool, jobspooltype),
+ &job_spool_type__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Length",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobSpool, has_length),
+ offsetof(JobSpool, length),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Weight",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobSpool, has_weight),
+ offsetof(JobSpool, weight),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Diameter",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobSpool, has_diameter),
+ offsetof(JobSpool, diameter),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StartOffsetPulses",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(JobSpool, has_startoffsetpulses),
+ offsetof(JobSpool, startoffsetpulses),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "BackingRate",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(JobSpool, has_backingrate),
+ offsetof(JobSpool, backingrate),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SegmentOffsetPulses",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(JobSpool, has_segmentoffsetpulses),
+ offsetof(JobSpool, segmentoffsetpulses),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "BottomBackingRate",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(JobSpool, has_bottombackingrate),
+ offsetof(JobSpool, bottombackingrate),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "RotationsPerPassage",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobSpool, has_rotationsperpassage),
+ offsetof(JobSpool, rotationsperpassage),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned job_spool__field_indices_by_name[] = {
+ 5, /* field[5] = BackingRate */
+ 7, /* field[7] = BottomBackingRate */
+ 3, /* field[3] = Diameter */
+ 0, /* field[0] = JobSpoolType */
+ 1, /* field[1] = Length */
+ 8, /* field[8] = RotationsPerPassage */
+ 6, /* field[6] = SegmentOffsetPulses */
+ 4, /* field[4] = StartOffsetPulses */
+ 2, /* field[2] = Weight */
+};
+static const ProtobufCIntRange job_spool__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 9 }
+};
+const ProtobufCMessageDescriptor job_spool__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "JobSpool",
+ "JobSpool",
+ "JobSpool",
+ "",
+ sizeof(JobSpool),
+ 9,
+ job_spool__field_descriptors,
+ job_spool__field_indices_by_name,
+ 1, job_spool__number_ranges,
+ (ProtobufCMessageInit) job_spool__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpool.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpool.pb-c.h
new file mode 100644
index 000000000..87c391207
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpool.pb-c.h
@@ -0,0 +1,89 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobSpool.proto */
+
+#ifndef PROTOBUF_C_JobSpool_2eproto__INCLUDED
+#define PROTOBUF_C_JobSpool_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "JobSpoolType.pb-c.h"
+
+typedef struct _JobSpool JobSpool;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _JobSpool
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_jobspooltype;
+ JobSpoolType jobspooltype;
+ protobuf_c_boolean has_length;
+ double length;
+ protobuf_c_boolean has_weight;
+ double weight;
+ protobuf_c_boolean has_diameter;
+ double diameter;
+ protobuf_c_boolean has_startoffsetpulses;
+ int32_t startoffsetpulses;
+ protobuf_c_boolean has_backingrate;
+ int32_t backingrate;
+ protobuf_c_boolean has_segmentoffsetpulses;
+ int32_t segmentoffsetpulses;
+ protobuf_c_boolean has_bottombackingrate;
+ int32_t bottombackingrate;
+ protobuf_c_boolean has_rotationsperpassage;
+ double rotationsperpassage;
+};
+#define JOB_SPOOL__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&job_spool__descriptor) \
+ , 0, JOB_SPOOL_TYPE__StandardSpool, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* JobSpool methods */
+void job_spool__init
+ (JobSpool *message);
+size_t job_spool__get_packed_size
+ (const JobSpool *message);
+size_t job_spool__pack
+ (const JobSpool *message,
+ uint8_t *out);
+size_t job_spool__pack_to_buffer
+ (const JobSpool *message,
+ ProtobufCBuffer *buffer);
+JobSpool *
+ job_spool__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void job_spool__free_unpacked
+ (JobSpool *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*JobSpool_Closure)
+ (const JobSpool *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor job_spool__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_JobSpool_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpoolType.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpoolType.pb-c.c
new file mode 100644
index 000000000..aa72dc2c9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpoolType.pb-c.c
@@ -0,0 +1,35 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobSpoolType.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "JobSpoolType.pb-c.h"
+static const ProtobufCEnumValue job_spool_type__enum_values_by_number[1] =
+{
+ { "StandardSpool", "JOB_SPOOL_TYPE__StandardSpool", 0 },
+};
+static const ProtobufCIntRange job_spool_type__value_ranges[] = {
+{0, 0},{0, 1}
+};
+static const ProtobufCEnumValueIndex job_spool_type__enum_values_by_name[1] =
+{
+ { "StandardSpool", 0 },
+};
+const ProtobufCEnumDescriptor job_spool_type__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "JobSpoolType",
+ "JobSpoolType",
+ "JobSpoolType",
+ "",
+ 1,
+ job_spool_type__enum_values_by_number,
+ 1,
+ job_spool_type__enum_values_by_name,
+ 1,
+ job_spool_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpoolType.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpoolType.pb-c.h
new file mode 100644
index 000000000..2cfab4ae8
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobSpoolType.pb-c.h
@@ -0,0 +1,42 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobSpoolType.proto */
+
+#ifndef PROTOBUF_C_JobSpoolType_2eproto__INCLUDED
+#define PROTOBUF_C_JobSpoolType_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _JobSpoolType {
+ JOB_SPOOL_TYPE__StandardSpool = 0
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(JOB_SPOOL_TYPE)
+} JobSpoolType;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor job_spool_type__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_JobSpoolType_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobStatus.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobStatus.pb-c.c
new file mode 100644
index 000000000..c7682cdb2
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobStatus.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobStatus.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "JobStatus.pb-c.h"
+void job_status__init
+ (JobStatus *message)
+{
+ static const JobStatus init_value = JOB_STATUS__INIT;
+ *message = init_value;
+}
+size_t job_status__get_packed_size
+ (const JobStatus *message)
+{
+ assert(message->base.descriptor == &job_status__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t job_status__pack
+ (const JobStatus *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &job_status__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t job_status__pack_to_buffer
+ (const JobStatus *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &job_status__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+JobStatus *
+ job_status__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (JobStatus *)
+ protobuf_c_message_unpack (&job_status__descriptor,
+ allocator, len, data);
+}
+void job_status__free_unpacked
+ (JobStatus *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &job_status__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor job_status__field_descriptors[3] =
+{
+ {
+ "Message",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(JobStatus, message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Progress",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobStatus, has_progress),
+ offsetof(JobStatus, progress),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "CurrentSegmentIndex",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(JobStatus, has_currentsegmentindex),
+ offsetof(JobStatus, currentsegmentindex),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned job_status__field_indices_by_name[] = {
+ 2, /* field[2] = CurrentSegmentIndex */
+ 0, /* field[0] = Message */
+ 1, /* field[1] = Progress */
+};
+static const ProtobufCIntRange job_status__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor job_status__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "JobStatus",
+ "JobStatus",
+ "JobStatus",
+ "",
+ sizeof(JobStatus),
+ 3,
+ job_status__field_descriptors,
+ job_status__field_indices_by_name,
+ 1, job_status__number_ranges,
+ (ProtobufCMessageInit) job_status__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobStatus.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobStatus.pb-c.h
new file mode 100644
index 000000000..abfb9d71f
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobStatus.pb-c.h
@@ -0,0 +1,75 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobStatus.proto */
+
+#ifndef PROTOBUF_C_JobStatus_2eproto__INCLUDED
+#define PROTOBUF_C_JobStatus_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _JobStatus JobStatus;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _JobStatus
+{
+ ProtobufCMessage base;
+ char *message;
+ protobuf_c_boolean has_progress;
+ double progress;
+ protobuf_c_boolean has_currentsegmentindex;
+ int32_t currentsegmentindex;
+};
+#define JOB_STATUS__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&job_status__descriptor) \
+ , NULL, 0, 0, 0, 0 }
+
+
+/* JobStatus methods */
+void job_status__init
+ (JobStatus *message);
+size_t job_status__get_packed_size
+ (const JobStatus *message);
+size_t job_status__pack
+ (const JobStatus *message,
+ uint8_t *out);
+size_t job_status__pack_to_buffer
+ (const JobStatus *message,
+ ProtobufCBuffer *buffer);
+JobStatus *
+ job_status__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void job_status__free_unpacked
+ (JobStatus *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*JobStatus_Closure)
+ (const JobStatus *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor job_status__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_JobStatus_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobTicket.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobTicket.pb-c.c
new file mode 100644
index 000000000..c9f1e859f
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobTicket.pb-c.c
@@ -0,0 +1,183 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobTicket.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "JobTicket.pb-c.h"
+void job_ticket__init
+ (JobTicket *message)
+{
+ static const JobTicket init_value = JOB_TICKET__INIT;
+ *message = init_value;
+}
+size_t job_ticket__get_packed_size
+ (const JobTicket *message)
+{
+ assert(message->base.descriptor == &job_ticket__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t job_ticket__pack
+ (const JobTicket *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &job_ticket__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t job_ticket__pack_to_buffer
+ (const JobTicket *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &job_ticket__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+JobTicket *
+ job_ticket__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (JobTicket *)
+ protobuf_c_message_unpack (&job_ticket__descriptor,
+ allocator, len, data);
+}
+void job_ticket__free_unpacked
+ (JobTicket *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &job_ticket__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor job_ticket__field_descriptors[8] =
+{
+ {
+ "Name",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(JobTicket, name),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "EnableInterSegment",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(JobTicket, has_enableintersegment),
+ offsetof(JobTicket, enableintersegment),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "InterSegmentLength",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobTicket, has_intersegmentlength),
+ offsetof(JobTicket, intersegmentlength),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Length",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(JobTicket, has_length),
+ offsetof(JobTicket, length),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ProcessParameters",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(JobTicket, processparameters),
+ &process_parameters__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "WindingMethod",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(JobTicket, has_windingmethod),
+ offsetof(JobTicket, windingmethod),
+ &job_winding_method__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Spool",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(JobTicket, spool),
+ &job_spool__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Segments",
+ 8,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(JobTicket, n_segments),
+ offsetof(JobTicket, segments),
+ &job_segment__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned job_ticket__field_indices_by_name[] = {
+ 1, /* field[1] = EnableInterSegment */
+ 2, /* field[2] = InterSegmentLength */
+ 3, /* field[3] = Length */
+ 0, /* field[0] = Name */
+ 4, /* field[4] = ProcessParameters */
+ 7, /* field[7] = Segments */
+ 6, /* field[6] = Spool */
+ 5, /* field[5] = WindingMethod */
+};
+static const ProtobufCIntRange job_ticket__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor job_ticket__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "JobTicket",
+ "JobTicket",
+ "JobTicket",
+ "",
+ sizeof(JobTicket),
+ 8,
+ job_ticket__field_descriptors,
+ job_ticket__field_indices_by_name,
+ 1, job_ticket__number_ranges,
+ (ProtobufCMessageInit) job_ticket__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobTicket.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobTicket.pb-c.h
new file mode 100644
index 000000000..b20d1db3c
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobTicket.pb-c.h
@@ -0,0 +1,87 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobTicket.proto */
+
+#ifndef PROTOBUF_C_JobTicket_2eproto__INCLUDED
+#define PROTOBUF_C_JobTicket_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "JobSegment.pb-c.h"
+#include "ProcessParameters.pb-c.h"
+#include "JobWindingMethod.pb-c.h"
+#include "JobSpool.pb-c.h"
+
+typedef struct _JobTicket JobTicket;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _JobTicket
+{
+ ProtobufCMessage base;
+ char *name;
+ protobuf_c_boolean has_enableintersegment;
+ protobuf_c_boolean enableintersegment;
+ protobuf_c_boolean has_intersegmentlength;
+ double intersegmentlength;
+ protobuf_c_boolean has_length;
+ double length;
+ ProcessParameters *processparameters;
+ protobuf_c_boolean has_windingmethod;
+ JobWindingMethod windingmethod;
+ JobSpool *spool;
+ size_t n_segments;
+ JobSegment **segments;
+};
+#define JOB_TICKET__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&job_ticket__descriptor) \
+ , NULL, 0, 0, 0, 0, 0, 0, NULL, 0, JOB_WINDING_METHOD__Embroidery, NULL, 0,NULL }
+
+
+/* JobTicket methods */
+void job_ticket__init
+ (JobTicket *message);
+size_t job_ticket__get_packed_size
+ (const JobTicket *message);
+size_t job_ticket__pack
+ (const JobTicket *message,
+ uint8_t *out);
+size_t job_ticket__pack_to_buffer
+ (const JobTicket *message,
+ ProtobufCBuffer *buffer);
+JobTicket *
+ job_ticket__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void job_ticket__free_unpacked
+ (JobTicket *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*JobTicket_Closure)
+ (const JobTicket *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor job_ticket__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_JobTicket_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobWindingMethod.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobWindingMethod.pb-c.c
new file mode 100644
index 000000000..89ca011a3
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobWindingMethod.pb-c.c
@@ -0,0 +1,37 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobWindingMethod.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "JobWindingMethod.pb-c.h"
+static const ProtobufCEnumValue job_winding_method__enum_values_by_number[2] =
+{
+ { "Embroidery", "JOB_WINDING_METHOD__Embroidery", 0 },
+ { "Calibration", "JOB_WINDING_METHOD__Calibration", 1 },
+};
+static const ProtobufCIntRange job_winding_method__value_ranges[] = {
+{0, 0},{0, 2}
+};
+static const ProtobufCEnumValueIndex job_winding_method__enum_values_by_name[2] =
+{
+ { "Calibration", 1 },
+ { "Embroidery", 0 },
+};
+const ProtobufCEnumDescriptor job_winding_method__descriptor =
+{
+ PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
+ "JobWindingMethod",
+ "JobWindingMethod",
+ "JobWindingMethod",
+ "",
+ 2,
+ job_winding_method__enum_values_by_number,
+ 2,
+ job_winding_method__enum_values_by_name,
+ 1,
+ job_winding_method__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobWindingMethod.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobWindingMethod.pb-c.h
new file mode 100644
index 000000000..d3bac5cb2
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/JobWindingMethod.pb-c.h
@@ -0,0 +1,49 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: JobWindingMethod.proto */
+
+#ifndef PROTOBUF_C_JobWindingMethod_2eproto__INCLUDED
+#define PROTOBUF_C_JobWindingMethod_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+
+
+/* --- enums --- */
+
+typedef enum _JobWindingMethod {
+ /*
+ *Embroidery Winding
+ */
+ JOB_WINDING_METHOD__Embroidery = 0,
+ /*
+ *Calibration Winding
+ */
+ JOB_WINDING_METHOD__Calibration = 1
+ PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(JOB_WINDING_METHOD)
+} JobWindingMethod;
+
+/* --- messages --- */
+
+/* --- per-message closures --- */
+
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCEnumDescriptor job_winding_method__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_JobWindingMethod_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/ProcessParameters.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/ProcessParameters.pb-c.c
new file mode 100644
index 000000000..a6c9b8f08
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/ProcessParameters.pb-c.c
@@ -0,0 +1,287 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ProcessParameters.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ProcessParameters.pb-c.h"
+void process_parameters__init
+ (ProcessParameters *message)
+{
+ static const ProcessParameters init_value = PROCESS_PARAMETERS__INIT;
+ *message = init_value;
+}
+size_t process_parameters__get_packed_size
+ (const ProcessParameters *message)
+{
+ assert(message->base.descriptor == &process_parameters__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t process_parameters__pack
+ (const ProcessParameters *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &process_parameters__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t process_parameters__pack_to_buffer
+ (const ProcessParameters *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &process_parameters__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ProcessParameters *
+ process_parameters__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ProcessParameters *)
+ protobuf_c_message_unpack (&process_parameters__descriptor,
+ allocator, len, data);
+}
+void process_parameters__free_unpacked
+ (ProcessParameters *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &process_parameters__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor process_parameters__field_descriptors[16] =
+{
+ {
+ "DyeingSpeed",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_dyeingspeed),
+ offsetof(ProcessParameters, dyeingspeed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MixerTemp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_mixertemp),
+ offsetof(ProcessParameters, mixertemp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DryerBufferLength",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_dryerbufferlength),
+ offsetof(ProcessParameters, dryerbufferlength),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MinInkUptake",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_mininkuptake),
+ offsetof(ProcessParameters, mininkuptake),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HeadZone1Temp",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_headzone1temp),
+ offsetof(ProcessParameters, headzone1temp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DryerZone1Temp",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_dryerzone1temp),
+ offsetof(ProcessParameters, dryerzone1temp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "FeederTension",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_feedertension),
+ offsetof(ProcessParameters, feedertension),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DryerZone2Temp",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_dryerzone2temp),
+ offsetof(ProcessParameters, dryerzone2temp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HeadZone2Temp",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_headzone2temp),
+ offsetof(ProcessParameters, headzone2temp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PullerTension",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_pullertension),
+ offsetof(ProcessParameters, pullertension),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HeadZone3Temp",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_headzone3temp),
+ offsetof(ProcessParameters, headzone3temp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DryerZone3Temp",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_dryerzone3temp),
+ offsetof(ProcessParameters, dryerzone3temp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "WinderTension",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_windertension),
+ offsetof(ProcessParameters, windertension),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HeadAirFlow",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_headairflow),
+ offsetof(ProcessParameters, headairflow),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DryerAirFlow",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_dryerairflow),
+ offsetof(ProcessParameters, dryerairflow),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TableIndex",
+ 16,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(ProcessParameters, has_tableindex),
+ offsetof(ProcessParameters, tableindex),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned process_parameters__field_indices_by_name[] = {
+ 14, /* field[14] = DryerAirFlow */
+ 2, /* field[2] = DryerBufferLength */
+ 5, /* field[5] = DryerZone1Temp */
+ 7, /* field[7] = DryerZone2Temp */
+ 11, /* field[11] = DryerZone3Temp */
+ 0, /* field[0] = DyeingSpeed */
+ 6, /* field[6] = FeederTension */
+ 13, /* field[13] = HeadAirFlow */
+ 4, /* field[4] = HeadZone1Temp */
+ 8, /* field[8] = HeadZone2Temp */
+ 10, /* field[10] = HeadZone3Temp */
+ 3, /* field[3] = MinInkUptake */
+ 1, /* field[1] = MixerTemp */
+ 9, /* field[9] = PullerTension */
+ 15, /* field[15] = TableIndex */
+ 12, /* field[12] = WinderTension */
+};
+static const ProtobufCIntRange process_parameters__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 16 }
+};
+const ProtobufCMessageDescriptor process_parameters__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ProcessParameters",
+ "ProcessParameters",
+ "ProcessParameters",
+ "",
+ sizeof(ProcessParameters),
+ 16,
+ process_parameters__field_descriptors,
+ process_parameters__field_indices_by_name,
+ 1, process_parameters__number_ranges,
+ (ProtobufCMessageInit) process_parameters__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/ProcessParameters.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/ProcessParameters.pb-c.h
new file mode 100644
index 000000000..00be2df93
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/ProcessParameters.pb-c.h
@@ -0,0 +1,102 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ProcessParameters.proto */
+
+#ifndef PROTOBUF_C_ProcessParameters_2eproto__INCLUDED
+#define PROTOBUF_C_ProcessParameters_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _ProcessParameters ProcessParameters;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ProcessParameters
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_dyeingspeed;
+ double dyeingspeed;
+ protobuf_c_boolean has_mixertemp;
+ double mixertemp;
+ protobuf_c_boolean has_dryerbufferlength;
+ double dryerbufferlength;
+ protobuf_c_boolean has_mininkuptake;
+ double mininkuptake;
+ protobuf_c_boolean has_headzone1temp;
+ double headzone1temp;
+ protobuf_c_boolean has_dryerzone1temp;
+ double dryerzone1temp;
+ protobuf_c_boolean has_feedertension;
+ double feedertension;
+ protobuf_c_boolean has_dryerzone2temp;
+ double dryerzone2temp;
+ protobuf_c_boolean has_headzone2temp;
+ double headzone2temp;
+ protobuf_c_boolean has_pullertension;
+ double pullertension;
+ protobuf_c_boolean has_headzone3temp;
+ double headzone3temp;
+ protobuf_c_boolean has_dryerzone3temp;
+ double dryerzone3temp;
+ protobuf_c_boolean has_windertension;
+ double windertension;
+ protobuf_c_boolean has_headairflow;
+ double headairflow;
+ protobuf_c_boolean has_dryerairflow;
+ double dryerairflow;
+ protobuf_c_boolean has_tableindex;
+ int32_t tableindex;
+};
+#define PROCESS_PARAMETERS__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&process_parameters__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* ProcessParameters methods */
+void process_parameters__init
+ (ProcessParameters *message);
+size_t process_parameters__get_packed_size
+ (const ProcessParameters *message);
+size_t process_parameters__pack
+ (const ProcessParameters *message,
+ uint8_t *out);
+size_t process_parameters__pack_to_buffer
+ (const ProcessParameters *message,
+ ProtobufCBuffer *buffer);
+ProcessParameters *
+ process_parameters__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void process_parameters__free_unpacked
+ (ProcessParameters *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ProcessParameters_Closure)
+ (const ProcessParameters *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor process_parameters__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ProcessParameters_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersRequest.pb-c.c
new file mode 100644
index 000000000..bae09c741
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: UploadProcessParametersRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "UploadProcessParametersRequest.pb-c.h"
+void upload_process_parameters_request__init
+ (UploadProcessParametersRequest *message)
+{
+ static const UploadProcessParametersRequest init_value = UPLOAD_PROCESS_PARAMETERS_REQUEST__INIT;
+ *message = init_value;
+}
+size_t upload_process_parameters_request__get_packed_size
+ (const UploadProcessParametersRequest *message)
+{
+ assert(message->base.descriptor == &upload_process_parameters_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t upload_process_parameters_request__pack
+ (const UploadProcessParametersRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &upload_process_parameters_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t upload_process_parameters_request__pack_to_buffer
+ (const UploadProcessParametersRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &upload_process_parameters_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+UploadProcessParametersRequest *
+ upload_process_parameters_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (UploadProcessParametersRequest *)
+ protobuf_c_message_unpack (&upload_process_parameters_request__descriptor,
+ allocator, len, data);
+}
+void upload_process_parameters_request__free_unpacked
+ (UploadProcessParametersRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &upload_process_parameters_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor upload_process_parameters_request__field_descriptors[1] =
+{
+ {
+ "ProcessParameters",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(UploadProcessParametersRequest, processparameters),
+ &process_parameters__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned upload_process_parameters_request__field_indices_by_name[] = {
+ 0, /* field[0] = ProcessParameters */
+};
+static const ProtobufCIntRange upload_process_parameters_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor upload_process_parameters_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "UploadProcessParametersRequest",
+ "UploadProcessParametersRequest",
+ "UploadProcessParametersRequest",
+ "",
+ sizeof(UploadProcessParametersRequest),
+ 1,
+ upload_process_parameters_request__field_descriptors,
+ upload_process_parameters_request__field_indices_by_name,
+ 1, upload_process_parameters_request__number_ranges,
+ (ProtobufCMessageInit) upload_process_parameters_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersRequest.pb-c.h
new file mode 100644
index 000000000..c39ee4174
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersRequest.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: UploadProcessParametersRequest.proto */
+
+#ifndef PROTOBUF_C_UploadProcessParametersRequest_2eproto__INCLUDED
+#define PROTOBUF_C_UploadProcessParametersRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "ProcessParameters.pb-c.h"
+
+typedef struct _UploadProcessParametersRequest UploadProcessParametersRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _UploadProcessParametersRequest
+{
+ ProtobufCMessage base;
+ ProcessParameters *processparameters;
+};
+#define UPLOAD_PROCESS_PARAMETERS_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&upload_process_parameters_request__descriptor) \
+ , NULL }
+
+
+/* UploadProcessParametersRequest methods */
+void upload_process_parameters_request__init
+ (UploadProcessParametersRequest *message);
+size_t upload_process_parameters_request__get_packed_size
+ (const UploadProcessParametersRequest *message);
+size_t upload_process_parameters_request__pack
+ (const UploadProcessParametersRequest *message,
+ uint8_t *out);
+size_t upload_process_parameters_request__pack_to_buffer
+ (const UploadProcessParametersRequest *message,
+ ProtobufCBuffer *buffer);
+UploadProcessParametersRequest *
+ upload_process_parameters_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void upload_process_parameters_request__free_unpacked
+ (UploadProcessParametersRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*UploadProcessParametersRequest_Closure)
+ (const UploadProcessParametersRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor upload_process_parameters_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_UploadProcessParametersRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersResponse.pb-c.c
new file mode 100644
index 000000000..2503df80d
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersResponse.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: UploadProcessParametersResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "UploadProcessParametersResponse.pb-c.h"
+void upload_process_parameters_response__init
+ (UploadProcessParametersResponse *message)
+{
+ static const UploadProcessParametersResponse init_value = UPLOAD_PROCESS_PARAMETERS_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t upload_process_parameters_response__get_packed_size
+ (const UploadProcessParametersResponse *message)
+{
+ assert(message->base.descriptor == &upload_process_parameters_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t upload_process_parameters_response__pack
+ (const UploadProcessParametersResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &upload_process_parameters_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t upload_process_parameters_response__pack_to_buffer
+ (const UploadProcessParametersResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &upload_process_parameters_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+UploadProcessParametersResponse *
+ upload_process_parameters_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (UploadProcessParametersResponse *)
+ protobuf_c_message_unpack (&upload_process_parameters_response__descriptor,
+ allocator, len, data);
+}
+void upload_process_parameters_response__free_unpacked
+ (UploadProcessParametersResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &upload_process_parameters_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define upload_process_parameters_response__field_descriptors NULL
+#define upload_process_parameters_response__field_indices_by_name NULL
+#define upload_process_parameters_response__number_ranges NULL
+const ProtobufCMessageDescriptor upload_process_parameters_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "UploadProcessParametersResponse",
+ "UploadProcessParametersResponse",
+ "UploadProcessParametersResponse",
+ "",
+ sizeof(UploadProcessParametersResponse),
+ 0,
+ upload_process_parameters_response__field_descriptors,
+ upload_process_parameters_response__field_indices_by_name,
+ 0, upload_process_parameters_response__number_ranges,
+ (ProtobufCMessageInit) upload_process_parameters_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersResponse.pb-c.h
new file mode 100644
index 000000000..4089217d2
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Printing/UploadProcessParametersResponse.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: UploadProcessParametersResponse.proto */
+
+#ifndef PROTOBUF_C_UploadProcessParametersResponse_2eproto__INCLUDED
+#define PROTOBUF_C_UploadProcessParametersResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _UploadProcessParametersResponse UploadProcessParametersResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _UploadProcessParametersResponse
+{
+ ProtobufCMessage base;
+};
+#define UPLOAD_PROCESS_PARAMETERS_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&upload_process_parameters_response__descriptor) \
+ }
+
+
+/* UploadProcessParametersResponse methods */
+void upload_process_parameters_response__init
+ (UploadProcessParametersResponse *message);
+size_t upload_process_parameters_response__get_packed_size
+ (const UploadProcessParametersResponse *message);
+size_t upload_process_parameters_response__pack
+ (const UploadProcessParametersResponse *message,
+ uint8_t *out);
+size_t upload_process_parameters_response__pack_to_buffer
+ (const UploadProcessParametersResponse *message,
+ ProtobufCBuffer *buffer);
+UploadProcessParametersResponse *
+ upload_process_parameters_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void upload_process_parameters_response__free_unpacked
+ (UploadProcessParametersResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*UploadProcessParametersResponse_Closure)
+ (const UploadProcessParametersResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor upload_process_parameters_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_UploadProcessParametersResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateRequest.pb-c.c
new file mode 100644
index 000000000..68134c1f8
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: CalculateRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "CalculateRequest.pb-c.h"
+void calculate_request__init
+ (CalculateRequest *message)
+{
+ static const CalculateRequest init_value = CALCULATE_REQUEST__INIT;
+ *message = init_value;
+}
+size_t calculate_request__get_packed_size
+ (const CalculateRequest *message)
+{
+ assert(message->base.descriptor == &calculate_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t calculate_request__pack
+ (const CalculateRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &calculate_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t calculate_request__pack_to_buffer
+ (const CalculateRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &calculate_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CalculateRequest *
+ calculate_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CalculateRequest *)
+ protobuf_c_message_unpack (&calculate_request__descriptor,
+ allocator, len, data);
+}
+void calculate_request__free_unpacked
+ (CalculateRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &calculate_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor calculate_request__field_descriptors[2] =
+{
+ {
+ "A",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(CalculateRequest, has_a),
+ offsetof(CalculateRequest, a),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "B",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(CalculateRequest, has_b),
+ offsetof(CalculateRequest, b),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned calculate_request__field_indices_by_name[] = {
+ 0, /* field[0] = A */
+ 1, /* field[1] = B */
+};
+static const ProtobufCIntRange calculate_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor calculate_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CalculateRequest",
+ "CalculateRequest",
+ "CalculateRequest",
+ "",
+ sizeof(CalculateRequest),
+ 2,
+ calculate_request__field_descriptors,
+ calculate_request__field_indices_by_name,
+ 1, calculate_request__number_ranges,
+ (ProtobufCMessageInit) calculate_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateRequest.pb-c.h
new file mode 100644
index 000000000..4ad015493
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateRequest.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: CalculateRequest.proto */
+
+#ifndef PROTOBUF_C_CalculateRequest_2eproto__INCLUDED
+#define PROTOBUF_C_CalculateRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _CalculateRequest CalculateRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _CalculateRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_a;
+ double a;
+ protobuf_c_boolean has_b;
+ double b;
+};
+#define CALCULATE_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&calculate_request__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* CalculateRequest methods */
+void calculate_request__init
+ (CalculateRequest *message);
+size_t calculate_request__get_packed_size
+ (const CalculateRequest *message);
+size_t calculate_request__pack
+ (const CalculateRequest *message,
+ uint8_t *out);
+size_t calculate_request__pack_to_buffer
+ (const CalculateRequest *message,
+ ProtobufCBuffer *buffer);
+CalculateRequest *
+ calculate_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void calculate_request__free_unpacked
+ (CalculateRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*CalculateRequest_Closure)
+ (const CalculateRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor calculate_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_CalculateRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateResponse.pb-c.c
new file mode 100644
index 000000000..920356a05
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateResponse.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: CalculateResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "CalculateResponse.pb-c.h"
+void calculate_response__init
+ (CalculateResponse *message)
+{
+ static const CalculateResponse init_value = CALCULATE_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t calculate_response__get_packed_size
+ (const CalculateResponse *message)
+{
+ assert(message->base.descriptor == &calculate_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t calculate_response__pack
+ (const CalculateResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &calculate_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t calculate_response__pack_to_buffer
+ (const CalculateResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &calculate_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+CalculateResponse *
+ calculate_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (CalculateResponse *)
+ protobuf_c_message_unpack (&calculate_response__descriptor,
+ allocator, len, data);
+}
+void calculate_response__free_unpacked
+ (CalculateResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &calculate_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor calculate_response__field_descriptors[1] =
+{
+ {
+ "Sum",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(CalculateResponse, has_sum),
+ offsetof(CalculateResponse, sum),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned calculate_response__field_indices_by_name[] = {
+ 0, /* field[0] = Sum */
+};
+static const ProtobufCIntRange calculate_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor calculate_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "CalculateResponse",
+ "CalculateResponse",
+ "CalculateResponse",
+ "",
+ sizeof(CalculateResponse),
+ 1,
+ calculate_response__field_descriptors,
+ calculate_response__field_indices_by_name,
+ 1, calculate_response__number_ranges,
+ (ProtobufCMessageInit) calculate_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateResponse.pb-c.h
new file mode 100644
index 000000000..05bdf2b52
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/CalculateResponse.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: CalculateResponse.proto */
+
+#ifndef PROTOBUF_C_CalculateResponse_2eproto__INCLUDED
+#define PROTOBUF_C_CalculateResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _CalculateResponse CalculateResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _CalculateResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_sum;
+ double sum;
+};
+#define CALCULATE_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&calculate_response__descriptor) \
+ , 0, 0 }
+
+
+/* CalculateResponse methods */
+void calculate_response__init
+ (CalculateResponse *message);
+size_t calculate_response__get_packed_size
+ (const CalculateResponse *message);
+size_t calculate_response__pack
+ (const CalculateResponse *message,
+ uint8_t *out);
+size_t calculate_response__pack_to_buffer
+ (const CalculateResponse *message,
+ ProtobufCBuffer *buffer);
+CalculateResponse *
+ calculate_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void calculate_response__free_unpacked
+ (CalculateResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*CalculateResponse_Closure)
+ (const CalculateResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor calculate_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_CalculateResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressRequest.pb-c.c
new file mode 100644
index 000000000..9e074f376
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ProgressRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ProgressRequest.pb-c.h"
+void progress_request__init
+ (ProgressRequest *message)
+{
+ static const ProgressRequest init_value = PROGRESS_REQUEST__INIT;
+ *message = init_value;
+}
+size_t progress_request__get_packed_size
+ (const ProgressRequest *message)
+{
+ assert(message->base.descriptor == &progress_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t progress_request__pack
+ (const ProgressRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &progress_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t progress_request__pack_to_buffer
+ (const ProgressRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &progress_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ProgressRequest *
+ progress_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ProgressRequest *)
+ protobuf_c_message_unpack (&progress_request__descriptor,
+ allocator, len, data);
+}
+void progress_request__free_unpacked
+ (ProgressRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &progress_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor progress_request__field_descriptors[2] =
+{
+ {
+ "Amount",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(ProgressRequest, has_amount),
+ offsetof(ProgressRequest, amount),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Delay",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(ProgressRequest, has_delay),
+ offsetof(ProgressRequest, delay),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned progress_request__field_indices_by_name[] = {
+ 0, /* field[0] = Amount */
+ 1, /* field[1] = Delay */
+};
+static const ProtobufCIntRange progress_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor progress_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ProgressRequest",
+ "ProgressRequest",
+ "ProgressRequest",
+ "",
+ sizeof(ProgressRequest),
+ 2,
+ progress_request__field_descriptors,
+ progress_request__field_indices_by_name,
+ 1, progress_request__number_ranges,
+ (ProtobufCMessageInit) progress_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressRequest.pb-c.h
new file mode 100644
index 000000000..1ce2b6d6b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressRequest.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ProgressRequest.proto */
+
+#ifndef PROTOBUF_C_ProgressRequest_2eproto__INCLUDED
+#define PROTOBUF_C_ProgressRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _ProgressRequest ProgressRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ProgressRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_amount;
+ int32_t amount;
+ protobuf_c_boolean has_delay;
+ int32_t delay;
+};
+#define PROGRESS_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&progress_request__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* ProgressRequest methods */
+void progress_request__init
+ (ProgressRequest *message);
+size_t progress_request__get_packed_size
+ (const ProgressRequest *message);
+size_t progress_request__pack
+ (const ProgressRequest *message,
+ uint8_t *out);
+size_t progress_request__pack_to_buffer
+ (const ProgressRequest *message,
+ ProtobufCBuffer *buffer);
+ProgressRequest *
+ progress_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void progress_request__free_unpacked
+ (ProgressRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ProgressRequest_Closure)
+ (const ProgressRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor progress_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ProgressRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressResponse.pb-c.c
new file mode 100644
index 000000000..9e54fb5d6
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressResponse.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ProgressResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "ProgressResponse.pb-c.h"
+void progress_response__init
+ (ProgressResponse *message)
+{
+ static const ProgressResponse init_value = PROGRESS_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t progress_response__get_packed_size
+ (const ProgressResponse *message)
+{
+ assert(message->base.descriptor == &progress_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t progress_response__pack
+ (const ProgressResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &progress_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t progress_response__pack_to_buffer
+ (const ProgressResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &progress_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+ProgressResponse *
+ progress_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (ProgressResponse *)
+ protobuf_c_message_unpack (&progress_response__descriptor,
+ allocator, len, data);
+}
+void progress_response__free_unpacked
+ (ProgressResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &progress_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor progress_response__field_descriptors[1] =
+{
+ {
+ "Progress",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProgressResponse, has_progress),
+ offsetof(ProgressResponse, progress),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned progress_response__field_indices_by_name[] = {
+ 0, /* field[0] = Progress */
+};
+static const ProtobufCIntRange progress_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor progress_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "ProgressResponse",
+ "ProgressResponse",
+ "ProgressResponse",
+ "",
+ sizeof(ProgressResponse),
+ 1,
+ progress_response__field_descriptors,
+ progress_response__field_indices_by_name,
+ 1, progress_response__number_ranges,
+ (ProtobufCMessageInit) progress_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressResponse.pb-c.h
new file mode 100644
index 000000000..de5201ee5
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/ProgressResponse.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: ProgressResponse.proto */
+
+#ifndef PROTOBUF_C_ProgressResponse_2eproto__INCLUDED
+#define PROTOBUF_C_ProgressResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _ProgressResponse ProgressResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _ProgressResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_progress;
+ double progress;
+};
+#define PROGRESS_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&progress_response__descriptor) \
+ , 0, 0 }
+
+
+/* ProgressResponse methods */
+void progress_response__init
+ (ProgressResponse *message);
+size_t progress_response__get_packed_size
+ (const ProgressResponse *message);
+size_t progress_response__pack
+ (const ProgressResponse *message,
+ uint8_t *out);
+size_t progress_response__pack_to_buffer
+ (const ProgressResponse *message,
+ ProtobufCBuffer *buffer);
+ProgressResponse *
+ progress_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void progress_response__free_unpacked
+ (ProgressResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*ProgressResponse_Closure)
+ (const ProgressResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor progress_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_ProgressResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadRequest.pb-c.c
new file mode 100644
index 000000000..6ecf34fcd
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubCartridgeReadRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubCartridgeReadRequest.pb-c.h"
+void stub_cartridge_read_request__init
+ (StubCartridgeReadRequest *message)
+{
+ static const StubCartridgeReadRequest init_value = STUB_CARTRIDGE_READ_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_cartridge_read_request__get_packed_size
+ (const StubCartridgeReadRequest *message)
+{
+ assert(message->base.descriptor == &stub_cartridge_read_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_cartridge_read_request__pack
+ (const StubCartridgeReadRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_cartridge_read_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_cartridge_read_request__pack_to_buffer
+ (const StubCartridgeReadRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_cartridge_read_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubCartridgeReadRequest *
+ stub_cartridge_read_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubCartridgeReadRequest *)
+ protobuf_c_message_unpack (&stub_cartridge_read_request__descriptor,
+ allocator, len, data);
+}
+void stub_cartridge_read_request__free_unpacked
+ (StubCartridgeReadRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_cartridge_read_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_cartridge_read_request__field_descriptors[1] =
+{
+ {
+ "CartridgeId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubCartridgeReadRequest, has_cartridgeid),
+ offsetof(StubCartridgeReadRequest, cartridgeid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_cartridge_read_request__field_indices_by_name[] = {
+ 0, /* field[0] = CartridgeId */
+};
+static const ProtobufCIntRange stub_cartridge_read_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor stub_cartridge_read_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubCartridgeReadRequest",
+ "StubCartridgeReadRequest",
+ "StubCartridgeReadRequest",
+ "",
+ sizeof(StubCartridgeReadRequest),
+ 1,
+ stub_cartridge_read_request__field_descriptors,
+ stub_cartridge_read_request__field_indices_by_name,
+ 1, stub_cartridge_read_request__number_ranges,
+ (ProtobufCMessageInit) stub_cartridge_read_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadRequest.pb-c.h
new file mode 100644
index 000000000..12ea3b514
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadRequest.pb-c.h
@@ -0,0 +1,75 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubCartridgeReadRequest.proto */
+
+#ifndef PROTOBUF_C_StubCartridgeReadRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubCartridgeReadRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubCartridgeReadRequest StubCartridgeReadRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubCartridgeReadRequest
+{
+ ProtobufCMessage base;
+ /*
+ *0..7
+ */
+ protobuf_c_boolean has_cartridgeid;
+ uint32_t cartridgeid;
+};
+#define STUB_CARTRIDGE_READ_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_cartridge_read_request__descriptor) \
+ , 0, 0 }
+
+
+/* StubCartridgeReadRequest methods */
+void stub_cartridge_read_request__init
+ (StubCartridgeReadRequest *message);
+size_t stub_cartridge_read_request__get_packed_size
+ (const StubCartridgeReadRequest *message);
+size_t stub_cartridge_read_request__pack
+ (const StubCartridgeReadRequest *message,
+ uint8_t *out);
+size_t stub_cartridge_read_request__pack_to_buffer
+ (const StubCartridgeReadRequest *message,
+ ProtobufCBuffer *buffer);
+StubCartridgeReadRequest *
+ stub_cartridge_read_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_cartridge_read_request__free_unpacked
+ (StubCartridgeReadRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubCartridgeReadRequest_Closure)
+ (const StubCartridgeReadRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_cartridge_read_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubCartridgeReadRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadResponse.pb-c.c
new file mode 100644
index 000000000..125ec15e2
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadResponse.pb-c.c
@@ -0,0 +1,170 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubCartridgeReadResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubCartridgeReadResponse.pb-c.h"
+void stub_cartridge_read_response__init
+ (StubCartridgeReadResponse *message)
+{
+ static const StubCartridgeReadResponse init_value = STUB_CARTRIDGE_READ_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_cartridge_read_response__get_packed_size
+ (const StubCartridgeReadResponse *message)
+{
+ assert(message->base.descriptor == &stub_cartridge_read_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_cartridge_read_response__pack
+ (const StubCartridgeReadResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_cartridge_read_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_cartridge_read_response__pack_to_buffer
+ (const StubCartridgeReadResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_cartridge_read_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubCartridgeReadResponse *
+ stub_cartridge_read_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubCartridgeReadResponse *)
+ protobuf_c_message_unpack (&stub_cartridge_read_response__descriptor,
+ allocator, len, data);
+}
+void stub_cartridge_read_response__free_unpacked
+ (StubCartridgeReadResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_cartridge_read_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_cartridge_read_response__field_descriptors[7] =
+{
+ {
+ "CartridgeId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubCartridgeReadResponse, has_cartridgeid),
+ offsetof(StubCartridgeReadResponse, cartridgeid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "CartridgeColor",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubCartridgeReadResponse, has_cartridgecolor),
+ offsetof(StubCartridgeReadResponse, cartridgecolor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "CartridgeVersion",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubCartridgeReadResponse, has_cartridgeversion),
+ offsetof(StubCartridgeReadResponse, cartridgeversion),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "CartridgeData",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StubCartridgeReadResponse, has_cartridgedata),
+ offsetof(StubCartridgeReadResponse, cartridgedata),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "CartridgeUsed",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubCartridgeReadResponse, has_cartridgeused),
+ offsetof(StubCartridgeReadResponse, cartridgeused),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubCartridgeReadResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubCartridgeReadResponse, has_statusword),
+ offsetof(StubCartridgeReadResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_cartridge_read_response__field_indices_by_name[] = {
+ 1, /* field[1] = CartridgeColor */
+ 3, /* field[3] = CartridgeData */
+ 0, /* field[0] = CartridgeId */
+ 4, /* field[4] = CartridgeUsed */
+ 2, /* field[2] = CartridgeVersion */
+ 5, /* field[5] = Status */
+ 6, /* field[6] = StatusWord */
+};
+static const ProtobufCIntRange stub_cartridge_read_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor stub_cartridge_read_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubCartridgeReadResponse",
+ "StubCartridgeReadResponse",
+ "StubCartridgeReadResponse",
+ "",
+ sizeof(StubCartridgeReadResponse),
+ 7,
+ stub_cartridge_read_response__field_descriptors,
+ stub_cartridge_read_response__field_indices_by_name,
+ 1, stub_cartridge_read_response__number_ranges,
+ (ProtobufCMessageInit) stub_cartridge_read_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadResponse.pb-c.h
new file mode 100644
index 000000000..06a173e8b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeReadResponse.pb-c.h
@@ -0,0 +1,89 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubCartridgeReadResponse.proto */
+
+#ifndef PROTOBUF_C_StubCartridgeReadResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubCartridgeReadResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubCartridgeReadResponse StubCartridgeReadResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubCartridgeReadResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_cartridgeid;
+ uint32_t cartridgeid;
+ protobuf_c_boolean has_cartridgecolor;
+ uint32_t cartridgecolor;
+ protobuf_c_boolean has_cartridgeversion;
+ uint32_t cartridgeversion;
+ protobuf_c_boolean has_cartridgedata;
+ int32_t cartridgedata;
+ protobuf_c_boolean has_cartridgeused;
+ protobuf_c_boolean cartridgeused;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_CARTRIDGE_READ_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_cartridge_read_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StubCartridgeReadResponse methods */
+void stub_cartridge_read_response__init
+ (StubCartridgeReadResponse *message);
+size_t stub_cartridge_read_response__get_packed_size
+ (const StubCartridgeReadResponse *message);
+size_t stub_cartridge_read_response__pack
+ (const StubCartridgeReadResponse *message,
+ uint8_t *out);
+size_t stub_cartridge_read_response__pack_to_buffer
+ (const StubCartridgeReadResponse *message,
+ ProtobufCBuffer *buffer);
+StubCartridgeReadResponse *
+ stub_cartridge_read_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_cartridge_read_response__free_unpacked
+ (StubCartridgeReadResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubCartridgeReadResponse_Closure)
+ (const StubCartridgeReadResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_cartridge_read_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubCartridgeReadResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteRequest.pb-c.c
new file mode 100644
index 000000000..fe528a34e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteRequest.pb-c.c
@@ -0,0 +1,144 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubCartridgeWriteRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubCartridgeWriteRequest.pb-c.h"
+void stub_cartridge_write_request__init
+ (StubCartridgeWriteRequest *message)
+{
+ static const StubCartridgeWriteRequest init_value = STUB_CARTRIDGE_WRITE_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_cartridge_write_request__get_packed_size
+ (const StubCartridgeWriteRequest *message)
+{
+ assert(message->base.descriptor == &stub_cartridge_write_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_cartridge_write_request__pack
+ (const StubCartridgeWriteRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_cartridge_write_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_cartridge_write_request__pack_to_buffer
+ (const StubCartridgeWriteRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_cartridge_write_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubCartridgeWriteRequest *
+ stub_cartridge_write_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubCartridgeWriteRequest *)
+ protobuf_c_message_unpack (&stub_cartridge_write_request__descriptor,
+ allocator, len, data);
+}
+void stub_cartridge_write_request__free_unpacked
+ (StubCartridgeWriteRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_cartridge_write_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_cartridge_write_request__field_descriptors[5] =
+{
+ {
+ "CartridgeId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubCartridgeWriteRequest, has_cartridgeid),
+ offsetof(StubCartridgeWriteRequest, cartridgeid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "CartridgeColor",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubCartridgeWriteRequest, has_cartridgecolor),
+ offsetof(StubCartridgeWriteRequest, cartridgecolor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "CartridgeVersion",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubCartridgeWriteRequest, has_cartridgeversion),
+ offsetof(StubCartridgeWriteRequest, cartridgeversion),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "CartridgeData",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubCartridgeWriteRequest, has_cartridgedata),
+ offsetof(StubCartridgeWriteRequest, cartridgedata),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "CartridgeUsed",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubCartridgeWriteRequest, has_cartridgeused),
+ offsetof(StubCartridgeWriteRequest, cartridgeused),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_cartridge_write_request__field_indices_by_name[] = {
+ 1, /* field[1] = CartridgeColor */
+ 3, /* field[3] = CartridgeData */
+ 0, /* field[0] = CartridgeId */
+ 4, /* field[4] = CartridgeUsed */
+ 2, /* field[2] = CartridgeVersion */
+};
+static const ProtobufCIntRange stub_cartridge_write_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor stub_cartridge_write_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubCartridgeWriteRequest",
+ "StubCartridgeWriteRequest",
+ "StubCartridgeWriteRequest",
+ "",
+ sizeof(StubCartridgeWriteRequest),
+ 5,
+ stub_cartridge_write_request__field_descriptors,
+ stub_cartridge_write_request__field_indices_by_name,
+ 1, stub_cartridge_write_request__number_ranges,
+ (ProtobufCMessageInit) stub_cartridge_write_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteRequest.pb-c.h
new file mode 100644
index 000000000..ead0d6b2d
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteRequest.pb-c.h
@@ -0,0 +1,88 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubCartridgeWriteRequest.proto */
+
+#ifndef PROTOBUF_C_StubCartridgeWriteRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubCartridgeWriteRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubCartridgeWriteRequest StubCartridgeWriteRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubCartridgeWriteRequest
+{
+ ProtobufCMessage base;
+ /*
+ *0..7
+ */
+ protobuf_c_boolean has_cartridgeid;
+ uint32_t cartridgeid;
+ /*
+ */
+ protobuf_c_boolean has_cartridgecolor;
+ uint32_t cartridgecolor;
+ protobuf_c_boolean has_cartridgeversion;
+ uint32_t cartridgeversion;
+ protobuf_c_boolean has_cartridgedata;
+ uint32_t cartridgedata;
+ /*
+ * 0 - new 1- used
+ */
+ protobuf_c_boolean has_cartridgeused;
+ protobuf_c_boolean cartridgeused;
+};
+#define STUB_CARTRIDGE_WRITE_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_cartridge_write_request__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubCartridgeWriteRequest methods */
+void stub_cartridge_write_request__init
+ (StubCartridgeWriteRequest *message);
+size_t stub_cartridge_write_request__get_packed_size
+ (const StubCartridgeWriteRequest *message);
+size_t stub_cartridge_write_request__pack
+ (const StubCartridgeWriteRequest *message,
+ uint8_t *out);
+size_t stub_cartridge_write_request__pack_to_buffer
+ (const StubCartridgeWriteRequest *message,
+ ProtobufCBuffer *buffer);
+StubCartridgeWriteRequest *
+ stub_cartridge_write_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_cartridge_write_request__free_unpacked
+ (StubCartridgeWriteRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubCartridgeWriteRequest_Closure)
+ (const StubCartridgeWriteRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_cartridge_write_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubCartridgeWriteRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteResponse.pb-c.c
new file mode 100644
index 000000000..aa271df59
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteResponse.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubCartridgeWriteResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubCartridgeWriteResponse.pb-c.h"
+void stub_cartridge_write_response__init
+ (StubCartridgeWriteResponse *message)
+{
+ static const StubCartridgeWriteResponse init_value = STUB_CARTRIDGE_WRITE_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_cartridge_write_response__get_packed_size
+ (const StubCartridgeWriteResponse *message)
+{
+ assert(message->base.descriptor == &stub_cartridge_write_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_cartridge_write_response__pack
+ (const StubCartridgeWriteResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_cartridge_write_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_cartridge_write_response__pack_to_buffer
+ (const StubCartridgeWriteResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_cartridge_write_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubCartridgeWriteResponse *
+ stub_cartridge_write_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubCartridgeWriteResponse *)
+ protobuf_c_message_unpack (&stub_cartridge_write_response__descriptor,
+ allocator, len, data);
+}
+void stub_cartridge_write_response__free_unpacked
+ (StubCartridgeWriteResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_cartridge_write_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_cartridge_write_response__field_descriptors[3] =
+{
+ {
+ "CartridgeId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubCartridgeWriteResponse, has_cartridgeid),
+ offsetof(StubCartridgeWriteResponse, cartridgeid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubCartridgeWriteResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubCartridgeWriteResponse, has_statusword),
+ offsetof(StubCartridgeWriteResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_cartridge_write_response__field_indices_by_name[] = {
+ 0, /* field[0] = CartridgeId */
+ 1, /* field[1] = Status */
+ 2, /* field[2] = StatusWord */
+};
+static const ProtobufCIntRange stub_cartridge_write_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor stub_cartridge_write_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubCartridgeWriteResponse",
+ "StubCartridgeWriteResponse",
+ "StubCartridgeWriteResponse",
+ "",
+ sizeof(StubCartridgeWriteResponse),
+ 3,
+ stub_cartridge_write_response__field_descriptors,
+ stub_cartridge_write_response__field_indices_by_name,
+ 1, stub_cartridge_write_response__number_ranges,
+ (ProtobufCMessageInit) stub_cartridge_write_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteResponse.pb-c.h
new file mode 100644
index 000000000..dab3d46fb
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubCartridgeWriteResponse.pb-c.h
@@ -0,0 +1,81 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubCartridgeWriteResponse.proto */
+
+#ifndef PROTOBUF_C_StubCartridgeWriteResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubCartridgeWriteResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubCartridgeWriteResponse StubCartridgeWriteResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubCartridgeWriteResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_cartridgeid;
+ uint32_t cartridgeid;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_CARTRIDGE_WRITE_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_cartridge_write_response__descriptor) \
+ , 0, 0, NULL, 0, 0 }
+
+
+/* StubCartridgeWriteResponse methods */
+void stub_cartridge_write_response__init
+ (StubCartridgeWriteResponse *message);
+size_t stub_cartridge_write_response__get_packed_size
+ (const StubCartridgeWriteResponse *message);
+size_t stub_cartridge_write_response__pack
+ (const StubCartridgeWriteResponse *message,
+ uint8_t *out);
+size_t stub_cartridge_write_response__pack_to_buffer
+ (const StubCartridgeWriteResponse *message,
+ ProtobufCBuffer *buffer);
+StubCartridgeWriteResponse *
+ stub_cartridge_write_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_cartridge_write_response__free_unpacked
+ (StubCartridgeWriteResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubCartridgeWriteResponse_Closure)
+ (const StubCartridgeWriteResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_cartridge_write_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubCartridgeWriteResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionRequest.pb-c.c
new file mode 100644
index 000000000..332208da1
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubDancerPositionRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubDancerPositionRequest.pb-c.h"
+void stub_dancer_position_request__init
+ (StubDancerPositionRequest *message)
+{
+ static const StubDancerPositionRequest init_value = STUB_DANCER_POSITION_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_dancer_position_request__get_packed_size
+ (const StubDancerPositionRequest *message)
+{
+ assert(message->base.descriptor == &stub_dancer_position_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_dancer_position_request__pack
+ (const StubDancerPositionRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_dancer_position_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_dancer_position_request__pack_to_buffer
+ (const StubDancerPositionRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_dancer_position_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubDancerPositionRequest *
+ stub_dancer_position_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubDancerPositionRequest *)
+ protobuf_c_message_unpack (&stub_dancer_position_request__descriptor,
+ allocator, len, data);
+}
+void stub_dancer_position_request__free_unpacked
+ (StubDancerPositionRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_dancer_position_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_dancer_position_request__field_descriptors[1] =
+{
+ {
+ "Dancer_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubDancerPositionRequest, has_dancer_id),
+ offsetof(StubDancerPositionRequest, dancer_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_dancer_position_request__field_indices_by_name[] = {
+ 0, /* field[0] = Dancer_ID */
+};
+static const ProtobufCIntRange stub_dancer_position_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor stub_dancer_position_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubDancerPositionRequest",
+ "StubDancerPositionRequest",
+ "StubDancerPositionRequest",
+ "",
+ sizeof(StubDancerPositionRequest),
+ 1,
+ stub_dancer_position_request__field_descriptors,
+ stub_dancer_position_request__field_indices_by_name,
+ 1, stub_dancer_position_request__number_ranges,
+ (ProtobufCMessageInit) stub_dancer_position_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionRequest.pb-c.h
new file mode 100644
index 000000000..f7937b782
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionRequest.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubDancerPositionRequest.proto */
+
+#ifndef PROTOBUF_C_StubDancerPositionRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubDancerPositionRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubDancerPositionRequest StubDancerPositionRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubDancerPositionRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_dancer_id;
+ uint32_t dancer_id;
+};
+#define STUB_DANCER_POSITION_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_dancer_position_request__descriptor) \
+ , 0, 0 }
+
+
+/* StubDancerPositionRequest methods */
+void stub_dancer_position_request__init
+ (StubDancerPositionRequest *message);
+size_t stub_dancer_position_request__get_packed_size
+ (const StubDancerPositionRequest *message);
+size_t stub_dancer_position_request__pack
+ (const StubDancerPositionRequest *message,
+ uint8_t *out);
+size_t stub_dancer_position_request__pack_to_buffer
+ (const StubDancerPositionRequest *message,
+ ProtobufCBuffer *buffer);
+StubDancerPositionRequest *
+ stub_dancer_position_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_dancer_position_request__free_unpacked
+ (StubDancerPositionRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubDancerPositionRequest_Closure)
+ (const StubDancerPositionRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_dancer_position_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubDancerPositionRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionResponse.pb-c.c
new file mode 100644
index 000000000..5dfb74a1a
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionResponse.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubDancerPositionResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubDancerPositionResponse.pb-c.h"
+void stub_dancer_position_response__init
+ (StubDancerPositionResponse *message)
+{
+ static const StubDancerPositionResponse init_value = STUB_DANCER_POSITION_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_dancer_position_response__get_packed_size
+ (const StubDancerPositionResponse *message)
+{
+ assert(message->base.descriptor == &stub_dancer_position_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_dancer_position_response__pack
+ (const StubDancerPositionResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_dancer_position_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_dancer_position_response__pack_to_buffer
+ (const StubDancerPositionResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_dancer_position_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubDancerPositionResponse *
+ stub_dancer_position_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubDancerPositionResponse *)
+ protobuf_c_message_unpack (&stub_dancer_position_response__descriptor,
+ allocator, len, data);
+}
+void stub_dancer_position_response__free_unpacked
+ (StubDancerPositionResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_dancer_position_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_dancer_position_response__field_descriptors[4] =
+{
+ {
+ "Dancer_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubDancerPositionResponse, has_dancer_id),
+ offsetof(StubDancerPositionResponse, dancer_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Position",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubDancerPositionResponse, has_position),
+ offsetof(StubDancerPositionResponse, position),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "General_Status",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubDancerPositionResponse, has_general_status),
+ offsetof(StubDancerPositionResponse, general_status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Detailed_Status",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubDancerPositionResponse, has_detailed_status),
+ offsetof(StubDancerPositionResponse, detailed_status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_dancer_position_response__field_indices_by_name[] = {
+ 0, /* field[0] = Dancer_ID */
+ 3, /* field[3] = Detailed_Status */
+ 2, /* field[2] = General_Status */
+ 1, /* field[1] = Position */
+};
+static const ProtobufCIntRange stub_dancer_position_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_dancer_position_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubDancerPositionResponse",
+ "StubDancerPositionResponse",
+ "StubDancerPositionResponse",
+ "",
+ sizeof(StubDancerPositionResponse),
+ 4,
+ stub_dancer_position_response__field_descriptors,
+ stub_dancer_position_response__field_indices_by_name,
+ 1, stub_dancer_position_response__number_ranges,
+ (ProtobufCMessageInit) stub_dancer_position_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionResponse.pb-c.h
new file mode 100644
index 000000000..6e8803cd3
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDancerPositionResponse.pb-c.h
@@ -0,0 +1,78 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubDancerPositionResponse.proto */
+
+#ifndef PROTOBUF_C_StubDancerPositionResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubDancerPositionResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubDancerPositionResponse StubDancerPositionResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubDancerPositionResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_dancer_id;
+ uint32_t dancer_id;
+ protobuf_c_boolean has_position;
+ uint32_t position;
+ protobuf_c_boolean has_general_status;
+ uint32_t general_status;
+ protobuf_c_boolean has_detailed_status;
+ uint32_t detailed_status;
+};
+#define STUB_DANCER_POSITION_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_dancer_position_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubDancerPositionResponse methods */
+void stub_dancer_position_response__init
+ (StubDancerPositionResponse *message);
+size_t stub_dancer_position_response__get_packed_size
+ (const StubDancerPositionResponse *message);
+size_t stub_dancer_position_response__pack
+ (const StubDancerPositionResponse *message,
+ uint8_t *out);
+size_t stub_dancer_position_response__pack_to_buffer
+ (const StubDancerPositionResponse *message,
+ ProtobufCBuffer *buffer);
+StubDancerPositionResponse *
+ stub_dancer_position_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_dancer_position_response__free_unpacked
+ (StubDancerPositionResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubDancerPositionResponse_Closure)
+ (const StubDancerPositionResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_dancer_position_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubDancerPositionResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserRequest.pb-c.c
new file mode 100644
index 000000000..d8cdbdd8b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserRequest.pb-c.c
@@ -0,0 +1,144 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubDispenserRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubDispenserRequest.pb-c.h"
+void stub_dispenser_request__init
+ (StubDispenserRequest *message)
+{
+ static const StubDispenserRequest init_value = STUB_DISPENSER_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_dispenser_request__get_packed_size
+ (const StubDispenserRequest *message)
+{
+ assert(message->base.descriptor == &stub_dispenser_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_dispenser_request__pack
+ (const StubDispenserRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_dispenser_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_dispenser_request__pack_to_buffer
+ (const StubDispenserRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_dispenser_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubDispenserRequest *
+ stub_dispenser_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubDispenserRequest *)
+ protobuf_c_message_unpack (&stub_dispenser_request__descriptor,
+ allocator, len, data);
+}
+void stub_dispenser_request__free_unpacked
+ (StubDispenserRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_dispenser_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_dispenser_request__field_descriptors[5] =
+{
+ {
+ "DispenserId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubDispenserRequest, has_dispenserid),
+ offsetof(StubDispenserRequest, dispenserid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Start",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubDispenserRequest, has_start),
+ offsetof(StubDispenserRequest, start),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SetDirection",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubDispenserRequest, has_setdirection),
+ offsetof(StubDispenserRequest, setdirection),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SetMicrostepDivision",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubDispenserRequest, has_setmicrostepdivision),
+ offsetof(StubDispenserRequest, setmicrostepdivision),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SetSpeed",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StubDispenserRequest, has_setspeed),
+ offsetof(StubDispenserRequest, setspeed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_dispenser_request__field_indices_by_name[] = {
+ 0, /* field[0] = DispenserId */
+ 2, /* field[2] = SetDirection */
+ 3, /* field[3] = SetMicrostepDivision */
+ 4, /* field[4] = SetSpeed */
+ 1, /* field[1] = Start */
+};
+static const ProtobufCIntRange stub_dispenser_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor stub_dispenser_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubDispenserRequest",
+ "StubDispenserRequest",
+ "StubDispenserRequest",
+ "",
+ sizeof(StubDispenserRequest),
+ 5,
+ stub_dispenser_request__field_descriptors,
+ stub_dispenser_request__field_indices_by_name,
+ 1, stub_dispenser_request__number_ranges,
+ (ProtobufCMessageInit) stub_dispenser_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserRequest.pb-c.h
new file mode 100644
index 000000000..8f99287a9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserRequest.pb-c.h
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubDispenserRequest.proto */
+
+#ifndef PROTOBUF_C_StubDispenserRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubDispenserRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubDispenserRequest StubDispenserRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubDispenserRequest
+{
+ ProtobufCMessage base;
+ /*
+ * 0..7
+ */
+ protobuf_c_boolean has_dispenserid;
+ uint32_t dispenserid;
+ /*
+ * 1-start 0-stop
+ */
+ protobuf_c_boolean has_start;
+ protobuf_c_boolean start;
+ /*
+ * 1-cw 0-ccw
+ */
+ protobuf_c_boolean has_setdirection;
+ protobuf_c_boolean setdirection;
+ /*
+ * No. of steps for 360 deg.
+ */
+ protobuf_c_boolean has_setmicrostepdivision;
+ uint32_t setmicrostepdivision;
+ protobuf_c_boolean has_setspeed;
+ int32_t setspeed;
+};
+#define STUB_DISPENSER_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_dispenser_request__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubDispenserRequest methods */
+void stub_dispenser_request__init
+ (StubDispenserRequest *message);
+size_t stub_dispenser_request__get_packed_size
+ (const StubDispenserRequest *message);
+size_t stub_dispenser_request__pack
+ (const StubDispenserRequest *message,
+ uint8_t *out);
+size_t stub_dispenser_request__pack_to_buffer
+ (const StubDispenserRequest *message,
+ ProtobufCBuffer *buffer);
+StubDispenserRequest *
+ stub_dispenser_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_dispenser_request__free_unpacked
+ (StubDispenserRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubDispenserRequest_Closure)
+ (const StubDispenserRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_dispenser_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubDispenserRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserResponse.pb-c.c
new file mode 100644
index 000000000..cbfd886ec
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserResponse.pb-c.c
@@ -0,0 +1,144 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubDispenserResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubDispenserResponse.pb-c.h"
+void stub_dispenser_response__init
+ (StubDispenserResponse *message)
+{
+ static const StubDispenserResponse init_value = STUB_DISPENSER_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_dispenser_response__get_packed_size
+ (const StubDispenserResponse *message)
+{
+ assert(message->base.descriptor == &stub_dispenser_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_dispenser_response__pack
+ (const StubDispenserResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_dispenser_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_dispenser_response__pack_to_buffer
+ (const StubDispenserResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_dispenser_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubDispenserResponse *
+ stub_dispenser_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubDispenserResponse *)
+ protobuf_c_message_unpack (&stub_dispenser_response__descriptor,
+ allocator, len, data);
+}
+void stub_dispenser_response__free_unpacked
+ (StubDispenserResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_dispenser_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_dispenser_response__field_descriptors[5] =
+{
+ {
+ "DispenserId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubDispenserResponse, has_dispenserid),
+ offsetof(StubDispenserResponse, dispenserid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DispenserPosition",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubDispenserResponse, has_dispenserposition),
+ offsetof(StubDispenserResponse, dispenserposition),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "InkWorningLevel",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubDispenserResponse, has_inkworninglevel),
+ offsetof(StubDispenserResponse, inkworninglevel),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubDispenserResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubDispenserResponse, has_statusword),
+ offsetof(StubDispenserResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_dispenser_response__field_indices_by_name[] = {
+ 0, /* field[0] = DispenserId */
+ 1, /* field[1] = DispenserPosition */
+ 2, /* field[2] = InkWorningLevel */
+ 3, /* field[3] = Status */
+ 4, /* field[4] = StatusWord */
+};
+static const ProtobufCIntRange stub_dispenser_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor stub_dispenser_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubDispenserResponse",
+ "StubDispenserResponse",
+ "StubDispenserResponse",
+ "",
+ sizeof(StubDispenserResponse),
+ 5,
+ stub_dispenser_response__field_descriptors,
+ stub_dispenser_response__field_indices_by_name,
+ 1, stub_dispenser_response__number_ranges,
+ (ProtobufCMessageInit) stub_dispenser_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserResponse.pb-c.h
new file mode 100644
index 000000000..14d55b18e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubDispenserResponse.pb-c.h
@@ -0,0 +1,93 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubDispenserResponse.proto */
+
+#ifndef PROTOBUF_C_StubDispenserResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubDispenserResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubDispenserResponse StubDispenserResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubDispenserResponse
+{
+ ProtobufCMessage base;
+ /*
+ * 0..7
+ */
+ protobuf_c_boolean has_dispenserid;
+ uint32_t dispenserid;
+ /*
+ */
+ protobuf_c_boolean has_dispenserposition;
+ uint32_t dispenserposition;
+ /*
+ * 1- critical 2- level 3- overflow
+ */
+ protobuf_c_boolean has_inkworninglevel;
+ uint32_t inkworninglevel;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_DISPENSER_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_dispenser_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StubDispenserResponse methods */
+void stub_dispenser_response__init
+ (StubDispenserResponse *message);
+size_t stub_dispenser_response__get_packed_size
+ (const StubDispenserResponse *message);
+size_t stub_dispenser_response__pack
+ (const StubDispenserResponse *message,
+ uint8_t *out);
+size_t stub_dispenser_response__pack_to_buffer
+ (const StubDispenserResponse *message,
+ ProtobufCBuffer *buffer);
+StubDispenserResponse *
+ stub_dispenser_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_dispenser_response__free_unpacked
+ (StubDispenserResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubDispenserResponse_Closure)
+ (const StubDispenserResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_dispenser_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubDispenserResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadRequest.pb-c.c
new file mode 100644
index 000000000..e5f22797a
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashReadRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubExtFlashReadRequest.pb-c.h"
+void stub_ext_flash_read_request__init
+ (StubExtFlashReadRequest *message)
+{
+ static const StubExtFlashReadRequest init_value = STUB_EXT_FLASH_READ_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_ext_flash_read_request__get_packed_size
+ (const StubExtFlashReadRequest *message)
+{
+ assert(message->base.descriptor == &stub_ext_flash_read_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_ext_flash_read_request__pack
+ (const StubExtFlashReadRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_ext_flash_read_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_ext_flash_read_request__pack_to_buffer
+ (const StubExtFlashReadRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_ext_flash_read_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubExtFlashReadRequest *
+ stub_ext_flash_read_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubExtFlashReadRequest *)
+ protobuf_c_message_unpack (&stub_ext_flash_read_request__descriptor,
+ allocator, len, data);
+}
+void stub_ext_flash_read_request__free_unpacked
+ (StubExtFlashReadRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_ext_flash_read_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_ext_flash_read_request__field_descriptors[1] =
+{
+ {
+ "Number_Of_Words",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubExtFlashReadRequest, has_number_of_words),
+ offsetof(StubExtFlashReadRequest, number_of_words),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_ext_flash_read_request__field_indices_by_name[] = {
+ 0, /* field[0] = Number_Of_Words */
+};
+static const ProtobufCIntRange stub_ext_flash_read_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor stub_ext_flash_read_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubExtFlashReadRequest",
+ "StubExtFlashReadRequest",
+ "StubExtFlashReadRequest",
+ "",
+ sizeof(StubExtFlashReadRequest),
+ 1,
+ stub_ext_flash_read_request__field_descriptors,
+ stub_ext_flash_read_request__field_indices_by_name,
+ 1, stub_ext_flash_read_request__number_ranges,
+ (ProtobufCMessageInit) stub_ext_flash_read_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadRequest.pb-c.h
new file mode 100644
index 000000000..0345c7c86
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadRequest.pb-c.h
@@ -0,0 +1,75 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashReadRequest.proto */
+
+#ifndef PROTOBUF_C_StubExtFlashReadRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubExtFlashReadRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubExtFlashReadRequest StubExtFlashReadRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubExtFlashReadRequest
+{
+ ProtobufCMessage base;
+ /*
+ *Max 5 at this test
+ */
+ protobuf_c_boolean has_number_of_words;
+ uint32_t number_of_words;
+};
+#define STUB_EXT_FLASH_READ_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_ext_flash_read_request__descriptor) \
+ , 0, 0 }
+
+
+/* StubExtFlashReadRequest methods */
+void stub_ext_flash_read_request__init
+ (StubExtFlashReadRequest *message);
+size_t stub_ext_flash_read_request__get_packed_size
+ (const StubExtFlashReadRequest *message);
+size_t stub_ext_flash_read_request__pack
+ (const StubExtFlashReadRequest *message,
+ uint8_t *out);
+size_t stub_ext_flash_read_request__pack_to_buffer
+ (const StubExtFlashReadRequest *message,
+ ProtobufCBuffer *buffer);
+StubExtFlashReadRequest *
+ stub_ext_flash_read_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_ext_flash_read_request__free_unpacked
+ (StubExtFlashReadRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubExtFlashReadRequest_Closure)
+ (const StubExtFlashReadRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_ext_flash_read_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubExtFlashReadRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadResponse.pb-c.c
new file mode 100644
index 000000000..57045730d
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadResponse.pb-c.c
@@ -0,0 +1,170 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashReadResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubExtFlashReadResponse.pb-c.h"
+void stub_ext_flash_read_response__init
+ (StubExtFlashReadResponse *message)
+{
+ static const StubExtFlashReadResponse init_value = STUB_EXT_FLASH_READ_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_ext_flash_read_response__get_packed_size
+ (const StubExtFlashReadResponse *message)
+{
+ assert(message->base.descriptor == &stub_ext_flash_read_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_ext_flash_read_response__pack
+ (const StubExtFlashReadResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_ext_flash_read_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_ext_flash_read_response__pack_to_buffer
+ (const StubExtFlashReadResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_ext_flash_read_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubExtFlashReadResponse *
+ stub_ext_flash_read_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubExtFlashReadResponse *)
+ protobuf_c_message_unpack (&stub_ext_flash_read_response__descriptor,
+ allocator, len, data);
+}
+void stub_ext_flash_read_response__free_unpacked
+ (StubExtFlashReadResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_ext_flash_read_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_ext_flash_read_response__field_descriptors[7] =
+{
+ {
+ "ReadWord_1",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StubExtFlashReadResponse, has_readword_1),
+ offsetof(StubExtFlashReadResponse, readword_1),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ReadWord_2",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StubExtFlashReadResponse, has_readword_2),
+ offsetof(StubExtFlashReadResponse, readword_2),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ReadWord_3",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StubExtFlashReadResponse, has_readword_3),
+ offsetof(StubExtFlashReadResponse, readword_3),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ReadWord_4",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StubExtFlashReadResponse, has_readword_4),
+ offsetof(StubExtFlashReadResponse, readword_4),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ReadWord_5",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StubExtFlashReadResponse, has_readword_5),
+ offsetof(StubExtFlashReadResponse, readword_5),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubExtFlashReadResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubExtFlashReadResponse, has_statusword),
+ offsetof(StubExtFlashReadResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_ext_flash_read_response__field_indices_by_name[] = {
+ 0, /* field[0] = ReadWord_1 */
+ 1, /* field[1] = ReadWord_2 */
+ 2, /* field[2] = ReadWord_3 */
+ 3, /* field[3] = ReadWord_4 */
+ 4, /* field[4] = ReadWord_5 */
+ 5, /* field[5] = Status */
+ 6, /* field[6] = StatusWord */
+};
+static const ProtobufCIntRange stub_ext_flash_read_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor stub_ext_flash_read_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubExtFlashReadResponse",
+ "StubExtFlashReadResponse",
+ "StubExtFlashReadResponse",
+ "",
+ sizeof(StubExtFlashReadResponse),
+ 7,
+ stub_ext_flash_read_response__field_descriptors,
+ stub_ext_flash_read_response__field_indices_by_name,
+ 1, stub_ext_flash_read_response__number_ranges,
+ (ProtobufCMessageInit) stub_ext_flash_read_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadResponse.pb-c.h
new file mode 100644
index 000000000..c0bfdd88c
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashReadResponse.pb-c.h
@@ -0,0 +1,99 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashReadResponse.proto */
+
+#ifndef PROTOBUF_C_StubExtFlashReadResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubExtFlashReadResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubExtFlashReadResponse StubExtFlashReadResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubExtFlashReadResponse
+{
+ ProtobufCMessage base;
+ /*
+ */
+ protobuf_c_boolean has_readword_1;
+ int32_t readword_1;
+ /*
+ */
+ protobuf_c_boolean has_readword_2;
+ int32_t readword_2;
+ /*
+ */
+ protobuf_c_boolean has_readword_3;
+ int32_t readword_3;
+ /*
+ */
+ protobuf_c_boolean has_readword_4;
+ int32_t readword_4;
+ /*
+ */
+ protobuf_c_boolean has_readword_5;
+ int32_t readword_5;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_EXT_FLASH_READ_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_ext_flash_read_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StubExtFlashReadResponse methods */
+void stub_ext_flash_read_response__init
+ (StubExtFlashReadResponse *message);
+size_t stub_ext_flash_read_response__get_packed_size
+ (const StubExtFlashReadResponse *message);
+size_t stub_ext_flash_read_response__pack
+ (const StubExtFlashReadResponse *message,
+ uint8_t *out);
+size_t stub_ext_flash_read_response__pack_to_buffer
+ (const StubExtFlashReadResponse *message,
+ ProtobufCBuffer *buffer);
+StubExtFlashReadResponse *
+ stub_ext_flash_read_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_ext_flash_read_response__free_unpacked
+ (StubExtFlashReadResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubExtFlashReadResponse_Closure)
+ (const StubExtFlashReadResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_ext_flash_read_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubExtFlashReadResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteRequest.pb-c.c
new file mode 100644
index 000000000..e74bb57de
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteRequest.pb-c.c
@@ -0,0 +1,144 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashWriteRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubExtFlashWriteRequest.pb-c.h"
+void stub_ext_flash_write_request__init
+ (StubExtFlashWriteRequest *message)
+{
+ static const StubExtFlashWriteRequest init_value = STUB_EXT_FLASH_WRITE_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_ext_flash_write_request__get_packed_size
+ (const StubExtFlashWriteRequest *message)
+{
+ assert(message->base.descriptor == &stub_ext_flash_write_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_ext_flash_write_request__pack
+ (const StubExtFlashWriteRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_ext_flash_write_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_ext_flash_write_request__pack_to_buffer
+ (const StubExtFlashWriteRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_ext_flash_write_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubExtFlashWriteRequest *
+ stub_ext_flash_write_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubExtFlashWriteRequest *)
+ protobuf_c_message_unpack (&stub_ext_flash_write_request__descriptor,
+ allocator, len, data);
+}
+void stub_ext_flash_write_request__free_unpacked
+ (StubExtFlashWriteRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_ext_flash_write_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_ext_flash_write_request__field_descriptors[5] =
+{
+ {
+ "WordToWrite1",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StubExtFlashWriteRequest, has_wordtowrite1),
+ offsetof(StubExtFlashWriteRequest, wordtowrite1),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "WordToWrite2",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StubExtFlashWriteRequest, has_wordtowrite2),
+ offsetof(StubExtFlashWriteRequest, wordtowrite2),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "WordToWrite3",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StubExtFlashWriteRequest, has_wordtowrite3),
+ offsetof(StubExtFlashWriteRequest, wordtowrite3),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "WordToWrite4",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StubExtFlashWriteRequest, has_wordtowrite4),
+ offsetof(StubExtFlashWriteRequest, wordtowrite4),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "WordToWrite5",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StubExtFlashWriteRequest, has_wordtowrite5),
+ offsetof(StubExtFlashWriteRequest, wordtowrite5),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_ext_flash_write_request__field_indices_by_name[] = {
+ 0, /* field[0] = WordToWrite1 */
+ 1, /* field[1] = WordToWrite2 */
+ 2, /* field[2] = WordToWrite3 */
+ 3, /* field[3] = WordToWrite4 */
+ 4, /* field[4] = WordToWrite5 */
+};
+static const ProtobufCIntRange stub_ext_flash_write_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor stub_ext_flash_write_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubExtFlashWriteRequest",
+ "StubExtFlashWriteRequest",
+ "StubExtFlashWriteRequest",
+ "",
+ sizeof(StubExtFlashWriteRequest),
+ 5,
+ stub_ext_flash_write_request__field_descriptors,
+ stub_ext_flash_write_request__field_indices_by_name,
+ 1, stub_ext_flash_write_request__number_ranges,
+ (ProtobufCMessageInit) stub_ext_flash_write_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteRequest.pb-c.h
new file mode 100644
index 000000000..91453d218
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteRequest.pb-c.h
@@ -0,0 +1,95 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashWriteRequest.proto */
+
+#ifndef PROTOBUF_C_StubExtFlashWriteRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubExtFlashWriteRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubExtFlashWriteRequest StubExtFlashWriteRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubExtFlashWriteRequest
+{
+ ProtobufCMessage base;
+ /*
+ *0..255
+ */
+ protobuf_c_boolean has_wordtowrite1;
+ int32_t wordtowrite1;
+ /*
+ *0..255
+ */
+ protobuf_c_boolean has_wordtowrite2;
+ int32_t wordtowrite2;
+ /*
+ *0..255
+ */
+ protobuf_c_boolean has_wordtowrite3;
+ int32_t wordtowrite3;
+ /*
+ *0..255
+ */
+ protobuf_c_boolean has_wordtowrite4;
+ int32_t wordtowrite4;
+ /*
+ *0..255
+ */
+ protobuf_c_boolean has_wordtowrite5;
+ int32_t wordtowrite5;
+};
+#define STUB_EXT_FLASH_WRITE_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_ext_flash_write_request__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubExtFlashWriteRequest methods */
+void stub_ext_flash_write_request__init
+ (StubExtFlashWriteRequest *message);
+size_t stub_ext_flash_write_request__get_packed_size
+ (const StubExtFlashWriteRequest *message);
+size_t stub_ext_flash_write_request__pack
+ (const StubExtFlashWriteRequest *message,
+ uint8_t *out);
+size_t stub_ext_flash_write_request__pack_to_buffer
+ (const StubExtFlashWriteRequest *message,
+ ProtobufCBuffer *buffer);
+StubExtFlashWriteRequest *
+ stub_ext_flash_write_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_ext_flash_write_request__free_unpacked
+ (StubExtFlashWriteRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubExtFlashWriteRequest_Closure)
+ (const StubExtFlashWriteRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_ext_flash_write_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubExtFlashWriteRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteResponse.pb-c.c
new file mode 100644
index 000000000..33a3b7e98
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteResponse.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashWriteResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubExtFlashWriteResponse.pb-c.h"
+void stub_ext_flash_write_response__init
+ (StubExtFlashWriteResponse *message)
+{
+ static const StubExtFlashWriteResponse init_value = STUB_EXT_FLASH_WRITE_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_ext_flash_write_response__get_packed_size
+ (const StubExtFlashWriteResponse *message)
+{
+ assert(message->base.descriptor == &stub_ext_flash_write_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_ext_flash_write_response__pack
+ (const StubExtFlashWriteResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_ext_flash_write_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_ext_flash_write_response__pack_to_buffer
+ (const StubExtFlashWriteResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_ext_flash_write_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubExtFlashWriteResponse *
+ stub_ext_flash_write_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubExtFlashWriteResponse *)
+ protobuf_c_message_unpack (&stub_ext_flash_write_response__descriptor,
+ allocator, len, data);
+}
+void stub_ext_flash_write_response__free_unpacked
+ (StubExtFlashWriteResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_ext_flash_write_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_ext_flash_write_response__field_descriptors[2] =
+{
+ {
+ "Status",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubExtFlashWriteResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubExtFlashWriteResponse, has_statusword),
+ offsetof(StubExtFlashWriteResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_ext_flash_write_response__field_indices_by_name[] = {
+ 0, /* field[0] = Status */
+ 1, /* field[1] = StatusWord */
+};
+static const ProtobufCIntRange stub_ext_flash_write_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_ext_flash_write_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubExtFlashWriteResponse",
+ "StubExtFlashWriteResponse",
+ "StubExtFlashWriteResponse",
+ "",
+ sizeof(StubExtFlashWriteResponse),
+ 2,
+ stub_ext_flash_write_response__field_descriptors,
+ stub_ext_flash_write_response__field_indices_by_name,
+ 1, stub_ext_flash_write_response__number_ranges,
+ (ProtobufCMessageInit) stub_ext_flash_write_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteResponse.pb-c.h
new file mode 100644
index 000000000..50d2f94d4
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubExtFlashWriteResponse.pb-c.h
@@ -0,0 +1,79 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubExtFlashWriteResponse.proto */
+
+#ifndef PROTOBUF_C_StubExtFlashWriteResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubExtFlashWriteResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubExtFlashWriteResponse StubExtFlashWriteResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubExtFlashWriteResponse
+{
+ ProtobufCMessage base;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_EXT_FLASH_WRITE_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_ext_flash_write_response__descriptor) \
+ , NULL, 0, 0 }
+
+
+/* StubExtFlashWriteResponse methods */
+void stub_ext_flash_write_response__init
+ (StubExtFlashWriteResponse *message);
+size_t stub_ext_flash_write_response__get_packed_size
+ (const StubExtFlashWriteResponse *message);
+size_t stub_ext_flash_write_response__pack
+ (const StubExtFlashWriteResponse *message,
+ uint8_t *out);
+size_t stub_ext_flash_write_response__pack_to_buffer
+ (const StubExtFlashWriteResponse *message,
+ ProtobufCBuffer *buffer);
+StubExtFlashWriteResponse *
+ stub_ext_flash_write_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_ext_flash_write_response__free_unpacked
+ (StubExtFlashWriteResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubExtFlashWriteResponse_Closure)
+ (const StubExtFlashWriteResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_ext_flash_write_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubExtFlashWriteResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteRequest.pb-c.c
new file mode 100644
index 000000000..69466269b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteRequest.pb-c.c
@@ -0,0 +1,235 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubF3Gpo01WriteRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubF3Gpo01WriteRequest.pb-c.h"
+void stub_f3_gpo01_write_request__init
+ (StubF3Gpo01WriteRequest *message)
+{
+ static const StubF3Gpo01WriteRequest init_value = STUB_F3_GPO01_WRITE_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_f3_gpo01_write_request__get_packed_size
+ (const StubF3Gpo01WriteRequest *message)
+{
+ assert(message->base.descriptor == &stub_f3_gpo01_write_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_f3_gpo01_write_request__pack
+ (const StubF3Gpo01WriteRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_f3_gpo01_write_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_f3_gpo01_write_request__pack_to_buffer
+ (const StubF3Gpo01WriteRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_f3_gpo01_write_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubF3Gpo01WriteRequest *
+ stub_f3_gpo01_write_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubF3Gpo01WriteRequest *)
+ protobuf_c_message_unpack (&stub_f3_gpo01_write_request__descriptor,
+ allocator, len, data);
+}
+void stub_f3_gpo01_write_request__free_unpacked
+ (StubF3Gpo01WriteRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_f3_gpo01_write_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_f3_gpo01_write_request__field_descriptors[12] =
+{
+ {
+ "F3_GPO_LED4",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubF3Gpo01WriteRequest, has_f3_gpo_led4),
+ offsetof(StubF3Gpo01WriteRequest, f3_gpo_led4),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Write_F3_GPO_LED4",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubF3Gpo01WriteRequest, has_write_f3_gpo_led4),
+ offsetof(StubF3Gpo01WriteRequest, write_f3_gpo_led4),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "F3_GPO_LED3",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubF3Gpo01WriteRequest, has_f3_gpo_led3),
+ offsetof(StubF3Gpo01WriteRequest, f3_gpo_led3),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Write_F3_GPO_LED3",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubF3Gpo01WriteRequest, has_write_f3_gpo_led3),
+ offsetof(StubF3Gpo01WriteRequest, write_f3_gpo_led3),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "F3_GPO_LED2",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubF3Gpo01WriteRequest, has_f3_gpo_led2),
+ offsetof(StubF3Gpo01WriteRequest, f3_gpo_led2),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Write_F3_GPO_LED2",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubF3Gpo01WriteRequest, has_write_f3_gpo_led2),
+ offsetof(StubF3Gpo01WriteRequest, write_f3_gpo_led2),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "F3_GPO_LED1",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubF3Gpo01WriteRequest, has_f3_gpo_led1),
+ offsetof(StubF3Gpo01WriteRequest, f3_gpo_led1),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Write_F3_GPO_LED1",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubF3Gpo01WriteRequest, has_write_f3_gpo_led1),
+ offsetof(StubF3Gpo01WriteRequest, write_f3_gpo_led1),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "F3_GPO_EXTWINDER_SSR11_CTRL",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubF3Gpo01WriteRequest, has_f3_gpo_extwinder_ssr11_ctrl),
+ offsetof(StubF3Gpo01WriteRequest, f3_gpo_extwinder_ssr11_ctrl),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Write_F3_GPO_EXTWINDER_SSR11_CTRL",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubF3Gpo01WriteRequest, has_write_f3_gpo_extwinder_ssr11_ctrl),
+ offsetof(StubF3Gpo01WriteRequest, write_f3_gpo_extwinder_ssr11_ctrl),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "F3_GPO_BUZZER",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubF3Gpo01WriteRequest, has_f3_gpo_buzzer),
+ offsetof(StubF3Gpo01WriteRequest, f3_gpo_buzzer),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Write_F3_GPO_BUZZER",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubF3Gpo01WriteRequest, has_write_f3_gpo_buzzer),
+ offsetof(StubF3Gpo01WriteRequest, write_f3_gpo_buzzer),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_f3_gpo01_write_request__field_indices_by_name[] = {
+ 10, /* field[10] = F3_GPO_BUZZER */
+ 8, /* field[8] = F3_GPO_EXTWINDER_SSR11_CTRL */
+ 6, /* field[6] = F3_GPO_LED1 */
+ 4, /* field[4] = F3_GPO_LED2 */
+ 2, /* field[2] = F3_GPO_LED3 */
+ 0, /* field[0] = F3_GPO_LED4 */
+ 11, /* field[11] = Write_F3_GPO_BUZZER */
+ 9, /* field[9] = Write_F3_GPO_EXTWINDER_SSR11_CTRL */
+ 7, /* field[7] = Write_F3_GPO_LED1 */
+ 5, /* field[5] = Write_F3_GPO_LED2 */
+ 3, /* field[3] = Write_F3_GPO_LED3 */
+ 1, /* field[1] = Write_F3_GPO_LED4 */
+};
+static const ProtobufCIntRange stub_f3_gpo01_write_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 12 }
+};
+const ProtobufCMessageDescriptor stub_f3_gpo01_write_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubF3Gpo01WriteRequest",
+ "StubF3Gpo01WriteRequest",
+ "StubF3Gpo01WriteRequest",
+ "",
+ sizeof(StubF3Gpo01WriteRequest),
+ 12,
+ stub_f3_gpo01_write_request__field_descriptors,
+ stub_f3_gpo01_write_request__field_indices_by_name,
+ 1, stub_f3_gpo01_write_request__number_ranges,
+ (ProtobufCMessageInit) stub_f3_gpo01_write_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteRequest.pb-c.h
new file mode 100644
index 000000000..1dec7e478
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteRequest.pb-c.h
@@ -0,0 +1,100 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubF3Gpo01WriteRequest.proto */
+
+#ifndef PROTOBUF_C_StubF3Gpo01WriteRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubF3Gpo01WriteRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubF3Gpo01WriteRequest StubF3Gpo01WriteRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubF3Gpo01WriteRequest
+{
+ ProtobufCMessage base;
+ /*
+ *value
+ */
+ protobuf_c_boolean has_f3_gpo_led4;
+ protobuf_c_boolean f3_gpo_led4;
+ /*
+ *write
+ */
+ protobuf_c_boolean has_write_f3_gpo_led4;
+ protobuf_c_boolean write_f3_gpo_led4;
+ protobuf_c_boolean has_f3_gpo_led3;
+ protobuf_c_boolean f3_gpo_led3;
+ protobuf_c_boolean has_write_f3_gpo_led3;
+ protobuf_c_boolean write_f3_gpo_led3;
+ protobuf_c_boolean has_f3_gpo_led2;
+ protobuf_c_boolean f3_gpo_led2;
+ protobuf_c_boolean has_write_f3_gpo_led2;
+ protobuf_c_boolean write_f3_gpo_led2;
+ protobuf_c_boolean has_f3_gpo_led1;
+ protobuf_c_boolean f3_gpo_led1;
+ protobuf_c_boolean has_write_f3_gpo_led1;
+ protobuf_c_boolean write_f3_gpo_led1;
+ protobuf_c_boolean has_f3_gpo_extwinder_ssr11_ctrl;
+ protobuf_c_boolean f3_gpo_extwinder_ssr11_ctrl;
+ protobuf_c_boolean has_write_f3_gpo_extwinder_ssr11_ctrl;
+ protobuf_c_boolean write_f3_gpo_extwinder_ssr11_ctrl;
+ protobuf_c_boolean has_f3_gpo_buzzer;
+ protobuf_c_boolean f3_gpo_buzzer;
+ protobuf_c_boolean has_write_f3_gpo_buzzer;
+ protobuf_c_boolean write_f3_gpo_buzzer;
+};
+#define STUB_F3_GPO01_WRITE_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_f3_gpo01_write_request__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubF3Gpo01WriteRequest methods */
+void stub_f3_gpo01_write_request__init
+ (StubF3Gpo01WriteRequest *message);
+size_t stub_f3_gpo01_write_request__get_packed_size
+ (const StubF3Gpo01WriteRequest *message);
+size_t stub_f3_gpo01_write_request__pack
+ (const StubF3Gpo01WriteRequest *message,
+ uint8_t *out);
+size_t stub_f3_gpo01_write_request__pack_to_buffer
+ (const StubF3Gpo01WriteRequest *message,
+ ProtobufCBuffer *buffer);
+StubF3Gpo01WriteRequest *
+ stub_f3_gpo01_write_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_f3_gpo01_write_request__free_unpacked
+ (StubF3Gpo01WriteRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubF3Gpo01WriteRequest_Closure)
+ (const StubF3Gpo01WriteRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_f3_gpo01_write_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubF3Gpo01WriteRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteResponse.pb-c.c
new file mode 100644
index 000000000..4b852987e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteResponse.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubF3Gpo01WriteResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubF3Gpo01WriteResponse.pb-c.h"
+void stub_f3_gpo01_write_response__init
+ (StubF3Gpo01WriteResponse *message)
+{
+ static const StubF3Gpo01WriteResponse init_value = STUB_F3_GPO01_WRITE_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_f3_gpo01_write_response__get_packed_size
+ (const StubF3Gpo01WriteResponse *message)
+{
+ assert(message->base.descriptor == &stub_f3_gpo01_write_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_f3_gpo01_write_response__pack
+ (const StubF3Gpo01WriteResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_f3_gpo01_write_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_f3_gpo01_write_response__pack_to_buffer
+ (const StubF3Gpo01WriteResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_f3_gpo01_write_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubF3Gpo01WriteResponse *
+ stub_f3_gpo01_write_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubF3Gpo01WriteResponse *)
+ protobuf_c_message_unpack (&stub_f3_gpo01_write_response__descriptor,
+ allocator, len, data);
+}
+void stub_f3_gpo01_write_response__free_unpacked
+ (StubF3Gpo01WriteResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_f3_gpo01_write_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_f3_gpo01_write_response__field_descriptors[2] =
+{
+ {
+ "Status",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubF3Gpo01WriteResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubF3Gpo01WriteResponse, has_statusword),
+ offsetof(StubF3Gpo01WriteResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_f3_gpo01_write_response__field_indices_by_name[] = {
+ 0, /* field[0] = Status */
+ 1, /* field[1] = StatusWord */
+};
+static const ProtobufCIntRange stub_f3_gpo01_write_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_f3_gpo01_write_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubF3Gpo01WriteResponse",
+ "StubF3Gpo01WriteResponse",
+ "StubF3Gpo01WriteResponse",
+ "",
+ sizeof(StubF3Gpo01WriteResponse),
+ 2,
+ stub_f3_gpo01_write_response__field_descriptors,
+ stub_f3_gpo01_write_response__field_indices_by_name,
+ 1, stub_f3_gpo01_write_response__number_ranges,
+ (ProtobufCMessageInit) stub_f3_gpo01_write_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteResponse.pb-c.h
new file mode 100644
index 000000000..c245016a4
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubF3Gpo01WriteResponse.pb-c.h
@@ -0,0 +1,79 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubF3Gpo01WriteResponse.proto */
+
+#ifndef PROTOBUF_C_StubF3Gpo01WriteResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubF3Gpo01WriteResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubF3Gpo01WriteResponse StubF3Gpo01WriteResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubF3Gpo01WriteResponse
+{
+ ProtobufCMessage base;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_F3_GPO01_WRITE_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_f3_gpo01_write_response__descriptor) \
+ , NULL, 0, 0 }
+
+
+/* StubF3Gpo01WriteResponse methods */
+void stub_f3_gpo01_write_response__init
+ (StubF3Gpo01WriteResponse *message);
+size_t stub_f3_gpo01_write_response__get_packed_size
+ (const StubF3Gpo01WriteResponse *message);
+size_t stub_f3_gpo01_write_response__pack
+ (const StubF3Gpo01WriteResponse *message,
+ uint8_t *out);
+size_t stub_f3_gpo01_write_response__pack_to_buffer
+ (const StubF3Gpo01WriteResponse *message,
+ ProtobufCBuffer *buffer);
+StubF3Gpo01WriteResponse *
+ stub_f3_gpo01_write_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_f3_gpo01_write_response__free_unpacked
+ (StubF3Gpo01WriteResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubF3Gpo01WriteResponse_Closure)
+ (const StubF3Gpo01WriteResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_f3_gpo01_write_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubF3Gpo01WriteResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegRequest.pb-c.c
new file mode 100644
index 000000000..60519632e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFPGAReadBackRegRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubFPGAReadBackRegRequest.pb-c.h"
+void stub_fpgaread_back_reg_request__init
+ (StubFPGAReadBackRegRequest *message)
+{
+ static const StubFPGAReadBackRegRequest init_value = STUB_FPGAREAD_BACK_REG_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_fpgaread_back_reg_request__get_packed_size
+ (const StubFPGAReadBackRegRequest *message)
+{
+ assert(message->base.descriptor == &stub_fpgaread_back_reg_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_fpgaread_back_reg_request__pack
+ (const StubFPGAReadBackRegRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_fpgaread_back_reg_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_fpgaread_back_reg_request__pack_to_buffer
+ (const StubFPGAReadBackRegRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_fpgaread_back_reg_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubFPGAReadBackRegRequest *
+ stub_fpgaread_back_reg_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubFPGAReadBackRegRequest *)
+ protobuf_c_message_unpack (&stub_fpgaread_back_reg_request__descriptor,
+ allocator, len, data);
+}
+void stub_fpgaread_back_reg_request__free_unpacked
+ (StubFPGAReadBackRegRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_fpgaread_back_reg_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_fpgaread_back_reg_request__field_descriptors[2] =
+{
+ {
+ "FPGAId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFPGAReadBackRegRequest, has_fpgaid),
+ offsetof(StubFPGAReadBackRegRequest, fpgaid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Value",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFPGAReadBackRegRequest, has_value),
+ offsetof(StubFPGAReadBackRegRequest, value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_fpgaread_back_reg_request__field_indices_by_name[] = {
+ 0, /* field[0] = FPGAId */
+ 1, /* field[1] = Value */
+};
+static const ProtobufCIntRange stub_fpgaread_back_reg_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_fpgaread_back_reg_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubFPGAReadBackRegRequest",
+ "StubFPGAReadBackRegRequest",
+ "StubFPGAReadBackRegRequest",
+ "",
+ sizeof(StubFPGAReadBackRegRequest),
+ 2,
+ stub_fpgaread_back_reg_request__field_descriptors,
+ stub_fpgaread_back_reg_request__field_indices_by_name,
+ 1, stub_fpgaread_back_reg_request__number_ranges,
+ (ProtobufCMessageInit) stub_fpgaread_back_reg_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegRequest.pb-c.h
new file mode 100644
index 000000000..e4ae69f1f
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegRequest.pb-c.h
@@ -0,0 +1,80 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFPGAReadBackRegRequest.proto */
+
+#ifndef PROTOBUF_C_StubFPGAReadBackRegRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubFPGAReadBackRegRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubFPGAReadBackRegRequest StubFPGAReadBackRegRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubFPGAReadBackRegRequest
+{
+ ProtobufCMessage base;
+ /*
+ * 0..2
+ */
+ protobuf_c_boolean has_fpgaid;
+ uint32_t fpgaid;
+ /*
+ * 16 bit
+ */
+ protobuf_c_boolean has_value;
+ uint32_t value;
+};
+#define STUB_FPGAREAD_BACK_REG_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_fpgaread_back_reg_request__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* StubFPGAReadBackRegRequest methods */
+void stub_fpgaread_back_reg_request__init
+ (StubFPGAReadBackRegRequest *message);
+size_t stub_fpgaread_back_reg_request__get_packed_size
+ (const StubFPGAReadBackRegRequest *message);
+size_t stub_fpgaread_back_reg_request__pack
+ (const StubFPGAReadBackRegRequest *message,
+ uint8_t *out);
+size_t stub_fpgaread_back_reg_request__pack_to_buffer
+ (const StubFPGAReadBackRegRequest *message,
+ ProtobufCBuffer *buffer);
+StubFPGAReadBackRegRequest *
+ stub_fpgaread_back_reg_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_fpgaread_back_reg_request__free_unpacked
+ (StubFPGAReadBackRegRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubFPGAReadBackRegRequest_Closure)
+ (const StubFPGAReadBackRegRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_fpgaread_back_reg_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubFPGAReadBackRegRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegResponse.pb-c.c
new file mode 100644
index 000000000..e222b3b24
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegResponse.pb-c.c
@@ -0,0 +1,132 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFPGAReadBackRegResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubFPGAReadBackRegResponse.pb-c.h"
+void stub_fpgaread_back_reg_response__init
+ (StubFPGAReadBackRegResponse *message)
+{
+ static const StubFPGAReadBackRegResponse init_value = STUB_FPGAREAD_BACK_REG_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_fpgaread_back_reg_response__get_packed_size
+ (const StubFPGAReadBackRegResponse *message)
+{
+ assert(message->base.descriptor == &stub_fpgaread_back_reg_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_fpgaread_back_reg_response__pack
+ (const StubFPGAReadBackRegResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_fpgaread_back_reg_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_fpgaread_back_reg_response__pack_to_buffer
+ (const StubFPGAReadBackRegResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_fpgaread_back_reg_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubFPGAReadBackRegResponse *
+ stub_fpgaread_back_reg_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubFPGAReadBackRegResponse *)
+ protobuf_c_message_unpack (&stub_fpgaread_back_reg_response__descriptor,
+ allocator, len, data);
+}
+void stub_fpgaread_back_reg_response__free_unpacked
+ (StubFPGAReadBackRegResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_fpgaread_back_reg_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_fpgaread_back_reg_response__field_descriptors[4] =
+{
+ {
+ "FPGAId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFPGAReadBackRegResponse, has_fpgaid),
+ offsetof(StubFPGAReadBackRegResponse, fpgaid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ReadBackValue",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFPGAReadBackRegResponse, has_readbackvalue),
+ offsetof(StubFPGAReadBackRegResponse, readbackvalue),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubFPGAReadBackRegResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFPGAReadBackRegResponse, has_statusword),
+ offsetof(StubFPGAReadBackRegResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_fpgaread_back_reg_response__field_indices_by_name[] = {
+ 0, /* field[0] = FPGAId */
+ 1, /* field[1] = ReadBackValue */
+ 2, /* field[2] = Status */
+ 3, /* field[3] = StatusWord */
+};
+static const ProtobufCIntRange stub_fpgaread_back_reg_response__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 4, 2 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_fpgaread_back_reg_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubFPGAReadBackRegResponse",
+ "StubFPGAReadBackRegResponse",
+ "StubFPGAReadBackRegResponse",
+ "",
+ sizeof(StubFPGAReadBackRegResponse),
+ 4,
+ stub_fpgaread_back_reg_response__field_descriptors,
+ stub_fpgaread_back_reg_response__field_indices_by_name,
+ 2, stub_fpgaread_back_reg_response__number_ranges,
+ (ProtobufCMessageInit) stub_fpgaread_back_reg_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegResponse.pb-c.h
new file mode 100644
index 000000000..234017433
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadBackRegResponse.pb-c.h
@@ -0,0 +1,89 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFPGAReadBackRegResponse.proto */
+
+#ifndef PROTOBUF_C_StubFPGAReadBackRegResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubFPGAReadBackRegResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubFPGAReadBackRegResponse StubFPGAReadBackRegResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubFPGAReadBackRegResponse
+{
+ ProtobufCMessage base;
+ /*
+ * 0..2
+ */
+ protobuf_c_boolean has_fpgaid;
+ uint32_t fpgaid;
+ /*
+ * 16 bit
+ */
+ protobuf_c_boolean has_readbackvalue;
+ uint32_t readbackvalue;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_FPGAREAD_BACK_REG_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_fpgaread_back_reg_response__descriptor) \
+ , 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StubFPGAReadBackRegResponse methods */
+void stub_fpgaread_back_reg_response__init
+ (StubFPGAReadBackRegResponse *message);
+size_t stub_fpgaread_back_reg_response__get_packed_size
+ (const StubFPGAReadBackRegResponse *message);
+size_t stub_fpgaread_back_reg_response__pack
+ (const StubFPGAReadBackRegResponse *message,
+ uint8_t *out);
+size_t stub_fpgaread_back_reg_response__pack_to_buffer
+ (const StubFPGAReadBackRegResponse *message,
+ ProtobufCBuffer *buffer);
+StubFPGAReadBackRegResponse *
+ stub_fpgaread_back_reg_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_fpgaread_back_reg_response__free_unpacked
+ (StubFPGAReadBackRegResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubFPGAReadBackRegResponse_Closure)
+ (const StubFPGAReadBackRegResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_fpgaread_back_reg_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubFPGAReadBackRegResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionRequest.pb-c.c
new file mode 100644
index 000000000..5381c462a
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFPGAReadVersionRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubFPGAReadVersionRequest.pb-c.h"
+void stub_fpgaread_version_request__init
+ (StubFPGAReadVersionRequest *message)
+{
+ static const StubFPGAReadVersionRequest init_value = STUB_FPGAREAD_VERSION_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_fpgaread_version_request__get_packed_size
+ (const StubFPGAReadVersionRequest *message)
+{
+ assert(message->base.descriptor == &stub_fpgaread_version_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_fpgaread_version_request__pack
+ (const StubFPGAReadVersionRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_fpgaread_version_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_fpgaread_version_request__pack_to_buffer
+ (const StubFPGAReadVersionRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_fpgaread_version_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubFPGAReadVersionRequest *
+ stub_fpgaread_version_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubFPGAReadVersionRequest *)
+ protobuf_c_message_unpack (&stub_fpgaread_version_request__descriptor,
+ allocator, len, data);
+}
+void stub_fpgaread_version_request__free_unpacked
+ (StubFPGAReadVersionRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_fpgaread_version_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_fpgaread_version_request__field_descriptors[1] =
+{
+ {
+ "FPGAId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFPGAReadVersionRequest, has_fpgaid),
+ offsetof(StubFPGAReadVersionRequest, fpgaid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_fpgaread_version_request__field_indices_by_name[] = {
+ 0, /* field[0] = FPGAId */
+};
+static const ProtobufCIntRange stub_fpgaread_version_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor stub_fpgaread_version_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubFPGAReadVersionRequest",
+ "StubFPGAReadVersionRequest",
+ "StubFPGAReadVersionRequest",
+ "",
+ sizeof(StubFPGAReadVersionRequest),
+ 1,
+ stub_fpgaread_version_request__field_descriptors,
+ stub_fpgaread_version_request__field_indices_by_name,
+ 1, stub_fpgaread_version_request__number_ranges,
+ (ProtobufCMessageInit) stub_fpgaread_version_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionRequest.pb-c.h
new file mode 100644
index 000000000..54db77bad
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionRequest.pb-c.h
@@ -0,0 +1,75 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFPGAReadVersionRequest.proto */
+
+#ifndef PROTOBUF_C_StubFPGAReadVersionRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubFPGAReadVersionRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubFPGAReadVersionRequest StubFPGAReadVersionRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubFPGAReadVersionRequest
+{
+ ProtobufCMessage base;
+ /*
+ * 0..2
+ */
+ protobuf_c_boolean has_fpgaid;
+ uint32_t fpgaid;
+};
+#define STUB_FPGAREAD_VERSION_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_fpgaread_version_request__descriptor) \
+ , 0, 0 }
+
+
+/* StubFPGAReadVersionRequest methods */
+void stub_fpgaread_version_request__init
+ (StubFPGAReadVersionRequest *message);
+size_t stub_fpgaread_version_request__get_packed_size
+ (const StubFPGAReadVersionRequest *message);
+size_t stub_fpgaread_version_request__pack
+ (const StubFPGAReadVersionRequest *message,
+ uint8_t *out);
+size_t stub_fpgaread_version_request__pack_to_buffer
+ (const StubFPGAReadVersionRequest *message,
+ ProtobufCBuffer *buffer);
+StubFPGAReadVersionRequest *
+ stub_fpgaread_version_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_fpgaread_version_request__free_unpacked
+ (StubFPGAReadVersionRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubFPGAReadVersionRequest_Closure)
+ (const StubFPGAReadVersionRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_fpgaread_version_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubFPGAReadVersionRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionResponse.pb-c.c
new file mode 100644
index 000000000..79c25d9a5
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionResponse.pb-c.c
@@ -0,0 +1,170 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFPGAReadVersionResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubFPGAReadVersionResponse.pb-c.h"
+void stub_fpgaread_version_response__init
+ (StubFPGAReadVersionResponse *message)
+{
+ static const StubFPGAReadVersionResponse init_value = STUB_FPGAREAD_VERSION_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_fpgaread_version_response__get_packed_size
+ (const StubFPGAReadVersionResponse *message)
+{
+ assert(message->base.descriptor == &stub_fpgaread_version_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_fpgaread_version_response__pack
+ (const StubFPGAReadVersionResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_fpgaread_version_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_fpgaread_version_response__pack_to_buffer
+ (const StubFPGAReadVersionResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_fpgaread_version_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubFPGAReadVersionResponse *
+ stub_fpgaread_version_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubFPGAReadVersionResponse *)
+ protobuf_c_message_unpack (&stub_fpgaread_version_response__descriptor,
+ allocator, len, data);
+}
+void stub_fpgaread_version_response__free_unpacked
+ (StubFPGAReadVersionResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_fpgaread_version_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_fpgaread_version_response__field_descriptors[7] =
+{
+ {
+ "FPGAId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFPGAReadVersionResponse, has_fpgaid),
+ offsetof(StubFPGAReadVersionResponse, fpgaid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Day",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFPGAReadVersionResponse, has_day),
+ offsetof(StubFPGAReadVersionResponse, day),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Month",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFPGAReadVersionResponse, has_month),
+ offsetof(StubFPGAReadVersionResponse, month),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Year",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFPGAReadVersionResponse, has_year),
+ offsetof(StubFPGAReadVersionResponse, year),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Ver_num",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFPGAReadVersionResponse, has_ver_num),
+ offsetof(StubFPGAReadVersionResponse, ver_num),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubFPGAReadVersionResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFPGAReadVersionResponse, has_statusword),
+ offsetof(StubFPGAReadVersionResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_fpgaread_version_response__field_indices_by_name[] = {
+ 1, /* field[1] = Day */
+ 0, /* field[0] = FPGAId */
+ 2, /* field[2] = Month */
+ 5, /* field[5] = Status */
+ 6, /* field[6] = StatusWord */
+ 4, /* field[4] = Ver_num */
+ 3, /* field[3] = Year */
+};
+static const ProtobufCIntRange stub_fpgaread_version_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor stub_fpgaread_version_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubFPGAReadVersionResponse",
+ "StubFPGAReadVersionResponse",
+ "StubFPGAReadVersionResponse",
+ "",
+ sizeof(StubFPGAReadVersionResponse),
+ 7,
+ stub_fpgaread_version_response__field_descriptors,
+ stub_fpgaread_version_response__field_indices_by_name,
+ 1, stub_fpgaread_version_response__number_ranges,
+ (ProtobufCMessageInit) stub_fpgaread_version_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionResponse.pb-c.h
new file mode 100644
index 000000000..360f7faac
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFPGAReadVersionResponse.pb-c.h
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFPGAReadVersionResponse.proto */
+
+#ifndef PROTOBUF_C_StubFPGAReadVersionResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubFPGAReadVersionResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubFPGAReadVersionResponse StubFPGAReadVersionResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubFPGAReadVersionResponse
+{
+ ProtobufCMessage base;
+ /*
+ * 0..2
+ */
+ protobuf_c_boolean has_fpgaid;
+ uint32_t fpgaid;
+ protobuf_c_boolean has_day;
+ uint32_t day;
+ protobuf_c_boolean has_month;
+ uint32_t month;
+ protobuf_c_boolean has_year;
+ uint32_t year;
+ protobuf_c_boolean has_ver_num;
+ uint32_t ver_num;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_FPGAREAD_VERSION_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_fpgaread_version_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StubFPGAReadVersionResponse methods */
+void stub_fpgaread_version_response__init
+ (StubFPGAReadVersionResponse *message);
+size_t stub_fpgaread_version_response__get_packed_size
+ (const StubFPGAReadVersionResponse *message);
+size_t stub_fpgaread_version_response__pack
+ (const StubFPGAReadVersionResponse *message,
+ uint8_t *out);
+size_t stub_fpgaread_version_response__pack_to_buffer
+ (const StubFPGAReadVersionResponse *message,
+ ProtobufCBuffer *buffer);
+StubFPGAReadVersionResponse *
+ stub_fpgaread_version_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_fpgaread_version_response__free_unpacked
+ (StubFPGAReadVersionResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubFPGAReadVersionResponse_Closure)
+ (const StubFPGAReadVersionResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_fpgaread_version_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubFPGAReadVersionResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegRequest.pb-c.c
new file mode 100644
index 000000000..01e5051ea
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFpgaReadRegRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubFpgaReadRegRequest.pb-c.h"
+void stub_fpga_read_reg_request__init
+ (StubFpgaReadRegRequest *message)
+{
+ static const StubFpgaReadRegRequest init_value = STUB_FPGA_READ_REG_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_fpga_read_reg_request__get_packed_size
+ (const StubFpgaReadRegRequest *message)
+{
+ assert(message->base.descriptor == &stub_fpga_read_reg_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_fpga_read_reg_request__pack
+ (const StubFpgaReadRegRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_fpga_read_reg_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_fpga_read_reg_request__pack_to_buffer
+ (const StubFpgaReadRegRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_fpga_read_reg_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubFpgaReadRegRequest *
+ stub_fpga_read_reg_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubFpgaReadRegRequest *)
+ protobuf_c_message_unpack (&stub_fpga_read_reg_request__descriptor,
+ allocator, len, data);
+}
+void stub_fpga_read_reg_request__free_unpacked
+ (StubFpgaReadRegRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_fpga_read_reg_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_fpga_read_reg_request__field_descriptors[1] =
+{
+ {
+ "Address",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFpgaReadRegRequest, has_address),
+ offsetof(StubFpgaReadRegRequest, address),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_fpga_read_reg_request__field_indices_by_name[] = {
+ 0, /* field[0] = Address */
+};
+static const ProtobufCIntRange stub_fpga_read_reg_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor stub_fpga_read_reg_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubFpgaReadRegRequest",
+ "StubFpgaReadRegRequest",
+ "StubFpgaReadRegRequest",
+ "",
+ sizeof(StubFpgaReadRegRequest),
+ 1,
+ stub_fpga_read_reg_request__field_descriptors,
+ stub_fpga_read_reg_request__field_indices_by_name,
+ 1, stub_fpga_read_reg_request__number_ranges,
+ (ProtobufCMessageInit) stub_fpga_read_reg_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegRequest.pb-c.h
new file mode 100644
index 000000000..f3fbd1080
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegRequest.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFpgaReadRegRequest.proto */
+
+#ifndef PROTOBUF_C_StubFpgaReadRegRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubFpgaReadRegRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubFpgaReadRegRequest StubFpgaReadRegRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubFpgaReadRegRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_address;
+ uint32_t address;
+};
+#define STUB_FPGA_READ_REG_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_fpga_read_reg_request__descriptor) \
+ , 0, 0 }
+
+
+/* StubFpgaReadRegRequest methods */
+void stub_fpga_read_reg_request__init
+ (StubFpgaReadRegRequest *message);
+size_t stub_fpga_read_reg_request__get_packed_size
+ (const StubFpgaReadRegRequest *message);
+size_t stub_fpga_read_reg_request__pack
+ (const StubFpgaReadRegRequest *message,
+ uint8_t *out);
+size_t stub_fpga_read_reg_request__pack_to_buffer
+ (const StubFpgaReadRegRequest *message,
+ ProtobufCBuffer *buffer);
+StubFpgaReadRegRequest *
+ stub_fpga_read_reg_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_fpga_read_reg_request__free_unpacked
+ (StubFpgaReadRegRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubFpgaReadRegRequest_Closure)
+ (const StubFpgaReadRegRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_fpga_read_reg_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubFpgaReadRegRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegResponse.pb-c.c
new file mode 100644
index 000000000..a6f64fe0e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegResponse.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFpgaReadRegResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubFpgaReadRegResponse.pb-c.h"
+void stub_fpga_read_reg_response__init
+ (StubFpgaReadRegResponse *message)
+{
+ static const StubFpgaReadRegResponse init_value = STUB_FPGA_READ_REG_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_fpga_read_reg_response__get_packed_size
+ (const StubFpgaReadRegResponse *message)
+{
+ assert(message->base.descriptor == &stub_fpga_read_reg_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_fpga_read_reg_response__pack
+ (const StubFpgaReadRegResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_fpga_read_reg_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_fpga_read_reg_response__pack_to_buffer
+ (const StubFpgaReadRegResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_fpga_read_reg_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubFpgaReadRegResponse *
+ stub_fpga_read_reg_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubFpgaReadRegResponse *)
+ protobuf_c_message_unpack (&stub_fpga_read_reg_response__descriptor,
+ allocator, len, data);
+}
+void stub_fpga_read_reg_response__free_unpacked
+ (StubFpgaReadRegResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_fpga_read_reg_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_fpga_read_reg_response__field_descriptors[4] =
+{
+ {
+ "Address",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFpgaReadRegResponse, has_address),
+ offsetof(StubFpgaReadRegResponse, address),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Value",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFpgaReadRegResponse, has_value),
+ offsetof(StubFpgaReadRegResponse, value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubFpgaReadRegResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFpgaReadRegResponse, has_statusword),
+ offsetof(StubFpgaReadRegResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_fpga_read_reg_response__field_indices_by_name[] = {
+ 0, /* field[0] = Address */
+ 2, /* field[2] = Status */
+ 3, /* field[3] = StatusWord */
+ 1, /* field[1] = Value */
+};
+static const ProtobufCIntRange stub_fpga_read_reg_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_fpga_read_reg_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubFpgaReadRegResponse",
+ "StubFpgaReadRegResponse",
+ "StubFpgaReadRegResponse",
+ "",
+ sizeof(StubFpgaReadRegResponse),
+ 4,
+ stub_fpga_read_reg_response__field_descriptors,
+ stub_fpga_read_reg_response__field_indices_by_name,
+ 1, stub_fpga_read_reg_response__number_ranges,
+ (ProtobufCMessageInit) stub_fpga_read_reg_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegResponse.pb-c.h
new file mode 100644
index 000000000..caae94515
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaReadRegResponse.pb-c.h
@@ -0,0 +1,83 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFpgaReadRegResponse.proto */
+
+#ifndef PROTOBUF_C_StubFpgaReadRegResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubFpgaReadRegResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubFpgaReadRegResponse StubFpgaReadRegResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubFpgaReadRegResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_address;
+ uint32_t address;
+ protobuf_c_boolean has_value;
+ uint32_t value;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_FPGA_READ_REG_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_fpga_read_reg_response__descriptor) \
+ , 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StubFpgaReadRegResponse methods */
+void stub_fpga_read_reg_response__init
+ (StubFpgaReadRegResponse *message);
+size_t stub_fpga_read_reg_response__get_packed_size
+ (const StubFpgaReadRegResponse *message);
+size_t stub_fpga_read_reg_response__pack
+ (const StubFpgaReadRegResponse *message,
+ uint8_t *out);
+size_t stub_fpga_read_reg_response__pack_to_buffer
+ (const StubFpgaReadRegResponse *message,
+ ProtobufCBuffer *buffer);
+StubFpgaReadRegResponse *
+ stub_fpga_read_reg_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_fpga_read_reg_response__free_unpacked
+ (StubFpgaReadRegResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubFpgaReadRegResponse_Closure)
+ (const StubFpgaReadRegResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_fpga_read_reg_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubFpgaReadRegResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegRequest.pb-c.c
new file mode 100644
index 000000000..ca32b9094
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFpgaWriteRegRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubFpgaWriteRegRequest.pb-c.h"
+void stub_fpga_write_reg_request__init
+ (StubFpgaWriteRegRequest *message)
+{
+ static const StubFpgaWriteRegRequest init_value = STUB_FPGA_WRITE_REG_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_fpga_write_reg_request__get_packed_size
+ (const StubFpgaWriteRegRequest *message)
+{
+ assert(message->base.descriptor == &stub_fpga_write_reg_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_fpga_write_reg_request__pack
+ (const StubFpgaWriteRegRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_fpga_write_reg_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_fpga_write_reg_request__pack_to_buffer
+ (const StubFpgaWriteRegRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_fpga_write_reg_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubFpgaWriteRegRequest *
+ stub_fpga_write_reg_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubFpgaWriteRegRequest *)
+ protobuf_c_message_unpack (&stub_fpga_write_reg_request__descriptor,
+ allocator, len, data);
+}
+void stub_fpga_write_reg_request__free_unpacked
+ (StubFpgaWriteRegRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_fpga_write_reg_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_fpga_write_reg_request__field_descriptors[2] =
+{
+ {
+ "Address",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFpgaWriteRegRequest, has_address),
+ offsetof(StubFpgaWriteRegRequest, address),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Value",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFpgaWriteRegRequest, has_value),
+ offsetof(StubFpgaWriteRegRequest, value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_fpga_write_reg_request__field_indices_by_name[] = {
+ 0, /* field[0] = Address */
+ 1, /* field[1] = Value */
+};
+static const ProtobufCIntRange stub_fpga_write_reg_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_fpga_write_reg_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubFpgaWriteRegRequest",
+ "StubFpgaWriteRegRequest",
+ "StubFpgaWriteRegRequest",
+ "",
+ sizeof(StubFpgaWriteRegRequest),
+ 2,
+ stub_fpga_write_reg_request__field_descriptors,
+ stub_fpga_write_reg_request__field_indices_by_name,
+ 1, stub_fpga_write_reg_request__number_ranges,
+ (ProtobufCMessageInit) stub_fpga_write_reg_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegRequest.pb-c.h
new file mode 100644
index 000000000..69d559cde
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegRequest.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFpgaWriteRegRequest.proto */
+
+#ifndef PROTOBUF_C_StubFpgaWriteRegRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubFpgaWriteRegRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubFpgaWriteRegRequest StubFpgaWriteRegRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubFpgaWriteRegRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_address;
+ uint32_t address;
+ protobuf_c_boolean has_value;
+ uint32_t value;
+};
+#define STUB_FPGA_WRITE_REG_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_fpga_write_reg_request__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* StubFpgaWriteRegRequest methods */
+void stub_fpga_write_reg_request__init
+ (StubFpgaWriteRegRequest *message);
+size_t stub_fpga_write_reg_request__get_packed_size
+ (const StubFpgaWriteRegRequest *message);
+size_t stub_fpga_write_reg_request__pack
+ (const StubFpgaWriteRegRequest *message,
+ uint8_t *out);
+size_t stub_fpga_write_reg_request__pack_to_buffer
+ (const StubFpgaWriteRegRequest *message,
+ ProtobufCBuffer *buffer);
+StubFpgaWriteRegRequest *
+ stub_fpga_write_reg_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_fpga_write_reg_request__free_unpacked
+ (StubFpgaWriteRegRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubFpgaWriteRegRequest_Closure)
+ (const StubFpgaWriteRegRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_fpga_write_reg_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubFpgaWriteRegRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegResponse.pb-c.c
new file mode 100644
index 000000000..8520b6e78
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegResponse.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFpgaWriteRegResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubFpgaWriteRegResponse.pb-c.h"
+void stub_fpga_write_reg_response__init
+ (StubFpgaWriteRegResponse *message)
+{
+ static const StubFpgaWriteRegResponse init_value = STUB_FPGA_WRITE_REG_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_fpga_write_reg_response__get_packed_size
+ (const StubFpgaWriteRegResponse *message)
+{
+ assert(message->base.descriptor == &stub_fpga_write_reg_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_fpga_write_reg_response__pack
+ (const StubFpgaWriteRegResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_fpga_write_reg_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_fpga_write_reg_response__pack_to_buffer
+ (const StubFpgaWriteRegResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_fpga_write_reg_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubFpgaWriteRegResponse *
+ stub_fpga_write_reg_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubFpgaWriteRegResponse *)
+ protobuf_c_message_unpack (&stub_fpga_write_reg_response__descriptor,
+ allocator, len, data);
+}
+void stub_fpga_write_reg_response__free_unpacked
+ (StubFpgaWriteRegResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_fpga_write_reg_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_fpga_write_reg_response__field_descriptors[2] =
+{
+ {
+ "Status",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubFpgaWriteRegResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubFpgaWriteRegResponse, has_statusword),
+ offsetof(StubFpgaWriteRegResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_fpga_write_reg_response__field_indices_by_name[] = {
+ 0, /* field[0] = Status */
+ 1, /* field[1] = StatusWord */
+};
+static const ProtobufCIntRange stub_fpga_write_reg_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_fpga_write_reg_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubFpgaWriteRegResponse",
+ "StubFpgaWriteRegResponse",
+ "StubFpgaWriteRegResponse",
+ "",
+ sizeof(StubFpgaWriteRegResponse),
+ 2,
+ stub_fpga_write_reg_response__field_descriptors,
+ stub_fpga_write_reg_response__field_indices_by_name,
+ 1, stub_fpga_write_reg_response__number_ranges,
+ (ProtobufCMessageInit) stub_fpga_write_reg_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegResponse.pb-c.h
new file mode 100644
index 000000000..b91dbc426
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubFpgaWriteRegResponse.pb-c.h
@@ -0,0 +1,79 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubFpgaWriteRegResponse.proto */
+
+#ifndef PROTOBUF_C_StubFpgaWriteRegResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubFpgaWriteRegResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubFpgaWriteRegResponse StubFpgaWriteRegResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubFpgaWriteRegResponse
+{
+ ProtobufCMessage base;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_FPGA_WRITE_REG_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_fpga_write_reg_response__descriptor) \
+ , NULL, 0, 0 }
+
+
+/* StubFpgaWriteRegResponse methods */
+void stub_fpga_write_reg_response__init
+ (StubFpgaWriteRegResponse *message);
+size_t stub_fpga_write_reg_response__get_packed_size
+ (const StubFpgaWriteRegResponse *message);
+size_t stub_fpga_write_reg_response__pack
+ (const StubFpgaWriteRegResponse *message,
+ uint8_t *out);
+size_t stub_fpga_write_reg_response__pack_to_buffer
+ (const StubFpgaWriteRegResponse *message,
+ ProtobufCBuffer *buffer);
+StubFpgaWriteRegResponse *
+ stub_fpga_write_reg_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_fpga_write_reg_response__free_unpacked
+ (StubFpgaWriteRegResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubFpgaWriteRegResponse_Closure)
+ (const StubFpgaWriteRegResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_fpga_write_reg_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubFpgaWriteRegResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupRequest.pb-c.c
new file mode 100644
index 000000000..9ea597eeb
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupRequest.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOInputSetupRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubGPIOInputSetupRequest.pb-c.h"
+void stub_gpioinput_setup_request__init
+ (StubGPIOInputSetupRequest *message)
+{
+ static const StubGPIOInputSetupRequest init_value = STUB_GPIOINPUT_SETUP_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_gpioinput_setup_request__get_packed_size
+ (const StubGPIOInputSetupRequest *message)
+{
+ assert(message->base.descriptor == &stub_gpioinput_setup_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_gpioinput_setup_request__pack
+ (const StubGPIOInputSetupRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_gpioinput_setup_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_gpioinput_setup_request__pack_to_buffer
+ (const StubGPIOInputSetupRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_gpioinput_setup_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubGPIOInputSetupRequest *
+ stub_gpioinput_setup_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubGPIOInputSetupRequest *)
+ protobuf_c_message_unpack (&stub_gpioinput_setup_request__descriptor,
+ allocator, len, data);
+}
+void stub_gpioinput_setup_request__free_unpacked
+ (StubGPIOInputSetupRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_gpioinput_setup_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_gpioinput_setup_request__field_descriptors[4] =
+{
+ {
+ "PortId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOInputSetupRequest, portid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PinId",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOInputSetupRequest, has_pinid),
+ offsetof(StubGPIOInputSetupRequest, pinid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SetInput",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOInputSetupRequest, has_setinput),
+ offsetof(StubGPIOInputSetupRequest, setinput),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SetPullUP",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOInputSetupRequest, has_setpullup),
+ offsetof(StubGPIOInputSetupRequest, setpullup),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_gpioinput_setup_request__field_indices_by_name[] = {
+ 1, /* field[1] = PinId */
+ 0, /* field[0] = PortId */
+ 2, /* field[2] = SetInput */
+ 3, /* field[3] = SetPullUP */
+};
+static const ProtobufCIntRange stub_gpioinput_setup_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_gpioinput_setup_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubGPIOInputSetupRequest",
+ "StubGPIOInputSetupRequest",
+ "StubGPIOInputSetupRequest",
+ "",
+ sizeof(StubGPIOInputSetupRequest),
+ 4,
+ stub_gpioinput_setup_request__field_descriptors,
+ stub_gpioinput_setup_request__field_indices_by_name,
+ 1, stub_gpioinput_setup_request__number_ranges,
+ (ProtobufCMessageInit) stub_gpioinput_setup_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupRequest.pb-c.h
new file mode 100644
index 000000000..3e515a650
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupRequest.pb-c.h
@@ -0,0 +1,89 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOInputSetupRequest.proto */
+
+#ifndef PROTOBUF_C_StubGPIOInputSetupRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubGPIOInputSetupRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubGPIOInputSetupRequest StubGPIOInputSetupRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubGPIOInputSetupRequest
+{
+ ProtobufCMessage base;
+ /*
+ * A..
+ */
+ char *portid;
+ /*
+ * 0..7
+ */
+ protobuf_c_boolean has_pinid;
+ uint32_t pinid;
+ /*
+ * 0 - Set OUTPUT, 1 - Set INPUT,
+ */
+ protobuf_c_boolean has_setinput;
+ uint32_t setinput;
+ /*
+ *0 - Down, 1 - Up
+ */
+ protobuf_c_boolean has_setpullup;
+ uint32_t setpullup;
+};
+#define STUB_GPIOINPUT_SETUP_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_gpioinput_setup_request__descriptor) \
+ , NULL, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubGPIOInputSetupRequest methods */
+void stub_gpioinput_setup_request__init
+ (StubGPIOInputSetupRequest *message);
+size_t stub_gpioinput_setup_request__get_packed_size
+ (const StubGPIOInputSetupRequest *message);
+size_t stub_gpioinput_setup_request__pack
+ (const StubGPIOInputSetupRequest *message,
+ uint8_t *out);
+size_t stub_gpioinput_setup_request__pack_to_buffer
+ (const StubGPIOInputSetupRequest *message,
+ ProtobufCBuffer *buffer);
+StubGPIOInputSetupRequest *
+ stub_gpioinput_setup_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_gpioinput_setup_request__free_unpacked
+ (StubGPIOInputSetupRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubGPIOInputSetupRequest_Closure)
+ (const StubGPIOInputSetupRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_gpioinput_setup_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubGPIOInputSetupRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupResponse.pb-c.c
new file mode 100644
index 000000000..a7ad8a8e5
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupResponse.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOInputSetupResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubGPIOInputSetupResponse.pb-c.h"
+void stub_gpioinput_setup_response__init
+ (StubGPIOInputSetupResponse *message)
+{
+ static const StubGPIOInputSetupResponse init_value = STUB_GPIOINPUT_SETUP_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_gpioinput_setup_response__get_packed_size
+ (const StubGPIOInputSetupResponse *message)
+{
+ assert(message->base.descriptor == &stub_gpioinput_setup_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_gpioinput_setup_response__pack
+ (const StubGPIOInputSetupResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_gpioinput_setup_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_gpioinput_setup_response__pack_to_buffer
+ (const StubGPIOInputSetupResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_gpioinput_setup_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubGPIOInputSetupResponse *
+ stub_gpioinput_setup_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubGPIOInputSetupResponse *)
+ protobuf_c_message_unpack (&stub_gpioinput_setup_response__descriptor,
+ allocator, len, data);
+}
+void stub_gpioinput_setup_response__free_unpacked
+ (StubGPIOInputSetupResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_gpioinput_setup_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_gpioinput_setup_response__field_descriptors[4] =
+{
+ {
+ "PortId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOInputSetupResponse, portid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PinId",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOInputSetupResponse, has_pinid),
+ offsetof(StubGPIOInputSetupResponse, pinid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOInputSetupResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOInputSetupResponse, has_statusword),
+ offsetof(StubGPIOInputSetupResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_gpioinput_setup_response__field_indices_by_name[] = {
+ 1, /* field[1] = PinId */
+ 0, /* field[0] = PortId */
+ 2, /* field[2] = Status */
+ 3, /* field[3] = StatusWord */
+};
+static const ProtobufCIntRange stub_gpioinput_setup_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_gpioinput_setup_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubGPIOInputSetupResponse",
+ "StubGPIOInputSetupResponse",
+ "StubGPIOInputSetupResponse",
+ "",
+ sizeof(StubGPIOInputSetupResponse),
+ 4,
+ stub_gpioinput_setup_response__field_descriptors,
+ stub_gpioinput_setup_response__field_indices_by_name,
+ 1, stub_gpioinput_setup_response__number_ranges,
+ (ProtobufCMessageInit) stub_gpioinput_setup_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupResponse.pb-c.h
new file mode 100644
index 000000000..7a93c3048
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOInputSetupResponse.pb-c.h
@@ -0,0 +1,88 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOInputSetupResponse.proto */
+
+#ifndef PROTOBUF_C_StubGPIOInputSetupResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubGPIOInputSetupResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubGPIOInputSetupResponse StubGPIOInputSetupResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubGPIOInputSetupResponse
+{
+ ProtobufCMessage base;
+ /*
+ * A..
+ */
+ char *portid;
+ /*
+ * 0..7
+ */
+ protobuf_c_boolean has_pinid;
+ uint32_t pinid;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_GPIOINPUT_SETUP_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_gpioinput_setup_response__descriptor) \
+ , NULL, 0, 0, NULL, 0, 0 }
+
+
+/* StubGPIOInputSetupResponse methods */
+void stub_gpioinput_setup_response__init
+ (StubGPIOInputSetupResponse *message);
+size_t stub_gpioinput_setup_response__get_packed_size
+ (const StubGPIOInputSetupResponse *message);
+size_t stub_gpioinput_setup_response__pack
+ (const StubGPIOInputSetupResponse *message,
+ uint8_t *out);
+size_t stub_gpioinput_setup_response__pack_to_buffer
+ (const StubGPIOInputSetupResponse *message,
+ ProtobufCBuffer *buffer);
+StubGPIOInputSetupResponse *
+ stub_gpioinput_setup_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_gpioinput_setup_response__free_unpacked
+ (StubGPIOInputSetupResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubGPIOInputSetupResponse_Closure)
+ (const StubGPIOInputSetupResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_gpioinput_setup_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubGPIOInputSetupResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitRequest.pb-c.c
new file mode 100644
index 000000000..68826631e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitRequest.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOReadBitRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubGPIOReadBitRequest.pb-c.h"
+void stub_gpioread_bit_request__init
+ (StubGPIOReadBitRequest *message)
+{
+ static const StubGPIOReadBitRequest init_value = STUB_GPIOREAD_BIT_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_gpioread_bit_request__get_packed_size
+ (const StubGPIOReadBitRequest *message)
+{
+ assert(message->base.descriptor == &stub_gpioread_bit_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_gpioread_bit_request__pack
+ (const StubGPIOReadBitRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_gpioread_bit_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_gpioread_bit_request__pack_to_buffer
+ (const StubGPIOReadBitRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_gpioread_bit_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubGPIOReadBitRequest *
+ stub_gpioread_bit_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubGPIOReadBitRequest *)
+ protobuf_c_message_unpack (&stub_gpioread_bit_request__descriptor,
+ allocator, len, data);
+}
+void stub_gpioread_bit_request__free_unpacked
+ (StubGPIOReadBitRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_gpioread_bit_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_gpioread_bit_request__field_descriptors[4] =
+{
+ {
+ "PortId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOReadBitRequest, portid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PinId",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOReadBitRequest, has_pinid),
+ offsetof(StubGPIOReadBitRequest, pinid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Polling",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubGPIOReadBitRequest, has_polling),
+ offsetof(StubGPIOReadBitRequest, polling),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PollExpValue",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubGPIOReadBitRequest, has_pollexpvalue),
+ offsetof(StubGPIOReadBitRequest, pollexpvalue),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_gpioread_bit_request__field_indices_by_name[] = {
+ 1, /* field[1] = PinId */
+ 3, /* field[3] = PollExpValue */
+ 2, /* field[2] = Polling */
+ 0, /* field[0] = PortId */
+};
+static const ProtobufCIntRange stub_gpioread_bit_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_gpioread_bit_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubGPIOReadBitRequest",
+ "StubGPIOReadBitRequest",
+ "StubGPIOReadBitRequest",
+ "",
+ sizeof(StubGPIOReadBitRequest),
+ 4,
+ stub_gpioread_bit_request__field_descriptors,
+ stub_gpioread_bit_request__field_indices_by_name,
+ 1, stub_gpioread_bit_request__number_ranges,
+ (ProtobufCMessageInit) stub_gpioread_bit_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitRequest.pb-c.h
new file mode 100644
index 000000000..263fb539e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitRequest.pb-c.h
@@ -0,0 +1,89 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOReadBitRequest.proto */
+
+#ifndef PROTOBUF_C_StubGPIOReadBitRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubGPIOReadBitRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubGPIOReadBitRequest StubGPIOReadBitRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubGPIOReadBitRequest
+{
+ ProtobufCMessage base;
+ /*
+ * A..
+ */
+ char *portid;
+ /*
+ * 0..7
+ */
+ protobuf_c_boolean has_pinid;
+ uint32_t pinid;
+ /*
+ * 1 - Polling
+ */
+ protobuf_c_boolean has_polling;
+ protobuf_c_boolean polling;
+ /*
+ * 0/1
+ */
+ protobuf_c_boolean has_pollexpvalue;
+ protobuf_c_boolean pollexpvalue;
+};
+#define STUB_GPIOREAD_BIT_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_gpioread_bit_request__descriptor) \
+ , NULL, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubGPIOReadBitRequest methods */
+void stub_gpioread_bit_request__init
+ (StubGPIOReadBitRequest *message);
+size_t stub_gpioread_bit_request__get_packed_size
+ (const StubGPIOReadBitRequest *message);
+size_t stub_gpioread_bit_request__pack
+ (const StubGPIOReadBitRequest *message,
+ uint8_t *out);
+size_t stub_gpioread_bit_request__pack_to_buffer
+ (const StubGPIOReadBitRequest *message,
+ ProtobufCBuffer *buffer);
+StubGPIOReadBitRequest *
+ stub_gpioread_bit_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_gpioread_bit_request__free_unpacked
+ (StubGPIOReadBitRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubGPIOReadBitRequest_Closure)
+ (const StubGPIOReadBitRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_gpioread_bit_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubGPIOReadBitRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitResponse.pb-c.c
new file mode 100644
index 000000000..bc5bc2e84
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitResponse.pb-c.c
@@ -0,0 +1,144 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOReadBitResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubGPIOReadBitResponse.pb-c.h"
+void stub_gpioread_bit_response__init
+ (StubGPIOReadBitResponse *message)
+{
+ static const StubGPIOReadBitResponse init_value = STUB_GPIOREAD_BIT_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_gpioread_bit_response__get_packed_size
+ (const StubGPIOReadBitResponse *message)
+{
+ assert(message->base.descriptor == &stub_gpioread_bit_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_gpioread_bit_response__pack
+ (const StubGPIOReadBitResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_gpioread_bit_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_gpioread_bit_response__pack_to_buffer
+ (const StubGPIOReadBitResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_gpioread_bit_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubGPIOReadBitResponse *
+ stub_gpioread_bit_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubGPIOReadBitResponse *)
+ protobuf_c_message_unpack (&stub_gpioread_bit_response__descriptor,
+ allocator, len, data);
+}
+void stub_gpioread_bit_response__free_unpacked
+ (StubGPIOReadBitResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_gpioread_bit_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_gpioread_bit_response__field_descriptors[5] =
+{
+ {
+ "PortId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOReadBitResponse, portid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PinId",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOReadBitResponse, has_pinid),
+ offsetof(StubGPIOReadBitResponse, pinid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "BitValue",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubGPIOReadBitResponse, has_bitvalue),
+ offsetof(StubGPIOReadBitResponse, bitvalue),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOReadBitResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOReadBitResponse, has_statusword),
+ offsetof(StubGPIOReadBitResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_gpioread_bit_response__field_indices_by_name[] = {
+ 2, /* field[2] = BitValue */
+ 1, /* field[1] = PinId */
+ 0, /* field[0] = PortId */
+ 3, /* field[3] = Status */
+ 4, /* field[4] = StatusWord */
+};
+static const ProtobufCIntRange stub_gpioread_bit_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor stub_gpioread_bit_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubGPIOReadBitResponse",
+ "StubGPIOReadBitResponse",
+ "StubGPIOReadBitResponse",
+ "",
+ sizeof(StubGPIOReadBitResponse),
+ 5,
+ stub_gpioread_bit_response__field_descriptors,
+ stub_gpioread_bit_response__field_indices_by_name,
+ 1, stub_gpioread_bit_response__number_ranges,
+ (ProtobufCMessageInit) stub_gpioread_bit_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitResponse.pb-c.h
new file mode 100644
index 000000000..ebbdc199d
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadBitResponse.pb-c.h
@@ -0,0 +1,90 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOReadBitResponse.proto */
+
+#ifndef PROTOBUF_C_StubGPIOReadBitResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubGPIOReadBitResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubGPIOReadBitResponse StubGPIOReadBitResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubGPIOReadBitResponse
+{
+ ProtobufCMessage base;
+ /*
+ * A..
+ */
+ char *portid;
+ /*
+ * 0..7
+ */
+ protobuf_c_boolean has_pinid;
+ uint32_t pinid;
+ protobuf_c_boolean has_bitvalue;
+ protobuf_c_boolean bitvalue;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_GPIOREAD_BIT_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_gpioread_bit_response__descriptor) \
+ , NULL, 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StubGPIOReadBitResponse methods */
+void stub_gpioread_bit_response__init
+ (StubGPIOReadBitResponse *message);
+size_t stub_gpioread_bit_response__get_packed_size
+ (const StubGPIOReadBitResponse *message);
+size_t stub_gpioread_bit_response__pack
+ (const StubGPIOReadBitResponse *message,
+ uint8_t *out);
+size_t stub_gpioread_bit_response__pack_to_buffer
+ (const StubGPIOReadBitResponse *message,
+ ProtobufCBuffer *buffer);
+StubGPIOReadBitResponse *
+ stub_gpioread_bit_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_gpioread_bit_response__free_unpacked
+ (StubGPIOReadBitResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubGPIOReadBitResponse_Closure)
+ (const StubGPIOReadBitResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_gpioread_bit_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubGPIOReadBitResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteRequest.pb-c.c
new file mode 100644
index 000000000..6707d7a6f
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOReadByteRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubGPIOReadByteRequest.pb-c.h"
+void stub_gpioread_byte_request__init
+ (StubGPIOReadByteRequest *message)
+{
+ static const StubGPIOReadByteRequest init_value = STUB_GPIOREAD_BYTE_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_gpioread_byte_request__get_packed_size
+ (const StubGPIOReadByteRequest *message)
+{
+ assert(message->base.descriptor == &stub_gpioread_byte_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_gpioread_byte_request__pack
+ (const StubGPIOReadByteRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_gpioread_byte_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_gpioread_byte_request__pack_to_buffer
+ (const StubGPIOReadByteRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_gpioread_byte_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubGPIOReadByteRequest *
+ stub_gpioread_byte_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubGPIOReadByteRequest *)
+ protobuf_c_message_unpack (&stub_gpioread_byte_request__descriptor,
+ allocator, len, data);
+}
+void stub_gpioread_byte_request__free_unpacked
+ (StubGPIOReadByteRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_gpioread_byte_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_gpioread_byte_request__field_descriptors[1] =
+{
+ {
+ "PortId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOReadByteRequest, portid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_gpioread_byte_request__field_indices_by_name[] = {
+ 0, /* field[0] = PortId */
+};
+static const ProtobufCIntRange stub_gpioread_byte_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor stub_gpioread_byte_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubGPIOReadByteRequest",
+ "StubGPIOReadByteRequest",
+ "StubGPIOReadByteRequest",
+ "",
+ sizeof(StubGPIOReadByteRequest),
+ 1,
+ stub_gpioread_byte_request__field_descriptors,
+ stub_gpioread_byte_request__field_indices_by_name,
+ 1, stub_gpioread_byte_request__number_ranges,
+ (ProtobufCMessageInit) stub_gpioread_byte_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteRequest.pb-c.h
new file mode 100644
index 000000000..53e49de7f
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteRequest.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOReadByteRequest.proto */
+
+#ifndef PROTOBUF_C_StubGPIOReadByteRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubGPIOReadByteRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubGPIOReadByteRequest StubGPIOReadByteRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubGPIOReadByteRequest
+{
+ ProtobufCMessage base;
+ /*
+ * A..
+ */
+ char *portid;
+};
+#define STUB_GPIOREAD_BYTE_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_gpioread_byte_request__descriptor) \
+ , NULL }
+
+
+/* StubGPIOReadByteRequest methods */
+void stub_gpioread_byte_request__init
+ (StubGPIOReadByteRequest *message);
+size_t stub_gpioread_byte_request__get_packed_size
+ (const StubGPIOReadByteRequest *message);
+size_t stub_gpioread_byte_request__pack
+ (const StubGPIOReadByteRequest *message,
+ uint8_t *out);
+size_t stub_gpioread_byte_request__pack_to_buffer
+ (const StubGPIOReadByteRequest *message,
+ ProtobufCBuffer *buffer);
+StubGPIOReadByteRequest *
+ stub_gpioread_byte_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_gpioread_byte_request__free_unpacked
+ (StubGPIOReadByteRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubGPIOReadByteRequest_Closure)
+ (const StubGPIOReadByteRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_gpioread_byte_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubGPIOReadByteRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteResponse.pb-c.c
new file mode 100644
index 000000000..b43726c3e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteResponse.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOReadByteResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubGPIOReadByteResponse.pb-c.h"
+void stub_gpioread_byte_response__init
+ (StubGPIOReadByteResponse *message)
+{
+ static const StubGPIOReadByteResponse init_value = STUB_GPIOREAD_BYTE_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_gpioread_byte_response__get_packed_size
+ (const StubGPIOReadByteResponse *message)
+{
+ assert(message->base.descriptor == &stub_gpioread_byte_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_gpioread_byte_response__pack
+ (const StubGPIOReadByteResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_gpioread_byte_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_gpioread_byte_response__pack_to_buffer
+ (const StubGPIOReadByteResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_gpioread_byte_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubGPIOReadByteResponse *
+ stub_gpioread_byte_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubGPIOReadByteResponse *)
+ protobuf_c_message_unpack (&stub_gpioread_byte_response__descriptor,
+ allocator, len, data);
+}
+void stub_gpioread_byte_response__free_unpacked
+ (StubGPIOReadByteResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_gpioread_byte_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_gpioread_byte_response__field_descriptors[4] =
+{
+ {
+ "PortId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOReadByteResponse, portid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ByteValue",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOReadByteResponse, has_bytevalue),
+ offsetof(StubGPIOReadByteResponse, bytevalue),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOReadByteResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOReadByteResponse, has_statusword),
+ offsetof(StubGPIOReadByteResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_gpioread_byte_response__field_indices_by_name[] = {
+ 1, /* field[1] = ByteValue */
+ 0, /* field[0] = PortId */
+ 2, /* field[2] = Status */
+ 3, /* field[3] = StatusWord */
+};
+static const ProtobufCIntRange stub_gpioread_byte_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_gpioread_byte_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubGPIOReadByteResponse",
+ "StubGPIOReadByteResponse",
+ "StubGPIOReadByteResponse",
+ "",
+ sizeof(StubGPIOReadByteResponse),
+ 4,
+ stub_gpioread_byte_response__field_descriptors,
+ stub_gpioread_byte_response__field_indices_by_name,
+ 1, stub_gpioread_byte_response__number_ranges,
+ (ProtobufCMessageInit) stub_gpioread_byte_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteResponse.pb-c.h
new file mode 100644
index 000000000..dad405984
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOReadByteResponse.pb-c.h
@@ -0,0 +1,85 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOReadByteResponse.proto */
+
+#ifndef PROTOBUF_C_StubGPIOReadByteResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubGPIOReadByteResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubGPIOReadByteResponse StubGPIOReadByteResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubGPIOReadByteResponse
+{
+ ProtobufCMessage base;
+ /*
+ * A..
+ */
+ char *portid;
+ protobuf_c_boolean has_bytevalue;
+ uint32_t bytevalue;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_GPIOREAD_BYTE_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_gpioread_byte_response__descriptor) \
+ , NULL, 0, 0, NULL, 0, 0 }
+
+
+/* StubGPIOReadByteResponse methods */
+void stub_gpioread_byte_response__init
+ (StubGPIOReadByteResponse *message);
+size_t stub_gpioread_byte_response__get_packed_size
+ (const StubGPIOReadByteResponse *message);
+size_t stub_gpioread_byte_response__pack
+ (const StubGPIOReadByteResponse *message,
+ uint8_t *out);
+size_t stub_gpioread_byte_response__pack_to_buffer
+ (const StubGPIOReadByteResponse *message,
+ ProtobufCBuffer *buffer);
+StubGPIOReadByteResponse *
+ stub_gpioread_byte_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_gpioread_byte_response__free_unpacked
+ (StubGPIOReadByteResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubGPIOReadByteResponse_Closure)
+ (const StubGPIOReadByteResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_gpioread_byte_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubGPIOReadByteResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitRequest.pb-c.c
new file mode 100644
index 000000000..0e8670609
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitRequest.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOWriteBitRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubGPIOWriteBitRequest.pb-c.h"
+void stub_gpiowrite_bit_request__init
+ (StubGPIOWriteBitRequest *message)
+{
+ static const StubGPIOWriteBitRequest init_value = STUB_GPIOWRITE_BIT_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_gpiowrite_bit_request__get_packed_size
+ (const StubGPIOWriteBitRequest *message)
+{
+ assert(message->base.descriptor == &stub_gpiowrite_bit_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_gpiowrite_bit_request__pack
+ (const StubGPIOWriteBitRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_gpiowrite_bit_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_gpiowrite_bit_request__pack_to_buffer
+ (const StubGPIOWriteBitRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_gpiowrite_bit_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubGPIOWriteBitRequest *
+ stub_gpiowrite_bit_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubGPIOWriteBitRequest *)
+ protobuf_c_message_unpack (&stub_gpiowrite_bit_request__descriptor,
+ allocator, len, data);
+}
+void stub_gpiowrite_bit_request__free_unpacked
+ (StubGPIOWriteBitRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_gpiowrite_bit_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_gpiowrite_bit_request__field_descriptors[3] =
+{
+ {
+ "PortId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOWriteBitRequest, portid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PinId",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOWriteBitRequest, has_pinid),
+ offsetof(StubGPIOWriteBitRequest, pinid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "BitToWrite",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubGPIOWriteBitRequest, has_bittowrite),
+ offsetof(StubGPIOWriteBitRequest, bittowrite),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_gpiowrite_bit_request__field_indices_by_name[] = {
+ 2, /* field[2] = BitToWrite */
+ 1, /* field[1] = PinId */
+ 0, /* field[0] = PortId */
+};
+static const ProtobufCIntRange stub_gpiowrite_bit_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor stub_gpiowrite_bit_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubGPIOWriteBitRequest",
+ "StubGPIOWriteBitRequest",
+ "StubGPIOWriteBitRequest",
+ "",
+ sizeof(StubGPIOWriteBitRequest),
+ 3,
+ stub_gpiowrite_bit_request__field_descriptors,
+ stub_gpiowrite_bit_request__field_indices_by_name,
+ 1, stub_gpiowrite_bit_request__number_ranges,
+ (ProtobufCMessageInit) stub_gpiowrite_bit_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitRequest.pb-c.h
new file mode 100644
index 000000000..705ca7d38
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitRequest.pb-c.h
@@ -0,0 +1,81 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOWriteBitRequest.proto */
+
+#ifndef PROTOBUF_C_StubGPIOWriteBitRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubGPIOWriteBitRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubGPIOWriteBitRequest StubGPIOWriteBitRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubGPIOWriteBitRequest
+{
+ ProtobufCMessage base;
+ /*
+ * A..
+ */
+ char *portid;
+ /*
+ * 0..7
+ */
+ protobuf_c_boolean has_pinid;
+ uint32_t pinid;
+ protobuf_c_boolean has_bittowrite;
+ protobuf_c_boolean bittowrite;
+};
+#define STUB_GPIOWRITE_BIT_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_gpiowrite_bit_request__descriptor) \
+ , NULL, 0, 0, 0, 0 }
+
+
+/* StubGPIOWriteBitRequest methods */
+void stub_gpiowrite_bit_request__init
+ (StubGPIOWriteBitRequest *message);
+size_t stub_gpiowrite_bit_request__get_packed_size
+ (const StubGPIOWriteBitRequest *message);
+size_t stub_gpiowrite_bit_request__pack
+ (const StubGPIOWriteBitRequest *message,
+ uint8_t *out);
+size_t stub_gpiowrite_bit_request__pack_to_buffer
+ (const StubGPIOWriteBitRequest *message,
+ ProtobufCBuffer *buffer);
+StubGPIOWriteBitRequest *
+ stub_gpiowrite_bit_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_gpiowrite_bit_request__free_unpacked
+ (StubGPIOWriteBitRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubGPIOWriteBitRequest_Closure)
+ (const StubGPIOWriteBitRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_gpiowrite_bit_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubGPIOWriteBitRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitResponse.pb-c.c
new file mode 100644
index 000000000..ef26dbf57
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitResponse.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOWriteBitResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubGPIOWriteBitResponse.pb-c.h"
+void stub_gpiowrite_bit_response__init
+ (StubGPIOWriteBitResponse *message)
+{
+ static const StubGPIOWriteBitResponse init_value = STUB_GPIOWRITE_BIT_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_gpiowrite_bit_response__get_packed_size
+ (const StubGPIOWriteBitResponse *message)
+{
+ assert(message->base.descriptor == &stub_gpiowrite_bit_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_gpiowrite_bit_response__pack
+ (const StubGPIOWriteBitResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_gpiowrite_bit_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_gpiowrite_bit_response__pack_to_buffer
+ (const StubGPIOWriteBitResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_gpiowrite_bit_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubGPIOWriteBitResponse *
+ stub_gpiowrite_bit_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubGPIOWriteBitResponse *)
+ protobuf_c_message_unpack (&stub_gpiowrite_bit_response__descriptor,
+ allocator, len, data);
+}
+void stub_gpiowrite_bit_response__free_unpacked
+ (StubGPIOWriteBitResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_gpiowrite_bit_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_gpiowrite_bit_response__field_descriptors[4] =
+{
+ {
+ "PortId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOWriteBitResponse, portid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "PinId",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOWriteBitResponse, has_pinid),
+ offsetof(StubGPIOWriteBitResponse, pinid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOWriteBitResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOWriteBitResponse, has_statusword),
+ offsetof(StubGPIOWriteBitResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_gpiowrite_bit_response__field_indices_by_name[] = {
+ 1, /* field[1] = PinId */
+ 0, /* field[0] = PortId */
+ 2, /* field[2] = Status */
+ 3, /* field[3] = StatusWord */
+};
+static const ProtobufCIntRange stub_gpiowrite_bit_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_gpiowrite_bit_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubGPIOWriteBitResponse",
+ "StubGPIOWriteBitResponse",
+ "StubGPIOWriteBitResponse",
+ "",
+ sizeof(StubGPIOWriteBitResponse),
+ 4,
+ stub_gpiowrite_bit_response__field_descriptors,
+ stub_gpiowrite_bit_response__field_indices_by_name,
+ 1, stub_gpiowrite_bit_response__number_ranges,
+ (ProtobufCMessageInit) stub_gpiowrite_bit_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitResponse.pb-c.h
new file mode 100644
index 000000000..831732f4a
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteBitResponse.pb-c.h
@@ -0,0 +1,88 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOWriteBitResponse.proto */
+
+#ifndef PROTOBUF_C_StubGPIOWriteBitResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubGPIOWriteBitResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubGPIOWriteBitResponse StubGPIOWriteBitResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubGPIOWriteBitResponse
+{
+ ProtobufCMessage base;
+ /*
+ * A..
+ */
+ char *portid;
+ /*
+ * 0..7
+ */
+ protobuf_c_boolean has_pinid;
+ uint32_t pinid;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_GPIOWRITE_BIT_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_gpiowrite_bit_response__descriptor) \
+ , NULL, 0, 0, NULL, 0, 0 }
+
+
+/* StubGPIOWriteBitResponse methods */
+void stub_gpiowrite_bit_response__init
+ (StubGPIOWriteBitResponse *message);
+size_t stub_gpiowrite_bit_response__get_packed_size
+ (const StubGPIOWriteBitResponse *message);
+size_t stub_gpiowrite_bit_response__pack
+ (const StubGPIOWriteBitResponse *message,
+ uint8_t *out);
+size_t stub_gpiowrite_bit_response__pack_to_buffer
+ (const StubGPIOWriteBitResponse *message,
+ ProtobufCBuffer *buffer);
+StubGPIOWriteBitResponse *
+ stub_gpiowrite_bit_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_gpiowrite_bit_response__free_unpacked
+ (StubGPIOWriteBitResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubGPIOWriteBitResponse_Closure)
+ (const StubGPIOWriteBitResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_gpiowrite_bit_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubGPIOWriteBitResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteRequest.pb-c.c
new file mode 100644
index 000000000..fe4fe1981
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteRequest.pb-c.c
@@ -0,0 +1,106 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOWriteByteRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubGPIOWriteByteRequest.pb-c.h"
+void stub_gpiowrite_byte_request__init
+ (StubGPIOWriteByteRequest *message)
+{
+ static const StubGPIOWriteByteRequest init_value = STUB_GPIOWRITE_BYTE_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_gpiowrite_byte_request__get_packed_size
+ (const StubGPIOWriteByteRequest *message)
+{
+ assert(message->base.descriptor == &stub_gpiowrite_byte_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_gpiowrite_byte_request__pack
+ (const StubGPIOWriteByteRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_gpiowrite_byte_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_gpiowrite_byte_request__pack_to_buffer
+ (const StubGPIOWriteByteRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_gpiowrite_byte_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubGPIOWriteByteRequest *
+ stub_gpiowrite_byte_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubGPIOWriteByteRequest *)
+ protobuf_c_message_unpack (&stub_gpiowrite_byte_request__descriptor,
+ allocator, len, data);
+}
+void stub_gpiowrite_byte_request__free_unpacked
+ (StubGPIOWriteByteRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_gpiowrite_byte_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_gpiowrite_byte_request__field_descriptors[2] =
+{
+ {
+ "PortId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOWriteByteRequest, portid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DataToWrite",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOWriteByteRequest, has_datatowrite),
+ offsetof(StubGPIOWriteByteRequest, datatowrite),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_gpiowrite_byte_request__field_indices_by_name[] = {
+ 1, /* field[1] = DataToWrite */
+ 0, /* field[0] = PortId */
+};
+static const ProtobufCIntRange stub_gpiowrite_byte_request__number_ranges[2 + 1] =
+{
+ { 1, 0 },
+ { 3, 1 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_gpiowrite_byte_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubGPIOWriteByteRequest",
+ "StubGPIOWriteByteRequest",
+ "StubGPIOWriteByteRequest",
+ "",
+ sizeof(StubGPIOWriteByteRequest),
+ 2,
+ stub_gpiowrite_byte_request__field_descriptors,
+ stub_gpiowrite_byte_request__field_indices_by_name,
+ 2, stub_gpiowrite_byte_request__number_ranges,
+ (ProtobufCMessageInit) stub_gpiowrite_byte_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteRequest.pb-c.h
new file mode 100644
index 000000000..a69934e01
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteRequest.pb-c.h
@@ -0,0 +1,76 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOWriteByteRequest.proto */
+
+#ifndef PROTOBUF_C_StubGPIOWriteByteRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubGPIOWriteByteRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubGPIOWriteByteRequest StubGPIOWriteByteRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubGPIOWriteByteRequest
+{
+ ProtobufCMessage base;
+ /*
+ * A..
+ */
+ char *portid;
+ protobuf_c_boolean has_datatowrite;
+ uint32_t datatowrite;
+};
+#define STUB_GPIOWRITE_BYTE_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_gpiowrite_byte_request__descriptor) \
+ , NULL, 0, 0 }
+
+
+/* StubGPIOWriteByteRequest methods */
+void stub_gpiowrite_byte_request__init
+ (StubGPIOWriteByteRequest *message);
+size_t stub_gpiowrite_byte_request__get_packed_size
+ (const StubGPIOWriteByteRequest *message);
+size_t stub_gpiowrite_byte_request__pack
+ (const StubGPIOWriteByteRequest *message,
+ uint8_t *out);
+size_t stub_gpiowrite_byte_request__pack_to_buffer
+ (const StubGPIOWriteByteRequest *message,
+ ProtobufCBuffer *buffer);
+StubGPIOWriteByteRequest *
+ stub_gpiowrite_byte_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_gpiowrite_byte_request__free_unpacked
+ (StubGPIOWriteByteRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubGPIOWriteByteRequest_Closure)
+ (const StubGPIOWriteByteRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_gpiowrite_byte_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubGPIOWriteByteRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteResponse.pb-c.c
new file mode 100644
index 000000000..ab6b357d9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteResponse.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOWriteByteResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubGPIOWriteByteResponse.pb-c.h"
+void stub_gpiowrite_byte_response__init
+ (StubGPIOWriteByteResponse *message)
+{
+ static const StubGPIOWriteByteResponse init_value = STUB_GPIOWRITE_BYTE_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_gpiowrite_byte_response__get_packed_size
+ (const StubGPIOWriteByteResponse *message)
+{
+ assert(message->base.descriptor == &stub_gpiowrite_byte_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_gpiowrite_byte_response__pack
+ (const StubGPIOWriteByteResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_gpiowrite_byte_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_gpiowrite_byte_response__pack_to_buffer
+ (const StubGPIOWriteByteResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_gpiowrite_byte_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubGPIOWriteByteResponse *
+ stub_gpiowrite_byte_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubGPIOWriteByteResponse *)
+ protobuf_c_message_unpack (&stub_gpiowrite_byte_response__descriptor,
+ allocator, len, data);
+}
+void stub_gpiowrite_byte_response__free_unpacked
+ (StubGPIOWriteByteResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_gpiowrite_byte_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_gpiowrite_byte_response__field_descriptors[3] =
+{
+ {
+ "PortId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOWriteByteResponse, portid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubGPIOWriteByteResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubGPIOWriteByteResponse, has_statusword),
+ offsetof(StubGPIOWriteByteResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_gpiowrite_byte_response__field_indices_by_name[] = {
+ 0, /* field[0] = PortId */
+ 1, /* field[1] = Status */
+ 2, /* field[2] = StatusWord */
+};
+static const ProtobufCIntRange stub_gpiowrite_byte_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor stub_gpiowrite_byte_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubGPIOWriteByteResponse",
+ "StubGPIOWriteByteResponse",
+ "StubGPIOWriteByteResponse",
+ "",
+ sizeof(StubGPIOWriteByteResponse),
+ 3,
+ stub_gpiowrite_byte_response__field_descriptors,
+ stub_gpiowrite_byte_response__field_indices_by_name,
+ 1, stub_gpiowrite_byte_response__number_ranges,
+ (ProtobufCMessageInit) stub_gpiowrite_byte_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteResponse.pb-c.h
new file mode 100644
index 000000000..6995dbc15
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubGPIOWriteByteResponse.pb-c.h
@@ -0,0 +1,83 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubGPIOWriteByteResponse.proto */
+
+#ifndef PROTOBUF_C_StubGPIOWriteByteResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubGPIOWriteByteResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubGPIOWriteByteResponse StubGPIOWriteByteResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubGPIOWriteByteResponse
+{
+ ProtobufCMessage base;
+ /*
+ * A..
+ */
+ char *portid;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_GPIOWRITE_BYTE_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_gpiowrite_byte_response__descriptor) \
+ , NULL, NULL, 0, 0 }
+
+
+/* StubGPIOWriteByteResponse methods */
+void stub_gpiowrite_byte_response__init
+ (StubGPIOWriteByteResponse *message);
+size_t stub_gpiowrite_byte_response__get_packed_size
+ (const StubGPIOWriteByteResponse *message);
+size_t stub_gpiowrite_byte_response__pack
+ (const StubGPIOWriteByteResponse *message,
+ uint8_t *out);
+size_t stub_gpiowrite_byte_response__pack_to_buffer
+ (const StubGPIOWriteByteResponse *message,
+ ProtobufCBuffer *buffer);
+StubGPIOWriteByteResponse *
+ stub_gpiowrite_byte_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_gpiowrite_byte_response__free_unpacked
+ (StubGPIOWriteByteResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubGPIOWriteByteResponse_Closure)
+ (const StubGPIOWriteByteResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_gpiowrite_byte_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubGPIOWriteByteResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionRequest.pb-c.c
new file mode 100644
index 000000000..fba567238
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHWVersionRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubHWVersionRequest.pb-c.h"
+void stub_hwversion_request__init
+ (StubHWVersionRequest *message)
+{
+ static const StubHWVersionRequest init_value = STUB_HWVERSION_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_hwversion_request__get_packed_size
+ (const StubHWVersionRequest *message)
+{
+ assert(message->base.descriptor == &stub_hwversion_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_hwversion_request__pack
+ (const StubHWVersionRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_hwversion_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_hwversion_request__pack_to_buffer
+ (const StubHWVersionRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_hwversion_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubHWVersionRequest *
+ stub_hwversion_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubHWVersionRequest *)
+ protobuf_c_message_unpack (&stub_hwversion_request__descriptor,
+ allocator, len, data);
+}
+void stub_hwversion_request__free_unpacked
+ (StubHWVersionRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_hwversion_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define stub_hwversion_request__field_descriptors NULL
+#define stub_hwversion_request__field_indices_by_name NULL
+#define stub_hwversion_request__number_ranges NULL
+const ProtobufCMessageDescriptor stub_hwversion_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubHWVersionRequest",
+ "StubHWVersionRequest",
+ "StubHWVersionRequest",
+ "",
+ sizeof(StubHWVersionRequest),
+ 0,
+ stub_hwversion_request__field_descriptors,
+ stub_hwversion_request__field_indices_by_name,
+ 0, stub_hwversion_request__number_ranges,
+ (ProtobufCMessageInit) stub_hwversion_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionRequest.pb-c.h
new file mode 100644
index 000000000..017aa8cd2
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHWVersionRequest.proto */
+
+#ifndef PROTOBUF_C_StubHWVersionRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubHWVersionRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubHWVersionRequest StubHWVersionRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubHWVersionRequest
+{
+ ProtobufCMessage base;
+};
+#define STUB_HWVERSION_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_hwversion_request__descriptor) \
+ }
+
+
+/* StubHWVersionRequest methods */
+void stub_hwversion_request__init
+ (StubHWVersionRequest *message);
+size_t stub_hwversion_request__get_packed_size
+ (const StubHWVersionRequest *message);
+size_t stub_hwversion_request__pack
+ (const StubHWVersionRequest *message,
+ uint8_t *out);
+size_t stub_hwversion_request__pack_to_buffer
+ (const StubHWVersionRequest *message,
+ ProtobufCBuffer *buffer);
+StubHWVersionRequest *
+ stub_hwversion_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_hwversion_request__free_unpacked
+ (StubHWVersionRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubHWVersionRequest_Closure)
+ (const StubHWVersionRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_hwversion_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubHWVersionRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionResponse.pb-c.c
new file mode 100644
index 000000000..4aec291a0
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionResponse.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHWVersionResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubHWVersionResponse.pb-c.h"
+void stub_hwversion_response__init
+ (StubHWVersionResponse *message)
+{
+ static const StubHWVersionResponse init_value = STUB_HWVERSION_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_hwversion_response__get_packed_size
+ (const StubHWVersionResponse *message)
+{
+ assert(message->base.descriptor == &stub_hwversion_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_hwversion_response__pack
+ (const StubHWVersionResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_hwversion_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_hwversion_response__pack_to_buffer
+ (const StubHWVersionResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_hwversion_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubHWVersionResponse *
+ stub_hwversion_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubHWVersionResponse *)
+ protobuf_c_message_unpack (&stub_hwversion_response__descriptor,
+ allocator, len, data);
+}
+void stub_hwversion_response__free_unpacked
+ (StubHWVersionResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_hwversion_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_hwversion_response__field_descriptors[4] =
+{
+ {
+ "BRD_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHWVersionResponse, has_brd_id),
+ offsetof(StubHWVersionResponse, brd_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ASSY_ID",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHWVersionResponse, has_assy_id),
+ offsetof(StubHWVersionResponse, assy_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubHWVersionResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHWVersionResponse, has_statusword),
+ offsetof(StubHWVersionResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_hwversion_response__field_indices_by_name[] = {
+ 1, /* field[1] = ASSY_ID */
+ 0, /* field[0] = BRD_ID */
+ 2, /* field[2] = Status */
+ 3, /* field[3] = StatusWord */
+};
+static const ProtobufCIntRange stub_hwversion_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_hwversion_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubHWVersionResponse",
+ "StubHWVersionResponse",
+ "StubHWVersionResponse",
+ "",
+ sizeof(StubHWVersionResponse),
+ 4,
+ stub_hwversion_response__field_descriptors,
+ stub_hwversion_response__field_indices_by_name,
+ 1, stub_hwversion_response__number_ranges,
+ (ProtobufCMessageInit) stub_hwversion_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionResponse.pb-c.h
new file mode 100644
index 000000000..349ff1452
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHWVersionResponse.pb-c.h
@@ -0,0 +1,83 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHWVersionResponse.proto */
+
+#ifndef PROTOBUF_C_StubHWVersionResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubHWVersionResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubHWVersionResponse StubHWVersionResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubHWVersionResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_brd_id;
+ uint32_t brd_id;
+ protobuf_c_boolean has_assy_id;
+ uint32_t assy_id;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_HWVERSION_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_hwversion_response__descriptor) \
+ , 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StubHWVersionResponse methods */
+void stub_hwversion_response__init
+ (StubHWVersionResponse *message);
+size_t stub_hwversion_response__get_packed_size
+ (const StubHWVersionResponse *message);
+size_t stub_hwversion_response__pack
+ (const StubHWVersionResponse *message,
+ uint8_t *out);
+size_t stub_hwversion_response__pack_to_buffer
+ (const StubHWVersionResponse *message,
+ ProtobufCBuffer *buffer);
+StubHWVersionResponse *
+ stub_hwversion_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_hwversion_response__free_unpacked
+ (StubHWVersionResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubHWVersionResponse_Closure)
+ (const StubHWVersionResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_hwversion_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubHWVersionResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterRequest.pb-c.c
new file mode 100644
index 000000000..f77207045
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterRequest.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHeaterRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubHeaterRequest.pb-c.h"
+void stub_heater_request__init
+ (StubHeaterRequest *message)
+{
+ static const StubHeaterRequest init_value = STUB_HEATER_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_heater_request__get_packed_size
+ (const StubHeaterRequest *message)
+{
+ assert(message->base.descriptor == &stub_heater_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_heater_request__pack
+ (const StubHeaterRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_heater_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_heater_request__pack_to_buffer
+ (const StubHeaterRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_heater_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubHeaterRequest *
+ stub_heater_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubHeaterRequest *)
+ protobuf_c_message_unpack (&stub_heater_request__descriptor,
+ allocator, len, data);
+}
+void stub_heater_request__free_unpacked
+ (StubHeaterRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_heater_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_heater_request__field_descriptors[3] =
+{
+ {
+ "HeaterGroupId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeaterRequest, has_heatergroupid),
+ offsetof(StubHeaterRequest, heatergroupid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HeaterGroupOn",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubHeaterRequest, has_heatergroupon),
+ offsetof(StubHeaterRequest, heatergroupon),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HeaterTemperatureReq",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeaterRequest, has_heatertemperaturereq),
+ offsetof(StubHeaterRequest, heatertemperaturereq),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_heater_request__field_indices_by_name[] = {
+ 0, /* field[0] = HeaterGroupId */
+ 1, /* field[1] = HeaterGroupOn */
+ 2, /* field[2] = HeaterTemperatureReq */
+};
+static const ProtobufCIntRange stub_heater_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor stub_heater_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubHeaterRequest",
+ "StubHeaterRequest",
+ "StubHeaterRequest",
+ "",
+ sizeof(StubHeaterRequest),
+ 3,
+ stub_heater_request__field_descriptors,
+ stub_heater_request__field_indices_by_name,
+ 1, stub_heater_request__number_ranges,
+ (ProtobufCMessageInit) stub_heater_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterRequest.pb-c.h
new file mode 100644
index 000000000..6d220df5d
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterRequest.pb-c.h
@@ -0,0 +1,82 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHeaterRequest.proto */
+
+#ifndef PROTOBUF_C_StubHeaterRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubHeaterRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubHeaterRequest StubHeaterRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubHeaterRequest
+{
+ ProtobufCMessage base;
+ /*
+ *0..2
+ */
+ protobuf_c_boolean has_heatergroupid;
+ uint32_t heatergroupid;
+ /*
+ * 1-On 0-Off
+ */
+ protobuf_c_boolean has_heatergroupon;
+ protobuf_c_boolean heatergroupon;
+ protobuf_c_boolean has_heatertemperaturereq;
+ uint32_t heatertemperaturereq;
+};
+#define STUB_HEATER_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_heater_request__descriptor) \
+ , 0, 0, 0, 0, 0, 0 }
+
+
+/* StubHeaterRequest methods */
+void stub_heater_request__init
+ (StubHeaterRequest *message);
+size_t stub_heater_request__get_packed_size
+ (const StubHeaterRequest *message);
+size_t stub_heater_request__pack
+ (const StubHeaterRequest *message,
+ uint8_t *out);
+size_t stub_heater_request__pack_to_buffer
+ (const StubHeaterRequest *message,
+ ProtobufCBuffer *buffer);
+StubHeaterRequest *
+ stub_heater_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_heater_request__free_unpacked
+ (StubHeaterRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubHeaterRequest_Closure)
+ (const StubHeaterRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_heater_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubHeaterRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterResponse.pb-c.c
new file mode 100644
index 000000000..f45ed51b6
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterResponse.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHeaterResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubHeaterResponse.pb-c.h"
+void stub_heater_response__init
+ (StubHeaterResponse *message)
+{
+ static const StubHeaterResponse init_value = STUB_HEATER_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_heater_response__get_packed_size
+ (const StubHeaterResponse *message)
+{
+ assert(message->base.descriptor == &stub_heater_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_heater_response__pack
+ (const StubHeaterResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_heater_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_heater_response__pack_to_buffer
+ (const StubHeaterResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_heater_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubHeaterResponse *
+ stub_heater_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubHeaterResponse *)
+ protobuf_c_message_unpack (&stub_heater_response__descriptor,
+ allocator, len, data);
+}
+void stub_heater_response__free_unpacked
+ (StubHeaterResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_heater_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_heater_response__field_descriptors[4] =
+{
+ {
+ "HeaterGroupId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeaterResponse, has_heatergroupid),
+ offsetof(StubHeaterResponse, heatergroupid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HeaterTemperatureSensor",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeaterResponse, has_heatertemperaturesensor),
+ offsetof(StubHeaterResponse, heatertemperaturesensor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubHeaterResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeaterResponse, has_statusword),
+ offsetof(StubHeaterResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_heater_response__field_indices_by_name[] = {
+ 0, /* field[0] = HeaterGroupId */
+ 1, /* field[1] = HeaterTemperatureSensor */
+ 2, /* field[2] = Status */
+ 3, /* field[3] = StatusWord */
+};
+static const ProtobufCIntRange stub_heater_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_heater_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubHeaterResponse",
+ "StubHeaterResponse",
+ "StubHeaterResponse",
+ "",
+ sizeof(StubHeaterResponse),
+ 4,
+ stub_heater_response__field_descriptors,
+ stub_heater_response__field_indices_by_name,
+ 1, stub_heater_response__number_ranges,
+ (ProtobufCMessageInit) stub_heater_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterResponse.pb-c.h
new file mode 100644
index 000000000..fd37a5ae7
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeaterResponse.pb-c.h
@@ -0,0 +1,86 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHeaterResponse.proto */
+
+#ifndef PROTOBUF_C_StubHeaterResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubHeaterResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubHeaterResponse StubHeaterResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubHeaterResponse
+{
+ ProtobufCMessage base;
+ /*
+ *0..2
+ */
+ protobuf_c_boolean has_heatergroupid;
+ uint32_t heatergroupid;
+ protobuf_c_boolean has_heatertemperaturesensor;
+ uint32_t heatertemperaturesensor;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_HEATER_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_heater_response__descriptor) \
+ , 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StubHeaterResponse methods */
+void stub_heater_response__init
+ (StubHeaterResponse *message);
+size_t stub_heater_response__get_packed_size
+ (const StubHeaterResponse *message);
+size_t stub_heater_response__pack
+ (const StubHeaterResponse *message,
+ uint8_t *out);
+size_t stub_heater_response__pack_to_buffer
+ (const StubHeaterResponse *message,
+ ProtobufCBuffer *buffer);
+StubHeaterResponse *
+ stub_heater_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_heater_response__free_unpacked
+ (StubHeaterResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubHeaterResponse_Closure)
+ (const StubHeaterResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_heater_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubHeaterResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollRequest.pb-c.c
new file mode 100644
index 000000000..9e17c8153
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHeatingTestPollRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubHeatingTestPollRequest.pb-c.h"
+void stub_heating_test_poll_request__init
+ (StubHeatingTestPollRequest *message)
+{
+ static const StubHeatingTestPollRequest init_value = STUB_HEATING_TEST_POLL_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_heating_test_poll_request__get_packed_size
+ (const StubHeatingTestPollRequest *message)
+{
+ assert(message->base.descriptor == &stub_heating_test_poll_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_heating_test_poll_request__pack
+ (const StubHeatingTestPollRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_heating_test_poll_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_heating_test_poll_request__pack_to_buffer
+ (const StubHeatingTestPollRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_heating_test_poll_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubHeatingTestPollRequest *
+ stub_heating_test_poll_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubHeatingTestPollRequest *)
+ protobuf_c_message_unpack (&stub_heating_test_poll_request__descriptor,
+ allocator, len, data);
+}
+void stub_heating_test_poll_request__free_unpacked
+ (StubHeatingTestPollRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_heating_test_poll_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define stub_heating_test_poll_request__field_descriptors NULL
+#define stub_heating_test_poll_request__field_indices_by_name NULL
+#define stub_heating_test_poll_request__number_ranges NULL
+const ProtobufCMessageDescriptor stub_heating_test_poll_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubHeatingTestPollRequest",
+ "StubHeatingTestPollRequest",
+ "StubHeatingTestPollRequest",
+ "",
+ sizeof(StubHeatingTestPollRequest),
+ 0,
+ stub_heating_test_poll_request__field_descriptors,
+ stub_heating_test_poll_request__field_indices_by_name,
+ 0, stub_heating_test_poll_request__number_ranges,
+ (ProtobufCMessageInit) stub_heating_test_poll_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollRequest.pb-c.h
new file mode 100644
index 000000000..4581522ed
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHeatingTestPollRequest.proto */
+
+#ifndef PROTOBUF_C_StubHeatingTestPollRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubHeatingTestPollRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubHeatingTestPollRequest StubHeatingTestPollRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubHeatingTestPollRequest
+{
+ ProtobufCMessage base;
+};
+#define STUB_HEATING_TEST_POLL_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_heating_test_poll_request__descriptor) \
+ }
+
+
+/* StubHeatingTestPollRequest methods */
+void stub_heating_test_poll_request__init
+ (StubHeatingTestPollRequest *message);
+size_t stub_heating_test_poll_request__get_packed_size
+ (const StubHeatingTestPollRequest *message);
+size_t stub_heating_test_poll_request__pack
+ (const StubHeatingTestPollRequest *message,
+ uint8_t *out);
+size_t stub_heating_test_poll_request__pack_to_buffer
+ (const StubHeatingTestPollRequest *message,
+ ProtobufCBuffer *buffer);
+StubHeatingTestPollRequest *
+ stub_heating_test_poll_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_heating_test_poll_request__free_unpacked
+ (StubHeatingTestPollRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubHeatingTestPollRequest_Closure)
+ (const StubHeatingTestPollRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_heating_test_poll_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubHeatingTestPollRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollResponse.pb-c.c
new file mode 100644
index 000000000..6a6a33409
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollResponse.pb-c.c
@@ -0,0 +1,183 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHeatingTestPollResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubHeatingTestPollResponse.pb-c.h"
+void stub_heating_test_poll_response__init
+ (StubHeatingTestPollResponse *message)
+{
+ static const StubHeatingTestPollResponse init_value = STUB_HEATING_TEST_POLL_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_heating_test_poll_response__get_packed_size
+ (const StubHeatingTestPollResponse *message)
+{
+ assert(message->base.descriptor == &stub_heating_test_poll_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_heating_test_poll_response__pack
+ (const StubHeatingTestPollResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_heating_test_poll_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_heating_test_poll_response__pack_to_buffer
+ (const StubHeatingTestPollResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_heating_test_poll_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubHeatingTestPollResponse *
+ stub_heating_test_poll_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubHeatingTestPollResponse *)
+ protobuf_c_message_unpack (&stub_heating_test_poll_response__descriptor,
+ allocator, len, data);
+}
+void stub_heating_test_poll_response__free_unpacked
+ (StubHeatingTestPollResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_heating_test_poll_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_heating_test_poll_response__field_descriptors[8] =
+{
+ {
+ "HeaterGroupId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeatingTestPollResponse, has_heatergroupid),
+ offsetof(StubHeatingTestPollResponse, heatergroupid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Zone1Temp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeatingTestPollResponse, has_zone1temp),
+ offsetof(StubHeatingTestPollResponse, zone1temp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Zone2Temp",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeatingTestPollResponse, has_zone2temp),
+ offsetof(StubHeatingTestPollResponse, zone2temp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Heater1Active",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubHeatingTestPollResponse, has_heater1active),
+ offsetof(StubHeatingTestPollResponse, heater1active),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Heater2Active",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubHeatingTestPollResponse, has_heater2active),
+ offsetof(StubHeatingTestPollResponse, heater2active),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Heater1Percentage",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeatingTestPollResponse, has_heater1percentage),
+ offsetof(StubHeatingTestPollResponse, heater1percentage),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Heater2Percentage",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeatingTestPollResponse, has_heater2percentage),
+ offsetof(StubHeatingTestPollResponse, heater2percentage),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "InfoMessage",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubHeatingTestPollResponse, infomessage),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_heating_test_poll_response__field_indices_by_name[] = {
+ 3, /* field[3] = Heater1Active */
+ 5, /* field[5] = Heater1Percentage */
+ 4, /* field[4] = Heater2Active */
+ 6, /* field[6] = Heater2Percentage */
+ 0, /* field[0] = HeaterGroupId */
+ 7, /* field[7] = InfoMessage */
+ 1, /* field[1] = Zone1Temp */
+ 2, /* field[2] = Zone2Temp */
+};
+static const ProtobufCIntRange stub_heating_test_poll_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor stub_heating_test_poll_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubHeatingTestPollResponse",
+ "StubHeatingTestPollResponse",
+ "StubHeatingTestPollResponse",
+ "",
+ sizeof(StubHeatingTestPollResponse),
+ 8,
+ stub_heating_test_poll_response__field_descriptors,
+ stub_heating_test_poll_response__field_indices_by_name,
+ 1, stub_heating_test_poll_response__number_ranges,
+ (ProtobufCMessageInit) stub_heating_test_poll_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollResponse.pb-c.h
new file mode 100644
index 000000000..6974a5be8
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestPollResponse.pb-c.h
@@ -0,0 +1,88 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHeatingTestPollResponse.proto */
+
+#ifndef PROTOBUF_C_StubHeatingTestPollResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubHeatingTestPollResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubHeatingTestPollResponse StubHeatingTestPollResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubHeatingTestPollResponse
+{
+ ProtobufCMessage base;
+ /*
+ *0..2
+ */
+ protobuf_c_boolean has_heatergroupid;
+ uint32_t heatergroupid;
+ protobuf_c_boolean has_zone1temp;
+ uint32_t zone1temp;
+ protobuf_c_boolean has_zone2temp;
+ uint32_t zone2temp;
+ protobuf_c_boolean has_heater1active;
+ protobuf_c_boolean heater1active;
+ protobuf_c_boolean has_heater2active;
+ protobuf_c_boolean heater2active;
+ protobuf_c_boolean has_heater1percentage;
+ uint32_t heater1percentage;
+ protobuf_c_boolean has_heater2percentage;
+ uint32_t heater2percentage;
+ char *infomessage;
+};
+#define STUB_HEATING_TEST_POLL_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_heating_test_poll_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL }
+
+
+/* StubHeatingTestPollResponse methods */
+void stub_heating_test_poll_response__init
+ (StubHeatingTestPollResponse *message);
+size_t stub_heating_test_poll_response__get_packed_size
+ (const StubHeatingTestPollResponse *message);
+size_t stub_heating_test_poll_response__pack
+ (const StubHeatingTestPollResponse *message,
+ uint8_t *out);
+size_t stub_heating_test_poll_response__pack_to_buffer
+ (const StubHeatingTestPollResponse *message,
+ ProtobufCBuffer *buffer);
+StubHeatingTestPollResponse *
+ stub_heating_test_poll_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_heating_test_poll_response__free_unpacked
+ (StubHeatingTestPollResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubHeatingTestPollResponse_Closure)
+ (const StubHeatingTestPollResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_heating_test_poll_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubHeatingTestPollResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestRequest.pb-c.c
new file mode 100644
index 000000000..e35ae9def
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestRequest.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHeatingTestRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubHeatingTestRequest.pb-c.h"
+void stub_heating_test_request__init
+ (StubHeatingTestRequest *message)
+{
+ static const StubHeatingTestRequest init_value = STUB_HEATING_TEST_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_heating_test_request__get_packed_size
+ (const StubHeatingTestRequest *message)
+{
+ assert(message->base.descriptor == &stub_heating_test_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_heating_test_request__pack
+ (const StubHeatingTestRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_heating_test_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_heating_test_request__pack_to_buffer
+ (const StubHeatingTestRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_heating_test_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubHeatingTestRequest *
+ stub_heating_test_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubHeatingTestRequest *)
+ protobuf_c_message_unpack (&stub_heating_test_request__descriptor,
+ allocator, len, data);
+}
+void stub_heating_test_request__free_unpacked
+ (StubHeatingTestRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_heating_test_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_heating_test_request__field_descriptors[4] =
+{
+ {
+ "DryerZone1Temp",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(StubHeatingTestRequest, has_dryerzone1temp),
+ offsetof(StubHeatingTestRequest, dryerzone1temp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DryerZone2Temp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(StubHeatingTestRequest, has_dryerzone2temp),
+ offsetof(StubHeatingTestRequest, dryerzone2temp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HardwarePidControl1",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(StubHeatingTestRequest, hardwarepidcontrol1),
+ &hardware_pid_control__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HardwarePidControl2",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(StubHeatingTestRequest, hardwarepidcontrol2),
+ &hardware_pid_control__descriptor,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_heating_test_request__field_indices_by_name[] = {
+ 0, /* field[0] = DryerZone1Temp */
+ 1, /* field[1] = DryerZone2Temp */
+ 2, /* field[2] = HardwarePidControl1 */
+ 3, /* field[3] = HardwarePidControl2 */
+};
+static const ProtobufCIntRange stub_heating_test_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_heating_test_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubHeatingTestRequest",
+ "StubHeatingTestRequest",
+ "StubHeatingTestRequest",
+ "",
+ sizeof(StubHeatingTestRequest),
+ 4,
+ stub_heating_test_request__field_descriptors,
+ stub_heating_test_request__field_indices_by_name,
+ 1, stub_heating_test_request__number_ranges,
+ (ProtobufCMessageInit) stub_heating_test_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestRequest.pb-c.h
new file mode 100644
index 000000000..c0cfb95b7
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestRequest.pb-c.h
@@ -0,0 +1,77 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHeatingTestRequest.proto */
+
+#ifndef PROTOBUF_C_StubHeatingTestRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubHeatingTestRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+#include "HardwarePidControl.pb-c.h"
+
+typedef struct _StubHeatingTestRequest StubHeatingTestRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubHeatingTestRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_dryerzone1temp;
+ double dryerzone1temp;
+ protobuf_c_boolean has_dryerzone2temp;
+ double dryerzone2temp;
+ HardwarePidControl *hardwarepidcontrol1;
+ HardwarePidControl *hardwarepidcontrol2;
+};
+#define STUB_HEATING_TEST_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_heating_test_request__descriptor) \
+ , 0, 0, 0, 0, NULL, NULL }
+
+
+/* StubHeatingTestRequest methods */
+void stub_heating_test_request__init
+ (StubHeatingTestRequest *message);
+size_t stub_heating_test_request__get_packed_size
+ (const StubHeatingTestRequest *message);
+size_t stub_heating_test_request__pack
+ (const StubHeatingTestRequest *message,
+ uint8_t *out);
+size_t stub_heating_test_request__pack_to_buffer
+ (const StubHeatingTestRequest *message,
+ ProtobufCBuffer *buffer);
+StubHeatingTestRequest *
+ stub_heating_test_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_heating_test_request__free_unpacked
+ (StubHeatingTestRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubHeatingTestRequest_Closure)
+ (const StubHeatingTestRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_heating_test_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubHeatingTestRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestResponse.pb-c.c
new file mode 100644
index 000000000..b6a117fc4
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestResponse.pb-c.c
@@ -0,0 +1,170 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHeatingTestResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubHeatingTestResponse.pb-c.h"
+void stub_heating_test_response__init
+ (StubHeatingTestResponse *message)
+{
+ static const StubHeatingTestResponse init_value = STUB_HEATING_TEST_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_heating_test_response__get_packed_size
+ (const StubHeatingTestResponse *message)
+{
+ assert(message->base.descriptor == &stub_heating_test_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_heating_test_response__pack
+ (const StubHeatingTestResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_heating_test_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_heating_test_response__pack_to_buffer
+ (const StubHeatingTestResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_heating_test_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubHeatingTestResponse *
+ stub_heating_test_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubHeatingTestResponse *)
+ protobuf_c_message_unpack (&stub_heating_test_response__descriptor,
+ allocator, len, data);
+}
+void stub_heating_test_response__free_unpacked
+ (StubHeatingTestResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_heating_test_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_heating_test_response__field_descriptors[7] =
+{
+ {
+ "HeaterGroupId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeatingTestResponse, has_heatergroupid),
+ offsetof(StubHeatingTestResponse, heatergroupid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Zone1Temp",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeatingTestResponse, has_zone1temp),
+ offsetof(StubHeatingTestResponse, zone1temp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Zone2Temp",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeatingTestResponse, has_zone2temp),
+ offsetof(StubHeatingTestResponse, zone2temp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Heater1Active",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubHeatingTestResponse, has_heater1active),
+ offsetof(StubHeatingTestResponse, heater1active),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Heater2Active",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubHeatingTestResponse, has_heater2active),
+ offsetof(StubHeatingTestResponse, heater2active),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Heater1Percentage",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeatingTestResponse, has_heater1percentage),
+ offsetof(StubHeatingTestResponse, heater1percentage),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Heater2Percentage",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubHeatingTestResponse, has_heater2percentage),
+ offsetof(StubHeatingTestResponse, heater2percentage),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_heating_test_response__field_indices_by_name[] = {
+ 3, /* field[3] = Heater1Active */
+ 5, /* field[5] = Heater1Percentage */
+ 4, /* field[4] = Heater2Active */
+ 6, /* field[6] = Heater2Percentage */
+ 0, /* field[0] = HeaterGroupId */
+ 1, /* field[1] = Zone1Temp */
+ 2, /* field[2] = Zone2Temp */
+};
+static const ProtobufCIntRange stub_heating_test_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor stub_heating_test_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubHeatingTestResponse",
+ "StubHeatingTestResponse",
+ "StubHeatingTestResponse",
+ "",
+ sizeof(StubHeatingTestResponse),
+ 7,
+ stub_heating_test_response__field_descriptors,
+ stub_heating_test_response__field_indices_by_name,
+ 1, stub_heating_test_response__number_ranges,
+ (ProtobufCMessageInit) stub_heating_test_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestResponse.pb-c.h
new file mode 100644
index 000000000..ca26a48e1
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubHeatingTestResponse.pb-c.h
@@ -0,0 +1,87 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubHeatingTestResponse.proto */
+
+#ifndef PROTOBUF_C_StubHeatingTestResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubHeatingTestResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubHeatingTestResponse StubHeatingTestResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubHeatingTestResponse
+{
+ ProtobufCMessage base;
+ /*
+ *0..2
+ */
+ protobuf_c_boolean has_heatergroupid;
+ uint32_t heatergroupid;
+ protobuf_c_boolean has_zone1temp;
+ uint32_t zone1temp;
+ protobuf_c_boolean has_zone2temp;
+ uint32_t zone2temp;
+ protobuf_c_boolean has_heater1active;
+ protobuf_c_boolean heater1active;
+ protobuf_c_boolean has_heater2active;
+ protobuf_c_boolean heater2active;
+ protobuf_c_boolean has_heater1percentage;
+ uint32_t heater1percentage;
+ protobuf_c_boolean has_heater2percentage;
+ uint32_t heater2percentage;
+};
+#define STUB_HEATING_TEST_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_heating_test_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubHeatingTestResponse methods */
+void stub_heating_test_response__init
+ (StubHeatingTestResponse *message);
+size_t stub_heating_test_response__get_packed_size
+ (const StubHeatingTestResponse *message);
+size_t stub_heating_test_response__pack
+ (const StubHeatingTestResponse *message,
+ uint8_t *out);
+size_t stub_heating_test_response__pack_to_buffer
+ (const StubHeatingTestResponse *message,
+ ProtobufCBuffer *buffer);
+StubHeatingTestResponse *
+ stub_heating_test_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_heating_test_response__free_unpacked
+ (StubHeatingTestResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubHeatingTestResponse_Closure)
+ (const StubHeatingTestResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_heating_test_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubHeatingTestResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverRequest.pb-c.c
new file mode 100644
index 000000000..3771b60a9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverRequest.pb-c.c
@@ -0,0 +1,339 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubL6470DriverRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubL6470DriverRequest.pb-c.h"
+void stub_l6470_driver_request__init
+ (StubL6470DriverRequest *message)
+{
+ static const StubL6470DriverRequest init_value = STUB_L6470_DRIVER_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_l6470_driver_request__get_packed_size
+ (const StubL6470DriverRequest *message)
+{
+ assert(message->base.descriptor == &stub_l6470_driver_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_l6470_driver_request__pack
+ (const StubL6470DriverRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_l6470_driver_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_l6470_driver_request__pack_to_buffer
+ (const StubL6470DriverRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_l6470_driver_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubL6470DriverRequest *
+ stub_l6470_driver_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubL6470DriverRequest *)
+ protobuf_c_message_unpack (&stub_l6470_driver_request__descriptor,
+ allocator, len, data);
+}
+void stub_l6470_driver_request__free_unpacked
+ (StubL6470DriverRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_l6470_driver_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_l6470_driver_request__field_descriptors[20] =
+{
+ {
+ "Run_Value",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverRequest, has_run_value),
+ offsetof(StubL6470DriverRequest, run_value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Mov_Value",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverRequest, has_mov_value),
+ offsetof(StubL6470DriverRequest, mov_value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Direction",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubL6470DriverRequest, has_direction),
+ offsetof(StubL6470DriverRequest, direction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Time_2_Change_Direction",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverRequest, has_time_2_change_direction),
+ offsetof(StubL6470DriverRequest, time_2_change_direction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Display_Tx_ON_LCD",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubL6470DriverRequest, has_display_tx_on_lcd),
+ offsetof(StubL6470DriverRequest, display_tx_on_lcd),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Display_Rx_on_LCD",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubL6470DriverRequest, has_display_rx_on_lcd),
+ offsetof(StubL6470DriverRequest, display_rx_on_lcd),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Init_MicroStep",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverRequest, has_init_microstep),
+ offsetof(StubL6470DriverRequest, init_microstep),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Init_Acc",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverRequest, has_init_acc),
+ offsetof(StubL6470DriverRequest, init_acc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Init_Dec",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverRequest, has_init_dec),
+ offsetof(StubL6470DriverRequest, init_dec),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestBool_1",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubL6470DriverRequest, has_testbool_1),
+ offsetof(StubL6470DriverRequest, testbool_1),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestBool_2",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubL6470DriverRequest, has_testbool_2),
+ offsetof(StubL6470DriverRequest, testbool_2),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestBool_3",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubL6470DriverRequest, has_testbool_3),
+ offsetof(StubL6470DriverRequest, testbool_3),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestBool_4",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubL6470DriverRequest, has_testbool_4),
+ offsetof(StubL6470DriverRequest, testbool_4),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestBool_5",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubL6470DriverRequest, has_testbool_5),
+ offsetof(StubL6470DriverRequest, testbool_5),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestUint32_1",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverRequest, has_testuint32_1),
+ offsetof(StubL6470DriverRequest, testuint32_1),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestUint32_2",
+ 16,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverRequest, has_testuint32_2),
+ offsetof(StubL6470DriverRequest, testuint32_2),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestUint32_3",
+ 17,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverRequest, has_testuint32_3),
+ offsetof(StubL6470DriverRequest, testuint32_3),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestUint32_4",
+ 18,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverRequest, has_testuint32_4),
+ offsetof(StubL6470DriverRequest, testuint32_4),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestUint32_5",
+ 19,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverRequest, has_testuint32_5),
+ offsetof(StubL6470DriverRequest, testuint32_5),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestUint32_6",
+ 20,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverRequest, has_testuint32_6),
+ offsetof(StubL6470DriverRequest, testuint32_6),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_l6470_driver_request__field_indices_by_name[] = {
+ 2, /* field[2] = Direction */
+ 5, /* field[5] = Display_Rx_on_LCD */
+ 4, /* field[4] = Display_Tx_ON_LCD */
+ 7, /* field[7] = Init_Acc */
+ 8, /* field[8] = Init_Dec */
+ 6, /* field[6] = Init_MicroStep */
+ 1, /* field[1] = Mov_Value */
+ 0, /* field[0] = Run_Value */
+ 9, /* field[9] = TestBool_1 */
+ 10, /* field[10] = TestBool_2 */
+ 11, /* field[11] = TestBool_3 */
+ 12, /* field[12] = TestBool_4 */
+ 13, /* field[13] = TestBool_5 */
+ 14, /* field[14] = TestUint32_1 */
+ 15, /* field[15] = TestUint32_2 */
+ 16, /* field[16] = TestUint32_3 */
+ 17, /* field[17] = TestUint32_4 */
+ 18, /* field[18] = TestUint32_5 */
+ 19, /* field[19] = TestUint32_6 */
+ 3, /* field[3] = Time_2_Change_Direction */
+};
+static const ProtobufCIntRange stub_l6470_driver_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 20 }
+};
+const ProtobufCMessageDescriptor stub_l6470_driver_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubL6470DriverRequest",
+ "StubL6470DriverRequest",
+ "StubL6470DriverRequest",
+ "",
+ sizeof(StubL6470DriverRequest),
+ 20,
+ stub_l6470_driver_request__field_descriptors,
+ stub_l6470_driver_request__field_indices_by_name,
+ 1, stub_l6470_driver_request__number_ranges,
+ (ProtobufCMessageInit) stub_l6470_driver_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverRequest.pb-c.h
new file mode 100644
index 000000000..ee4e261c9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverRequest.pb-c.h
@@ -0,0 +1,110 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubL6470DriverRequest.proto */
+
+#ifndef PROTOBUF_C_StubL6470DriverRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubL6470DriverRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubL6470DriverRequest StubL6470DriverRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubL6470DriverRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_run_value;
+ uint32_t run_value;
+ protobuf_c_boolean has_mov_value;
+ uint32_t mov_value;
+ protobuf_c_boolean has_direction;
+ protobuf_c_boolean direction;
+ protobuf_c_boolean has_time_2_change_direction;
+ uint32_t time_2_change_direction;
+ protobuf_c_boolean has_display_tx_on_lcd;
+ protobuf_c_boolean display_tx_on_lcd;
+ protobuf_c_boolean has_display_rx_on_lcd;
+ protobuf_c_boolean display_rx_on_lcd;
+ protobuf_c_boolean has_init_microstep;
+ uint32_t init_microstep;
+ protobuf_c_boolean has_init_acc;
+ uint32_t init_acc;
+ protobuf_c_boolean has_init_dec;
+ uint32_t init_dec;
+ protobuf_c_boolean has_testbool_1;
+ protobuf_c_boolean testbool_1;
+ protobuf_c_boolean has_testbool_2;
+ protobuf_c_boolean testbool_2;
+ protobuf_c_boolean has_testbool_3;
+ protobuf_c_boolean testbool_3;
+ protobuf_c_boolean has_testbool_4;
+ protobuf_c_boolean testbool_4;
+ protobuf_c_boolean has_testbool_5;
+ protobuf_c_boolean testbool_5;
+ protobuf_c_boolean has_testuint32_1;
+ uint32_t testuint32_1;
+ protobuf_c_boolean has_testuint32_2;
+ uint32_t testuint32_2;
+ protobuf_c_boolean has_testuint32_3;
+ uint32_t testuint32_3;
+ protobuf_c_boolean has_testuint32_4;
+ uint32_t testuint32_4;
+ protobuf_c_boolean has_testuint32_5;
+ uint32_t testuint32_5;
+ protobuf_c_boolean has_testuint32_6;
+ uint32_t testuint32_6;
+};
+#define STUB_L6470_DRIVER_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_l6470_driver_request__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubL6470DriverRequest methods */
+void stub_l6470_driver_request__init
+ (StubL6470DriverRequest *message);
+size_t stub_l6470_driver_request__get_packed_size
+ (const StubL6470DriverRequest *message);
+size_t stub_l6470_driver_request__pack
+ (const StubL6470DriverRequest *message,
+ uint8_t *out);
+size_t stub_l6470_driver_request__pack_to_buffer
+ (const StubL6470DriverRequest *message,
+ ProtobufCBuffer *buffer);
+StubL6470DriverRequest *
+ stub_l6470_driver_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_l6470_driver_request__free_unpacked
+ (StubL6470DriverRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubL6470DriverRequest_Closure)
+ (const StubL6470DriverRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_l6470_driver_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubL6470DriverRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverResponse.pb-c.c
new file mode 100644
index 000000000..b129bb930
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverResponse.pb-c.c
@@ -0,0 +1,274 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubL6470DriverResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubL6470DriverResponse.pb-c.h"
+void stub_l6470_driver_response__init
+ (StubL6470DriverResponse *message)
+{
+ static const StubL6470DriverResponse init_value = STUB_L6470_DRIVER_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_l6470_driver_response__get_packed_size
+ (const StubL6470DriverResponse *message)
+{
+ assert(message->base.descriptor == &stub_l6470_driver_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_l6470_driver_response__pack
+ (const StubL6470DriverResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_l6470_driver_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_l6470_driver_response__pack_to_buffer
+ (const StubL6470DriverResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_l6470_driver_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubL6470DriverResponse *
+ stub_l6470_driver_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubL6470DriverResponse *)
+ protobuf_c_message_unpack (&stub_l6470_driver_response__descriptor,
+ allocator, len, data);
+}
+void stub_l6470_driver_response__free_unpacked
+ (StubL6470DriverResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_l6470_driver_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_l6470_driver_response__field_descriptors[15] =
+{
+ {
+ "Run_Value",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverResponse, has_run_value),
+ offsetof(StubL6470DriverResponse, run_value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Mov_Value",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverResponse, has_mov_value),
+ offsetof(StubL6470DriverResponse, mov_value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestBool_1",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubL6470DriverResponse, has_testbool_1),
+ offsetof(StubL6470DriverResponse, testbool_1),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestBool_2",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubL6470DriverResponse, has_testbool_2),
+ offsetof(StubL6470DriverResponse, testbool_2),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestBool_3",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubL6470DriverResponse, has_testbool_3),
+ offsetof(StubL6470DriverResponse, testbool_3),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestBool_4",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubL6470DriverResponse, has_testbool_4),
+ offsetof(StubL6470DriverResponse, testbool_4),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestBool_5",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubL6470DriverResponse, has_testbool_5),
+ offsetof(StubL6470DriverResponse, testbool_5),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestUint32_1",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverResponse, has_testuint32_1),
+ offsetof(StubL6470DriverResponse, testuint32_1),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestUint32_2",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverResponse, has_testuint32_2),
+ offsetof(StubL6470DriverResponse, testuint32_2),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestUint32_3",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverResponse, has_testuint32_3),
+ offsetof(StubL6470DriverResponse, testuint32_3),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestUint32_4",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverResponse, has_testuint32_4),
+ offsetof(StubL6470DriverResponse, testuint32_4),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestUint32_5",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverResponse, has_testuint32_5),
+ offsetof(StubL6470DriverResponse, testuint32_5),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TestUint32_6",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverResponse, has_testuint32_6),
+ offsetof(StubL6470DriverResponse, testuint32_6),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubL6470DriverResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubL6470DriverResponse, has_statusword),
+ offsetof(StubL6470DriverResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_l6470_driver_response__field_indices_by_name[] = {
+ 1, /* field[1] = Mov_Value */
+ 0, /* field[0] = Run_Value */
+ 13, /* field[13] = Status */
+ 14, /* field[14] = StatusWord */
+ 2, /* field[2] = TestBool_1 */
+ 3, /* field[3] = TestBool_2 */
+ 4, /* field[4] = TestBool_3 */
+ 5, /* field[5] = TestBool_4 */
+ 6, /* field[6] = TestBool_5 */
+ 7, /* field[7] = TestUint32_1 */
+ 8, /* field[8] = TestUint32_2 */
+ 9, /* field[9] = TestUint32_3 */
+ 10, /* field[10] = TestUint32_4 */
+ 11, /* field[11] = TestUint32_5 */
+ 12, /* field[12] = TestUint32_6 */
+};
+static const ProtobufCIntRange stub_l6470_driver_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 15 }
+};
+const ProtobufCMessageDescriptor stub_l6470_driver_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubL6470DriverResponse",
+ "StubL6470DriverResponse",
+ "StubL6470DriverResponse",
+ "",
+ sizeof(StubL6470DriverResponse),
+ 15,
+ stub_l6470_driver_response__field_descriptors,
+ stub_l6470_driver_response__field_indices_by_name,
+ 1, stub_l6470_driver_response__number_ranges,
+ (ProtobufCMessageInit) stub_l6470_driver_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverResponse.pb-c.h
new file mode 100644
index 000000000..ca18da2a9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubL6470DriverResponse.pb-c.h
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubL6470DriverResponse.proto */
+
+#ifndef PROTOBUF_C_StubL6470DriverResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubL6470DriverResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubL6470DriverResponse StubL6470DriverResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubL6470DriverResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_run_value;
+ uint32_t run_value;
+ protobuf_c_boolean has_mov_value;
+ uint32_t mov_value;
+ protobuf_c_boolean has_testbool_1;
+ protobuf_c_boolean testbool_1;
+ protobuf_c_boolean has_testbool_2;
+ protobuf_c_boolean testbool_2;
+ protobuf_c_boolean has_testbool_3;
+ protobuf_c_boolean testbool_3;
+ protobuf_c_boolean has_testbool_4;
+ protobuf_c_boolean testbool_4;
+ protobuf_c_boolean has_testbool_5;
+ protobuf_c_boolean testbool_5;
+ protobuf_c_boolean has_testuint32_1;
+ uint32_t testuint32_1;
+ protobuf_c_boolean has_testuint32_2;
+ uint32_t testuint32_2;
+ protobuf_c_boolean has_testuint32_3;
+ uint32_t testuint32_3;
+ protobuf_c_boolean has_testuint32_4;
+ uint32_t testuint32_4;
+ protobuf_c_boolean has_testuint32_5;
+ uint32_t testuint32_5;
+ protobuf_c_boolean has_testuint32_6;
+ uint32_t testuint32_6;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_L6470_DRIVER_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_l6470_driver_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StubL6470DriverResponse methods */
+void stub_l6470_driver_response__init
+ (StubL6470DriverResponse *message);
+size_t stub_l6470_driver_response__get_packed_size
+ (const StubL6470DriverResponse *message);
+size_t stub_l6470_driver_response__pack
+ (const StubL6470DriverResponse *message,
+ uint8_t *out);
+size_t stub_l6470_driver_response__pack_to_buffer
+ (const StubL6470DriverResponse *message,
+ ProtobufCBuffer *buffer);
+StubL6470DriverResponse *
+ stub_l6470_driver_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_l6470_driver_response__free_unpacked
+ (StubL6470DriverResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubL6470DriverResponse_Closure)
+ (const StubL6470DriverResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_l6470_driver_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubL6470DriverResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderRequest.pb-c.c
new file mode 100644
index 000000000..cb95c4718
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderRequest.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorEncoderRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorEncoderRequest.pb-c.h"
+void stub_motor_encoder_request__init
+ (StubMotorEncoderRequest *message)
+{
+ static const StubMotorEncoderRequest init_value = STUB_MOTOR_ENCODER_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_motor_encoder_request__get_packed_size
+ (const StubMotorEncoderRequest *message)
+{
+ assert(message->base.descriptor == &stub_motor_encoder_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_encoder_request__pack
+ (const StubMotorEncoderRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_encoder_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_encoder_request__pack_to_buffer
+ (const StubMotorEncoderRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_encoder_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorEncoderRequest *
+ stub_motor_encoder_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorEncoderRequest *)
+ protobuf_c_message_unpack (&stub_motor_encoder_request__descriptor,
+ allocator, len, data);
+}
+void stub_motor_encoder_request__free_unpacked
+ (StubMotorEncoderRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_encoder_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_encoder_request__field_descriptors[4] =
+{
+ {
+ "MotorId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorEncoderRequest, has_motorid),
+ offsetof(StubMotorEncoderRequest, motorid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ReadEncSpeed",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorEncoderRequest, has_readencspeed),
+ offsetof(StubMotorEncoderRequest, readencspeed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ReadDirection",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorEncoderRequest, has_readdirection),
+ offsetof(StubMotorEncoderRequest, readdirection),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Motion_Control",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorEncoderRequest, has_motion_control),
+ offsetof(StubMotorEncoderRequest, motion_control),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_encoder_request__field_indices_by_name[] = {
+ 3, /* field[3] = Motion_Control */
+ 0, /* field[0] = MotorId */
+ 2, /* field[2] = ReadDirection */
+ 1, /* field[1] = ReadEncSpeed */
+};
+static const ProtobufCIntRange stub_motor_encoder_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_motor_encoder_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorEncoderRequest",
+ "StubMotorEncoderRequest",
+ "StubMotorEncoderRequest",
+ "",
+ sizeof(StubMotorEncoderRequest),
+ 4,
+ stub_motor_encoder_request__field_descriptors,
+ stub_motor_encoder_request__field_indices_by_name,
+ 1, stub_motor_encoder_request__number_ranges,
+ (ProtobufCMessageInit) stub_motor_encoder_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderRequest.pb-c.h
new file mode 100644
index 000000000..ba7151b89
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderRequest.pb-c.h
@@ -0,0 +1,87 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorEncoderRequest.proto */
+
+#ifndef PROTOBUF_C_StubMotorEncoderRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorEncoderRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorEncoderRequest StubMotorEncoderRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorEncoderRequest
+{
+ ProtobufCMessage base;
+ /*
+ *0..8
+ */
+ protobuf_c_boolean has_motorid;
+ uint32_t motorid;
+ protobuf_c_boolean has_readencspeed;
+ protobuf_c_boolean readencspeed;
+ /*
+ * 1-cw 0-ccw
+ */
+ protobuf_c_boolean has_readdirection;
+ protobuf_c_boolean readdirection;
+ /*
+ * close loop using the encoder
+ */
+ protobuf_c_boolean has_motion_control;
+ protobuf_c_boolean motion_control;
+};
+#define STUB_MOTOR_ENCODER_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_encoder_request__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubMotorEncoderRequest methods */
+void stub_motor_encoder_request__init
+ (StubMotorEncoderRequest *message);
+size_t stub_motor_encoder_request__get_packed_size
+ (const StubMotorEncoderRequest *message);
+size_t stub_motor_encoder_request__pack
+ (const StubMotorEncoderRequest *message,
+ uint8_t *out);
+size_t stub_motor_encoder_request__pack_to_buffer
+ (const StubMotorEncoderRequest *message,
+ ProtobufCBuffer *buffer);
+StubMotorEncoderRequest *
+ stub_motor_encoder_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_encoder_request__free_unpacked
+ (StubMotorEncoderRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorEncoderRequest_Closure)
+ (const StubMotorEncoderRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_encoder_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorEncoderRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderResponse.pb-c.c
new file mode 100644
index 000000000..5204790a0
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderResponse.pb-c.c
@@ -0,0 +1,157 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorEncoderResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorEncoderResponse.pb-c.h"
+void stub_motor_encoder_response__init
+ (StubMotorEncoderResponse *message)
+{
+ static const StubMotorEncoderResponse init_value = STUB_MOTOR_ENCODER_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_motor_encoder_response__get_packed_size
+ (const StubMotorEncoderResponse *message)
+{
+ assert(message->base.descriptor == &stub_motor_encoder_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_encoder_response__pack
+ (const StubMotorEncoderResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_encoder_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_encoder_response__pack_to_buffer
+ (const StubMotorEncoderResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_encoder_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorEncoderResponse *
+ stub_motor_encoder_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorEncoderResponse *)
+ protobuf_c_message_unpack (&stub_motor_encoder_response__descriptor,
+ allocator, len, data);
+}
+void stub_motor_encoder_response__free_unpacked
+ (StubMotorEncoderResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_encoder_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_encoder_response__field_descriptors[6] =
+{
+ {
+ "EncoderId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorEncoderResponse, has_encoderid),
+ offsetof(StubMotorEncoderResponse, encoderid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "EncoderVersion",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorEncoderResponse, has_encoderversion),
+ offsetof(StubMotorEncoderResponse, encoderversion),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MotorSpeed",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StubMotorEncoderResponse, has_motorspeed),
+ offsetof(StubMotorEncoderResponse, motorspeed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MotorDirection",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorEncoderResponse, has_motordirection),
+ offsetof(StubMotorEncoderResponse, motordirection),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubMotorEncoderResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorEncoderResponse, has_statusword),
+ offsetof(StubMotorEncoderResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_encoder_response__field_indices_by_name[] = {
+ 0, /* field[0] = EncoderId */
+ 1, /* field[1] = EncoderVersion */
+ 3, /* field[3] = MotorDirection */
+ 2, /* field[2] = MotorSpeed */
+ 4, /* field[4] = Status */
+ 5, /* field[5] = StatusWord */
+};
+static const ProtobufCIntRange stub_motor_encoder_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor stub_motor_encoder_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorEncoderResponse",
+ "StubMotorEncoderResponse",
+ "StubMotorEncoderResponse",
+ "",
+ sizeof(StubMotorEncoderResponse),
+ 6,
+ stub_motor_encoder_response__field_descriptors,
+ stub_motor_encoder_response__field_indices_by_name,
+ 1, stub_motor_encoder_response__number_ranges,
+ (ProtobufCMessageInit) stub_motor_encoder_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderResponse.pb-c.h
new file mode 100644
index 000000000..d1e150306
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorEncoderResponse.pb-c.h
@@ -0,0 +1,93 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorEncoderResponse.proto */
+
+#ifndef PROTOBUF_C_StubMotorEncoderResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorEncoderResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorEncoderResponse StubMotorEncoderResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorEncoderResponse
+{
+ ProtobufCMessage base;
+ /*
+ *0..8
+ */
+ protobuf_c_boolean has_encoderid;
+ uint32_t encoderid;
+ protobuf_c_boolean has_encoderversion;
+ uint32_t encoderversion;
+ protobuf_c_boolean has_motorspeed;
+ int32_t motorspeed;
+ /*
+ * 1-cw 0-ccw
+ */
+ protobuf_c_boolean has_motordirection;
+ protobuf_c_boolean motordirection;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_MOTOR_ENCODER_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_encoder_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StubMotorEncoderResponse methods */
+void stub_motor_encoder_response__init
+ (StubMotorEncoderResponse *message);
+size_t stub_motor_encoder_response__get_packed_size
+ (const StubMotorEncoderResponse *message);
+size_t stub_motor_encoder_response__pack
+ (const StubMotorEncoderResponse *message,
+ uint8_t *out);
+size_t stub_motor_encoder_response__pack_to_buffer
+ (const StubMotorEncoderResponse *message,
+ ProtobufCBuffer *buffer);
+StubMotorEncoderResponse *
+ stub_motor_encoder_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_encoder_response__free_unpacked
+ (StubMotorEncoderResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorEncoderResponse_Closure)
+ (const StubMotorEncoderResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_encoder_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorEncoderResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkRequest.pb-c.c
new file mode 100644
index 000000000..fbfe0ab08
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorHomeMarkRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorHomeMarkRequest.pb-c.h"
+void stub_motor_home_mark_request__init
+ (StubMotorHomeMarkRequest *message)
+{
+ static const StubMotorHomeMarkRequest init_value = STUB_MOTOR_HOME_MARK_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_motor_home_mark_request__get_packed_size
+ (const StubMotorHomeMarkRequest *message)
+{
+ assert(message->base.descriptor == &stub_motor_home_mark_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_home_mark_request__pack
+ (const StubMotorHomeMarkRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_home_mark_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_home_mark_request__pack_to_buffer
+ (const StubMotorHomeMarkRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_home_mark_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorHomeMarkRequest *
+ stub_motor_home_mark_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorHomeMarkRequest *)
+ protobuf_c_message_unpack (&stub_motor_home_mark_request__descriptor,
+ allocator, len, data);
+}
+void stub_motor_home_mark_request__free_unpacked
+ (StubMotorHomeMarkRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_home_mark_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_home_mark_request__field_descriptors[2] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorHomeMarkRequest, has_motor_id),
+ offsetof(StubMotorHomeMarkRequest, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Set_Home_Mark_GO_Home_Mark",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorHomeMarkRequest, has_set_home_mark_go_home_mark),
+ offsetof(StubMotorHomeMarkRequest, set_home_mark_go_home_mark),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_home_mark_request__field_indices_by_name[] = {
+ 0, /* field[0] = Motor_ID */
+ 1, /* field[1] = Set_Home_Mark_GO_Home_Mark */
+};
+static const ProtobufCIntRange stub_motor_home_mark_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_motor_home_mark_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorHomeMarkRequest",
+ "StubMotorHomeMarkRequest",
+ "StubMotorHomeMarkRequest",
+ "",
+ sizeof(StubMotorHomeMarkRequest),
+ 2,
+ stub_motor_home_mark_request__field_descriptors,
+ stub_motor_home_mark_request__field_indices_by_name,
+ 1, stub_motor_home_mark_request__number_ranges,
+ (ProtobufCMessageInit) stub_motor_home_mark_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkRequest.pb-c.h
new file mode 100644
index 000000000..401241e76
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkRequest.pb-c.h
@@ -0,0 +1,77 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorHomeMarkRequest.proto */
+
+#ifndef PROTOBUF_C_StubMotorHomeMarkRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorHomeMarkRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorHomeMarkRequest StubMotorHomeMarkRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorHomeMarkRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ /*
+ * 0..3
+ */
+ protobuf_c_boolean has_set_home_mark_go_home_mark;
+ uint32_t set_home_mark_go_home_mark;
+};
+#define STUB_MOTOR_HOME_MARK_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_home_mark_request__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* StubMotorHomeMarkRequest methods */
+void stub_motor_home_mark_request__init
+ (StubMotorHomeMarkRequest *message);
+size_t stub_motor_home_mark_request__get_packed_size
+ (const StubMotorHomeMarkRequest *message);
+size_t stub_motor_home_mark_request__pack
+ (const StubMotorHomeMarkRequest *message,
+ uint8_t *out);
+size_t stub_motor_home_mark_request__pack_to_buffer
+ (const StubMotorHomeMarkRequest *message,
+ ProtobufCBuffer *buffer);
+StubMotorHomeMarkRequest *
+ stub_motor_home_mark_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_home_mark_request__free_unpacked
+ (StubMotorHomeMarkRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorHomeMarkRequest_Closure)
+ (const StubMotorHomeMarkRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_home_mark_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorHomeMarkRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkResponse.pb-c.c
new file mode 100644
index 000000000..65f1b899f
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkResponse.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorHomeMarkResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorHomeMarkResponse.pb-c.h"
+void stub_motor_home_mark_response__init
+ (StubMotorHomeMarkResponse *message)
+{
+ static const StubMotorHomeMarkResponse init_value = STUB_MOTOR_HOME_MARK_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_motor_home_mark_response__get_packed_size
+ (const StubMotorHomeMarkResponse *message)
+{
+ assert(message->base.descriptor == &stub_motor_home_mark_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_home_mark_response__pack
+ (const StubMotorHomeMarkResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_home_mark_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_home_mark_response__pack_to_buffer
+ (const StubMotorHomeMarkResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_home_mark_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorHomeMarkResponse *
+ stub_motor_home_mark_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorHomeMarkResponse *)
+ protobuf_c_message_unpack (&stub_motor_home_mark_response__descriptor,
+ allocator, len, data);
+}
+void stub_motor_home_mark_response__free_unpacked
+ (StubMotorHomeMarkResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_home_mark_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_home_mark_response__field_descriptors[2] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorHomeMarkResponse, has_motor_id),
+ offsetof(StubMotorHomeMarkResponse, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Position",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorHomeMarkResponse, has_position),
+ offsetof(StubMotorHomeMarkResponse, position),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_home_mark_response__field_indices_by_name[] = {
+ 0, /* field[0] = Motor_ID */
+ 1, /* field[1] = Position */
+};
+static const ProtobufCIntRange stub_motor_home_mark_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_motor_home_mark_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorHomeMarkResponse",
+ "StubMotorHomeMarkResponse",
+ "StubMotorHomeMarkResponse",
+ "",
+ sizeof(StubMotorHomeMarkResponse),
+ 2,
+ stub_motor_home_mark_response__field_descriptors,
+ stub_motor_home_mark_response__field_indices_by_name,
+ 1, stub_motor_home_mark_response__number_ranges,
+ (ProtobufCMessageInit) stub_motor_home_mark_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkResponse.pb-c.h
new file mode 100644
index 000000000..431e62d4b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorHomeMarkResponse.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorHomeMarkResponse.proto */
+
+#ifndef PROTOBUF_C_StubMotorHomeMarkResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorHomeMarkResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorHomeMarkResponse StubMotorHomeMarkResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorHomeMarkResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ protobuf_c_boolean has_position;
+ uint32_t position;
+};
+#define STUB_MOTOR_HOME_MARK_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_home_mark_response__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* StubMotorHomeMarkResponse methods */
+void stub_motor_home_mark_response__init
+ (StubMotorHomeMarkResponse *message);
+size_t stub_motor_home_mark_response__get_packed_size
+ (const StubMotorHomeMarkResponse *message);
+size_t stub_motor_home_mark_response__pack
+ (const StubMotorHomeMarkResponse *message,
+ uint8_t *out);
+size_t stub_motor_home_mark_response__pack_to_buffer
+ (const StubMotorHomeMarkResponse *message,
+ ProtobufCBuffer *buffer);
+StubMotorHomeMarkResponse *
+ stub_motor_home_mark_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_home_mark_response__free_unpacked
+ (StubMotorHomeMarkResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorHomeMarkResponse_Closure)
+ (const StubMotorHomeMarkResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_home_mark_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorHomeMarkResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitRequest.pb-c.c
new file mode 100644
index 000000000..a7f97ce16
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitRequest.pb-c.c
@@ -0,0 +1,339 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorInitRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorInitRequest.pb-c.h"
+void stub_motor_init_request__init
+ (StubMotorInitRequest *message)
+{
+ static const StubMotorInitRequest init_value = STUB_MOTOR_INIT_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_motor_init_request__get_packed_size
+ (const StubMotorInitRequest *message)
+{
+ assert(message->base.descriptor == &stub_motor_init_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_init_request__pack
+ (const StubMotorInitRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_init_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_init_request__pack_to_buffer
+ (const StubMotorInitRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_init_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorInitRequest *
+ stub_motor_init_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorInitRequest *)
+ protobuf_c_message_unpack (&stub_motor_init_request__descriptor,
+ allocator, len, data);
+}
+void stub_motor_init_request__free_unpacked
+ (StubMotorInitRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_init_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_init_request__field_descriptors[20] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_motor_id),
+ offsetof(StubMotorInitRequest, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Micro_Steps",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_micro_steps),
+ offsetof(StubMotorInitRequest, micro_steps),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Set_Micro_Steps",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorInitRequest, has_set_micro_steps),
+ offsetof(StubMotorInitRequest, set_micro_steps),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ACC",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_acc),
+ offsetof(StubMotorInitRequest, acc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Set_ACC",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorInitRequest, has_set_acc),
+ offsetof(StubMotorInitRequest, set_acc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DEC",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_dec),
+ offsetof(StubMotorInitRequest, dec),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Set_Dec",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorInitRequest, has_set_dec),
+ offsetof(StubMotorInitRequest, set_dec),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Max_Speed",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_max_speed),
+ offsetof(StubMotorInitRequest, max_speed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Set_Max_Speed",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorInitRequest, has_set_max_speed),
+ offsetof(StubMotorInitRequest, set_max_speed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Min_Speed_LSPD_OPT",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_min_speed_lspd_opt),
+ offsetof(StubMotorInitRequest, min_speed_lspd_opt),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Set_Min_Speed_LSPD_OPT",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorInitRequest, has_set_min_speed_lspd_opt),
+ offsetof(StubMotorInitRequest, set_min_speed_lspd_opt),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Config",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_config),
+ offsetof(StubMotorInitRequest, config),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "KVAL_HOLD",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_kval_hold),
+ offsetof(StubMotorInitRequest, kval_hold),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "KVAL_RUN",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_kval_run),
+ offsetof(StubMotorInitRequest, kval_run),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "KVAL_ACC",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_kval_acc),
+ offsetof(StubMotorInitRequest, kval_acc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "KVAL_DEC",
+ 16,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_kval_dec),
+ offsetof(StubMotorInitRequest, kval_dec),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ST_SLP",
+ 17,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_st_slp),
+ offsetof(StubMotorInitRequest, st_slp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "INT_SPD",
+ 18,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_int_spd),
+ offsetof(StubMotorInitRequest, int_spd),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "FN_SLP_ACC",
+ 19,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_fn_slp_acc),
+ offsetof(StubMotorInitRequest, fn_slp_acc),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "FN_SLP_DEC",
+ 20,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitRequest, has_fn_slp_dec),
+ offsetof(StubMotorInitRequest, fn_slp_dec),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_init_request__field_indices_by_name[] = {
+ 3, /* field[3] = ACC */
+ 11, /* field[11] = Config */
+ 5, /* field[5] = DEC */
+ 18, /* field[18] = FN_SLP_ACC */
+ 19, /* field[19] = FN_SLP_DEC */
+ 17, /* field[17] = INT_SPD */
+ 14, /* field[14] = KVAL_ACC */
+ 15, /* field[15] = KVAL_DEC */
+ 12, /* field[12] = KVAL_HOLD */
+ 13, /* field[13] = KVAL_RUN */
+ 7, /* field[7] = Max_Speed */
+ 1, /* field[1] = Micro_Steps */
+ 9, /* field[9] = Min_Speed_LSPD_OPT */
+ 0, /* field[0] = Motor_ID */
+ 16, /* field[16] = ST_SLP */
+ 4, /* field[4] = Set_ACC */
+ 6, /* field[6] = Set_Dec */
+ 8, /* field[8] = Set_Max_Speed */
+ 2, /* field[2] = Set_Micro_Steps */
+ 10, /* field[10] = Set_Min_Speed_LSPD_OPT */
+};
+static const ProtobufCIntRange stub_motor_init_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 20 }
+};
+const ProtobufCMessageDescriptor stub_motor_init_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorInitRequest",
+ "StubMotorInitRequest",
+ "StubMotorInitRequest",
+ "",
+ sizeof(StubMotorInitRequest),
+ 20,
+ stub_motor_init_request__field_descriptors,
+ stub_motor_init_request__field_indices_by_name,
+ 1, stub_motor_init_request__number_ranges,
+ (ProtobufCMessageInit) stub_motor_init_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitRequest.pb-c.h
new file mode 100644
index 000000000..759c0cd03
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitRequest.pb-c.h
@@ -0,0 +1,113 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorInitRequest.proto */
+
+#ifndef PROTOBUF_C_StubMotorInitRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorInitRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorInitRequest StubMotorInitRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorInitRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ /*
+ * 1/2/4/8/16/32/64/128
+ */
+ protobuf_c_boolean has_micro_steps;
+ uint32_t micro_steps;
+ protobuf_c_boolean has_set_micro_steps;
+ protobuf_c_boolean set_micro_steps;
+ protobuf_c_boolean has_acc;
+ uint32_t acc;
+ protobuf_c_boolean has_set_acc;
+ protobuf_c_boolean set_acc;
+ protobuf_c_boolean has_dec;
+ uint32_t dec;
+ protobuf_c_boolean has_set_dec;
+ protobuf_c_boolean set_dec;
+ protobuf_c_boolean has_max_speed;
+ uint32_t max_speed;
+ protobuf_c_boolean has_set_max_speed;
+ protobuf_c_boolean set_max_speed;
+ protobuf_c_boolean has_min_speed_lspd_opt;
+ uint32_t min_speed_lspd_opt;
+ protobuf_c_boolean has_set_min_speed_lspd_opt;
+ protobuf_c_boolean set_min_speed_lspd_opt;
+ protobuf_c_boolean has_config;
+ uint32_t config;
+ protobuf_c_boolean has_kval_hold;
+ uint32_t kval_hold;
+ protobuf_c_boolean has_kval_run;
+ uint32_t kval_run;
+ protobuf_c_boolean has_kval_acc;
+ uint32_t kval_acc;
+ protobuf_c_boolean has_kval_dec;
+ uint32_t kval_dec;
+ protobuf_c_boolean has_st_slp;
+ uint32_t st_slp;
+ protobuf_c_boolean has_int_spd;
+ uint32_t int_spd;
+ protobuf_c_boolean has_fn_slp_acc;
+ uint32_t fn_slp_acc;
+ protobuf_c_boolean has_fn_slp_dec;
+ uint32_t fn_slp_dec;
+};
+#define STUB_MOTOR_INIT_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_init_request__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubMotorInitRequest methods */
+void stub_motor_init_request__init
+ (StubMotorInitRequest *message);
+size_t stub_motor_init_request__get_packed_size
+ (const StubMotorInitRequest *message);
+size_t stub_motor_init_request__pack
+ (const StubMotorInitRequest *message,
+ uint8_t *out);
+size_t stub_motor_init_request__pack_to_buffer
+ (const StubMotorInitRequest *message,
+ ProtobufCBuffer *buffer);
+StubMotorInitRequest *
+ stub_motor_init_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_init_request__free_unpacked
+ (StubMotorInitRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorInitRequest_Closure)
+ (const StubMotorInitRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_init_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorInitRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitResponse.pb-c.c
new file mode 100644
index 000000000..17c436fa3
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitResponse.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorInitResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorInitResponse.pb-c.h"
+void stub_motor_init_response__init
+ (StubMotorInitResponse *message)
+{
+ static const StubMotorInitResponse init_value = STUB_MOTOR_INIT_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_motor_init_response__get_packed_size
+ (const StubMotorInitResponse *message)
+{
+ assert(message->base.descriptor == &stub_motor_init_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_init_response__pack
+ (const StubMotorInitResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_init_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_init_response__pack_to_buffer
+ (const StubMotorInitResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_init_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorInitResponse *
+ stub_motor_init_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorInitResponse *)
+ protobuf_c_message_unpack (&stub_motor_init_response__descriptor,
+ allocator, len, data);
+}
+void stub_motor_init_response__free_unpacked
+ (StubMotorInitResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_init_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_init_response__field_descriptors[2] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitResponse, has_motor_id),
+ offsetof(StubMotorInitResponse, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorInitResponse, has_status),
+ offsetof(StubMotorInitResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_init_response__field_indices_by_name[] = {
+ 0, /* field[0] = Motor_ID */
+ 1, /* field[1] = Status */
+};
+static const ProtobufCIntRange stub_motor_init_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_motor_init_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorInitResponse",
+ "StubMotorInitResponse",
+ "StubMotorInitResponse",
+ "",
+ sizeof(StubMotorInitResponse),
+ 2,
+ stub_motor_init_response__field_descriptors,
+ stub_motor_init_response__field_indices_by_name,
+ 1, stub_motor_init_response__number_ranges,
+ (ProtobufCMessageInit) stub_motor_init_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitResponse.pb-c.h
new file mode 100644
index 000000000..c4f825818
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorInitResponse.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorInitResponse.proto */
+
+#ifndef PROTOBUF_C_StubMotorInitResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorInitResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorInitResponse StubMotorInitResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorInitResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ protobuf_c_boolean has_status;
+ uint32_t status;
+};
+#define STUB_MOTOR_INIT_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_init_response__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* StubMotorInitResponse methods */
+void stub_motor_init_response__init
+ (StubMotorInitResponse *message);
+size_t stub_motor_init_response__get_packed_size
+ (const StubMotorInitResponse *message);
+size_t stub_motor_init_response__pack
+ (const StubMotorInitResponse *message,
+ uint8_t *out);
+size_t stub_motor_init_response__pack_to_buffer
+ (const StubMotorInitResponse *message,
+ ProtobufCBuffer *buffer);
+StubMotorInitResponse *
+ stub_motor_init_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_init_response__free_unpacked
+ (StubMotorInitResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorInitResponse_Closure)
+ (const StubMotorInitResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_init_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorInitResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovRequest.pb-c.c
new file mode 100644
index 000000000..ed5152830
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovRequest.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorMovRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorMovRequest.pb-c.h"
+void stub_motor_mov_request__init
+ (StubMotorMovRequest *message)
+{
+ static const StubMotorMovRequest init_value = STUB_MOTOR_MOV_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_motor_mov_request__get_packed_size
+ (const StubMotorMovRequest *message)
+{
+ assert(message->base.descriptor == &stub_motor_mov_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_mov_request__pack
+ (const StubMotorMovRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_mov_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_mov_request__pack_to_buffer
+ (const StubMotorMovRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_mov_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorMovRequest *
+ stub_motor_mov_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorMovRequest *)
+ protobuf_c_message_unpack (&stub_motor_mov_request__descriptor,
+ allocator, len, data);
+}
+void stub_motor_mov_request__free_unpacked
+ (StubMotorMovRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_mov_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_mov_request__field_descriptors[3] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorMovRequest, has_motor_id),
+ offsetof(StubMotorMovRequest, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Direction",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorMovRequest, has_direction),
+ offsetof(StubMotorMovRequest, direction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Position",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorMovRequest, has_position),
+ offsetof(StubMotorMovRequest, position),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_mov_request__field_indices_by_name[] = {
+ 1, /* field[1] = Direction */
+ 0, /* field[0] = Motor_ID */
+ 2, /* field[2] = Position */
+};
+static const ProtobufCIntRange stub_motor_mov_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor stub_motor_mov_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorMovRequest",
+ "StubMotorMovRequest",
+ "StubMotorMovRequest",
+ "",
+ sizeof(StubMotorMovRequest),
+ 3,
+ stub_motor_mov_request__field_descriptors,
+ stub_motor_mov_request__field_indices_by_name,
+ 1, stub_motor_mov_request__number_ranges,
+ (ProtobufCMessageInit) stub_motor_mov_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovRequest.pb-c.h
new file mode 100644
index 000000000..8957b336a
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovRequest.pb-c.h
@@ -0,0 +1,76 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorMovRequest.proto */
+
+#ifndef PROTOBUF_C_StubMotorMovRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorMovRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorMovRequest StubMotorMovRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorMovRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ protobuf_c_boolean has_direction;
+ protobuf_c_boolean direction;
+ protobuf_c_boolean has_position;
+ uint32_t position;
+};
+#define STUB_MOTOR_MOV_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_mov_request__descriptor) \
+ , 0, 0, 0, 0, 0, 0 }
+
+
+/* StubMotorMovRequest methods */
+void stub_motor_mov_request__init
+ (StubMotorMovRequest *message);
+size_t stub_motor_mov_request__get_packed_size
+ (const StubMotorMovRequest *message);
+size_t stub_motor_mov_request__pack
+ (const StubMotorMovRequest *message,
+ uint8_t *out);
+size_t stub_motor_mov_request__pack_to_buffer
+ (const StubMotorMovRequest *message,
+ ProtobufCBuffer *buffer);
+StubMotorMovRequest *
+ stub_motor_mov_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_mov_request__free_unpacked
+ (StubMotorMovRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorMovRequest_Closure)
+ (const StubMotorMovRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_mov_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorMovRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovResponse.pb-c.c
new file mode 100644
index 000000000..e0da6c0b3
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovResponse.pb-c.c
@@ -0,0 +1,170 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorMovResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorMovResponse.pb-c.h"
+void stub_motor_mov_response__init
+ (StubMotorMovResponse *message)
+{
+ static const StubMotorMovResponse init_value = STUB_MOTOR_MOV_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_motor_mov_response__get_packed_size
+ (const StubMotorMovResponse *message)
+{
+ assert(message->base.descriptor == &stub_motor_mov_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_mov_response__pack
+ (const StubMotorMovResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_mov_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_mov_response__pack_to_buffer
+ (const StubMotorMovResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_mov_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorMovResponse *
+ stub_motor_mov_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorMovResponse *)
+ protobuf_c_message_unpack (&stub_motor_mov_response__descriptor,
+ allocator, len, data);
+}
+void stub_motor_mov_response__free_unpacked
+ (StubMotorMovResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_mov_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_mov_response__field_descriptors[7] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorMovResponse, has_motor_id),
+ offsetof(StubMotorMovResponse, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Position",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorMovResponse, has_position),
+ offsetof(StubMotorMovResponse, position),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status_Reg",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorMovResponse, has_status_reg),
+ offsetof(StubMotorMovResponse, status_reg),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Direction",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorMovResponse, has_direction),
+ offsetof(StubMotorMovResponse, direction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Mot_Status",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorMovResponse, has_mot_status),
+ offsetof(StubMotorMovResponse, mot_status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "STEP_LOSS_A",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorMovResponse, has_step_loss_a),
+ offsetof(StubMotorMovResponse, step_loss_a),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "STEP_LOSS_B",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorMovResponse, has_step_loss_b),
+ offsetof(StubMotorMovResponse, step_loss_b),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_mov_response__field_indices_by_name[] = {
+ 3, /* field[3] = Direction */
+ 4, /* field[4] = Mot_Status */
+ 0, /* field[0] = Motor_ID */
+ 1, /* field[1] = Position */
+ 5, /* field[5] = STEP_LOSS_A */
+ 6, /* field[6] = STEP_LOSS_B */
+ 2, /* field[2] = Status_Reg */
+};
+static const ProtobufCIntRange stub_motor_mov_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor stub_motor_mov_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorMovResponse",
+ "StubMotorMovResponse",
+ "StubMotorMovResponse",
+ "",
+ sizeof(StubMotorMovResponse),
+ 7,
+ stub_motor_mov_response__field_descriptors,
+ stub_motor_mov_response__field_indices_by_name,
+ 1, stub_motor_mov_response__number_ranges,
+ (ProtobufCMessageInit) stub_motor_mov_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovResponse.pb-c.h
new file mode 100644
index 000000000..cd80996ed
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorMovResponse.pb-c.h
@@ -0,0 +1,90 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorMovResponse.proto */
+
+#ifndef PROTOBUF_C_StubMotorMovResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorMovResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorMovResponse StubMotorMovResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorMovResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ protobuf_c_boolean has_position;
+ uint32_t position;
+ protobuf_c_boolean has_status_reg;
+ uint32_t status_reg;
+ /*
+ * Reverse / Forward
+ */
+ protobuf_c_boolean has_direction;
+ protobuf_c_boolean direction;
+ /*
+ *Stopped / Acceleration / Deceleration / Constant speed
+ */
+ protobuf_c_boolean has_mot_status;
+ uint32_t mot_status;
+ protobuf_c_boolean has_step_loss_a;
+ protobuf_c_boolean step_loss_a;
+ protobuf_c_boolean has_step_loss_b;
+ protobuf_c_boolean step_loss_b;
+};
+#define STUB_MOTOR_MOV_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_mov_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubMotorMovResponse methods */
+void stub_motor_mov_response__init
+ (StubMotorMovResponse *message);
+size_t stub_motor_mov_response__get_packed_size
+ (const StubMotorMovResponse *message);
+size_t stub_motor_mov_response__pack
+ (const StubMotorMovResponse *message,
+ uint8_t *out);
+size_t stub_motor_mov_response__pack_to_buffer
+ (const StubMotorMovResponse *message,
+ ProtobufCBuffer *buffer);
+StubMotorMovResponse *
+ stub_motor_mov_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_mov_response__free_unpacked
+ (StubMotorMovResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorMovResponse_Closure)
+ (const StubMotorMovResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_mov_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorMovResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionRequest.pb-c.c
new file mode 100644
index 000000000..08f43e778
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorPositionRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorPositionRequest.pb-c.h"
+void stub_motor_position_request__init
+ (StubMotorPositionRequest *message)
+{
+ static const StubMotorPositionRequest init_value = STUB_MOTOR_POSITION_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_motor_position_request__get_packed_size
+ (const StubMotorPositionRequest *message)
+{
+ assert(message->base.descriptor == &stub_motor_position_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_position_request__pack
+ (const StubMotorPositionRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_position_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_position_request__pack_to_buffer
+ (const StubMotorPositionRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_position_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorPositionRequest *
+ stub_motor_position_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorPositionRequest *)
+ protobuf_c_message_unpack (&stub_motor_position_request__descriptor,
+ allocator, len, data);
+}
+void stub_motor_position_request__free_unpacked
+ (StubMotorPositionRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_position_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_position_request__field_descriptors[1] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorPositionRequest, has_motor_id),
+ offsetof(StubMotorPositionRequest, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_position_request__field_indices_by_name[] = {
+ 0, /* field[0] = Motor_ID */
+};
+static const ProtobufCIntRange stub_motor_position_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor stub_motor_position_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorPositionRequest",
+ "StubMotorPositionRequest",
+ "StubMotorPositionRequest",
+ "",
+ sizeof(StubMotorPositionRequest),
+ 1,
+ stub_motor_position_request__field_descriptors,
+ stub_motor_position_request__field_indices_by_name,
+ 1, stub_motor_position_request__number_ranges,
+ (ProtobufCMessageInit) stub_motor_position_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionRequest.pb-c.h
new file mode 100644
index 000000000..439a0f31d
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionRequest.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorPositionRequest.proto */
+
+#ifndef PROTOBUF_C_StubMotorPositionRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorPositionRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorPositionRequest StubMotorPositionRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorPositionRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+};
+#define STUB_MOTOR_POSITION_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_position_request__descriptor) \
+ , 0, 0 }
+
+
+/* StubMotorPositionRequest methods */
+void stub_motor_position_request__init
+ (StubMotorPositionRequest *message);
+size_t stub_motor_position_request__get_packed_size
+ (const StubMotorPositionRequest *message);
+size_t stub_motor_position_request__pack
+ (const StubMotorPositionRequest *message,
+ uint8_t *out);
+size_t stub_motor_position_request__pack_to_buffer
+ (const StubMotorPositionRequest *message,
+ ProtobufCBuffer *buffer);
+StubMotorPositionRequest *
+ stub_motor_position_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_position_request__free_unpacked
+ (StubMotorPositionRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorPositionRequest_Closure)
+ (const StubMotorPositionRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_position_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorPositionRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionResponse.pb-c.c
new file mode 100644
index 000000000..4354eb2da
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionResponse.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorPositionResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorPositionResponse.pb-c.h"
+void stub_motor_position_response__init
+ (StubMotorPositionResponse *message)
+{
+ static const StubMotorPositionResponse init_value = STUB_MOTOR_POSITION_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_motor_position_response__get_packed_size
+ (const StubMotorPositionResponse *message)
+{
+ assert(message->base.descriptor == &stub_motor_position_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_position_response__pack
+ (const StubMotorPositionResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_position_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_position_response__pack_to_buffer
+ (const StubMotorPositionResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_position_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorPositionResponse *
+ stub_motor_position_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorPositionResponse *)
+ protobuf_c_message_unpack (&stub_motor_position_response__descriptor,
+ allocator, len, data);
+}
+void stub_motor_position_response__free_unpacked
+ (StubMotorPositionResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_position_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_position_response__field_descriptors[2] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorPositionResponse, has_motor_id),
+ offsetof(StubMotorPositionResponse, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Position",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorPositionResponse, has_position),
+ offsetof(StubMotorPositionResponse, position),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_position_response__field_indices_by_name[] = {
+ 0, /* field[0] = Motor_ID */
+ 1, /* field[1] = Position */
+};
+static const ProtobufCIntRange stub_motor_position_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_motor_position_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorPositionResponse",
+ "StubMotorPositionResponse",
+ "StubMotorPositionResponse",
+ "",
+ sizeof(StubMotorPositionResponse),
+ 2,
+ stub_motor_position_response__field_descriptors,
+ stub_motor_position_response__field_indices_by_name,
+ 1, stub_motor_position_response__number_ranges,
+ (ProtobufCMessageInit) stub_motor_position_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionResponse.pb-c.h
new file mode 100644
index 000000000..13c7c3c95
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorPositionResponse.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorPositionResponse.proto */
+
+#ifndef PROTOBUF_C_StubMotorPositionResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorPositionResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorPositionResponse StubMotorPositionResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorPositionResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ protobuf_c_boolean has_position;
+ uint32_t position;
+};
+#define STUB_MOTOR_POSITION_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_position_response__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* StubMotorPositionResponse methods */
+void stub_motor_position_response__init
+ (StubMotorPositionResponse *message);
+size_t stub_motor_position_response__get_packed_size
+ (const StubMotorPositionResponse *message);
+size_t stub_motor_position_response__pack
+ (const StubMotorPositionResponse *message,
+ uint8_t *out);
+size_t stub_motor_position_response__pack_to_buffer
+ (const StubMotorPositionResponse *message,
+ ProtobufCBuffer *buffer);
+StubMotorPositionResponse *
+ stub_motor_position_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_position_response__free_unpacked
+ (StubMotorPositionResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorPositionResponse_Closure)
+ (const StubMotorPositionResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_position_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorPositionResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRequest.pb-c.c
new file mode 100644
index 000000000..c20a5c57b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRequest.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorRequest.pb-c.h"
+void stub_motor_request__init
+ (StubMotorRequest *message)
+{
+ static const StubMotorRequest init_value = STUB_MOTOR_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_motor_request__get_packed_size
+ (const StubMotorRequest *message)
+{
+ assert(message->base.descriptor == &stub_motor_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_request__pack
+ (const StubMotorRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_request__pack_to_buffer
+ (const StubMotorRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorRequest *
+ stub_motor_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorRequest *)
+ protobuf_c_message_unpack (&stub_motor_request__descriptor,
+ allocator, len, data);
+}
+void stub_motor_request__free_unpacked
+ (StubMotorRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_request__field_descriptors[4] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorRequest, has_motor_id),
+ offsetof(StubMotorRequest, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Data_to_send",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorRequest, has_data_to_send),
+ offsetof(StubMotorRequest, data_to_send),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "N_Bytes_to_Set",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorRequest, has_n_bytes_to_set),
+ offsetof(StubMotorRequest, n_bytes_to_set),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "N_Bytes_to_Get",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorRequest, has_n_bytes_to_get),
+ offsetof(StubMotorRequest, n_bytes_to_get),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_request__field_indices_by_name[] = {
+ 1, /* field[1] = Data_to_send */
+ 0, /* field[0] = Motor_ID */
+ 3, /* field[3] = N_Bytes_to_Get */
+ 2, /* field[2] = N_Bytes_to_Set */
+};
+static const ProtobufCIntRange stub_motor_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_motor_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorRequest",
+ "StubMotorRequest",
+ "StubMotorRequest",
+ "",
+ sizeof(StubMotorRequest),
+ 4,
+ stub_motor_request__field_descriptors,
+ stub_motor_request__field_indices_by_name,
+ 1, stub_motor_request__number_ranges,
+ (ProtobufCMessageInit) stub_motor_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRequest.pb-c.h
new file mode 100644
index 000000000..d7a9826c0
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRequest.pb-c.h
@@ -0,0 +1,78 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorRequest.proto */
+
+#ifndef PROTOBUF_C_StubMotorRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorRequest StubMotorRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ protobuf_c_boolean has_data_to_send;
+ uint32_t data_to_send;
+ protobuf_c_boolean has_n_bytes_to_set;
+ uint32_t n_bytes_to_set;
+ protobuf_c_boolean has_n_bytes_to_get;
+ uint32_t n_bytes_to_get;
+};
+#define STUB_MOTOR_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_request__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubMotorRequest methods */
+void stub_motor_request__init
+ (StubMotorRequest *message);
+size_t stub_motor_request__get_packed_size
+ (const StubMotorRequest *message);
+size_t stub_motor_request__pack
+ (const StubMotorRequest *message,
+ uint8_t *out);
+size_t stub_motor_request__pack_to_buffer
+ (const StubMotorRequest *message,
+ ProtobufCBuffer *buffer);
+StubMotorRequest *
+ stub_motor_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_request__free_unpacked
+ (StubMotorRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorRequest_Closure)
+ (const StubMotorRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorResponse.pb-c.c
new file mode 100644
index 000000000..3affd71f5
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorResponse.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorResponse.pb-c.h"
+void stub_motor_response__init
+ (StubMotorResponse *message)
+{
+ static const StubMotorResponse init_value = STUB_MOTOR_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_motor_response__get_packed_size
+ (const StubMotorResponse *message)
+{
+ assert(message->base.descriptor == &stub_motor_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_response__pack
+ (const StubMotorResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_response__pack_to_buffer
+ (const StubMotorResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorResponse *
+ stub_motor_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorResponse *)
+ protobuf_c_message_unpack (&stub_motor_response__descriptor,
+ allocator, len, data);
+}
+void stub_motor_response__free_unpacked
+ (StubMotorResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_response__field_descriptors[2] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorResponse, has_motor_id),
+ offsetof(StubMotorResponse, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Recived_Data",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorResponse, has_recived_data),
+ offsetof(StubMotorResponse, recived_data),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_response__field_indices_by_name[] = {
+ 0, /* field[0] = Motor_ID */
+ 1, /* field[1] = Recived_Data */
+};
+static const ProtobufCIntRange stub_motor_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_motor_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorResponse",
+ "StubMotorResponse",
+ "StubMotorResponse",
+ "",
+ sizeof(StubMotorResponse),
+ 2,
+ stub_motor_response__field_descriptors,
+ stub_motor_response__field_indices_by_name,
+ 1, stub_motor_response__number_ranges,
+ (ProtobufCMessageInit) stub_motor_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorResponse.pb-c.h
new file mode 100644
index 000000000..d2aa43c76
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorResponse.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorResponse.proto */
+
+#ifndef PROTOBUF_C_StubMotorResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorResponse StubMotorResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ protobuf_c_boolean has_recived_data;
+ uint32_t recived_data;
+};
+#define STUB_MOTOR_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_response__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* StubMotorResponse methods */
+void stub_motor_response__init
+ (StubMotorResponse *message);
+size_t stub_motor_response__get_packed_size
+ (const StubMotorResponse *message);
+size_t stub_motor_response__pack
+ (const StubMotorResponse *message,
+ uint8_t *out);
+size_t stub_motor_response__pack_to_buffer
+ (const StubMotorResponse *message,
+ ProtobufCBuffer *buffer);
+StubMotorResponse *
+ stub_motor_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_response__free_unpacked
+ (StubMotorResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorResponse_Closure)
+ (const StubMotorResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunRequest.pb-c.c
new file mode 100644
index 000000000..30cf9ccf2
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunRequest.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorRunRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorRunRequest.pb-c.h"
+void stub_motor_run_request__init
+ (StubMotorRunRequest *message)
+{
+ static const StubMotorRunRequest init_value = STUB_MOTOR_RUN_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_motor_run_request__get_packed_size
+ (const StubMotorRunRequest *message)
+{
+ assert(message->base.descriptor == &stub_motor_run_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_run_request__pack
+ (const StubMotorRunRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_run_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_run_request__pack_to_buffer
+ (const StubMotorRunRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_run_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorRunRequest *
+ stub_motor_run_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorRunRequest *)
+ protobuf_c_message_unpack (&stub_motor_run_request__descriptor,
+ allocator, len, data);
+}
+void stub_motor_run_request__free_unpacked
+ (StubMotorRunRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_run_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_run_request__field_descriptors[3] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorRunRequest, has_motor_id),
+ offsetof(StubMotorRunRequest, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Direction",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorRunRequest, has_direction),
+ offsetof(StubMotorRunRequest, direction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Speed",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(StubMotorRunRequest, has_speed),
+ offsetof(StubMotorRunRequest, speed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_run_request__field_indices_by_name[] = {
+ 1, /* field[1] = Direction */
+ 0, /* field[0] = Motor_ID */
+ 2, /* field[2] = Speed */
+};
+static const ProtobufCIntRange stub_motor_run_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor stub_motor_run_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorRunRequest",
+ "StubMotorRunRequest",
+ "StubMotorRunRequest",
+ "",
+ sizeof(StubMotorRunRequest),
+ 3,
+ stub_motor_run_request__field_descriptors,
+ stub_motor_run_request__field_indices_by_name,
+ 1, stub_motor_run_request__number_ranges,
+ (ProtobufCMessageInit) stub_motor_run_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunRequest.pb-c.h
new file mode 100644
index 000000000..5c4ce2efd
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunRequest.pb-c.h
@@ -0,0 +1,76 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorRunRequest.proto */
+
+#ifndef PROTOBUF_C_StubMotorRunRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorRunRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorRunRequest StubMotorRunRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorRunRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ protobuf_c_boolean has_direction;
+ protobuf_c_boolean direction;
+ protobuf_c_boolean has_speed;
+ double speed;
+};
+#define STUB_MOTOR_RUN_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_run_request__descriptor) \
+ , 0, 0, 0, 0, 0, 0 }
+
+
+/* StubMotorRunRequest methods */
+void stub_motor_run_request__init
+ (StubMotorRunRequest *message);
+size_t stub_motor_run_request__get_packed_size
+ (const StubMotorRunRequest *message);
+size_t stub_motor_run_request__pack
+ (const StubMotorRunRequest *message,
+ uint8_t *out);
+size_t stub_motor_run_request__pack_to_buffer
+ (const StubMotorRunRequest *message,
+ ProtobufCBuffer *buffer);
+StubMotorRunRequest *
+ stub_motor_run_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_run_request__free_unpacked
+ (StubMotorRunRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorRunRequest_Closure)
+ (const StubMotorRunRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_run_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorRunRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunResponse.pb-c.c
new file mode 100644
index 000000000..4d437ab7e
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunResponse.pb-c.c
@@ -0,0 +1,183 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorRunResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorRunResponse.pb-c.h"
+void stub_motor_run_response__init
+ (StubMotorRunResponse *message)
+{
+ static const StubMotorRunResponse init_value = STUB_MOTOR_RUN_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_motor_run_response__get_packed_size
+ (const StubMotorRunResponse *message)
+{
+ assert(message->base.descriptor == &stub_motor_run_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_run_response__pack
+ (const StubMotorRunResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_run_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_run_response__pack_to_buffer
+ (const StubMotorRunResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_run_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorRunResponse *
+ stub_motor_run_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorRunResponse *)
+ protobuf_c_message_unpack (&stub_motor_run_response__descriptor,
+ allocator, len, data);
+}
+void stub_motor_run_response__free_unpacked
+ (StubMotorRunResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_run_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_run_response__field_descriptors[8] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorRunResponse, has_motor_id),
+ offsetof(StubMotorRunResponse, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Speed",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(StubMotorRunResponse, has_speed),
+ offsetof(StubMotorRunResponse, speed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status_Reg",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorRunResponse, has_status_reg),
+ offsetof(StubMotorRunResponse, status_reg),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Direction",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorRunResponse, has_direction),
+ offsetof(StubMotorRunResponse, direction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Mot_Status",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorRunResponse, has_mot_status),
+ offsetof(StubMotorRunResponse, mot_status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "STEP_LOSS_A",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorRunResponse, has_step_loss_a),
+ offsetof(StubMotorRunResponse, step_loss_a),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "STEP_LOSS_B",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorRunResponse, has_step_loss_b),
+ offsetof(StubMotorRunResponse, step_loss_b),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "BUSY",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorRunResponse, has_busy),
+ offsetof(StubMotorRunResponse, busy),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_run_response__field_indices_by_name[] = {
+ 7, /* field[7] = BUSY */
+ 3, /* field[3] = Direction */
+ 4, /* field[4] = Mot_Status */
+ 0, /* field[0] = Motor_ID */
+ 5, /* field[5] = STEP_LOSS_A */
+ 6, /* field[6] = STEP_LOSS_B */
+ 1, /* field[1] = Speed */
+ 2, /* field[2] = Status_Reg */
+};
+static const ProtobufCIntRange stub_motor_run_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor stub_motor_run_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorRunResponse",
+ "StubMotorRunResponse",
+ "StubMotorRunResponse",
+ "",
+ sizeof(StubMotorRunResponse),
+ 8,
+ stub_motor_run_response__field_descriptors,
+ stub_motor_run_response__field_indices_by_name,
+ 1, stub_motor_run_response__number_ranges,
+ (ProtobufCMessageInit) stub_motor_run_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunResponse.pb-c.h
new file mode 100644
index 000000000..9c80cd28d
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunResponse.pb-c.h
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorRunResponse.proto */
+
+#ifndef PROTOBUF_C_StubMotorRunResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorRunResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorRunResponse StubMotorRunResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorRunResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ protobuf_c_boolean has_speed;
+ double speed;
+ protobuf_c_boolean has_status_reg;
+ uint32_t status_reg;
+ /*
+ * Reverse / Forward
+ */
+ protobuf_c_boolean has_direction;
+ protobuf_c_boolean direction;
+ /*
+ *Stopped / Acceleration / Deceleration / Constant speed
+ */
+ protobuf_c_boolean has_mot_status;
+ uint32_t mot_status;
+ protobuf_c_boolean has_step_loss_a;
+ protobuf_c_boolean step_loss_a;
+ protobuf_c_boolean has_step_loss_b;
+ protobuf_c_boolean step_loss_b;
+ protobuf_c_boolean has_busy;
+ protobuf_c_boolean busy;
+};
+#define STUB_MOTOR_RUN_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_run_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubMotorRunResponse methods */
+void stub_motor_run_response__init
+ (StubMotorRunResponse *message);
+size_t stub_motor_run_response__get_packed_size
+ (const StubMotorRunResponse *message);
+size_t stub_motor_run_response__pack
+ (const StubMotorRunResponse *message,
+ uint8_t *out);
+size_t stub_motor_run_response__pack_to_buffer
+ (const StubMotorRunResponse *message,
+ ProtobufCBuffer *buffer);
+StubMotorRunResponse *
+ stub_motor_run_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_run_response__free_unpacked
+ (StubMotorRunResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorRunResponse_Closure)
+ (const StubMotorRunResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_run_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorRunResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickRequest.pb-c.c
new file mode 100644
index 000000000..80a362034
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickRequest.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorRunStepTickRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorRunStepTickRequest.pb-c.h"
+void stub_motor_run_step_tick_request__init
+ (StubMotorRunStepTickRequest *message)
+{
+ static const StubMotorRunStepTickRequest init_value = STUB_MOTOR_RUN_STEP_TICK_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_motor_run_step_tick_request__get_packed_size
+ (const StubMotorRunStepTickRequest *message)
+{
+ assert(message->base.descriptor == &stub_motor_run_step_tick_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_run_step_tick_request__pack
+ (const StubMotorRunStepTickRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_run_step_tick_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_run_step_tick_request__pack_to_buffer
+ (const StubMotorRunStepTickRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_run_step_tick_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorRunStepTickRequest *
+ stub_motor_run_step_tick_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorRunStepTickRequest *)
+ protobuf_c_message_unpack (&stub_motor_run_step_tick_request__descriptor,
+ allocator, len, data);
+}
+void stub_motor_run_step_tick_request__free_unpacked
+ (StubMotorRunStepTickRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_run_step_tick_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_run_step_tick_request__field_descriptors[3] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorRunStepTickRequest, has_motor_id),
+ offsetof(StubMotorRunStepTickRequest, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Direction",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorRunStepTickRequest, has_direction),
+ offsetof(StubMotorRunStepTickRequest, direction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Speed",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(StubMotorRunStepTickRequest, has_speed),
+ offsetof(StubMotorRunStepTickRequest, speed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_run_step_tick_request__field_indices_by_name[] = {
+ 1, /* field[1] = Direction */
+ 0, /* field[0] = Motor_ID */
+ 2, /* field[2] = Speed */
+};
+static const ProtobufCIntRange stub_motor_run_step_tick_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor stub_motor_run_step_tick_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorRunStepTickRequest",
+ "StubMotorRunStepTickRequest",
+ "StubMotorRunStepTickRequest",
+ "",
+ sizeof(StubMotorRunStepTickRequest),
+ 3,
+ stub_motor_run_step_tick_request__field_descriptors,
+ stub_motor_run_step_tick_request__field_indices_by_name,
+ 1, stub_motor_run_step_tick_request__number_ranges,
+ (ProtobufCMessageInit) stub_motor_run_step_tick_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickRequest.pb-c.h
new file mode 100644
index 000000000..d2efb1df9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickRequest.pb-c.h
@@ -0,0 +1,76 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorRunStepTickRequest.proto */
+
+#ifndef PROTOBUF_C_StubMotorRunStepTickRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorRunStepTickRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorRunStepTickRequest StubMotorRunStepTickRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorRunStepTickRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ protobuf_c_boolean has_direction;
+ protobuf_c_boolean direction;
+ protobuf_c_boolean has_speed;
+ double speed;
+};
+#define STUB_MOTOR_RUN_STEP_TICK_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_run_step_tick_request__descriptor) \
+ , 0, 0, 0, 0, 0, 0 }
+
+
+/* StubMotorRunStepTickRequest methods */
+void stub_motor_run_step_tick_request__init
+ (StubMotorRunStepTickRequest *message);
+size_t stub_motor_run_step_tick_request__get_packed_size
+ (const StubMotorRunStepTickRequest *message);
+size_t stub_motor_run_step_tick_request__pack
+ (const StubMotorRunStepTickRequest *message,
+ uint8_t *out);
+size_t stub_motor_run_step_tick_request__pack_to_buffer
+ (const StubMotorRunStepTickRequest *message,
+ ProtobufCBuffer *buffer);
+StubMotorRunStepTickRequest *
+ stub_motor_run_step_tick_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_run_step_tick_request__free_unpacked
+ (StubMotorRunStepTickRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorRunStepTickRequest_Closure)
+ (const StubMotorRunStepTickRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_run_step_tick_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorRunStepTickRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickResponse.pb-c.c
new file mode 100644
index 000000000..1fa6f484a
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickResponse.pb-c.c
@@ -0,0 +1,183 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorRunStepTickResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorRunStepTickResponse.pb-c.h"
+void stub_motor_run_step_tick_response__init
+ (StubMotorRunStepTickResponse *message)
+{
+ static const StubMotorRunStepTickResponse init_value = STUB_MOTOR_RUN_STEP_TICK_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_motor_run_step_tick_response__get_packed_size
+ (const StubMotorRunStepTickResponse *message)
+{
+ assert(message->base.descriptor == &stub_motor_run_step_tick_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_run_step_tick_response__pack
+ (const StubMotorRunStepTickResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_run_step_tick_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_run_step_tick_response__pack_to_buffer
+ (const StubMotorRunStepTickResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_run_step_tick_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorRunStepTickResponse *
+ stub_motor_run_step_tick_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorRunStepTickResponse *)
+ protobuf_c_message_unpack (&stub_motor_run_step_tick_response__descriptor,
+ allocator, len, data);
+}
+void stub_motor_run_step_tick_response__free_unpacked
+ (StubMotorRunStepTickResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_run_step_tick_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_run_step_tick_response__field_descriptors[8] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorRunStepTickResponse, has_motor_id),
+ offsetof(StubMotorRunStepTickResponse, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Speed",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(StubMotorRunStepTickResponse, has_speed),
+ offsetof(StubMotorRunStepTickResponse, speed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status_Reg",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorRunStepTickResponse, has_status_reg),
+ offsetof(StubMotorRunStepTickResponse, status_reg),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Direction",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorRunStepTickResponse, has_direction),
+ offsetof(StubMotorRunStepTickResponse, direction),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Mot_Status",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorRunStepTickResponse, has_mot_status),
+ offsetof(StubMotorRunStepTickResponse, mot_status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "STEP_LOSS_A",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorRunStepTickResponse, has_step_loss_a),
+ offsetof(StubMotorRunStepTickResponse, step_loss_a),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "STEP_LOSS_B",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorRunStepTickResponse, has_step_loss_b),
+ offsetof(StubMotorRunStepTickResponse, step_loss_b),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "BUSY",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorRunStepTickResponse, has_busy),
+ offsetof(StubMotorRunStepTickResponse, busy),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_run_step_tick_response__field_indices_by_name[] = {
+ 7, /* field[7] = BUSY */
+ 3, /* field[3] = Direction */
+ 4, /* field[4] = Mot_Status */
+ 0, /* field[0] = Motor_ID */
+ 5, /* field[5] = STEP_LOSS_A */
+ 6, /* field[6] = STEP_LOSS_B */
+ 1, /* field[1] = Speed */
+ 2, /* field[2] = Status_Reg */
+};
+static const ProtobufCIntRange stub_motor_run_step_tick_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 8 }
+};
+const ProtobufCMessageDescriptor stub_motor_run_step_tick_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorRunStepTickResponse",
+ "StubMotorRunStepTickResponse",
+ "StubMotorRunStepTickResponse",
+ "",
+ sizeof(StubMotorRunStepTickResponse),
+ 8,
+ stub_motor_run_step_tick_response__field_descriptors,
+ stub_motor_run_step_tick_response__field_indices_by_name,
+ 1, stub_motor_run_step_tick_response__number_ranges,
+ (ProtobufCMessageInit) stub_motor_run_step_tick_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickResponse.pb-c.h
new file mode 100644
index 000000000..5541f9b82
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorRunStepTickResponse.pb-c.h
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorRunStepTickResponse.proto */
+
+#ifndef PROTOBUF_C_StubMotorRunStepTickResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorRunStepTickResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorRunStepTickResponse StubMotorRunStepTickResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorRunStepTickResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ protobuf_c_boolean has_speed;
+ double speed;
+ protobuf_c_boolean has_status_reg;
+ uint32_t status_reg;
+ /*
+ * Reverse / Forward
+ */
+ protobuf_c_boolean has_direction;
+ protobuf_c_boolean direction;
+ /*
+ *Stopped / Acceleration / Deceleration / Constant speed
+ */
+ protobuf_c_boolean has_mot_status;
+ uint32_t mot_status;
+ protobuf_c_boolean has_step_loss_a;
+ protobuf_c_boolean step_loss_a;
+ protobuf_c_boolean has_step_loss_b;
+ protobuf_c_boolean step_loss_b;
+ protobuf_c_boolean has_busy;
+ protobuf_c_boolean busy;
+};
+#define STUB_MOTOR_RUN_STEP_TICK_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_run_step_tick_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubMotorRunStepTickResponse methods */
+void stub_motor_run_step_tick_response__init
+ (StubMotorRunStepTickResponse *message);
+size_t stub_motor_run_step_tick_response__get_packed_size
+ (const StubMotorRunStepTickResponse *message);
+size_t stub_motor_run_step_tick_response__pack
+ (const StubMotorRunStepTickResponse *message,
+ uint8_t *out);
+size_t stub_motor_run_step_tick_response__pack_to_buffer
+ (const StubMotorRunStepTickResponse *message,
+ ProtobufCBuffer *buffer);
+StubMotorRunStepTickResponse *
+ stub_motor_run_step_tick_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_run_step_tick_response__free_unpacked
+ (StubMotorRunStepTickResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorRunStepTickResponse_Closure)
+ (const StubMotorRunStepTickResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_run_step_tick_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorRunStepTickResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedRequest.pb-c.c
new file mode 100644
index 000000000..c8acbfdfd
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorSpeedRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorSpeedRequest.pb-c.h"
+void stub_motor_speed_request__init
+ (StubMotorSpeedRequest *message)
+{
+ static const StubMotorSpeedRequest init_value = STUB_MOTOR_SPEED_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_motor_speed_request__get_packed_size
+ (const StubMotorSpeedRequest *message)
+{
+ assert(message->base.descriptor == &stub_motor_speed_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_speed_request__pack
+ (const StubMotorSpeedRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_speed_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_speed_request__pack_to_buffer
+ (const StubMotorSpeedRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_speed_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorSpeedRequest *
+ stub_motor_speed_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorSpeedRequest *)
+ protobuf_c_message_unpack (&stub_motor_speed_request__descriptor,
+ allocator, len, data);
+}
+void stub_motor_speed_request__free_unpacked
+ (StubMotorSpeedRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_speed_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_speed_request__field_descriptors[1] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorSpeedRequest, has_motor_id),
+ offsetof(StubMotorSpeedRequest, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_speed_request__field_indices_by_name[] = {
+ 0, /* field[0] = Motor_ID */
+};
+static const ProtobufCIntRange stub_motor_speed_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor stub_motor_speed_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorSpeedRequest",
+ "StubMotorSpeedRequest",
+ "StubMotorSpeedRequest",
+ "",
+ sizeof(StubMotorSpeedRequest),
+ 1,
+ stub_motor_speed_request__field_descriptors,
+ stub_motor_speed_request__field_indices_by_name,
+ 1, stub_motor_speed_request__number_ranges,
+ (ProtobufCMessageInit) stub_motor_speed_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedRequest.pb-c.h
new file mode 100644
index 000000000..537ca4da6
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedRequest.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorSpeedRequest.proto */
+
+#ifndef PROTOBUF_C_StubMotorSpeedRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorSpeedRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorSpeedRequest StubMotorSpeedRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorSpeedRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+};
+#define STUB_MOTOR_SPEED_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_speed_request__descriptor) \
+ , 0, 0 }
+
+
+/* StubMotorSpeedRequest methods */
+void stub_motor_speed_request__init
+ (StubMotorSpeedRequest *message);
+size_t stub_motor_speed_request__get_packed_size
+ (const StubMotorSpeedRequest *message);
+size_t stub_motor_speed_request__pack
+ (const StubMotorSpeedRequest *message,
+ uint8_t *out);
+size_t stub_motor_speed_request__pack_to_buffer
+ (const StubMotorSpeedRequest *message,
+ ProtobufCBuffer *buffer);
+StubMotorSpeedRequest *
+ stub_motor_speed_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_speed_request__free_unpacked
+ (StubMotorSpeedRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorSpeedRequest_Closure)
+ (const StubMotorSpeedRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_speed_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorSpeedRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedResponse.pb-c.c
new file mode 100644
index 000000000..34d826880
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedResponse.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorSpeedResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorSpeedResponse.pb-c.h"
+void stub_motor_speed_response__init
+ (StubMotorSpeedResponse *message)
+{
+ static const StubMotorSpeedResponse init_value = STUB_MOTOR_SPEED_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_motor_speed_response__get_packed_size
+ (const StubMotorSpeedResponse *message)
+{
+ assert(message->base.descriptor == &stub_motor_speed_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_speed_response__pack
+ (const StubMotorSpeedResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_speed_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_speed_response__pack_to_buffer
+ (const StubMotorSpeedResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_speed_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorSpeedResponse *
+ stub_motor_speed_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorSpeedResponse *)
+ protobuf_c_message_unpack (&stub_motor_speed_response__descriptor,
+ allocator, len, data);
+}
+void stub_motor_speed_response__free_unpacked
+ (StubMotorSpeedResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_speed_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_speed_response__field_descriptors[2] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorSpeedResponse, has_motor_id),
+ offsetof(StubMotorSpeedResponse, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Speed",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(StubMotorSpeedResponse, has_speed),
+ offsetof(StubMotorSpeedResponse, speed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_speed_response__field_indices_by_name[] = {
+ 0, /* field[0] = Motor_ID */
+ 1, /* field[1] = Speed */
+};
+static const ProtobufCIntRange stub_motor_speed_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_motor_speed_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorSpeedResponse",
+ "StubMotorSpeedResponse",
+ "StubMotorSpeedResponse",
+ "",
+ sizeof(StubMotorSpeedResponse),
+ 2,
+ stub_motor_speed_response__field_descriptors,
+ stub_motor_speed_response__field_indices_by_name,
+ 1, stub_motor_speed_response__number_ranges,
+ (ProtobufCMessageInit) stub_motor_speed_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedResponse.pb-c.h
new file mode 100644
index 000000000..d113e02d9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorSpeedResponse.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorSpeedResponse.proto */
+
+#ifndef PROTOBUF_C_StubMotorSpeedResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorSpeedResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorSpeedResponse StubMotorSpeedResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorSpeedResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ protobuf_c_boolean has_speed;
+ double speed;
+};
+#define STUB_MOTOR_SPEED_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_speed_response__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* StubMotorSpeedResponse methods */
+void stub_motor_speed_response__init
+ (StubMotorSpeedResponse *message);
+size_t stub_motor_speed_response__get_packed_size
+ (const StubMotorSpeedResponse *message);
+size_t stub_motor_speed_response__pack
+ (const StubMotorSpeedResponse *message,
+ uint8_t *out);
+size_t stub_motor_speed_response__pack_to_buffer
+ (const StubMotorSpeedResponse *message,
+ ProtobufCBuffer *buffer);
+StubMotorSpeedResponse *
+ stub_motor_speed_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_speed_response__free_unpacked
+ (StubMotorSpeedResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorSpeedResponse_Closure)
+ (const StubMotorSpeedResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_speed_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorSpeedResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusRequest.pb-c.c
new file mode 100644
index 000000000..21ff45bab
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorStatusRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorStatusRequest.pb-c.h"
+void stub_motor_status_request__init
+ (StubMotorStatusRequest *message)
+{
+ static const StubMotorStatusRequest init_value = STUB_MOTOR_STATUS_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_motor_status_request__get_packed_size
+ (const StubMotorStatusRequest *message)
+{
+ assert(message->base.descriptor == &stub_motor_status_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_status_request__pack
+ (const StubMotorStatusRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_status_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_status_request__pack_to_buffer
+ (const StubMotorStatusRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_status_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorStatusRequest *
+ stub_motor_status_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorStatusRequest *)
+ protobuf_c_message_unpack (&stub_motor_status_request__descriptor,
+ allocator, len, data);
+}
+void stub_motor_status_request__free_unpacked
+ (StubMotorStatusRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_status_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_status_request__field_descriptors[2] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorStatusRequest, has_motor_id),
+ offsetof(StubMotorStatusRequest, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ClearStatus",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusRequest, has_clearstatus),
+ offsetof(StubMotorStatusRequest, clearstatus),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_status_request__field_indices_by_name[] = {
+ 1, /* field[1] = ClearStatus */
+ 0, /* field[0] = Motor_ID */
+};
+static const ProtobufCIntRange stub_motor_status_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_motor_status_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorStatusRequest",
+ "StubMotorStatusRequest",
+ "StubMotorStatusRequest",
+ "",
+ sizeof(StubMotorStatusRequest),
+ 2,
+ stub_motor_status_request__field_descriptors,
+ stub_motor_status_request__field_indices_by_name,
+ 1, stub_motor_status_request__number_ranges,
+ (ProtobufCMessageInit) stub_motor_status_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusRequest.pb-c.h
new file mode 100644
index 000000000..84fbd6080
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusRequest.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorStatusRequest.proto */
+
+#ifndef PROTOBUF_C_StubMotorStatusRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorStatusRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorStatusRequest StubMotorStatusRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorStatusRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ protobuf_c_boolean has_clearstatus;
+ protobuf_c_boolean clearstatus;
+};
+#define STUB_MOTOR_STATUS_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_status_request__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* StubMotorStatusRequest methods */
+void stub_motor_status_request__init
+ (StubMotorStatusRequest *message);
+size_t stub_motor_status_request__get_packed_size
+ (const StubMotorStatusRequest *message);
+size_t stub_motor_status_request__pack
+ (const StubMotorStatusRequest *message,
+ uint8_t *out);
+size_t stub_motor_status_request__pack_to_buffer
+ (const StubMotorStatusRequest *message,
+ ProtobufCBuffer *buffer);
+StubMotorStatusRequest *
+ stub_motor_status_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_status_request__free_unpacked
+ (StubMotorStatusRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorStatusRequest_Closure)
+ (const StubMotorStatusRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_status_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorStatusRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusResponse.pb-c.c
new file mode 100644
index 000000000..9236abdea
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusResponse.pb-c.c
@@ -0,0 +1,287 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorStatusResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorStatusResponse.pb-c.h"
+void stub_motor_status_response__init
+ (StubMotorStatusResponse *message)
+{
+ static const StubMotorStatusResponse init_value = STUB_MOTOR_STATUS_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_motor_status_response__get_packed_size
+ (const StubMotorStatusResponse *message)
+{
+ assert(message->base.descriptor == &stub_motor_status_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_status_response__pack
+ (const StubMotorStatusResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_status_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_status_response__pack_to_buffer
+ (const StubMotorStatusResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_status_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorStatusResponse *
+ stub_motor_status_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorStatusResponse *)
+ protobuf_c_message_unpack (&stub_motor_status_response__descriptor,
+ allocator, len, data);
+}
+void stub_motor_status_response__free_unpacked
+ (StubMotorStatusResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_status_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_status_response__field_descriptors[16] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorStatusResponse, has_motor_id),
+ offsetof(StubMotorStatusResponse, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SCK_MOD",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusResponse, has_sck_mod),
+ offsetof(StubMotorStatusResponse, sck_mod),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "STEP_LOSS_B",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusResponse, has_step_loss_b),
+ offsetof(StubMotorStatusResponse, step_loss_b),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "STEP_LOSS_A",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusResponse, has_step_loss_a),
+ offsetof(StubMotorStatusResponse, step_loss_a),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "OCD",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusResponse, has_ocd),
+ offsetof(StubMotorStatusResponse, ocd),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TH_SD",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusResponse, has_th_sd),
+ offsetof(StubMotorStatusResponse, th_sd),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "TH_WRN",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusResponse, has_th_wrn),
+ offsetof(StubMotorStatusResponse, th_wrn),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "UVLO",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusResponse, has_uvlo),
+ offsetof(StubMotorStatusResponse, uvlo),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "WRONG_CMD",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusResponse, has_wrong_cmd),
+ offsetof(StubMotorStatusResponse, wrong_cmd),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "NOTPERF_CMD",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusResponse, has_notperf_cmd),
+ offsetof(StubMotorStatusResponse, notperf_cmd),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MOT_STATUS",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorStatusResponse, has_mot_status),
+ offsetof(StubMotorStatusResponse, mot_status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "DIR",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusResponse, has_dir),
+ offsetof(StubMotorStatusResponse, dir),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SW_EVN",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusResponse, has_sw_evn),
+ offsetof(StubMotorStatusResponse, sw_evn),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SW_F",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusResponse, has_sw_f),
+ offsetof(StubMotorStatusResponse, sw_f),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "BUSY",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusResponse, has_busy),
+ offsetof(StubMotorStatusResponse, busy),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HiZ",
+ 16,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStatusResponse, has_hiz),
+ offsetof(StubMotorStatusResponse, hiz),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_status_response__field_indices_by_name[] = {
+ 14, /* field[14] = BUSY */
+ 11, /* field[11] = DIR */
+ 15, /* field[15] = HiZ */
+ 10, /* field[10] = MOT_STATUS */
+ 0, /* field[0] = Motor_ID */
+ 9, /* field[9] = NOTPERF_CMD */
+ 4, /* field[4] = OCD */
+ 1, /* field[1] = SCK_MOD */
+ 3, /* field[3] = STEP_LOSS_A */
+ 2, /* field[2] = STEP_LOSS_B */
+ 12, /* field[12] = SW_EVN */
+ 13, /* field[13] = SW_F */
+ 5, /* field[5] = TH_SD */
+ 6, /* field[6] = TH_WRN */
+ 7, /* field[7] = UVLO */
+ 8, /* field[8] = WRONG_CMD */
+};
+static const ProtobufCIntRange stub_motor_status_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 16 }
+};
+const ProtobufCMessageDescriptor stub_motor_status_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorStatusResponse",
+ "StubMotorStatusResponse",
+ "StubMotorStatusResponse",
+ "",
+ sizeof(StubMotorStatusResponse),
+ 16,
+ stub_motor_status_response__field_descriptors,
+ stub_motor_status_response__field_indices_by_name,
+ 1, stub_motor_status_response__number_ranges,
+ (ProtobufCMessageInit) stub_motor_status_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusResponse.pb-c.h
new file mode 100644
index 000000000..440830b3b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStatusResponse.pb-c.h
@@ -0,0 +1,102 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorStatusResponse.proto */
+
+#ifndef PROTOBUF_C_StubMotorStatusResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorStatusResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorStatusResponse StubMotorStatusResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorStatusResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ protobuf_c_boolean has_sck_mod;
+ protobuf_c_boolean sck_mod;
+ protobuf_c_boolean has_step_loss_b;
+ protobuf_c_boolean step_loss_b;
+ protobuf_c_boolean has_step_loss_a;
+ protobuf_c_boolean step_loss_a;
+ protobuf_c_boolean has_ocd;
+ protobuf_c_boolean ocd;
+ protobuf_c_boolean has_th_sd;
+ protobuf_c_boolean th_sd;
+ protobuf_c_boolean has_th_wrn;
+ protobuf_c_boolean th_wrn;
+ protobuf_c_boolean has_uvlo;
+ protobuf_c_boolean uvlo;
+ protobuf_c_boolean has_wrong_cmd;
+ protobuf_c_boolean wrong_cmd;
+ protobuf_c_boolean has_notperf_cmd;
+ protobuf_c_boolean notperf_cmd;
+ protobuf_c_boolean has_mot_status;
+ uint32_t mot_status;
+ protobuf_c_boolean has_dir;
+ protobuf_c_boolean dir;
+ protobuf_c_boolean has_sw_evn;
+ protobuf_c_boolean sw_evn;
+ protobuf_c_boolean has_sw_f;
+ protobuf_c_boolean sw_f;
+ protobuf_c_boolean has_busy;
+ protobuf_c_boolean busy;
+ protobuf_c_boolean has_hiz;
+ protobuf_c_boolean hiz;
+};
+#define STUB_MOTOR_STATUS_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_status_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubMotorStatusResponse methods */
+void stub_motor_status_response__init
+ (StubMotorStatusResponse *message);
+size_t stub_motor_status_response__get_packed_size
+ (const StubMotorStatusResponse *message);
+size_t stub_motor_status_response__pack
+ (const StubMotorStatusResponse *message,
+ uint8_t *out);
+size_t stub_motor_status_response__pack_to_buffer
+ (const StubMotorStatusResponse *message,
+ ProtobufCBuffer *buffer);
+StubMotorStatusResponse *
+ stub_motor_status_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_status_response__free_unpacked
+ (StubMotorStatusResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorStatusResponse_Closure)
+ (const StubMotorStatusResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_status_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorStatusResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopRequest.pb-c.c
new file mode 100644
index 000000000..1bcdca7be
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorStopRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorStopRequest.pb-c.h"
+void stub_motor_stop_request__init
+ (StubMotorStopRequest *message)
+{
+ static const StubMotorStopRequest init_value = STUB_MOTOR_STOP_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_motor_stop_request__get_packed_size
+ (const StubMotorStopRequest *message)
+{
+ assert(message->base.descriptor == &stub_motor_stop_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_stop_request__pack
+ (const StubMotorStopRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_stop_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_stop_request__pack_to_buffer
+ (const StubMotorStopRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_stop_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorStopRequest *
+ stub_motor_stop_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorStopRequest *)
+ protobuf_c_message_unpack (&stub_motor_stop_request__descriptor,
+ allocator, len, data);
+}
+void stub_motor_stop_request__free_unpacked
+ (StubMotorStopRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_stop_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_stop_request__field_descriptors[2] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorStopRequest, has_motor_id),
+ offsetof(StubMotorStopRequest, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Stop_CMD",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorStopRequest, has_stop_cmd),
+ offsetof(StubMotorStopRequest, stop_cmd),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_stop_request__field_indices_by_name[] = {
+ 0, /* field[0] = Motor_ID */
+ 1, /* field[1] = Stop_CMD */
+};
+static const ProtobufCIntRange stub_motor_stop_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_motor_stop_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorStopRequest",
+ "StubMotorStopRequest",
+ "StubMotorStopRequest",
+ "",
+ sizeof(StubMotorStopRequest),
+ 2,
+ stub_motor_stop_request__field_descriptors,
+ stub_motor_stop_request__field_indices_by_name,
+ 1, stub_motor_stop_request__number_ranges,
+ (ProtobufCMessageInit) stub_motor_stop_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopRequest.pb-c.h
new file mode 100644
index 000000000..2c89fc185
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopRequest.pb-c.h
@@ -0,0 +1,77 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorStopRequest.proto */
+
+#ifndef PROTOBUF_C_StubMotorStopRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorStopRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorStopRequest StubMotorStopRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorStopRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ /*
+ * 1 - Hard_Stop/ 2 - Soft_Stop/ 3 - Hard_Hiz/ 4 - Soft_Hiz
+ */
+ protobuf_c_boolean has_stop_cmd;
+ uint32_t stop_cmd;
+};
+#define STUB_MOTOR_STOP_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_stop_request__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* StubMotorStopRequest methods */
+void stub_motor_stop_request__init
+ (StubMotorStopRequest *message);
+size_t stub_motor_stop_request__get_packed_size
+ (const StubMotorStopRequest *message);
+size_t stub_motor_stop_request__pack
+ (const StubMotorStopRequest *message,
+ uint8_t *out);
+size_t stub_motor_stop_request__pack_to_buffer
+ (const StubMotorStopRequest *message,
+ ProtobufCBuffer *buffer);
+StubMotorStopRequest *
+ stub_motor_stop_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_stop_request__free_unpacked
+ (StubMotorStopRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorStopRequest_Closure)
+ (const StubMotorStopRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_stop_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorStopRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopResponse.pb-c.c
new file mode 100644
index 000000000..60cacfcb7
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopResponse.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorStopResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubMotorStopResponse.pb-c.h"
+void stub_motor_stop_response__init
+ (StubMotorStopResponse *message)
+{
+ static const StubMotorStopResponse init_value = STUB_MOTOR_STOP_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_motor_stop_response__get_packed_size
+ (const StubMotorStopResponse *message)
+{
+ assert(message->base.descriptor == &stub_motor_stop_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_motor_stop_response__pack
+ (const StubMotorStopResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_motor_stop_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_motor_stop_response__pack_to_buffer
+ (const StubMotorStopResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_motor_stop_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubMotorStopResponse *
+ stub_motor_stop_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubMotorStopResponse *)
+ protobuf_c_message_unpack (&stub_motor_stop_response__descriptor,
+ allocator, len, data);
+}
+void stub_motor_stop_response__free_unpacked
+ (StubMotorStopResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_motor_stop_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_motor_stop_response__field_descriptors[4] =
+{
+ {
+ "Motor_ID",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorStopResponse, has_motor_id),
+ offsetof(StubMotorStopResponse, motor_id),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Mot_Status",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubMotorStopResponse, has_mot_status),
+ offsetof(StubMotorStopResponse, mot_status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HiZ",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStopResponse, has_hiz),
+ offsetof(StubMotorStopResponse, hiz),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "BUSY",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubMotorStopResponse, has_busy),
+ offsetof(StubMotorStopResponse, busy),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_motor_stop_response__field_indices_by_name[] = {
+ 3, /* field[3] = BUSY */
+ 2, /* field[2] = HiZ */
+ 1, /* field[1] = Mot_Status */
+ 0, /* field[0] = Motor_ID */
+};
+static const ProtobufCIntRange stub_motor_stop_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_motor_stop_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubMotorStopResponse",
+ "StubMotorStopResponse",
+ "StubMotorStopResponse",
+ "",
+ sizeof(StubMotorStopResponse),
+ 4,
+ stub_motor_stop_response__field_descriptors,
+ stub_motor_stop_response__field_indices_by_name,
+ 1, stub_motor_stop_response__number_ranges,
+ (ProtobufCMessageInit) stub_motor_stop_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopResponse.pb-c.h
new file mode 100644
index 000000000..1a41f11ef
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubMotorStopResponse.pb-c.h
@@ -0,0 +1,84 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubMotorStopResponse.proto */
+
+#ifndef PROTOBUF_C_StubMotorStopResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubMotorStopResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubMotorStopResponse StubMotorStopResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubMotorStopResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_motor_id;
+ uint32_t motor_id;
+ /*
+ * Stopped / Acceleration / Deceleration / Constant speed
+ */
+ protobuf_c_boolean has_mot_status;
+ uint32_t mot_status;
+ /*
+ * 1 - high impedance state.
+ */
+ protobuf_c_boolean has_hiz;
+ protobuf_c_boolean hiz;
+ protobuf_c_boolean has_busy;
+ protobuf_c_boolean busy;
+};
+#define STUB_MOTOR_STOP_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_motor_stop_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubMotorStopResponse methods */
+void stub_motor_stop_response__init
+ (StubMotorStopResponse *message);
+size_t stub_motor_stop_response__get_packed_size
+ (const StubMotorStopResponse *message);
+size_t stub_motor_stop_response__pack
+ (const StubMotorStopResponse *message,
+ uint8_t *out);
+size_t stub_motor_stop_response__pack_to_buffer
+ (const StubMotorStopResponse *message,
+ ProtobufCBuffer *buffer);
+StubMotorStopResponse *
+ stub_motor_stop_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_motor_stop_response__free_unpacked
+ (StubMotorStopResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubMotorStopResponse_Closure)
+ (const StubMotorStopResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_motor_stop_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubMotorStopResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchRequest.pb-c.c
new file mode 100644
index 000000000..bd4187588
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubOptLimitSwitchRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubOptLimitSwitchRequest.pb-c.h"
+void stub_opt_limit_switch_request__init
+ (StubOptLimitSwitchRequest *message)
+{
+ static const StubOptLimitSwitchRequest init_value = STUB_OPT_LIMIT_SWITCH_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_opt_limit_switch_request__get_packed_size
+ (const StubOptLimitSwitchRequest *message)
+{
+ assert(message->base.descriptor == &stub_opt_limit_switch_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_opt_limit_switch_request__pack
+ (const StubOptLimitSwitchRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_opt_limit_switch_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_opt_limit_switch_request__pack_to_buffer
+ (const StubOptLimitSwitchRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_opt_limit_switch_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubOptLimitSwitchRequest *
+ stub_opt_limit_switch_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubOptLimitSwitchRequest *)
+ protobuf_c_message_unpack (&stub_opt_limit_switch_request__descriptor,
+ allocator, len, data);
+}
+void stub_opt_limit_switch_request__free_unpacked
+ (StubOptLimitSwitchRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_opt_limit_switch_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_opt_limit_switch_request__field_descriptors[2] =
+{
+ {
+ "LimitSwitchrId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubOptLimitSwitchRequest, has_limitswitchrid),
+ offsetof(StubOptLimitSwitchRequest, limitswitchrid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "LimitSwitchrDisable",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubOptLimitSwitchRequest, has_limitswitchrdisable),
+ offsetof(StubOptLimitSwitchRequest, limitswitchrdisable),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_opt_limit_switch_request__field_indices_by_name[] = {
+ 1, /* field[1] = LimitSwitchrDisable */
+ 0, /* field[0] = LimitSwitchrId */
+};
+static const ProtobufCIntRange stub_opt_limit_switch_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_opt_limit_switch_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubOptLimitSwitchRequest",
+ "StubOptLimitSwitchRequest",
+ "StubOptLimitSwitchRequest",
+ "",
+ sizeof(StubOptLimitSwitchRequest),
+ 2,
+ stub_opt_limit_switch_request__field_descriptors,
+ stub_opt_limit_switch_request__field_indices_by_name,
+ 1, stub_opt_limit_switch_request__number_ranges,
+ (ProtobufCMessageInit) stub_opt_limit_switch_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchRequest.pb-c.h
new file mode 100644
index 000000000..2008bf5f9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchRequest.pb-c.h
@@ -0,0 +1,80 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubOptLimitSwitchRequest.proto */
+
+#ifndef PROTOBUF_C_StubOptLimitSwitchRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubOptLimitSwitchRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubOptLimitSwitchRequest StubOptLimitSwitchRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubOptLimitSwitchRequest
+{
+ ProtobufCMessage base;
+ /*
+ *0..16
+ */
+ protobuf_c_boolean has_limitswitchrid;
+ uint32_t limitswitchrid;
+ /*
+ * 0 - Enable 1 - Disable
+ */
+ protobuf_c_boolean has_limitswitchrdisable;
+ protobuf_c_boolean limitswitchrdisable;
+};
+#define STUB_OPT_LIMIT_SWITCH_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_opt_limit_switch_request__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* StubOptLimitSwitchRequest methods */
+void stub_opt_limit_switch_request__init
+ (StubOptLimitSwitchRequest *message);
+size_t stub_opt_limit_switch_request__get_packed_size
+ (const StubOptLimitSwitchRequest *message);
+size_t stub_opt_limit_switch_request__pack
+ (const StubOptLimitSwitchRequest *message,
+ uint8_t *out);
+size_t stub_opt_limit_switch_request__pack_to_buffer
+ (const StubOptLimitSwitchRequest *message,
+ ProtobufCBuffer *buffer);
+StubOptLimitSwitchRequest *
+ stub_opt_limit_switch_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_opt_limit_switch_request__free_unpacked
+ (StubOptLimitSwitchRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubOptLimitSwitchRequest_Closure)
+ (const StubOptLimitSwitchRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_opt_limit_switch_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubOptLimitSwitchRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchResponse.pb-c.c
new file mode 100644
index 000000000..1f8445842
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchResponse.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubOptLimitSwitchResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubOptLimitSwitchResponse.pb-c.h"
+void stub_opt_limit_switch_response__init
+ (StubOptLimitSwitchResponse *message)
+{
+ static const StubOptLimitSwitchResponse init_value = STUB_OPT_LIMIT_SWITCH_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_opt_limit_switch_response__get_packed_size
+ (const StubOptLimitSwitchResponse *message)
+{
+ assert(message->base.descriptor == &stub_opt_limit_switch_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_opt_limit_switch_response__pack
+ (const StubOptLimitSwitchResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_opt_limit_switch_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_opt_limit_switch_response__pack_to_buffer
+ (const StubOptLimitSwitchResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_opt_limit_switch_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubOptLimitSwitchResponse *
+ stub_opt_limit_switch_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubOptLimitSwitchResponse *)
+ protobuf_c_message_unpack (&stub_opt_limit_switch_response__descriptor,
+ allocator, len, data);
+}
+void stub_opt_limit_switch_response__free_unpacked
+ (StubOptLimitSwitchResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_opt_limit_switch_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_opt_limit_switch_response__field_descriptors[4] =
+{
+ {
+ "LimitSwitchrId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubOptLimitSwitchResponse, has_limitswitchrid),
+ offsetof(StubOptLimitSwitchResponse, limitswitchrid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "LimitSwitchDitection",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubOptLimitSwitchResponse, has_limitswitchditection),
+ offsetof(StubOptLimitSwitchResponse, limitswitchditection),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubOptLimitSwitchResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubOptLimitSwitchResponse, has_statusword),
+ offsetof(StubOptLimitSwitchResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_opt_limit_switch_response__field_indices_by_name[] = {
+ 1, /* field[1] = LimitSwitchDitection */
+ 0, /* field[0] = LimitSwitchrId */
+ 2, /* field[2] = Status */
+ 3, /* field[3] = StatusWord */
+};
+static const ProtobufCIntRange stub_opt_limit_switch_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_opt_limit_switch_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubOptLimitSwitchResponse",
+ "StubOptLimitSwitchResponse",
+ "StubOptLimitSwitchResponse",
+ "",
+ sizeof(StubOptLimitSwitchResponse),
+ 4,
+ stub_opt_limit_switch_response__field_descriptors,
+ stub_opt_limit_switch_response__field_indices_by_name,
+ 1, stub_opt_limit_switch_response__number_ranges,
+ (ProtobufCMessageInit) stub_opt_limit_switch_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchResponse.pb-c.h
new file mode 100644
index 000000000..74ebe93d8
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubOptLimitSwitchResponse.pb-c.h
@@ -0,0 +1,88 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubOptLimitSwitchResponse.proto */
+
+#ifndef PROTOBUF_C_StubOptLimitSwitchResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubOptLimitSwitchResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubOptLimitSwitchResponse StubOptLimitSwitchResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubOptLimitSwitchResponse
+{
+ ProtobufCMessage base;
+ /*
+ *0..19
+ */
+ protobuf_c_boolean has_limitswitchrid;
+ uint32_t limitswitchrid;
+ /*
+ */
+ protobuf_c_boolean has_limitswitchditection;
+ protobuf_c_boolean limitswitchditection;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_OPT_LIMIT_SWITCH_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_opt_limit_switch_response__descriptor) \
+ , 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StubOptLimitSwitchResponse methods */
+void stub_opt_limit_switch_response__init
+ (StubOptLimitSwitchResponse *message);
+size_t stub_opt_limit_switch_response__get_packed_size
+ (const StubOptLimitSwitchResponse *message);
+size_t stub_opt_limit_switch_response__pack
+ (const StubOptLimitSwitchResponse *message,
+ uint8_t *out);
+size_t stub_opt_limit_switch_response__pack_to_buffer
+ (const StubOptLimitSwitchResponse *message,
+ ProtobufCBuffer *buffer);
+StubOptLimitSwitchResponse *
+ stub_opt_limit_switch_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_opt_limit_switch_response__free_unpacked
+ (StubOptLimitSwitchResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubOptLimitSwitchResponse_Closure)
+ (const StubOptLimitSwitchResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_opt_limit_switch_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubOptLimitSwitchResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionRequest.pb-c.c
new file mode 100644
index 000000000..d8e11e383
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubReadEmbeddedVersionRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubReadEmbeddedVersionRequest.pb-c.h"
+void stub_read_embedded_version_request__init
+ (StubReadEmbeddedVersionRequest *message)
+{
+ static const StubReadEmbeddedVersionRequest init_value = STUB_READ_EMBEDDED_VERSION_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_read_embedded_version_request__get_packed_size
+ (const StubReadEmbeddedVersionRequest *message)
+{
+ assert(message->base.descriptor == &stub_read_embedded_version_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_read_embedded_version_request__pack
+ (const StubReadEmbeddedVersionRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_read_embedded_version_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_read_embedded_version_request__pack_to_buffer
+ (const StubReadEmbeddedVersionRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_read_embedded_version_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubReadEmbeddedVersionRequest *
+ stub_read_embedded_version_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubReadEmbeddedVersionRequest *)
+ protobuf_c_message_unpack (&stub_read_embedded_version_request__descriptor,
+ allocator, len, data);
+}
+void stub_read_embedded_version_request__free_unpacked
+ (StubReadEmbeddedVersionRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_read_embedded_version_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define stub_read_embedded_version_request__field_descriptors NULL
+#define stub_read_embedded_version_request__field_indices_by_name NULL
+#define stub_read_embedded_version_request__number_ranges NULL
+const ProtobufCMessageDescriptor stub_read_embedded_version_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubReadEmbeddedVersionRequest",
+ "StubReadEmbeddedVersionRequest",
+ "StubReadEmbeddedVersionRequest",
+ "",
+ sizeof(StubReadEmbeddedVersionRequest),
+ 0,
+ stub_read_embedded_version_request__field_descriptors,
+ stub_read_embedded_version_request__field_indices_by_name,
+ 0, stub_read_embedded_version_request__number_ranges,
+ (ProtobufCMessageInit) stub_read_embedded_version_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionRequest.pb-c.h
new file mode 100644
index 000000000..743536ba9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubReadEmbeddedVersionRequest.proto */
+
+#ifndef PROTOBUF_C_StubReadEmbeddedVersionRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubReadEmbeddedVersionRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubReadEmbeddedVersionRequest StubReadEmbeddedVersionRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubReadEmbeddedVersionRequest
+{
+ ProtobufCMessage base;
+};
+#define STUB_READ_EMBEDDED_VERSION_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_read_embedded_version_request__descriptor) \
+ }
+
+
+/* StubReadEmbeddedVersionRequest methods */
+void stub_read_embedded_version_request__init
+ (StubReadEmbeddedVersionRequest *message);
+size_t stub_read_embedded_version_request__get_packed_size
+ (const StubReadEmbeddedVersionRequest *message);
+size_t stub_read_embedded_version_request__pack
+ (const StubReadEmbeddedVersionRequest *message,
+ uint8_t *out);
+size_t stub_read_embedded_version_request__pack_to_buffer
+ (const StubReadEmbeddedVersionRequest *message,
+ ProtobufCBuffer *buffer);
+StubReadEmbeddedVersionRequest *
+ stub_read_embedded_version_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_read_embedded_version_request__free_unpacked
+ (StubReadEmbeddedVersionRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubReadEmbeddedVersionRequest_Closure)
+ (const StubReadEmbeddedVersionRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_read_embedded_version_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubReadEmbeddedVersionRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionResponse.pb-c.c
new file mode 100644
index 000000000..039aa440d
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionResponse.pb-c.c
@@ -0,0 +1,144 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubReadEmbeddedVersionResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubReadEmbeddedVersionResponse.pb-c.h"
+void stub_read_embedded_version_response__init
+ (StubReadEmbeddedVersionResponse *message)
+{
+ static const StubReadEmbeddedVersionResponse init_value = STUB_READ_EMBEDDED_VERSION_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_read_embedded_version_response__get_packed_size
+ (const StubReadEmbeddedVersionResponse *message)
+{
+ assert(message->base.descriptor == &stub_read_embedded_version_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_read_embedded_version_response__pack
+ (const StubReadEmbeddedVersionResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_read_embedded_version_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_read_embedded_version_response__pack_to_buffer
+ (const StubReadEmbeddedVersionResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_read_embedded_version_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubReadEmbeddedVersionResponse *
+ stub_read_embedded_version_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubReadEmbeddedVersionResponse *)
+ protobuf_c_message_unpack (&stub_read_embedded_version_response__descriptor,
+ allocator, len, data);
+}
+void stub_read_embedded_version_response__free_unpacked
+ (StubReadEmbeddedVersionResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_read_embedded_version_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_read_embedded_version_response__field_descriptors[5] =
+{
+ {
+ "VerMajor",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubReadEmbeddedVersionResponse, has_vermajor),
+ offsetof(StubReadEmbeddedVersionResponse, vermajor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "VerMinor",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubReadEmbeddedVersionResponse, has_verminor),
+ offsetof(StubReadEmbeddedVersionResponse, verminor),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "VerPatch",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubReadEmbeddedVersionResponse, has_verpatch),
+ offsetof(StubReadEmbeddedVersionResponse, verpatch),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "VerBuild",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubReadEmbeddedVersionResponse, has_verbuild),
+ offsetof(StubReadEmbeddedVersionResponse, verbuild),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Version",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubReadEmbeddedVersionResponse, version),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_read_embedded_version_response__field_indices_by_name[] = {
+ 3, /* field[3] = VerBuild */
+ 0, /* field[0] = VerMajor */
+ 1, /* field[1] = VerMinor */
+ 2, /* field[2] = VerPatch */
+ 4, /* field[4] = Version */
+};
+static const ProtobufCIntRange stub_read_embedded_version_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor stub_read_embedded_version_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubReadEmbeddedVersionResponse",
+ "StubReadEmbeddedVersionResponse",
+ "StubReadEmbeddedVersionResponse",
+ "",
+ sizeof(StubReadEmbeddedVersionResponse),
+ 5,
+ stub_read_embedded_version_response__field_descriptors,
+ stub_read_embedded_version_response__field_indices_by_name,
+ 1, stub_read_embedded_version_response__number_ranges,
+ (ProtobufCMessageInit) stub_read_embedded_version_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionResponse.pb-c.h
new file mode 100644
index 000000000..3090d949a
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubReadEmbeddedVersionResponse.pb-c.h
@@ -0,0 +1,79 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubReadEmbeddedVersionResponse.proto */
+
+#ifndef PROTOBUF_C_StubReadEmbeddedVersionResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubReadEmbeddedVersionResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubReadEmbeddedVersionResponse StubReadEmbeddedVersionResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubReadEmbeddedVersionResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_vermajor;
+ uint32_t vermajor;
+ protobuf_c_boolean has_verminor;
+ uint32_t verminor;
+ protobuf_c_boolean has_verpatch;
+ uint32_t verpatch;
+ protobuf_c_boolean has_verbuild;
+ uint32_t verbuild;
+ char *version;
+};
+#define STUB_READ_EMBEDDED_VERSION_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_read_embedded_version_response__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, NULL }
+
+
+/* StubReadEmbeddedVersionResponse methods */
+void stub_read_embedded_version_response__init
+ (StubReadEmbeddedVersionResponse *message);
+size_t stub_read_embedded_version_response__get_packed_size
+ (const StubReadEmbeddedVersionResponse *message);
+size_t stub_read_embedded_version_response__pack
+ (const StubReadEmbeddedVersionResponse *message,
+ uint8_t *out);
+size_t stub_read_embedded_version_response__pack_to_buffer
+ (const StubReadEmbeddedVersionResponse *message,
+ ProtobufCBuffer *buffer);
+StubReadEmbeddedVersionResponse *
+ stub_read_embedded_version_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_read_embedded_version_response__free_unpacked
+ (StubReadEmbeddedVersionResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubReadEmbeddedVersionResponse_Closure)
+ (const StubReadEmbeddedVersionResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_read_embedded_version_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubReadEmbeddedVersionResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageRequest.pb-c.c
new file mode 100644
index 000000000..27354512b
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubRealTimeUsageRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubRealTimeUsageRequest.pb-c.h"
+void stub_real_time_usage_request__init
+ (StubRealTimeUsageRequest *message)
+{
+ static const StubRealTimeUsageRequest init_value = STUB_REAL_TIME_USAGE_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_real_time_usage_request__get_packed_size
+ (const StubRealTimeUsageRequest *message)
+{
+ assert(message->base.descriptor == &stub_real_time_usage_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_real_time_usage_request__pack
+ (const StubRealTimeUsageRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_real_time_usage_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_real_time_usage_request__pack_to_buffer
+ (const StubRealTimeUsageRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_real_time_usage_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubRealTimeUsageRequest *
+ stub_real_time_usage_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubRealTimeUsageRequest *)
+ protobuf_c_message_unpack (&stub_real_time_usage_request__descriptor,
+ allocator, len, data);
+}
+void stub_real_time_usage_request__free_unpacked
+ (StubRealTimeUsageRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_real_time_usage_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define stub_real_time_usage_request__field_descriptors NULL
+#define stub_real_time_usage_request__field_indices_by_name NULL
+#define stub_real_time_usage_request__number_ranges NULL
+const ProtobufCMessageDescriptor stub_real_time_usage_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubRealTimeUsageRequest",
+ "StubRealTimeUsageRequest",
+ "StubRealTimeUsageRequest",
+ "",
+ sizeof(StubRealTimeUsageRequest),
+ 0,
+ stub_real_time_usage_request__field_descriptors,
+ stub_real_time_usage_request__field_indices_by_name,
+ 0, stub_real_time_usage_request__number_ranges,
+ (ProtobufCMessageInit) stub_real_time_usage_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageRequest.pb-c.h
new file mode 100644
index 000000000..e207ebf43
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubRealTimeUsageRequest.proto */
+
+#ifndef PROTOBUF_C_StubRealTimeUsageRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubRealTimeUsageRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubRealTimeUsageRequest StubRealTimeUsageRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubRealTimeUsageRequest
+{
+ ProtobufCMessage base;
+};
+#define STUB_REAL_TIME_USAGE_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_real_time_usage_request__descriptor) \
+ }
+
+
+/* StubRealTimeUsageRequest methods */
+void stub_real_time_usage_request__init
+ (StubRealTimeUsageRequest *message);
+size_t stub_real_time_usage_request__get_packed_size
+ (const StubRealTimeUsageRequest *message);
+size_t stub_real_time_usage_request__pack
+ (const StubRealTimeUsageRequest *message,
+ uint8_t *out);
+size_t stub_real_time_usage_request__pack_to_buffer
+ (const StubRealTimeUsageRequest *message,
+ ProtobufCBuffer *buffer);
+StubRealTimeUsageRequest *
+ stub_real_time_usage_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_real_time_usage_request__free_unpacked
+ (StubRealTimeUsageRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubRealTimeUsageRequest_Closure)
+ (const StubRealTimeUsageRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_real_time_usage_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubRealTimeUsageRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageResponse.pb-c.c
new file mode 100644
index 000000000..2e06502cb
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageResponse.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubRealTimeUsageResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubRealTimeUsageResponse.pb-c.h"
+void stub_real_time_usage_response__init
+ (StubRealTimeUsageResponse *message)
+{
+ static const StubRealTimeUsageResponse init_value = STUB_REAL_TIME_USAGE_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_real_time_usage_response__get_packed_size
+ (const StubRealTimeUsageResponse *message)
+{
+ assert(message->base.descriptor == &stub_real_time_usage_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_real_time_usage_response__pack
+ (const StubRealTimeUsageResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_real_time_usage_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_real_time_usage_response__pack_to_buffer
+ (const StubRealTimeUsageResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_real_time_usage_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubRealTimeUsageResponse *
+ stub_real_time_usage_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubRealTimeUsageResponse *)
+ protobuf_c_message_unpack (&stub_real_time_usage_response__descriptor,
+ allocator, len, data);
+}
+void stub_real_time_usage_response__free_unpacked
+ (StubRealTimeUsageResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_real_time_usage_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_real_time_usage_response__field_descriptors[1] =
+{
+ {
+ "Percentile",
+ 1,
+ PROTOBUF_C_LABEL_REPEATED,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubRealTimeUsageResponse, n_percentile),
+ offsetof(StubRealTimeUsageResponse, percentile),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_real_time_usage_response__field_indices_by_name[] = {
+ 0, /* field[0] = Percentile */
+};
+static const ProtobufCIntRange stub_real_time_usage_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor stub_real_time_usage_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubRealTimeUsageResponse",
+ "StubRealTimeUsageResponse",
+ "StubRealTimeUsageResponse",
+ "",
+ sizeof(StubRealTimeUsageResponse),
+ 1,
+ stub_real_time_usage_response__field_descriptors,
+ stub_real_time_usage_response__field_indices_by_name,
+ 1, stub_real_time_usage_response__number_ranges,
+ (ProtobufCMessageInit) stub_real_time_usage_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageResponse.pb-c.h
new file mode 100644
index 000000000..2da252f81
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubRealTimeUsageResponse.pb-c.h
@@ -0,0 +1,75 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubRealTimeUsageResponse.proto */
+
+#ifndef PROTOBUF_C_StubRealTimeUsageResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubRealTimeUsageResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubRealTimeUsageResponse StubRealTimeUsageResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubRealTimeUsageResponse
+{
+ ProtobufCMessage base;
+ /*
+ * 0..100
+ */
+ size_t n_percentile;
+ uint32_t *percentile;
+};
+#define STUB_REAL_TIME_USAGE_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_real_time_usage_response__descriptor) \
+ , 0,NULL }
+
+
+/* StubRealTimeUsageResponse methods */
+void stub_real_time_usage_response__init
+ (StubRealTimeUsageResponse *message);
+size_t stub_real_time_usage_response__get_packed_size
+ (const StubRealTimeUsageResponse *message);
+size_t stub_real_time_usage_response__pack
+ (const StubRealTimeUsageResponse *message,
+ uint8_t *out);
+size_t stub_real_time_usage_response__pack_to_buffer
+ (const StubRealTimeUsageResponse *message,
+ ProtobufCBuffer *buffer);
+StubRealTimeUsageResponse *
+ stub_real_time_usage_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_real_time_usage_response__free_unpacked
+ (StubRealTimeUsageResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubRealTimeUsageResponse_Closure)
+ (const StubRealTimeUsageResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_real_time_usage_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubRealTimeUsageResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorRequest.pb-c.c
new file mode 100644
index 000000000..ae9b29573
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubSpeedSensorRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubSpeedSensorRequest.pb-c.h"
+void stub_speed_sensor_request__init
+ (StubSpeedSensorRequest *message)
+{
+ static const StubSpeedSensorRequest init_value = STUB_SPEED_SENSOR_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_speed_sensor_request__get_packed_size
+ (const StubSpeedSensorRequest *message)
+{
+ assert(message->base.descriptor == &stub_speed_sensor_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_speed_sensor_request__pack
+ (const StubSpeedSensorRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_speed_sensor_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_speed_sensor_request__pack_to_buffer
+ (const StubSpeedSensorRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_speed_sensor_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubSpeedSensorRequest *
+ stub_speed_sensor_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubSpeedSensorRequest *)
+ protobuf_c_message_unpack (&stub_speed_sensor_request__descriptor,
+ allocator, len, data);
+}
+void stub_speed_sensor_request__free_unpacked
+ (StubSpeedSensorRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_speed_sensor_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define stub_speed_sensor_request__field_descriptors NULL
+#define stub_speed_sensor_request__field_indices_by_name NULL
+#define stub_speed_sensor_request__number_ranges NULL
+const ProtobufCMessageDescriptor stub_speed_sensor_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubSpeedSensorRequest",
+ "StubSpeedSensorRequest",
+ "StubSpeedSensorRequest",
+ "",
+ sizeof(StubSpeedSensorRequest),
+ 0,
+ stub_speed_sensor_request__field_descriptors,
+ stub_speed_sensor_request__field_indices_by_name,
+ 0, stub_speed_sensor_request__number_ranges,
+ (ProtobufCMessageInit) stub_speed_sensor_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorRequest.pb-c.h
new file mode 100644
index 000000000..1393f5c12
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubSpeedSensorRequest.proto */
+
+#ifndef PROTOBUF_C_StubSpeedSensorRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubSpeedSensorRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubSpeedSensorRequest StubSpeedSensorRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubSpeedSensorRequest
+{
+ ProtobufCMessage base;
+};
+#define STUB_SPEED_SENSOR_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_speed_sensor_request__descriptor) \
+ }
+
+
+/* StubSpeedSensorRequest methods */
+void stub_speed_sensor_request__init
+ (StubSpeedSensorRequest *message);
+size_t stub_speed_sensor_request__get_packed_size
+ (const StubSpeedSensorRequest *message);
+size_t stub_speed_sensor_request__pack
+ (const StubSpeedSensorRequest *message,
+ uint8_t *out);
+size_t stub_speed_sensor_request__pack_to_buffer
+ (const StubSpeedSensorRequest *message,
+ ProtobufCBuffer *buffer);
+StubSpeedSensorRequest *
+ stub_speed_sensor_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_speed_sensor_request__free_unpacked
+ (StubSpeedSensorRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubSpeedSensorRequest_Closure)
+ (const StubSpeedSensorRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_speed_sensor_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubSpeedSensorRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorResponse.pb-c.c
new file mode 100644
index 000000000..8daa3feeb
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorResponse.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubSpeedSensorResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubSpeedSensorResponse.pb-c.h"
+void stub_speed_sensor_response__init
+ (StubSpeedSensorResponse *message)
+{
+ static const StubSpeedSensorResponse init_value = STUB_SPEED_SENSOR_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_speed_sensor_response__get_packed_size
+ (const StubSpeedSensorResponse *message)
+{
+ assert(message->base.descriptor == &stub_speed_sensor_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_speed_sensor_response__pack
+ (const StubSpeedSensorResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_speed_sensor_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_speed_sensor_response__pack_to_buffer
+ (const StubSpeedSensorResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_speed_sensor_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubSpeedSensorResponse *
+ stub_speed_sensor_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubSpeedSensorResponse *)
+ protobuf_c_message_unpack (&stub_speed_sensor_response__descriptor,
+ allocator, len, data);
+}
+void stub_speed_sensor_response__free_unpacked
+ (StubSpeedSensorResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_speed_sensor_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_speed_sensor_response__field_descriptors[1] =
+{
+ {
+ "Speed",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubSpeedSensorResponse, has_speed),
+ offsetof(StubSpeedSensorResponse, speed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_speed_sensor_response__field_indices_by_name[] = {
+ 0, /* field[0] = Speed */
+};
+static const ProtobufCIntRange stub_speed_sensor_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor stub_speed_sensor_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubSpeedSensorResponse",
+ "StubSpeedSensorResponse",
+ "StubSpeedSensorResponse",
+ "",
+ sizeof(StubSpeedSensorResponse),
+ 1,
+ stub_speed_sensor_response__field_descriptors,
+ stub_speed_sensor_response__field_indices_by_name,
+ 1, stub_speed_sensor_response__number_ranges,
+ (ProtobufCMessageInit) stub_speed_sensor_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorResponse.pb-c.h
new file mode 100644
index 000000000..6bc9cfa68
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSpeedSensorResponse.pb-c.h
@@ -0,0 +1,75 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubSpeedSensorResponse.proto */
+
+#ifndef PROTOBUF_C_StubSpeedSensorResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubSpeedSensorResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubSpeedSensorResponse StubSpeedSensorResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubSpeedSensorResponse
+{
+ ProtobufCMessage base;
+ /*
+ *uint32 Speed_Sensor_ID = 1;
+ */
+ protobuf_c_boolean has_speed;
+ uint32_t speed;
+};
+#define STUB_SPEED_SENSOR_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_speed_sensor_response__descriptor) \
+ , 0, 0 }
+
+
+/* StubSpeedSensorResponse methods */
+void stub_speed_sensor_response__init
+ (StubSpeedSensorResponse *message);
+size_t stub_speed_sensor_response__get_packed_size
+ (const StubSpeedSensorResponse *message);
+size_t stub_speed_sensor_response__pack
+ (const StubSpeedSensorResponse *message,
+ uint8_t *out);
+size_t stub_speed_sensor_response__pack_to_buffer
+ (const StubSpeedSensorResponse *message,
+ ProtobufCBuffer *buffer);
+StubSpeedSensorResponse *
+ stub_speed_sensor_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_speed_sensor_response__free_unpacked
+ (StubSpeedSensorResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubSpeedSensorResponse_Closure)
+ (const StubSpeedSensorResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_speed_sensor_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubSpeedSensorResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorRequest.pb-c.c
new file mode 100644
index 000000000..7328bb692
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorRequest.pb-c.c
@@ -0,0 +1,144 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubSteperMotorRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubSteperMotorRequest.pb-c.h"
+void stub_steper_motor_request__init
+ (StubSteperMotorRequest *message)
+{
+ static const StubSteperMotorRequest init_value = STUB_STEPER_MOTOR_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_steper_motor_request__get_packed_size
+ (const StubSteperMotorRequest *message)
+{
+ assert(message->base.descriptor == &stub_steper_motor_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_steper_motor_request__pack
+ (const StubSteperMotorRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_steper_motor_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_steper_motor_request__pack_to_buffer
+ (const StubSteperMotorRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_steper_motor_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubSteperMotorRequest *
+ stub_steper_motor_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubSteperMotorRequest *)
+ protobuf_c_message_unpack (&stub_steper_motor_request__descriptor,
+ allocator, len, data);
+}
+void stub_steper_motor_request__free_unpacked
+ (StubSteperMotorRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_steper_motor_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_steper_motor_request__field_descriptors[5] =
+{
+ {
+ "MotorId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubSteperMotorRequest, has_motorid),
+ offsetof(StubSteperMotorRequest, motorid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Start",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubSteperMotorRequest, has_start),
+ offsetof(StubSteperMotorRequest, start),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SetDirection",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubSteperMotorRequest, has_setdirection),
+ offsetof(StubSteperMotorRequest, setdirection),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SetMicrostepDivision",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubSteperMotorRequest, has_setmicrostepdivision),
+ offsetof(StubSteperMotorRequest, setmicrostepdivision),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "SetSpeed",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(StubSteperMotorRequest, has_setspeed),
+ offsetof(StubSteperMotorRequest, setspeed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_steper_motor_request__field_indices_by_name[] = {
+ 0, /* field[0] = MotorId */
+ 2, /* field[2] = SetDirection */
+ 3, /* field[3] = SetMicrostepDivision */
+ 4, /* field[4] = SetSpeed */
+ 1, /* field[1] = Start */
+};
+static const ProtobufCIntRange stub_steper_motor_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor stub_steper_motor_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubSteperMotorRequest",
+ "StubSteperMotorRequest",
+ "StubSteperMotorRequest",
+ "",
+ sizeof(StubSteperMotorRequest),
+ 5,
+ stub_steper_motor_request__field_descriptors,
+ stub_steper_motor_request__field_indices_by_name,
+ 1, stub_steper_motor_request__number_ranges,
+ (ProtobufCMessageInit) stub_steper_motor_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorRequest.pb-c.h
new file mode 100644
index 000000000..a7a771172
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorRequest.pb-c.h
@@ -0,0 +1,95 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubSteperMotorRequest.proto */
+
+#ifndef PROTOBUF_C_StubSteperMotorRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubSteperMotorRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubSteperMotorRequest StubSteperMotorRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubSteperMotorRequest
+{
+ ProtobufCMessage base;
+ /*
+ *0..19
+ */
+ protobuf_c_boolean has_motorid;
+ uint32_t motorid;
+ /*
+ * 1-start 0-stop
+ */
+ protobuf_c_boolean has_start;
+ protobuf_c_boolean start;
+ /*
+ * 1-cw 0-ccw
+ */
+ protobuf_c_boolean has_setdirection;
+ protobuf_c_boolean setdirection;
+ /*
+ * No. of steps for 360 deg.
+ */
+ protobuf_c_boolean has_setmicrostepdivision;
+ uint32_t setmicrostepdivision;
+ /*
+ * ?
+ */
+ protobuf_c_boolean has_setspeed;
+ int32_t setspeed;
+};
+#define STUB_STEPER_MOTOR_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_steper_motor_request__descriptor) \
+ , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
+
+
+/* StubSteperMotorRequest methods */
+void stub_steper_motor_request__init
+ (StubSteperMotorRequest *message);
+size_t stub_steper_motor_request__get_packed_size
+ (const StubSteperMotorRequest *message);
+size_t stub_steper_motor_request__pack
+ (const StubSteperMotorRequest *message,
+ uint8_t *out);
+size_t stub_steper_motor_request__pack_to_buffer
+ (const StubSteperMotorRequest *message,
+ ProtobufCBuffer *buffer);
+StubSteperMotorRequest *
+ stub_steper_motor_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_steper_motor_request__free_unpacked
+ (StubSteperMotorRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubSteperMotorRequest_Closure)
+ (const StubSteperMotorRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_steper_motor_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubSteperMotorRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorResponse.pb-c.c
new file mode 100644
index 000000000..1d13edf23
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorResponse.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubSteperMotorResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubSteperMotorResponse.pb-c.h"
+void stub_steper_motor_response__init
+ (StubSteperMotorResponse *message)
+{
+ static const StubSteperMotorResponse init_value = STUB_STEPER_MOTOR_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_steper_motor_response__get_packed_size
+ (const StubSteperMotorResponse *message)
+{
+ assert(message->base.descriptor == &stub_steper_motor_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_steper_motor_response__pack
+ (const StubSteperMotorResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_steper_motor_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_steper_motor_response__pack_to_buffer
+ (const StubSteperMotorResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_steper_motor_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubSteperMotorResponse *
+ stub_steper_motor_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubSteperMotorResponse *)
+ protobuf_c_message_unpack (&stub_steper_motor_response__descriptor,
+ allocator, len, data);
+}
+void stub_steper_motor_response__free_unpacked
+ (StubSteperMotorResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_steper_motor_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_steper_motor_response__field_descriptors[4] =
+{
+ {
+ "MotorId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubSteperMotorResponse, has_motorid),
+ offsetof(StubSteperMotorResponse, motorid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MotorVersion",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubSteperMotorResponse, has_motorversion),
+ offsetof(StubSteperMotorResponse, motorversion),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubSteperMotorResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubSteperMotorResponse, has_statusword),
+ offsetof(StubSteperMotorResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_steper_motor_response__field_indices_by_name[] = {
+ 0, /* field[0] = MotorId */
+ 1, /* field[1] = MotorVersion */
+ 2, /* field[2] = Status */
+ 3, /* field[3] = StatusWord */
+};
+static const ProtobufCIntRange stub_steper_motor_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_steper_motor_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubSteperMotorResponse",
+ "StubSteperMotorResponse",
+ "StubSteperMotorResponse",
+ "",
+ sizeof(StubSteperMotorResponse),
+ 4,
+ stub_steper_motor_response__field_descriptors,
+ stub_steper_motor_response__field_indices_by_name,
+ 1, stub_steper_motor_response__number_ranges,
+ (ProtobufCMessageInit) stub_steper_motor_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorResponse.pb-c.h
new file mode 100644
index 000000000..fbe1f63ef
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubSteperMotorResponse.pb-c.h
@@ -0,0 +1,88 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubSteperMotorResponse.proto */
+
+#ifndef PROTOBUF_C_StubSteperMotorResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubSteperMotorResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubSteperMotorResponse StubSteperMotorResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubSteperMotorResponse
+{
+ ProtobufCMessage base;
+ /*
+ *0..19
+ */
+ protobuf_c_boolean has_motorid;
+ uint32_t motorid;
+ /*
+ */
+ protobuf_c_boolean has_motorversion;
+ uint32_t motorversion;
+ /*
+ * Passed / Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_STEPER_MOTOR_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_steper_motor_response__descriptor) \
+ , 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StubSteperMotorResponse methods */
+void stub_steper_motor_response__init
+ (StubSteperMotorResponse *message);
+size_t stub_steper_motor_response__get_packed_size
+ (const StubSteperMotorResponse *message);
+size_t stub_steper_motor_response__pack
+ (const StubSteperMotorResponse *message,
+ uint8_t *out);
+size_t stub_steper_motor_response__pack_to_buffer
+ (const StubSteperMotorResponse *message,
+ ProtobufCBuffer *buffer);
+StubSteperMotorResponse *
+ stub_steper_motor_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_steper_motor_response__free_unpacked
+ (StubSteperMotorResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubSteperMotorResponse_Closure)
+ (const StubSteperMotorResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_steper_motor_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubSteperMotorResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegRequest.pb-c.c
new file mode 100644
index 000000000..0075f3900
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegRequest.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubTivaReadRegRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubTivaReadRegRequest.pb-c.h"
+void stub_tiva_read_reg_request__init
+ (StubTivaReadRegRequest *message)
+{
+ static const StubTivaReadRegRequest init_value = STUB_TIVA_READ_REG_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_tiva_read_reg_request__get_packed_size
+ (const StubTivaReadRegRequest *message)
+{
+ assert(message->base.descriptor == &stub_tiva_read_reg_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_tiva_read_reg_request__pack
+ (const StubTivaReadRegRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_tiva_read_reg_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_tiva_read_reg_request__pack_to_buffer
+ (const StubTivaReadRegRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_tiva_read_reg_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubTivaReadRegRequest *
+ stub_tiva_read_reg_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubTivaReadRegRequest *)
+ protobuf_c_message_unpack (&stub_tiva_read_reg_request__descriptor,
+ allocator, len, data);
+}
+void stub_tiva_read_reg_request__free_unpacked
+ (StubTivaReadRegRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_tiva_read_reg_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_tiva_read_reg_request__field_descriptors[1] =
+{
+ {
+ "Address",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubTivaReadRegRequest, has_address),
+ offsetof(StubTivaReadRegRequest, address),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_tiva_read_reg_request__field_indices_by_name[] = {
+ 0, /* field[0] = Address */
+};
+static const ProtobufCIntRange stub_tiva_read_reg_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor stub_tiva_read_reg_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubTivaReadRegRequest",
+ "StubTivaReadRegRequest",
+ "StubTivaReadRegRequest",
+ "",
+ sizeof(StubTivaReadRegRequest),
+ 1,
+ stub_tiva_read_reg_request__field_descriptors,
+ stub_tiva_read_reg_request__field_indices_by_name,
+ 1, stub_tiva_read_reg_request__number_ranges,
+ (ProtobufCMessageInit) stub_tiva_read_reg_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegRequest.pb-c.h
new file mode 100644
index 000000000..96fd7c4d1
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegRequest.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubTivaReadRegRequest.proto */
+
+#ifndef PROTOBUF_C_StubTivaReadRegRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubTivaReadRegRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubTivaReadRegRequest StubTivaReadRegRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubTivaReadRegRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_address;
+ uint32_t address;
+};
+#define STUB_TIVA_READ_REG_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_tiva_read_reg_request__descriptor) \
+ , 0, 0 }
+
+
+/* StubTivaReadRegRequest methods */
+void stub_tiva_read_reg_request__init
+ (StubTivaReadRegRequest *message);
+size_t stub_tiva_read_reg_request__get_packed_size
+ (const StubTivaReadRegRequest *message);
+size_t stub_tiva_read_reg_request__pack
+ (const StubTivaReadRegRequest *message,
+ uint8_t *out);
+size_t stub_tiva_read_reg_request__pack_to_buffer
+ (const StubTivaReadRegRequest *message,
+ ProtobufCBuffer *buffer);
+StubTivaReadRegRequest *
+ stub_tiva_read_reg_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_tiva_read_reg_request__free_unpacked
+ (StubTivaReadRegRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubTivaReadRegRequest_Closure)
+ (const StubTivaReadRegRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_tiva_read_reg_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubTivaReadRegRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegResponse.pb-c.c
new file mode 100644
index 000000000..34bddc069
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegResponse.pb-c.c
@@ -0,0 +1,131 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubTivaReadRegResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubTivaReadRegResponse.pb-c.h"
+void stub_tiva_read_reg_response__init
+ (StubTivaReadRegResponse *message)
+{
+ static const StubTivaReadRegResponse init_value = STUB_TIVA_READ_REG_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_tiva_read_reg_response__get_packed_size
+ (const StubTivaReadRegResponse *message)
+{
+ assert(message->base.descriptor == &stub_tiva_read_reg_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_tiva_read_reg_response__pack
+ (const StubTivaReadRegResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_tiva_read_reg_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_tiva_read_reg_response__pack_to_buffer
+ (const StubTivaReadRegResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_tiva_read_reg_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubTivaReadRegResponse *
+ stub_tiva_read_reg_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubTivaReadRegResponse *)
+ protobuf_c_message_unpack (&stub_tiva_read_reg_response__descriptor,
+ allocator, len, data);
+}
+void stub_tiva_read_reg_response__free_unpacked
+ (StubTivaReadRegResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_tiva_read_reg_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_tiva_read_reg_response__field_descriptors[4] =
+{
+ {
+ "Address",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubTivaReadRegResponse, has_address),
+ offsetof(StubTivaReadRegResponse, address),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Value",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubTivaReadRegResponse, has_value),
+ offsetof(StubTivaReadRegResponse, value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Status",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubTivaReadRegResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubTivaReadRegResponse, has_statusword),
+ offsetof(StubTivaReadRegResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_tiva_read_reg_response__field_indices_by_name[] = {
+ 0, /* field[0] = Address */
+ 2, /* field[2] = Status */
+ 3, /* field[3] = StatusWord */
+ 1, /* field[1] = Value */
+};
+static const ProtobufCIntRange stub_tiva_read_reg_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 4 }
+};
+const ProtobufCMessageDescriptor stub_tiva_read_reg_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubTivaReadRegResponse",
+ "StubTivaReadRegResponse",
+ "StubTivaReadRegResponse",
+ "",
+ sizeof(StubTivaReadRegResponse),
+ 4,
+ stub_tiva_read_reg_response__field_descriptors,
+ stub_tiva_read_reg_response__field_indices_by_name,
+ 1, stub_tiva_read_reg_response__number_ranges,
+ (ProtobufCMessageInit) stub_tiva_read_reg_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegResponse.pb-c.h
new file mode 100644
index 000000000..d1235a475
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaReadRegResponse.pb-c.h
@@ -0,0 +1,83 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubTivaReadRegResponse.proto */
+
+#ifndef PROTOBUF_C_StubTivaReadRegResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubTivaReadRegResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubTivaReadRegResponse StubTivaReadRegResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubTivaReadRegResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_address;
+ uint32_t address;
+ protobuf_c_boolean has_value;
+ uint32_t value;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_TIVA_READ_REG_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_tiva_read_reg_response__descriptor) \
+ , 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* StubTivaReadRegResponse methods */
+void stub_tiva_read_reg_response__init
+ (StubTivaReadRegResponse *message);
+size_t stub_tiva_read_reg_response__get_packed_size
+ (const StubTivaReadRegResponse *message);
+size_t stub_tiva_read_reg_response__pack
+ (const StubTivaReadRegResponse *message,
+ uint8_t *out);
+size_t stub_tiva_read_reg_response__pack_to_buffer
+ (const StubTivaReadRegResponse *message,
+ ProtobufCBuffer *buffer);
+StubTivaReadRegResponse *
+ stub_tiva_read_reg_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_tiva_read_reg_response__free_unpacked
+ (StubTivaReadRegResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubTivaReadRegResponse_Closure)
+ (const StubTivaReadRegResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_tiva_read_reg_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubTivaReadRegResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegRequest.pb-c.c
new file mode 100644
index 000000000..febee0760
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubTivaWriteRegRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubTivaWriteRegRequest.pb-c.h"
+void stub_tiva_write_reg_request__init
+ (StubTivaWriteRegRequest *message)
+{
+ static const StubTivaWriteRegRequest init_value = STUB_TIVA_WRITE_REG_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_tiva_write_reg_request__get_packed_size
+ (const StubTivaWriteRegRequest *message)
+{
+ assert(message->base.descriptor == &stub_tiva_write_reg_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_tiva_write_reg_request__pack
+ (const StubTivaWriteRegRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_tiva_write_reg_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_tiva_write_reg_request__pack_to_buffer
+ (const StubTivaWriteRegRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_tiva_write_reg_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubTivaWriteRegRequest *
+ stub_tiva_write_reg_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubTivaWriteRegRequest *)
+ protobuf_c_message_unpack (&stub_tiva_write_reg_request__descriptor,
+ allocator, len, data);
+}
+void stub_tiva_write_reg_request__free_unpacked
+ (StubTivaWriteRegRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_tiva_write_reg_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_tiva_write_reg_request__field_descriptors[2] =
+{
+ {
+ "Address",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubTivaWriteRegRequest, has_address),
+ offsetof(StubTivaWriteRegRequest, address),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Value",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubTivaWriteRegRequest, has_value),
+ offsetof(StubTivaWriteRegRequest, value),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_tiva_write_reg_request__field_indices_by_name[] = {
+ 0, /* field[0] = Address */
+ 1, /* field[1] = Value */
+};
+static const ProtobufCIntRange stub_tiva_write_reg_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_tiva_write_reg_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubTivaWriteRegRequest",
+ "StubTivaWriteRegRequest",
+ "StubTivaWriteRegRequest",
+ "",
+ sizeof(StubTivaWriteRegRequest),
+ 2,
+ stub_tiva_write_reg_request__field_descriptors,
+ stub_tiva_write_reg_request__field_indices_by_name,
+ 1, stub_tiva_write_reg_request__number_ranges,
+ (ProtobufCMessageInit) stub_tiva_write_reg_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegRequest.pb-c.h
new file mode 100644
index 000000000..6b33f4da6
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegRequest.pb-c.h
@@ -0,0 +1,74 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubTivaWriteRegRequest.proto */
+
+#ifndef PROTOBUF_C_StubTivaWriteRegRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubTivaWriteRegRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubTivaWriteRegRequest StubTivaWriteRegRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubTivaWriteRegRequest
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_address;
+ uint32_t address;
+ protobuf_c_boolean has_value;
+ uint32_t value;
+};
+#define STUB_TIVA_WRITE_REG_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_tiva_write_reg_request__descriptor) \
+ , 0, 0, 0, 0 }
+
+
+/* StubTivaWriteRegRequest methods */
+void stub_tiva_write_reg_request__init
+ (StubTivaWriteRegRequest *message);
+size_t stub_tiva_write_reg_request__get_packed_size
+ (const StubTivaWriteRegRequest *message);
+size_t stub_tiva_write_reg_request__pack
+ (const StubTivaWriteRegRequest *message,
+ uint8_t *out);
+size_t stub_tiva_write_reg_request__pack_to_buffer
+ (const StubTivaWriteRegRequest *message,
+ ProtobufCBuffer *buffer);
+StubTivaWriteRegRequest *
+ stub_tiva_write_reg_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_tiva_write_reg_request__free_unpacked
+ (StubTivaWriteRegRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubTivaWriteRegRequest_Closure)
+ (const StubTivaWriteRegRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_tiva_write_reg_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubTivaWriteRegRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegResponse.pb-c.c
new file mode 100644
index 000000000..d57d9cf20
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegResponse.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubTivaWriteRegResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubTivaWriteRegResponse.pb-c.h"
+void stub_tiva_write_reg_response__init
+ (StubTivaWriteRegResponse *message)
+{
+ static const StubTivaWriteRegResponse init_value = STUB_TIVA_WRITE_REG_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_tiva_write_reg_response__get_packed_size
+ (const StubTivaWriteRegResponse *message)
+{
+ assert(message->base.descriptor == &stub_tiva_write_reg_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_tiva_write_reg_response__pack
+ (const StubTivaWriteRegResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_tiva_write_reg_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_tiva_write_reg_response__pack_to_buffer
+ (const StubTivaWriteRegResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_tiva_write_reg_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubTivaWriteRegResponse *
+ stub_tiva_write_reg_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubTivaWriteRegResponse *)
+ protobuf_c_message_unpack (&stub_tiva_write_reg_response__descriptor,
+ allocator, len, data);
+}
+void stub_tiva_write_reg_response__free_unpacked
+ (StubTivaWriteRegResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_tiva_write_reg_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_tiva_write_reg_response__field_descriptors[2] =
+{
+ {
+ "Status",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubTivaWriteRegResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubTivaWriteRegResponse, has_statusword),
+ offsetof(StubTivaWriteRegResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_tiva_write_reg_response__field_indices_by_name[] = {
+ 0, /* field[0] = Status */
+ 1, /* field[1] = StatusWord */
+};
+static const ProtobufCIntRange stub_tiva_write_reg_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_tiva_write_reg_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubTivaWriteRegResponse",
+ "StubTivaWriteRegResponse",
+ "StubTivaWriteRegResponse",
+ "",
+ sizeof(StubTivaWriteRegResponse),
+ 2,
+ stub_tiva_write_reg_response__field_descriptors,
+ stub_tiva_write_reg_response__field_indices_by_name,
+ 1, stub_tiva_write_reg_response__number_ranges,
+ (ProtobufCMessageInit) stub_tiva_write_reg_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegResponse.pb-c.h
new file mode 100644
index 000000000..60966fdf2
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubTivaWriteRegResponse.pb-c.h
@@ -0,0 +1,79 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubTivaWriteRegResponse.proto */
+
+#ifndef PROTOBUF_C_StubTivaWriteRegResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubTivaWriteRegResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubTivaWriteRegResponse StubTivaWriteRegResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubTivaWriteRegResponse
+{
+ ProtobufCMessage base;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_TIVA_WRITE_REG_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_tiva_write_reg_response__descriptor) \
+ , NULL, 0, 0 }
+
+
+/* StubTivaWriteRegResponse methods */
+void stub_tiva_write_reg_response__init
+ (StubTivaWriteRegResponse *message);
+size_t stub_tiva_write_reg_response__get_packed_size
+ (const StubTivaWriteRegResponse *message);
+size_t stub_tiva_write_reg_response__pack
+ (const StubTivaWriteRegResponse *message,
+ uint8_t *out);
+size_t stub_tiva_write_reg_response__pack_to_buffer
+ (const StubTivaWriteRegResponse *message,
+ ProtobufCBuffer *buffer);
+StubTivaWriteRegResponse *
+ stub_tiva_write_reg_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_tiva_write_reg_response__free_unpacked
+ (StubTivaWriteRegResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubTivaWriteRegResponse_Closure)
+ (const StubTivaWriteRegResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_tiva_write_reg_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubTivaWriteRegResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveRequest.pb-c.c
new file mode 100644
index 000000000..6e1bc168f
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveRequest.pb-c.c
@@ -0,0 +1,118 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubValveRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubValveRequest.pb-c.h"
+void stub_valve_request__init
+ (StubValveRequest *message)
+{
+ static const StubValveRequest init_value = STUB_VALVE_REQUEST__INIT;
+ *message = init_value;
+}
+size_t stub_valve_request__get_packed_size
+ (const StubValveRequest *message)
+{
+ assert(message->base.descriptor == &stub_valve_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_valve_request__pack
+ (const StubValveRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_valve_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_valve_request__pack_to_buffer
+ (const StubValveRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_valve_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubValveRequest *
+ stub_valve_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubValveRequest *)
+ protobuf_c_message_unpack (&stub_valve_request__descriptor,
+ allocator, len, data);
+}
+void stub_valve_request__free_unpacked
+ (StubValveRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_valve_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_valve_request__field_descriptors[3] =
+{
+ {
+ "ValveId",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubValveRequest, has_valveid),
+ offsetof(StubValveRequest, valveid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Inkflow",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubValveRequest, has_inkflow),
+ offsetof(StubValveRequest, inkflow),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ValveOn",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BOOL,
+ offsetof(StubValveRequest, has_valveon),
+ offsetof(StubValveRequest, valveon),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_valve_request__field_indices_by_name[] = {
+ 1, /* field[1] = Inkflow */
+ 0, /* field[0] = ValveId */
+ 2, /* field[2] = ValveOn */
+};
+static const ProtobufCIntRange stub_valve_request__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 3 }
+};
+const ProtobufCMessageDescriptor stub_valve_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubValveRequest",
+ "StubValveRequest",
+ "StubValveRequest",
+ "",
+ sizeof(StubValveRequest),
+ 3,
+ stub_valve_request__field_descriptors,
+ stub_valve_request__field_indices_by_name,
+ 1, stub_valve_request__number_ranges,
+ (ProtobufCMessageInit) stub_valve_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveRequest.pb-c.h
new file mode 100644
index 000000000..9a730b4d0
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveRequest.pb-c.h
@@ -0,0 +1,85 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubValveRequest.proto */
+
+#ifndef PROTOBUF_C_StubValveRequest_2eproto__INCLUDED
+#define PROTOBUF_C_StubValveRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubValveRequest StubValveRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubValveRequest
+{
+ ProtobufCMessage base;
+ /*
+ * 0..19
+ */
+ protobuf_c_boolean has_valveid;
+ uint32_t valveid;
+ /*
+ *0 - Min
+ */
+ protobuf_c_boolean has_inkflow;
+ uint32_t inkflow;
+ /*
+ *0-Off 1-On
+ */
+ protobuf_c_boolean has_valveon;
+ protobuf_c_boolean valveon;
+};
+#define STUB_VALVE_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_valve_request__descriptor) \
+ , 0, 0, 0, 0, 0, 0 }
+
+
+/* StubValveRequest methods */
+void stub_valve_request__init
+ (StubValveRequest *message);
+size_t stub_valve_request__get_packed_size
+ (const StubValveRequest *message);
+size_t stub_valve_request__pack
+ (const StubValveRequest *message,
+ uint8_t *out);
+size_t stub_valve_request__pack_to_buffer
+ (const StubValveRequest *message,
+ ProtobufCBuffer *buffer);
+StubValveRequest *
+ stub_valve_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_valve_request__free_unpacked
+ (StubValveRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubValveRequest_Closure)
+ (const StubValveRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_valve_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubValveRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveResponse.pb-c.c
new file mode 100644
index 000000000..4556cc4d2
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveResponse.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubValveResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "StubValveResponse.pb-c.h"
+void stub_valve_response__init
+ (StubValveResponse *message)
+{
+ static const StubValveResponse init_value = STUB_VALVE_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t stub_valve_response__get_packed_size
+ (const StubValveResponse *message)
+{
+ assert(message->base.descriptor == &stub_valve_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t stub_valve_response__pack
+ (const StubValveResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &stub_valve_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t stub_valve_response__pack_to_buffer
+ (const StubValveResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &stub_valve_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+StubValveResponse *
+ stub_valve_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (StubValveResponse *)
+ protobuf_c_message_unpack (&stub_valve_response__descriptor,
+ allocator, len, data);
+}
+void stub_valve_response__free_unpacked
+ (StubValveResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &stub_valve_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor stub_valve_response__field_descriptors[2] =
+{
+ {
+ "Status",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(StubValveResponse, status),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "StatusWord",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(StubValveResponse, has_statusword),
+ offsetof(StubValveResponse, statusword),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned stub_valve_response__field_indices_by_name[] = {
+ 0, /* field[0] = Status */
+ 1, /* field[1] = StatusWord */
+};
+static const ProtobufCIntRange stub_valve_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor stub_valve_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubValveResponse",
+ "StubValveResponse",
+ "StubValveResponse",
+ "",
+ sizeof(StubValveResponse),
+ 2,
+ stub_valve_response__field_descriptors,
+ stub_valve_response__field_indices_by_name,
+ 1, stub_valve_response__number_ranges,
+ (ProtobufCMessageInit) stub_valve_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveResponse.pb-c.h
new file mode 100644
index 000000000..3b1512450
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Stubs/StubValveResponse.pb-c.h
@@ -0,0 +1,79 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: StubValveResponse.proto */
+
+#ifndef PROTOBUF_C_StubValveResponse_2eproto__INCLUDED
+#define PROTOBUF_C_StubValveResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _StubValveResponse StubValveResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _StubValveResponse
+{
+ ProtobufCMessage base;
+ /*
+ * Passed/Failed
+ */
+ char *status;
+ /*
+ * Error number/bit when the status is Failed
+ */
+ protobuf_c_boolean has_statusword;
+ uint32_t statusword;
+};
+#define STUB_VALVE_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&stub_valve_response__descriptor) \
+ , NULL, 0, 0 }
+
+
+/* StubValveResponse methods */
+void stub_valve_response__init
+ (StubValveResponse *message);
+size_t stub_valve_response__get_packed_size
+ (const StubValveResponse *message);
+size_t stub_valve_response__pack
+ (const StubValveResponse *message,
+ uint8_t *out);
+size_t stub_valve_response__pack_to_buffer
+ (const StubValveResponse *message,
+ ProtobufCBuffer *buffer);
+StubValveResponse *
+ stub_valve_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void stub_valve_response__free_unpacked
+ (StubValveResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*StubValveResponse_Closure)
+ (const StubValveResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor stub_valve_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_StubValveResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBRequest.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBRequest.pb-c.c
new file mode 100644
index 000000000..97b733360
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBRequest.pb-c.c
@@ -0,0 +1,105 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SynchronizeDBRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "SynchronizeDBRequest.pb-c.h"
+void synchronize_dbrequest__init
+ (SynchronizeDBRequest *message)
+{
+ static const SynchronizeDBRequest init_value = SYNCHRONIZE_DBREQUEST__INIT;
+ *message = init_value;
+}
+size_t synchronize_dbrequest__get_packed_size
+ (const SynchronizeDBRequest *message)
+{
+ assert(message->base.descriptor == &synchronize_dbrequest__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t synchronize_dbrequest__pack
+ (const SynchronizeDBRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &synchronize_dbrequest__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t synchronize_dbrequest__pack_to_buffer
+ (const SynchronizeDBRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &synchronize_dbrequest__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+SynchronizeDBRequest *
+ synchronize_dbrequest__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (SynchronizeDBRequest *)
+ protobuf_c_message_unpack (&synchronize_dbrequest__descriptor,
+ allocator, len, data);
+}
+void synchronize_dbrequest__free_unpacked
+ (SynchronizeDBRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &synchronize_dbrequest__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor synchronize_dbrequest__field_descriptors[2] =
+{
+ {
+ "SerialNumber",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_STRING,
+ 0, /* quantifier_offset */
+ offsetof(SynchronizeDBRequest, serialnumber),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "LocalDB",
+ 2,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(SynchronizeDBRequest, has_localdb),
+ offsetof(SynchronizeDBRequest, localdb),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned synchronize_dbrequest__field_indices_by_name[] = {
+ 1, /* field[1] = LocalDB */
+ 0, /* field[0] = SerialNumber */
+};
+static const ProtobufCIntRange synchronize_dbrequest__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 2 }
+};
+const ProtobufCMessageDescriptor synchronize_dbrequest__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "SynchronizeDBRequest",
+ "SynchronizeDBRequest",
+ "SynchronizeDBRequest",
+ "",
+ sizeof(SynchronizeDBRequest),
+ 2,
+ synchronize_dbrequest__field_descriptors,
+ synchronize_dbrequest__field_indices_by_name,
+ 1, synchronize_dbrequest__number_ranges,
+ (ProtobufCMessageInit) synchronize_dbrequest__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBRequest.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBRequest.pb-c.h
new file mode 100644
index 000000000..a1652cce9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBRequest.pb-c.h
@@ -0,0 +1,73 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SynchronizeDBRequest.proto */
+
+#ifndef PROTOBUF_C_SynchronizeDBRequest_2eproto__INCLUDED
+#define PROTOBUF_C_SynchronizeDBRequest_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _SynchronizeDBRequest SynchronizeDBRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _SynchronizeDBRequest
+{
+ ProtobufCMessage base;
+ char *serialnumber;
+ protobuf_c_boolean has_localdb;
+ ProtobufCBinaryData localdb;
+};
+#define SYNCHRONIZE_DBREQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&synchronize_dbrequest__descriptor) \
+ , NULL, 0, {0,NULL} }
+
+
+/* SynchronizeDBRequest methods */
+void synchronize_dbrequest__init
+ (SynchronizeDBRequest *message);
+size_t synchronize_dbrequest__get_packed_size
+ (const SynchronizeDBRequest *message);
+size_t synchronize_dbrequest__pack
+ (const SynchronizeDBRequest *message,
+ uint8_t *out);
+size_t synchronize_dbrequest__pack_to_buffer
+ (const SynchronizeDBRequest *message,
+ ProtobufCBuffer *buffer);
+SynchronizeDBRequest *
+ synchronize_dbrequest__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void synchronize_dbrequest__free_unpacked
+ (SynchronizeDBRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*SynchronizeDBRequest_Closure)
+ (const SynchronizeDBRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor synchronize_dbrequest__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_SynchronizeDBRequest_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBResponse.pb-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBResponse.pb-c.c
new file mode 100644
index 000000000..208c1a9a5
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBResponse.pb-c.c
@@ -0,0 +1,92 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SynchronizeDBResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "SynchronizeDBResponse.pb-c.h"
+void synchronize_dbresponse__init
+ (SynchronizeDBResponse *message)
+{
+ static const SynchronizeDBResponse init_value = SYNCHRONIZE_DBRESPONSE__INIT;
+ *message = init_value;
+}
+size_t synchronize_dbresponse__get_packed_size
+ (const SynchronizeDBResponse *message)
+{
+ assert(message->base.descriptor == &synchronize_dbresponse__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t synchronize_dbresponse__pack
+ (const SynchronizeDBResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &synchronize_dbresponse__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t synchronize_dbresponse__pack_to_buffer
+ (const SynchronizeDBResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &synchronize_dbresponse__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+SynchronizeDBResponse *
+ synchronize_dbresponse__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (SynchronizeDBResponse *)
+ protobuf_c_message_unpack (&synchronize_dbresponse__descriptor,
+ allocator, len, data);
+}
+void synchronize_dbresponse__free_unpacked
+ (SynchronizeDBResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &synchronize_dbresponse__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor synchronize_dbresponse__field_descriptors[1] =
+{
+ {
+ "RemoteDB",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_BYTES,
+ offsetof(SynchronizeDBResponse, has_remotedb),
+ offsetof(SynchronizeDBResponse, remotedb),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned synchronize_dbresponse__field_indices_by_name[] = {
+ 0, /* field[0] = RemoteDB */
+};
+static const ProtobufCIntRange synchronize_dbresponse__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 1 }
+};
+const ProtobufCMessageDescriptor synchronize_dbresponse__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "SynchronizeDBResponse",
+ "SynchronizeDBResponse",
+ "SynchronizeDBResponse",
+ "",
+ sizeof(SynchronizeDBResponse),
+ 1,
+ synchronize_dbresponse__field_descriptors,
+ synchronize_dbresponse__field_indices_by_name,
+ 1, synchronize_dbresponse__number_ranges,
+ (ProtobufCMessageInit) synchronize_dbresponse__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBResponse.pb-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBResponse.pb-c.h
new file mode 100644
index 000000000..445695991
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/PMR/Synchronization/SynchronizeDBResponse.pb-c.h
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: SynchronizeDBResponse.proto */
+
+#ifndef PROTOBUF_C_SynchronizeDBResponse_2eproto__INCLUDED
+#define PROTOBUF_C_SynchronizeDBResponse_2eproto__INCLUDED
+
+#include <protobuf-c/protobuf-c.h>
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if PROTOBUF_C_VERSION_NUMBER < 1003000
+# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers.
+#elif 1003000 < PROTOBUF_C_MIN_COMPILER_VERSION
+# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c.
+#endif
+
+
+typedef struct _SynchronizeDBResponse SynchronizeDBResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _SynchronizeDBResponse
+{
+ ProtobufCMessage base;
+ protobuf_c_boolean has_remotedb;
+ ProtobufCBinaryData remotedb;
+};
+#define SYNCHRONIZE_DBRESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&synchronize_dbresponse__descriptor) \
+ , 0, {0,NULL} }
+
+
+/* SynchronizeDBResponse methods */
+void synchronize_dbresponse__init
+ (SynchronizeDBResponse *message);
+size_t synchronize_dbresponse__get_packed_size
+ (const SynchronizeDBResponse *message);
+size_t synchronize_dbresponse__pack
+ (const SynchronizeDBResponse *message,
+ uint8_t *out);
+size_t synchronize_dbresponse__pack_to_buffer
+ (const SynchronizeDBResponse *message,
+ ProtobufCBuffer *buffer);
+SynchronizeDBResponse *
+ synchronize_dbresponse__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void synchronize_dbresponse__free_unpacked
+ (SynchronizeDBResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*SynchronizeDBResponse_Closure)
+ (const SynchronizeDBResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor synchronize_dbresponse__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_SynchronizeDBResponse_2eproto__INCLUDED */
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/ReadMe.txt b/Software/Visual_Studio/Native/Tango.Emulations.Native/ReadMe.txt
new file mode 100644
index 000000000..2f421ebd4
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/ReadMe.txt
@@ -0,0 +1,48 @@
+========================================================================
+ DYNAMIC LINK LIBRARY : Tango.Emulations.Native Project Overview
+========================================================================
+
+AppWizard has created this Tango.Emulations.Native DLL for you.
+
+This file contains a summary of what you will find in each of the files that
+make up your Tango.Emulations.Native application.
+
+
+Tango.Emulations.Native.vcxproj
+ This is the main project file for VC++ projects generated using an Application Wizard.
+ It contains information about the version of Visual C++ that generated the file, and
+ information about the platforms, configurations, and project features selected with the
+ Application Wizard.
+
+Tango.Emulations.Native.vcxproj.filters
+ This is the filters file for VC++ projects generated using an Application Wizard.
+ It contains information about the association between the files in your project
+ and the filters. This association is used in the IDE to show grouping of files with
+ similar extensions under a specific node (for e.g. ".cpp" files are associated with the
+ "Source Files" filter).
+
+Tango.Emulations.Native.cpp
+ This is the main DLL source file.
+
+ When created, this DLL does not export any symbols. As a result, it
+ will not produce a .lib file when it is built. If you wish this project
+ to be a project dependency of some other project, you will either need to
+ add code to export some symbols from the DLL so that an export library
+ will be produced, or you can set the Ignore Input Library property to Yes
+ on the General propert page of the Linker folder in the project's Property
+ Pages dialog box.
+
+/////////////////////////////////////////////////////////////////////////////
+Other standard files:
+
+StdAfx.h, StdAfx.cpp
+ These files are used to build a precompiled header (PCH) file
+ named Tango.Emulations.Native.pch and a precompiled types file named StdAfx.obj.
+
+/////////////////////////////////////////////////////////////////////////////
+Other notes:
+
+AppWizard uses "TODO:" comments to indicate parts of the source code you
+should add to or customize.
+
+/////////////////////////////////////////////////////////////////////////////
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/Tango.Emulations.Native.vcxproj b/Software/Visual_Studio/Native/Tango.Emulations.Native/Tango.Emulations.Native.vcxproj
new file mode 100644
index 000000000..aff8c87b9
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/Tango.Emulations.Native.vcxproj
@@ -0,0 +1,203 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>15.0</VCProjectVersion>
+ <ProjectGuid>{43ECCD8D-EE54-44EF-A51A-D77E3DF7263F}</ProjectGuid>
+ <Keyword>Win32Proj</Keyword>
+ <RootNamespace>TangoEmulationsNative</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>v141</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>v141</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>v141</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>v141</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <LinkIncremental>true</LinkIncremental>
+ <OutDir>$(SolutionDir)Build\Debug\</OutDir>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <LinkIncremental>false</LinkIncremental>
+ <OutDir>$(SolutionDir)Build\Release\</OutDir>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;TANGOEMULATIONSNATIVE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <AdditionalIncludeDirectories>$(ProjectDir);$(ProjectDir)protobuf-c;$(ProjectDir)PMR;$(ProjectDir)PMR\Common;$(ProjectDir)PMR\Hardware;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ </Link>
+ <PreBuildEvent>
+ <Command>"$(TargetDir)proto-tc.exe" -i "$(SolutionDir)..\PMR\Messages" -o "$(SolutionDir)Native\Tango.Emulations.Native\PMR" -l C</Command>
+ </PreBuildEvent>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>_DEBUG;_WINDOWS;_USRDLL;TANGOEMULATIONSNATIVE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;TANGOEMULATIONSNATIVE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <PrecompiledHeader>
+ </PrecompiledHeader>
+ <Optimization>MaxSpeed</Optimization>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <PreprocessorDefinitions>NDEBUG;_WINDOWS;_USRDLL;TANGOEMULATIONSNATIVE_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ </ClCompile>
+ <Link>
+ <SubSystem>Windows</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <Text Include="ReadMe.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="EmbeddedEmulator.h" />
+ <ClInclude Include="Exports.h" />
+ <ClInclude Include="PMR\Common\ErrorCode.pb-c.h" />
+ <ClInclude Include="PMR\Common\MessageContainer.pb-c.h" />
+ <ClInclude Include="PMR\Common\MessageType.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\HardwareConfiguration.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\HardwareDancer.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\HardwareDancerType.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\HardwareDispenser.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\HardwareDispenserType.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\HardwareMotor.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\HardwareMotorType.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\HardwarePidControl.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\HardwarePidControlType.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\HardwareSpeedSensor.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\HardwareSpeedSensorType.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\HardwareWinder.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\HardwareWinderType.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\SystemResetRequest.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\SystemResetResponse.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\UploadHardwareConfigurationRequest.pb-c.h" />
+ <ClInclude Include="PMR\Hardware\UploadHardwareConfigurationResponse.pb-c.h" />
+ <ClInclude Include="protobuf-c\protobuf-c.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="EmbeddedEmulator.cpp" />
+ <ClCompile Include="Exports.cpp" />
+ <ClCompile Include="PMR\Common\ErrorCode.pb-c.c" />
+ <ClCompile Include="PMR\Common\MessageContainer.pb-c.c" />
+ <ClCompile Include="PMR\Common\MessageType.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\HardwareConfiguration.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\HardwareDancer.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\HardwareDancerType.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\HardwareDispenser.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\HardwareDispenserType.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\HardwareMotor.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\HardwareMotorType.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\HardwarePidControl.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\HardwarePidControlType.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\HardwareSpeedSensor.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\HardwareSpeedSensorType.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\HardwareWinder.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\HardwareWinderType.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\SystemResetRequest.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\SystemResetResponse.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\UploadHardwareConfigurationRequest.pb-c.c" />
+ <ClCompile Include="PMR\Hardware\UploadHardwareConfigurationResponse.pb-c.c" />
+ <ClCompile Include="protobuf-c\protobuf-c.c" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/Tango.Emulations.Native.vcxproj.filters b/Software/Visual_Studio/Native/Tango.Emulations.Native/Tango.Emulations.Native.vcxproj.filters
new file mode 100644
index 000000000..554eff648
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/Tango.Emulations.Native.vcxproj.filters
@@ -0,0 +1,174 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+ </Filter>
+ <Filter Include="PMR">
+ <UniqueIdentifier>{1f526482-af73-4bb6-a9fe-d24895b2ce13}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="PMR\Hardware">
+ <UniqueIdentifier>{d11c2f11-3dc6-40c2-829b-0a20a9781f39}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="Protobuf">
+ <UniqueIdentifier>{cfbd4d0d-c904-42a8-a48d-207113312bcb}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="PMR\Common">
+ <UniqueIdentifier>{b484de62-8ea0-406a-ba4e-ba20be307eda}</UniqueIdentifier>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <Text Include="ReadMe.txt" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="PMR\Hardware\HardwareConfiguration.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\HardwareDancer.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\HardwareDancerType.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\HardwareDispenser.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\HardwareDispenserType.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\HardwareMotor.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\HardwareMotorType.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\HardwarePidControl.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\HardwarePidControlType.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\HardwareSpeedSensor.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\HardwareSpeedSensorType.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\HardwareWinder.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\HardwareWinderType.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\SystemResetRequest.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\SystemResetResponse.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\UploadHardwareConfigurationRequest.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Hardware\UploadHardwareConfigurationResponse.pb-c.h">
+ <Filter>PMR\Hardware</Filter>
+ </ClInclude>
+ <ClInclude Include="protobuf-c\protobuf-c.h">
+ <Filter>Protobuf</Filter>
+ </ClInclude>
+ <ClInclude Include="EmbeddedEmulator.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="Exports.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Common\ErrorCode.pb-c.h">
+ <Filter>PMR\Common</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Common\MessageContainer.pb-c.h">
+ <Filter>PMR\Common</Filter>
+ </ClInclude>
+ <ClInclude Include="PMR\Common\MessageType.pb-c.h">
+ <Filter>PMR\Common</Filter>
+ </ClInclude>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="PMR\Hardware\HardwareConfiguration.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\HardwareDancer.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\HardwareDancerType.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\HardwareDispenser.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\HardwareDispenserType.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\HardwareMotor.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\HardwareMotorType.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\HardwarePidControl.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\HardwarePidControlType.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\HardwareSpeedSensor.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\HardwareSpeedSensorType.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\HardwareWinder.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\HardwareWinderType.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\SystemResetRequest.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\SystemResetResponse.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\UploadHardwareConfigurationRequest.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Hardware\UploadHardwareConfigurationResponse.pb-c.c">
+ <Filter>PMR\Hardware</Filter>
+ </ClCompile>
+ <ClCompile Include="protobuf-c\protobuf-c.c">
+ <Filter>Protobuf</Filter>
+ </ClCompile>
+ <ClCompile Include="EmbeddedEmulator.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="Exports.cpp">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Common\ErrorCode.pb-c.c">
+ <Filter>PMR\Common</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Common\MessageContainer.pb-c.c">
+ <Filter>PMR\Common</Filter>
+ </ClCompile>
+ <ClCompile Include="PMR\Common\MessageType.pb-c.c">
+ <Filter>PMR\Common</Filter>
+ </ClCompile>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/protobuf-c/protobuf-c.c b/Software/Visual_Studio/Native/Tango.Emulations.Native/protobuf-c/protobuf-c.c
new file mode 100644
index 000000000..5debac820
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/protobuf-c/protobuf-c.c
@@ -0,0 +1,3642 @@
+/*
+ * Copyright (c) 2008-2015, Dave Benson and the protobuf-c authors.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*! \file
+ * Support library for `protoc-c` generated code.
+ *
+ * This file implements the public API used by the code generated
+ * by `protoc-c`.
+ *
+ * \authors Dave Benson and the protobuf-c authors
+ *
+ * \copyright 2008-2014. Licensed under the terms of the [BSD-2-Clause] license.
+ */
+
+/**
+ * \todo 64-BIT OPTIMIZATION: certain implementations use 32-bit math
+ * even on 64-bit platforms (uint64_size, uint64_pack, parse_uint64).
+ *
+ * \todo Use size_t consistently.
+ */
+
+#include <stdlib.h> /* for malloc, free */
+#include <string.h> /* for strcmp, strlen, memcpy, memmove, memset */
+
+#include "protobuf-c.h"
+
+#define TRUE 1
+#define FALSE 0
+
+#define PROTOBUF_C__ASSERT_NOT_REACHED() assert(0)
+
+/* Workaround for Microsoft compilers. */
+#ifdef _MSC_VER
+# define inline __inline
+#endif
+
+/**
+ * \defgroup internal Internal functions and macros
+ *
+ * These are not exported by the library but are useful to developers working
+ * on `libprotobuf-c` itself.
+ */
+
+/**
+ * \defgroup macros Utility macros for manipulating structures
+ *
+ * Macros and constants used to manipulate the base "classes" generated by
+ * `protobuf-c`. They also define limits and check correctness.
+ *
+ * \ingroup internal
+ * @{
+ */
+
+/** The maximum length of a 64-bit integer in varint encoding. */
+#define MAX_UINT64_ENCODED_SIZE 10
+
+#ifndef PROTOBUF_C_UNPACK_ERROR
+# define PROTOBUF_C_UNPACK_ERROR(...)
+#endif
+
+const char protobuf_c_empty_string[] = "";
+
+/**
+ * Internal `ProtobufCMessage` manipulation macro.
+ *
+ * Base macro for manipulating a `ProtobufCMessage`. Used by STRUCT_MEMBER() and
+ * STRUCT_MEMBER_PTR().
+ */
+#define STRUCT_MEMBER_P(struct_p, struct_offset) \
+ ((void *) ((uint8_t *) (struct_p) + (struct_offset)))
+
+/**
+ * Return field in a `ProtobufCMessage` based on offset.
+ *
+ * Take a pointer to a `ProtobufCMessage` and find the field at the offset.
+ * Cast it to the passed type.
+ */
+#define STRUCT_MEMBER(member_type, struct_p, struct_offset) \
+ (*(member_type *) STRUCT_MEMBER_P((struct_p), (struct_offset)))
+
+/**
+ * Return field in a `ProtobufCMessage` based on offset.
+ *
+ * Take a pointer to a `ProtobufCMessage` and find the field at the offset. Cast
+ * it to a pointer to the passed type.
+ */
+#define STRUCT_MEMBER_PTR(member_type, struct_p, struct_offset) \
+ ((member_type *) STRUCT_MEMBER_P((struct_p), (struct_offset)))
+
+/* Assertions for magic numbers. */
+
+#define ASSERT_IS_ENUM_DESCRIPTOR(desc) \
+ assert((desc)->magic == PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC)
+
+#define ASSERT_IS_MESSAGE_DESCRIPTOR(desc) \
+ assert((desc)->magic == PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC)
+
+#define ASSERT_IS_MESSAGE(message) \
+ ASSERT_IS_MESSAGE_DESCRIPTOR((message)->descriptor)
+
+#define ASSERT_IS_SERVICE_DESCRIPTOR(desc) \
+ assert((desc)->magic == PROTOBUF_C__SERVICE_DESCRIPTOR_MAGIC)
+
+/**@}*/
+
+/* --- version --- */
+
+const char *
+protobuf_c_version(void)
+{
+ return PROTOBUF_C_VERSION;
+}
+
+uint32_t
+protobuf_c_version_number(void)
+{
+ return PROTOBUF_C_VERSION_NUMBER;
+}
+
+/* --- allocator --- */
+
+static void *
+system_alloc(void *allocator_data, size_t size)
+{
+ return malloc(size);
+}
+
+static void
+system_free(void *allocator_data, void *data)
+{
+ free(data);
+}
+
+static inline void *
+do_alloc(ProtobufCAllocator *allocator, size_t size)
+{
+ return allocator->alloc(allocator->allocator_data, size);
+}
+
+static inline void
+do_free(ProtobufCAllocator *allocator, void *data)
+{
+ if (data != NULL)
+ allocator->free(allocator->allocator_data, data);
+}
+
+/*
+ * This allocator uses the system's malloc() and free(). It is the default
+ * allocator used if NULL is passed as the ProtobufCAllocator to an exported
+ * function.
+ */
+static ProtobufCAllocator protobuf_c__allocator = {
+ .alloc = &system_alloc,
+ .free = &system_free,
+ .allocator_data = NULL,
+};
+
+/* === buffer-simple === */
+
+void
+protobuf_c_buffer_simple_append(ProtobufCBuffer *buffer,
+ size_t len, const uint8_t *data)
+{
+ ProtobufCBufferSimple *simp = (ProtobufCBufferSimple *) buffer;
+ size_t new_len = simp->len + len;
+
+ if (new_len > simp->alloced) {
+ ProtobufCAllocator *allocator = simp->allocator;
+ size_t new_alloced = simp->alloced * 2;
+ uint8_t *new_data;
+
+ if (allocator == NULL)
+ allocator = &protobuf_c__allocator;
+ while (new_alloced < new_len)
+ new_alloced += new_alloced;
+ new_data = do_alloc(allocator, new_alloced);
+ if (!new_data)
+ return;
+ memcpy(new_data, simp->data, simp->len);
+ if (simp->must_free_data)
+ do_free(allocator, simp->data);
+ else
+ simp->must_free_data = TRUE;
+ simp->data = new_data;
+ simp->alloced = new_alloced;
+ }
+ memcpy(simp->data + simp->len, data, len);
+ simp->len = new_len;
+}
+
+/**
+ * \defgroup packedsz protobuf_c_message_get_packed_size() implementation
+ *
+ * Routines mainly used by protobuf_c_message_get_packed_size().
+ *
+ * \ingroup internal
+ * @{
+ */
+
+/**
+ * Return the number of bytes required to store the tag for the field. Includes
+ * 3 bits for the wire-type, and a single bit that denotes the end-of-tag.
+ *
+ * \param number
+ * Field tag to encode.
+ * \return
+ * Number of bytes required.
+ */
+static inline size_t
+get_tag_size(uint32_t number)
+{
+ if (number < (1UL << 4)) {
+ return 1;
+ } else if (number < (1UL << 11)) {
+ return 2;
+ } else if (number < (1UL << 18)) {
+ return 3;
+ } else if (number < (1UL << 25)) {
+ return 4;
+ } else {
+ return 5;
+ }
+}
+
+/**
+ * Return the number of bytes required to store a variable-length unsigned
+ * 32-bit integer in base-128 varint encoding.
+ *
+ * \param v
+ * Value to encode.
+ * \return
+ * Number of bytes required.
+ */
+static inline size_t
+uint32_size(uint32_t v)
+{
+ if (v < (1UL << 7)) {
+ return 1;
+ } else if (v < (1UL << 14)) {
+ return 2;
+ } else if (v < (1UL << 21)) {
+ return 3;
+ } else if (v < (1UL << 28)) {
+ return 4;
+ } else {
+ return 5;
+ }
+}
+
+/**
+ * Return the number of bytes required to store a variable-length signed 32-bit
+ * integer in base-128 varint encoding.
+ *
+ * \param v
+ * Value to encode.
+ * \return
+ * Number of bytes required.
+ */
+static inline size_t
+int32_size(int32_t v)
+{
+ if (v < 0) {
+ return 10;
+ } else if (v < (1L << 7)) {
+ return 1;
+ } else if (v < (1L << 14)) {
+ return 2;
+ } else if (v < (1L << 21)) {
+ return 3;
+ } else if (v < (1L << 28)) {
+ return 4;
+ } else {
+ return 5;
+ }
+}
+
+/**
+ * Return the ZigZag-encoded 32-bit unsigned integer form of a 32-bit signed
+ * integer.
+ *
+ * \param v
+ * Value to encode.
+ * \return
+ * ZigZag encoded integer.
+ */
+static inline uint32_t
+zigzag32(int32_t v)
+{
+ if (v < 0)
+ return (-(uint32_t)v) * 2 - 1;
+ else
+ return (uint32_t)(v) * 2;
+}
+
+/**
+ * Return the number of bytes required to store a signed 32-bit integer,
+ * converted to an unsigned 32-bit integer with ZigZag encoding, using base-128
+ * varint encoding.
+ *
+ * \param v
+ * Value to encode.
+ * \return
+ * Number of bytes required.
+ */
+static inline size_t
+sint32_size(int32_t v)
+{
+ return uint32_size(zigzag32(v));
+}
+
+/**
+ * Return the number of bytes required to store a 64-bit unsigned integer in
+ * base-128 varint encoding.
+ *
+ * \param v
+ * Value to encode.
+ * \return
+ * Number of bytes required.
+ */
+static inline size_t
+uint64_size(uint64_t v)
+{
+ uint32_t upper_v = (uint32_t) (v >> 32);
+
+ if (upper_v == 0) {
+ return uint32_size((uint32_t) v);
+ } else if (upper_v < (1UL << 3)) {
+ return 5;
+ } else if (upper_v < (1UL << 10)) {
+ return 6;
+ } else if (upper_v < (1UL << 17)) {
+ return 7;
+ } else if (upper_v < (1UL << 24)) {
+ return 8;
+ } else if (upper_v < (1UL << 31)) {
+ return 9;
+ } else {
+ return 10;
+ }
+}
+
+/**
+ * Return the ZigZag-encoded 64-bit unsigned integer form of a 64-bit signed
+ * integer.
+ *
+ * \param v
+ * Value to encode.
+ * \return
+ * ZigZag encoded integer.
+ */
+static inline uint64_t
+zigzag64(int64_t v)
+{
+ if (v < 0)
+ return (-(uint64_t)v) * 2 - 1;
+ else
+ return (uint64_t)(v) * 2;
+}
+
+/**
+ * Return the number of bytes required to store a signed 64-bit integer,
+ * converted to an unsigned 64-bit integer with ZigZag encoding, using base-128
+ * varint encoding.
+ *
+ * \param v
+ * Value to encode.
+ * \return
+ * Number of bytes required.
+ */
+static inline size_t
+sint64_size(int64_t v)
+{
+ return uint64_size(zigzag64(v));
+}
+
+/**
+ * Calculate the serialized size of a single required message field, including
+ * the space needed by the preceding tag.
+ *
+ * \param field
+ * Field descriptor for member.
+ * \param member
+ * Field to encode.
+ * \return
+ * Number of bytes required.
+ */
+static size_t
+required_field_get_packed_size(const ProtobufCFieldDescriptor *field,
+ const void *member)
+{
+ size_t rv = get_tag_size(field->id);
+
+ switch (field->type) {
+ case PROTOBUF_C_TYPE_SINT32:
+ return rv + sint32_size(*(const int32_t *) member);
+ case PROTOBUF_C_TYPE_ENUM:
+ case PROTOBUF_C_TYPE_INT32:
+ return rv + int32_size(*(const int32_t *) member);
+ case PROTOBUF_C_TYPE_UINT32:
+ return rv + uint32_size(*(const uint32_t *) member);
+ case PROTOBUF_C_TYPE_SINT64:
+ return rv + sint64_size(*(const int64_t *) member);
+ case PROTOBUF_C_TYPE_INT64:
+ case PROTOBUF_C_TYPE_UINT64:
+ return rv + uint64_size(*(const uint64_t *) member);
+ case PROTOBUF_C_TYPE_SFIXED32:
+ case PROTOBUF_C_TYPE_FIXED32:
+ return rv + 4;
+ case PROTOBUF_C_TYPE_SFIXED64:
+ case PROTOBUF_C_TYPE_FIXED64:
+ return rv + 8;
+ case PROTOBUF_C_TYPE_BOOL:
+ return rv + 1;
+ case PROTOBUF_C_TYPE_FLOAT:
+ return rv + 4;
+ case PROTOBUF_C_TYPE_DOUBLE:
+ return rv + 8;
+ case PROTOBUF_C_TYPE_STRING: {
+ const char *str = *(char * const *) member;
+ size_t len = str ? strlen(str) : 0;
+ return rv + uint32_size(len) + len;
+ }
+ case PROTOBUF_C_TYPE_BYTES: {
+ size_t len = ((const ProtobufCBinaryData *) member)->len;
+ return rv + uint32_size(len) + len;
+ }
+ case PROTOBUF_C_TYPE_MESSAGE: {
+ const ProtobufCMessage *msg = *(ProtobufCMessage * const *) member;
+ size_t subrv = msg ? protobuf_c_message_get_packed_size(msg) : 0;
+ return rv + uint32_size(subrv) + subrv;
+ }
+ }
+ PROTOBUF_C__ASSERT_NOT_REACHED();
+ return 0;
+}
+
+/**
+ * Calculate the serialized size of a single oneof message field, including
+ * the space needed by the preceding tag. Returns 0 if the oneof field isn't
+ * selected or is not set.
+ *
+ * \param field
+ * Field descriptor for member.
+ * \param oneof_case
+ * Enum value that selects the field in the oneof.
+ * \param member
+ * Field to encode.
+ * \return
+ * Number of bytes required.
+ */
+static size_t
+oneof_field_get_packed_size(const ProtobufCFieldDescriptor *field,
+ uint32_t oneof_case,
+ const void *member)
+{
+ if (oneof_case != field->id) {
+ return 0;
+ }
+ if (field->type == PROTOBUF_C_TYPE_MESSAGE ||
+ field->type == PROTOBUF_C_TYPE_STRING)
+ {
+ const void *ptr = *(const void * const *) member;
+ if (ptr == NULL || ptr == field->default_value)
+ return 0;
+ }
+ return required_field_get_packed_size(field, member);
+}
+
+/**
+ * Calculate the serialized size of a single optional message field, including
+ * the space needed by the preceding tag. Returns 0 if the optional field isn't
+ * set.
+ *
+ * \param field
+ * Field descriptor for member.
+ * \param has
+ * True if the field exists, false if not.
+ * \param member
+ * Field to encode.
+ * \return
+ * Number of bytes required.
+ */
+static size_t
+optional_field_get_packed_size(const ProtobufCFieldDescriptor *field,
+ const protobuf_c_boolean has,
+ const void *member)
+{
+ if (field->type == PROTOBUF_C_TYPE_MESSAGE ||
+ field->type == PROTOBUF_C_TYPE_STRING)
+ {
+ const void *ptr = *(const void * const *) member;
+ if (ptr == NULL || ptr == field->default_value)
+ return 0;
+ } else {
+ if (!has)
+ return 0;
+ }
+ return required_field_get_packed_size(field, member);
+}
+
+static protobuf_c_boolean
+field_is_zeroish(const ProtobufCFieldDescriptor *field,
+ const void *member)
+{
+ protobuf_c_boolean ret = FALSE;
+
+ switch (field->type) {
+ case PROTOBUF_C_TYPE_BOOL:
+ ret = (0 == *(const protobuf_c_boolean *) member);
+ break;
+ case PROTOBUF_C_TYPE_ENUM:
+ case PROTOBUF_C_TYPE_SINT32:
+ case PROTOBUF_C_TYPE_INT32:
+ case PROTOBUF_C_TYPE_UINT32:
+ case PROTOBUF_C_TYPE_SFIXED32:
+ case PROTOBUF_C_TYPE_FIXED32:
+ ret = (0 == *(const uint32_t *) member);
+ break;
+ case PROTOBUF_C_TYPE_SINT64:
+ case PROTOBUF_C_TYPE_INT64:
+ case PROTOBUF_C_TYPE_UINT64:
+ case PROTOBUF_C_TYPE_SFIXED64:
+ case PROTOBUF_C_TYPE_FIXED64:
+ ret = (0 == *(const uint64_t *) member);
+ break;
+ case PROTOBUF_C_TYPE_FLOAT:
+ ret = (0 == *(const float *) member);
+ break;
+ case PROTOBUF_C_TYPE_DOUBLE:
+ ret = (0 == *(const double *) member);
+ break;
+ case PROTOBUF_C_TYPE_STRING:
+ ret = (NULL == *(const char * const *) member) ||
+ ('\0' == **(const char * const *) member);
+ break;
+ case PROTOBUF_C_TYPE_BYTES:
+ case PROTOBUF_C_TYPE_MESSAGE:
+ ret = (NULL == *(const void * const *) member);
+ break;
+ default:
+ ret = TRUE;
+ break;
+ }
+
+ return ret;
+}
+
+/**
+ * Calculate the serialized size of a single unlabeled message field, including
+ * the space needed by the preceding tag. Returns 0 if the field isn't set or
+ * if it is set to a "zeroish" value (null pointer or 0 for numerical values).
+ * Unlabeled fields are supported only in proto3.
+ *
+ * \param field
+ * Field descriptor for member.
+ * \param member
+ * Field to encode.
+ * \return
+ * Number of bytes required.
+ */
+static size_t
+unlabeled_field_get_packed_size(const ProtobufCFieldDescriptor *field,
+ const void *member)
+{
+ if (field_is_zeroish(field, member))
+ return 0;
+ return required_field_get_packed_size(field, member);
+}
+
+/**
+ * Calculate the serialized size of repeated message fields, which may consist
+ * of any number of values (including 0). Includes the space needed by the
+ * preceding tags (as needed).
+ *
+ * \param field
+ * Field descriptor for member.
+ * \param count
+ * Number of repeated field members.
+ * \param member
+ * Field to encode.
+ * \return
+ * Number of bytes required.
+ */
+static size_t
+repeated_field_get_packed_size(const ProtobufCFieldDescriptor *field,
+ size_t count, const void *member)
+{
+ size_t header_size;
+ size_t rv = 0;
+ unsigned i;
+ void *array = *(void * const *) member;
+
+ if (count == 0)
+ return 0;
+ header_size = get_tag_size(field->id);
+ if (0 == (field->flags & PROTOBUF_C_FIELD_FLAG_PACKED))
+ header_size *= count;
+
+ switch (field->type) {
+ case PROTOBUF_C_TYPE_SINT32:
+ for (i = 0; i < count; i++)
+ rv += sint32_size(((int32_t *) array)[i]);
+ break;
+ case PROTOBUF_C_TYPE_ENUM:
+ case PROTOBUF_C_TYPE_INT32:
+ for (i = 0; i < count; i++)
+ rv += int32_size(((int32_t *) array)[i]);
+ break;
+ case PROTOBUF_C_TYPE_UINT32:
+ for (i = 0; i < count; i++)
+ rv += uint32_size(((uint32_t *) array)[i]);
+ break;
+ case PROTOBUF_C_TYPE_SINT64:
+ for (i = 0; i < count; i++)
+ rv += sint64_size(((int64_t *) array)[i]);
+ break;
+ case PROTOBUF_C_TYPE_INT64:
+ case PROTOBUF_C_TYPE_UINT64:
+ for (i = 0; i < count; i++)
+ rv += uint64_size(((uint64_t *) array)[i]);
+ break;
+ case PROTOBUF_C_TYPE_SFIXED32:
+ case PROTOBUF_C_TYPE_FIXED32:
+ case PROTOBUF_C_TYPE_FLOAT:
+ rv += 4 * count;
+ break;
+ case PROTOBUF_C_TYPE_SFIXED64:
+ case PROTOBUF_C_TYPE_FIXED64:
+ case PROTOBUF_C_TYPE_DOUBLE:
+ rv += 8 * count;
+ break;
+ case PROTOBUF_C_TYPE_BOOL:
+ rv += count;
+ break;
+ case PROTOBUF_C_TYPE_STRING:
+ for (i = 0; i < count; i++) {
+ size_t len = strlen(((char **) array)[i]);
+ rv += uint32_size(len) + len;
+ }
+ break;
+ case PROTOBUF_C_TYPE_BYTES:
+ for (i = 0; i < count; i++) {
+ size_t len = ((ProtobufCBinaryData *) array)[i].len;
+ rv += uint32_size(len) + len;
+ }
+ break;
+ case PROTOBUF_C_TYPE_MESSAGE:
+ for (i = 0; i < count; i++) {
+ size_t len = protobuf_c_message_get_packed_size(
+ ((ProtobufCMessage **) array)[i]);
+ rv += uint32_size(len) + len;
+ }
+ break;
+ }
+
+ if (0 != (field->flags & PROTOBUF_C_FIELD_FLAG_PACKED))
+ header_size += uint32_size(rv);
+ return header_size + rv;
+}
+
+/**
+ * Calculate the serialized size of an unknown field, i.e. one that is passed
+ * through mostly uninterpreted. This is required for forward compatibility if
+ * new fields are added to the message descriptor.
+ *
+ * \param field
+ * Unknown field type.
+ * \return
+ * Number of bytes required.
+ */
+static inline size_t
+unknown_field_get_packed_size(const ProtobufCMessageUnknownField *field)
+{
+ return get_tag_size(field->tag) + field->len;
+}
+
+/**@}*/
+
+/*
+ * Calculate the serialized size of the message.
+ */
+size_t protobuf_c_message_get_packed_size(const ProtobufCMessage *message)
+{
+ unsigned i;
+ size_t rv = 0;
+
+ ASSERT_IS_MESSAGE(message);
+ for (i = 0; i < message->descriptor->n_fields; i++) {
+ const ProtobufCFieldDescriptor *field =
+ message->descriptor->fields + i;
+ const void *member =
+ ((const char *) message) + field->offset;
+ const void *qmember =
+ ((const char *) message) + field->quantifier_offset;
+
+ if (field->label == PROTOBUF_C_LABEL_REQUIRED) {
+ rv += required_field_get_packed_size(field, member);
+ } else if ((field->label == PROTOBUF_C_LABEL_OPTIONAL ||
+ field->label == PROTOBUF_C_LABEL_NONE) &&
+ (0 != (field->flags & PROTOBUF_C_FIELD_FLAG_ONEOF))) {
+ rv += oneof_field_get_packed_size(
+ field,
+ *(const uint32_t *) qmember,
+ member
+ );
+ } else if (field->label == PROTOBUF_C_LABEL_OPTIONAL) {
+ rv += optional_field_get_packed_size(
+ field,
+ *(protobuf_c_boolean *) qmember,
+ member
+ );
+ } else if (field->label == PROTOBUF_C_LABEL_NONE) {
+ rv += unlabeled_field_get_packed_size(
+ field,
+ member
+ );
+ } else {
+ rv += repeated_field_get_packed_size(
+ field,
+ *(const size_t *) qmember,
+ member
+ );
+ }
+ }
+ for (i = 0; i < message->n_unknown_fields; i++)
+ rv += unknown_field_get_packed_size(&message->unknown_fields[i]);
+ return rv;
+}
+
+/**
+ * \defgroup pack protobuf_c_message_pack() implementation
+ *
+ * Routines mainly used by protobuf_c_message_pack().
+ *
+ * \ingroup internal
+ * @{
+ */
+
+/**
+ * Pack an unsigned 32-bit integer in base-128 varint encoding and return the
+ * number of bytes written, which must be 5 or less.
+ *
+ * \param value
+ * Value to encode.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static inline size_t
+uint32_pack(uint32_t value, uint8_t *out)
+{
+ unsigned rv = 0;
+
+ if (value >= 0x80) {
+ out[rv++] = value | 0x80;
+ value >>= 7;
+ if (value >= 0x80) {
+ out[rv++] = value | 0x80;
+ value >>= 7;
+ if (value >= 0x80) {
+ out[rv++] = value | 0x80;
+ value >>= 7;
+ if (value >= 0x80) {
+ out[rv++] = value | 0x80;
+ value >>= 7;
+ }
+ }
+ }
+ }
+ /* assert: value<128 */
+ out[rv++] = value;
+ return rv;
+}
+
+/**
+ * Pack a signed 32-bit integer and return the number of bytes written.
+ * Negative numbers are encoded as two's complement 64-bit integers.
+ *
+ * \param value
+ * Value to encode.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static inline size_t
+int32_pack(int32_t value, uint8_t *out)
+{
+ if (value < 0) {
+ out[0] = value | 0x80;
+ out[1] = (value >> 7) | 0x80;
+ out[2] = (value >> 14) | 0x80;
+ out[3] = (value >> 21) | 0x80;
+ out[4] = (value >> 28) | 0x80;
+ out[5] = out[6] = out[7] = out[8] = 0xff;
+ out[9] = 0x01;
+ return 10;
+ } else {
+ return uint32_pack(value, out);
+ }
+}
+
+/**
+ * Pack a signed 32-bit integer using ZigZag encoding and return the number of
+ * bytes written.
+ *
+ * \param value
+ * Value to encode.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static inline size_t
+sint32_pack(int32_t value, uint8_t *out)
+{
+ return uint32_pack(zigzag32(value), out);
+}
+
+/**
+ * Pack a 64-bit unsigned integer using base-128 varint encoding and return the
+ * number of bytes written.
+ *
+ * \param value
+ * Value to encode.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static size_t
+uint64_pack(uint64_t value, uint8_t *out)
+{
+ uint32_t hi = (uint32_t) (value >> 32);
+ uint32_t lo = (uint32_t) value;
+ unsigned rv;
+
+ if (hi == 0)
+ return uint32_pack((uint32_t) lo, out);
+ out[0] = (lo) | 0x80;
+ out[1] = (lo >> 7) | 0x80;
+ out[2] = (lo >> 14) | 0x80;
+ out[3] = (lo >> 21) | 0x80;
+ if (hi < 8) {
+ out[4] = (hi << 4) | (lo >> 28);
+ return 5;
+ } else {
+ out[4] = ((hi & 7) << 4) | (lo >> 28) | 0x80;
+ hi >>= 3;
+ }
+ rv = 5;
+ while (hi >= 128) {
+ out[rv++] = hi | 0x80;
+ hi >>= 7;
+ }
+ out[rv++] = hi;
+ return rv;
+}
+
+/**
+ * Pack a 64-bit signed integer in ZigZag encoding and return the number of
+ * bytes written.
+ *
+ * \param value
+ * Value to encode.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static inline size_t
+sint64_pack(int64_t value, uint8_t *out)
+{
+ return uint64_pack(zigzag64(value), out);
+}
+
+/**
+ * Pack a 32-bit quantity in little-endian byte order. Used for protobuf wire
+ * types fixed32, sfixed32, float. Similar to "htole32".
+ *
+ * \param value
+ * Value to encode.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static inline size_t
+fixed32_pack(uint32_t value, void *out)
+{
+#if !defined(WORDS_BIGENDIAN)
+ memcpy(out, &value, 4);
+#else
+ uint8_t *buf = out;
+
+ buf[0] = value;
+ buf[1] = value >> 8;
+ buf[2] = value >> 16;
+ buf[3] = value >> 24;
+#endif
+ return 4;
+}
+
+/**
+ * Pack a 64-bit quantity in little-endian byte order. Used for protobuf wire
+ * types fixed64, sfixed64, double. Similar to "htole64".
+ *
+ * \todo The big-endian impl is really only good for 32-bit machines, a 64-bit
+ * version would be appreciated, plus a way to decide to use 64-bit math where
+ * convenient.
+ *
+ * \param value
+ * Value to encode.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static inline size_t
+fixed64_pack(uint64_t value, void *out)
+{
+#if !defined(WORDS_BIGENDIAN)
+ memcpy(out, &value, 8);
+#else
+ fixed32_pack(value, out);
+ fixed32_pack(value >> 32, ((char *) out) + 4);
+#endif
+ return 8;
+}
+
+/**
+ * Pack a boolean value as an integer and return the number of bytes written.
+ *
+ * \todo Perhaps on some platforms *out = !!value would be a better impl, b/c
+ * that is idiomatic C++ in some STL implementations.
+ *
+ * \param value
+ * Value to encode.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static inline size_t
+boolean_pack(protobuf_c_boolean value, uint8_t *out)
+{
+ *out = value ? TRUE : FALSE;
+ return 1;
+}
+
+/**
+ * Pack a NUL-terminated C string and return the number of bytes written. The
+ * output includes a length delimiter.
+ *
+ * The NULL pointer is treated as an empty string. This isn't really necessary,
+ * but it allows people to leave required strings blank. (See Issue #13 in the
+ * bug tracker for a little more explanation).
+ *
+ * \param str
+ * String to encode.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static inline size_t
+string_pack(const char *str, uint8_t *out)
+{
+ if (str == NULL) {
+ out[0] = 0;
+ return 1;
+ } else {
+ size_t len = strlen(str);
+ size_t rv = uint32_pack(len, out);
+ memcpy(out + rv, str, len);
+ return rv + len;
+ }
+}
+
+/**
+ * Pack a ProtobufCBinaryData and return the number of bytes written. The output
+ * includes a length delimiter.
+ *
+ * \param bd
+ * ProtobufCBinaryData to encode.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static inline size_t
+binary_data_pack(const ProtobufCBinaryData *bd, uint8_t *out)
+{
+ size_t len = bd->len;
+ size_t rv = uint32_pack(len, out);
+ memcpy(out + rv, bd->data, len);
+ return rv + len;
+}
+
+/**
+ * Pack a ProtobufCMessage and return the number of bytes written. The output
+ * includes a length delimiter.
+ *
+ * \param message
+ * ProtobufCMessage object to pack.
+ * \param[out] out
+ * Packed message.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static inline size_t
+prefixed_message_pack(const ProtobufCMessage *message, uint8_t *out)
+{
+ if (message == NULL) {
+ out[0] = 0;
+ return 1;
+ } else {
+ size_t rv = protobuf_c_message_pack(message, out + 1);
+ uint32_t rv_packed_size = uint32_size(rv);
+ if (rv_packed_size != 1)
+ memmove(out + rv_packed_size, out + 1, rv);
+ return uint32_pack(rv, out) + rv;
+ }
+}
+
+/**
+ * Pack a field tag.
+ *
+ * Wire-type will be added in required_field_pack().
+ *
+ * \todo Just call uint64_pack on 64-bit platforms.
+ *
+ * \param id
+ * Tag value to encode.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static size_t
+tag_pack(uint32_t id, uint8_t *out)
+{
+ if (id < (1UL << (32 - 3)))
+ return uint32_pack(id << 3, out);
+ else
+ return uint64_pack(((uint64_t) id) << 3, out);
+}
+
+/**
+ * Pack a required field and return the number of bytes written.
+ *
+ * \param field
+ * Field descriptor.
+ * \param member
+ * The field member.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static size_t
+required_field_pack(const ProtobufCFieldDescriptor *field,
+ const void *member, uint8_t *out)
+{
+ size_t rv = tag_pack(field->id, out);
+
+ switch (field->type) {
+ case PROTOBUF_C_TYPE_SINT32:
+ out[0] |= PROTOBUF_C_WIRE_TYPE_VARINT;
+ return rv + sint32_pack(*(const int32_t *) member, out + rv);
+ case PROTOBUF_C_TYPE_ENUM:
+ case PROTOBUF_C_TYPE_INT32:
+ out[0] |= PROTOBUF_C_WIRE_TYPE_VARINT;
+ return rv + int32_pack(*(const int32_t *) member, out + rv);
+ case PROTOBUF_C_TYPE_UINT32:
+ out[0] |= PROTOBUF_C_WIRE_TYPE_VARINT;
+ return rv + uint32_pack(*(const uint32_t *) member, out + rv);
+ case PROTOBUF_C_TYPE_SINT64:
+ out[0] |= PROTOBUF_C_WIRE_TYPE_VARINT;
+ return rv + sint64_pack(*(const int64_t *) member, out + rv);
+ case PROTOBUF_C_TYPE_INT64:
+ case PROTOBUF_C_TYPE_UINT64:
+ out[0] |= PROTOBUF_C_WIRE_TYPE_VARINT;
+ return rv + uint64_pack(*(const uint64_t *) member, out + rv);
+ case PROTOBUF_C_TYPE_SFIXED32:
+ case PROTOBUF_C_TYPE_FIXED32:
+ case PROTOBUF_C_TYPE_FLOAT:
+ out[0] |= PROTOBUF_C_WIRE_TYPE_32BIT;
+ return rv + fixed32_pack(*(const uint32_t *) member, out + rv);
+ case PROTOBUF_C_TYPE_SFIXED64:
+ case PROTOBUF_C_TYPE_FIXED64:
+ case PROTOBUF_C_TYPE_DOUBLE:
+ out[0] |= PROTOBUF_C_WIRE_TYPE_64BIT;
+ return rv + fixed64_pack(*(const uint64_t *) member, out + rv);
+ case PROTOBUF_C_TYPE_BOOL:
+ out[0] |= PROTOBUF_C_WIRE_TYPE_VARINT;
+ return rv + boolean_pack(*(const protobuf_c_boolean *) member, out + rv);
+ case PROTOBUF_C_TYPE_STRING:
+ out[0] |= PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED;
+ return rv + string_pack(*(char *const *) member, out + rv);
+ case PROTOBUF_C_TYPE_BYTES:
+ out[0] |= PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED;
+ return rv + binary_data_pack((const ProtobufCBinaryData *) member, out + rv);
+ case PROTOBUF_C_TYPE_MESSAGE:
+ out[0] |= PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED;
+ return rv + prefixed_message_pack(*(ProtobufCMessage * const *) member, out + rv);
+ }
+ PROTOBUF_C__ASSERT_NOT_REACHED();
+ return 0;
+}
+
+/**
+ * Pack a oneof field and return the number of bytes written. Only packs the
+ * field that is selected by the case enum.
+ *
+ * \param field
+ * Field descriptor.
+ * \param oneof_case
+ * Enum value that selects the field in the oneof.
+ * \param member
+ * The field member.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static size_t
+oneof_field_pack(const ProtobufCFieldDescriptor *field,
+ uint32_t oneof_case,
+ const void *member, uint8_t *out)
+{
+ if (oneof_case != field->id) {
+ return 0;
+ }
+ if (field->type == PROTOBUF_C_TYPE_MESSAGE ||
+ field->type == PROTOBUF_C_TYPE_STRING)
+ {
+ const void *ptr = *(const void * const *) member;
+ if (ptr == NULL || ptr == field->default_value)
+ return 0;
+ }
+ return required_field_pack(field, member, out);
+}
+
+/**
+ * Pack an optional field and return the number of bytes written.
+ *
+ * \param field
+ * Field descriptor.
+ * \param has
+ * Whether the field is set.
+ * \param member
+ * The field member.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static size_t
+optional_field_pack(const ProtobufCFieldDescriptor *field,
+ const protobuf_c_boolean has,
+ const void *member, uint8_t *out)
+{
+ if (field->type == PROTOBUF_C_TYPE_MESSAGE ||
+ field->type == PROTOBUF_C_TYPE_STRING)
+ {
+ const void *ptr = *(const void * const *) member;
+ if (ptr == NULL || ptr == field->default_value)
+ return 0;
+ } else {
+ if (!has)
+ return 0;
+ }
+ return required_field_pack(field, member, out);
+}
+
+/**
+ * Pack an unlabeled field and return the number of bytes written.
+ *
+ * \param field
+ * Field descriptor.
+ * \param member
+ * The field member.
+ * \param[out] out
+ * Packed value.
+ * \return
+ * Number of bytes written to `out`.
+ */
+static size_t
+unlabeled_field_pack(const ProtobufCFieldDescriptor *field,
+ const void *member, uint8_t *out)
+{
+ if (field_is_zeroish(field, member))
+ return 0;
+ return required_field_pack(field, member, out);
+}
+
+/**
+ * Given a field type, return the in-memory size.
+ *
+ * \todo Implement as a table lookup.
+ *
+ * \param type
+ * Field type.
+ * \return
+ * Size of the field.
+ */
+static inline size_t
+sizeof_elt_in_repeated_array(ProtobufCType type)
+{
+ switch (type) {
+ case PROTOBUF_C_TYPE_SINT32:
+ case PROTOBUF_C_TYPE_INT32:
+ case PROTOBUF_C_TYPE_UINT32:
+ case PROTOBUF_C_TYPE_SFIXED32:
+ case PROTOBUF_C_TYPE_FIXED32:
+ case PROTOBUF_C_TYPE_FLOAT:
+ case PROTOBUF_C_TYPE_ENUM:
+ return 4;
+ case PROTOBUF_C_TYPE_SINT64:
+ case PROTOBUF_C_TYPE_INT64:
+ case PROTOBUF_C_TYPE_UINT64:
+ case PROTOBUF_C_TYPE_SFIXED64:
+ case PROTOBUF_C_TYPE_FIXED64:
+ case PROTOBUF_C_TYPE_DOUBLE:
+ return 8;
+ case PROTOBUF_C_TYPE_BOOL:
+ return sizeof(protobuf_c_boolean);
+ case PROTOBUF_C_TYPE_STRING:
+ case PROTOBUF_C_TYPE_MESSAGE:
+ return sizeof(void *);
+ case PROTOBUF_C_TYPE_BYTES:
+ return sizeof(ProtobufCBinaryData);
+ }
+ PROTOBUF_C__ASSERT_NOT_REACHED();
+ return 0;
+}
+
+/**
+ * Pack an array of 32-bit quantities.
+ *
+ * \param[out] out
+ * Destination.
+ * \param[in] in
+ * Source.
+ * \param[in] n
+ * Number of elements in the source array.
+ */
+static void
+copy_to_little_endian_32(void *out, const void *in, const unsigned n)
+{
+#if !defined(WORDS_BIGENDIAN)
+ memcpy(out, in, n * 4);
+#else
+ unsigned i;
+ const uint32_t *ini = in;
+ for (i = 0; i < n; i++)
+ fixed32_pack(ini[i], (uint32_t *) out + i);
+#endif
+}
+
+/**
+ * Pack an array of 64-bit quantities.
+ *
+ * \param[out] out
+ * Destination.
+ * \param[in] in
+ * Source.
+ * \param[in] n
+ * Number of elements in the source array.
+ */
+static void
+copy_to_little_endian_64(void *out, const void *in, const unsigned n)
+{
+#if !defined(WORDS_BIGENDIAN)
+ memcpy(out, in, n * 8);
+#else
+ unsigned i;
+ const uint64_t *ini = in;
+ for (i = 0; i < n; i++)
+ fixed64_pack(ini[i], (uint64_t *) out + i);
+#endif
+}
+
+/**
+ * Get the minimum number of bytes required to pack a field value of a
+ * particular type.
+ *
+ * \param type
+ * Field type.
+ * \return
+ * Number of bytes.
+ */
+static unsigned
+get_type_min_size(ProtobufCType type)
+{
+ if (type == PROTOBUF_C_TYPE_SFIXED32 ||
+ type == PROTOBUF_C_TYPE_FIXED32 ||
+ type == PROTOBUF_C_TYPE_FLOAT)
+ {
+ return 4;
+ }
+ if (type == PROTOBUF_C_TYPE_SFIXED64 ||
+ type == PROTOBUF_C_TYPE_FIXED64 ||
+ type == PROTOBUF_C_TYPE_DOUBLE)
+ {
+ return 8;
+ }
+ return 1;
+}
+
+/**
+ * Packs the elements of a repeated field and returns the serialised field and
+ * its length.
+ *
+ * \param field
+ * Field descriptor.
+ * \param count
+ * Number of elements in the repeated field array.
+ * \param member
+ * Pointer to the elements for this repeated field.
+ * \param[out] out
+ * Serialised representation of the repeated field.
+ * \return
+ * Number of bytes serialised to `out`.
+ */
+static size_t
+repeated_field_pack(const ProtobufCFieldDescriptor *field,
+ size_t count, const void *member, uint8_t *out)
+{
+ void *array = *(void * const *) member;
+ unsigned i;
+
+ if (0 != (field->flags & PROTOBUF_C_FIELD_FLAG_PACKED)) {
+ unsigned header_len;
+ unsigned len_start;
+ unsigned min_length;
+ unsigned payload_len;
+ unsigned length_size_min;
+ unsigned actual_length_size;
+ uint8_t *payload_at;
+
+ if (count == 0)
+ return 0;
+ header_len = tag_pack(field->id, out);
+ out[0] |= PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED;
+ len_start = header_len;
+ min_length = get_type_min_size(field->type) * count;
+ length_size_min = uint32_size(min_length);
+ header_len += length_size_min;
+ payload_at = out + header_len;
+
+ switch (field->type) {
+ case PROTOBUF_C_TYPE_SFIXED32:
+ case PROTOBUF_C_TYPE_FIXED32:
+ case PROTOBUF_C_TYPE_FLOAT:
+ copy_to_little_endian_32(payload_at, array, count);
+ payload_at += count * 4;
+ break;
+ case PROTOBUF_C_TYPE_SFIXED64:
+ case PROTOBUF_C_TYPE_FIXED64:
+ case PROTOBUF_C_TYPE_DOUBLE:
+ copy_to_little_endian_64(payload_at, array, count);
+ payload_at += count * 8;
+ break;
+ case PROTOBUF_C_TYPE_ENUM:
+ case PROTOBUF_C_TYPE_INT32: {
+ const int32_t *arr = (const int32_t *) array;
+ for (i = 0; i < count; i++)
+ payload_at += int32_pack(arr[i], payload_at);
+ break;
+ }
+ case PROTOBUF_C_TYPE_SINT32: {
+ const int32_t *arr = (const int32_t *) array;
+ for (i = 0; i < count; i++)
+ payload_at += sint32_pack(arr[i], payload_at);
+ break;
+ }
+ case PROTOBUF_C_TYPE_SINT64: {
+ const int64_t *arr = (const int64_t *) array;
+ for (i = 0; i < count; i++)
+ payload_at += sint64_pack(arr[i], payload_at);
+ break;
+ }
+ case PROTOBUF_C_TYPE_UINT32: {
+ const uint32_t *arr = (const uint32_t *) array;
+ for (i = 0; i < count; i++)
+ payload_at += uint32_pack(arr[i], payload_at);
+ break;
+ }
+ case PROTOBUF_C_TYPE_INT64:
+ case PROTOBUF_C_TYPE_UINT64: {
+ const uint64_t *arr = (const uint64_t *) array;
+ for (i = 0; i < count; i++)
+ payload_at += uint64_pack(arr[i], payload_at);
+ break;
+ }
+ case PROTOBUF_C_TYPE_BOOL: {
+ const protobuf_c_boolean *arr = (const protobuf_c_boolean *) array;
+ for (i = 0; i < count; i++)
+ payload_at += boolean_pack(arr[i], payload_at);
+ break;
+ }
+ default:
+ PROTOBUF_C__ASSERT_NOT_REACHED();
+ }
+
+ payload_len = payload_at - (out + header_len);
+ actual_length_size = uint32_size(payload_len);
+ if (length_size_min != actual_length_size) {
+ assert(actual_length_size == length_size_min + 1);
+ memmove(out + header_len + 1, out + header_len,
+ payload_len);
+ header_len++;
+ }
+ uint32_pack(payload_len, out + len_start);
+ return header_len + payload_len;
+ } else {
+ /* not "packed" cased */
+ /* CONSIDER: optimize this case a bit (by putting the loop inside the switch) */
+ size_t rv = 0;
+ unsigned siz = sizeof_elt_in_repeated_array(field->type);
+
+ for (i = 0; i < count; i++) {
+ rv += required_field_pack(field, array, out + rv);
+ array = (char *)array + siz;
+ }
+ return rv;
+ }
+}
+
+static size_t
+unknown_field_pack(const ProtobufCMessageUnknownField *field, uint8_t *out)
+{
+ size_t rv = tag_pack(field->tag, out);
+ out[0] |= field->wire_type;
+ memcpy(out + rv, field->data, field->len);
+ return rv + field->len;
+}
+
+/**@}*/
+
+size_t
+protobuf_c_message_pack(const ProtobufCMessage *message, uint8_t *out)
+{
+ unsigned i;
+ size_t rv = 0;
+
+ ASSERT_IS_MESSAGE(message);
+ for (i = 0; i < message->descriptor->n_fields; i++) {
+ const ProtobufCFieldDescriptor *field =
+ message->descriptor->fields + i;
+ const void *member = ((const char *) message) + field->offset;
+
+ /*
+ * It doesn't hurt to compute qmember (a pointer to the
+ * quantifier field of the structure), but the pointer is only
+ * valid if the field is:
+ * - a repeated field, or
+ * - a field that is part of a oneof
+ * - an optional field that isn't a pointer type
+ * (Meaning: not a message or a string).
+ */
+ const void *qmember =
+ ((const char *) message) + field->quantifier_offset;
+
+ if (field->label == PROTOBUF_C_LABEL_REQUIRED) {
+ rv += required_field_pack(field, member, out + rv);
+ } else if ((field->label == PROTOBUF_C_LABEL_OPTIONAL ||
+ field->label == PROTOBUF_C_LABEL_NONE) &&
+ (0 != (field->flags & PROTOBUF_C_FIELD_FLAG_ONEOF))) {
+ rv += oneof_field_pack(
+ field,
+ *(const uint32_t *) qmember,
+ member,
+ out + rv
+ );
+ } else if (field->label == PROTOBUF_C_LABEL_OPTIONAL) {
+ rv += optional_field_pack(
+ field,
+ *(const protobuf_c_boolean *) qmember,
+ member,
+ out + rv
+ );
+ } else if (field->label == PROTOBUF_C_LABEL_NONE) {
+ rv += unlabeled_field_pack(field, member, out + rv);
+ } else {
+ rv += repeated_field_pack(field, *(const size_t *) qmember,
+ member, out + rv);
+ }
+ }
+ for (i = 0; i < message->n_unknown_fields; i++)
+ rv += unknown_field_pack(&message->unknown_fields[i], out + rv);
+ return rv;
+}
+
+/**
+ * \defgroup packbuf protobuf_c_message_pack_to_buffer() implementation
+ *
+ * Routines mainly used by protobuf_c_message_pack_to_buffer().
+ *
+ * \ingroup internal
+ * @{
+ */
+
+/**
+ * Pack a required field to a virtual buffer.
+ *
+ * \param field
+ * Field descriptor.
+ * \param member
+ * The element to be packed.
+ * \param[out] buffer
+ * Virtual buffer to append data to.
+ * \return
+ * Number of bytes packed.
+ */
+static size_t
+required_field_pack_to_buffer(const ProtobufCFieldDescriptor *field,
+ const void *member, ProtobufCBuffer *buffer)
+{
+ size_t rv;
+ uint8_t scratch[MAX_UINT64_ENCODED_SIZE * 2];
+
+ rv = tag_pack(field->id, scratch);
+ switch (field->type) {
+ case PROTOBUF_C_TYPE_SINT32:
+ scratch[0] |= PROTOBUF_C_WIRE_TYPE_VARINT;
+ rv += sint32_pack(*(const int32_t *) member, scratch + rv);
+ buffer->append(buffer, rv, scratch);
+ break;
+ case PROTOBUF_C_TYPE_ENUM:
+ case PROTOBUF_C_TYPE_INT32:
+ scratch[0] |= PROTOBUF_C_WIRE_TYPE_VARINT;
+ rv += int32_pack(*(const int32_t *) member, scratch + rv);
+ buffer->append(buffer, rv, scratch);
+ break;
+ case PROTOBUF_C_TYPE_UINT32:
+ scratch[0] |= PROTOBUF_C_WIRE_TYPE_VARINT;
+ rv += uint32_pack(*(const uint32_t *) member, scratch + rv);
+ buffer->append(buffer, rv, scratch);
+ break;
+ case PROTOBUF_C_TYPE_SINT64:
+ scratch[0] |= PROTOBUF_C_WIRE_TYPE_VARINT;
+ rv += sint64_pack(*(const int64_t *) member, scratch + rv);
+ buffer->append(buffer, rv, scratch);
+ break;
+ case PROTOBUF_C_TYPE_INT64:
+ case PROTOBUF_C_TYPE_UINT64:
+ scratch[0] |= PROTOBUF_C_WIRE_TYPE_VARINT;
+ rv += uint64_pack(*(const uint64_t *) member, scratch + rv);
+ buffer->append(buffer, rv, scratch);
+ break;
+ case PROTOBUF_C_TYPE_SFIXED32:
+ case PROTOBUF_C_TYPE_FIXED32:
+ case PROTOBUF_C_TYPE_FLOAT:
+ scratch[0] |= PROTOBUF_C_WIRE_TYPE_32BIT;
+ rv += fixed32_pack(*(const uint32_t *) member, scratch + rv);
+ buffer->append(buffer, rv, scratch);
+ break;
+ case PROTOBUF_C_TYPE_SFIXED64:
+ case PROTOBUF_C_TYPE_FIXED64:
+ case PROTOBUF_C_TYPE_DOUBLE:
+ scratch[0] |= PROTOBUF_C_WIRE_TYPE_64BIT;
+ rv += fixed64_pack(*(const uint64_t *) member, scratch + rv);
+ buffer->append(buffer, rv, scratch);
+ break;
+ case PROTOBUF_C_TYPE_BOOL:
+ scratch[0] |= PROTOBUF_C_WIRE_TYPE_VARINT;
+ rv += boolean_pack(*(const protobuf_c_boolean *) member, scratch + rv);
+ buffer->append(buffer, rv, scratch);
+ break;
+ case PROTOBUF_C_TYPE_STRING: {
+ const char *str = *(char *const *) member;
+ size_t sublen = str ? strlen(str) : 0;
+
+ scratch[0] |= PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED;
+ rv += uint32_pack(sublen, scratch + rv);
+ buffer->append(buffer, rv, scratch);
+ buffer->append(buffer, sublen, (const uint8_t *) str);
+ rv += sublen;
+ break;
+ }
+ case PROTOBUF_C_TYPE_BYTES: {
+ const ProtobufCBinaryData *bd = ((const ProtobufCBinaryData *) member);
+ size_t sublen = bd->len;
+
+ scratch[0] |= PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED;
+ rv += uint32_pack(sublen, scratch + rv);
+ buffer->append(buffer, rv, scratch);
+ buffer->append(buffer, sublen, bd->data);
+ rv += sublen;
+ break;
+ }
+ case PROTOBUF_C_TYPE_MESSAGE: {
+ uint8_t simple_buffer_scratch[256];
+ size_t sublen;
+ const ProtobufCMessage *msg = *(ProtobufCMessage * const *) member;
+ ProtobufCBufferSimple simple_buffer =
+ PROTOBUF_C_BUFFER_SIMPLE_INIT(simple_buffer_scratch);
+
+ scratch[0] |= PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED;
+ if (msg == NULL)
+ sublen = 0;
+ else
+ sublen = protobuf_c_message_pack_to_buffer(msg, &simple_buffer.base);
+ rv += uint32_pack(sublen, scratch + rv);
+ buffer->append(buffer, rv, scratch);
+ buffer->append(buffer, sublen, simple_buffer.data);
+ rv += sublen;
+ PROTOBUF_C_BUFFER_SIMPLE_CLEAR(&simple_buffer);
+ break;
+ }
+ default:
+ PROTOBUF_C__ASSERT_NOT_REACHED();
+ }
+ return rv;
+}
+
+/**
+ * Pack a oneof field to a buffer. Only packs the field that is selected by the case enum.
+ *
+ * \param field
+ * Field descriptor.
+ * \param oneof_case
+ * Enum value that selects the field in the oneof.
+ * \param member
+ * The element to be packed.
+ * \param[out] buffer
+ * Virtual buffer to append data to.
+ * \return
+ * Number of bytes serialised to `buffer`.
+ */
+static size_t
+oneof_field_pack_to_buffer(const ProtobufCFieldDescriptor *field,
+ uint32_t oneof_case,
+ const void *member, ProtobufCBuffer *buffer)
+{
+ if (oneof_case != field->id) {
+ return 0;
+ }
+ if (field->type == PROTOBUF_C_TYPE_MESSAGE ||
+ field->type == PROTOBUF_C_TYPE_STRING)
+ {
+ const void *ptr = *(const void *const *) member;
+ if (ptr == NULL || ptr == field->default_value)
+ return 0;
+ }
+ return required_field_pack_to_buffer(field, member, buffer);
+}
+
+/**
+ * Pack an optional field to a buffer.
+ *
+ * \param field
+ * Field descriptor.
+ * \param has
+ * Whether the field is set.
+ * \param member
+ * The element to be packed.
+ * \param[out] buffer
+ * Virtual buffer to append data to.
+ * \return
+ * Number of bytes serialised to `buffer`.
+ */
+static size_t
+optional_field_pack_to_buffer(const ProtobufCFieldDescriptor *field,
+ const protobuf_c_boolean has,
+ const void *member, ProtobufCBuffer *buffer)
+{
+ if (field->type == PROTOBUF_C_TYPE_MESSAGE ||
+ field->type == PROTOBUF_C_TYPE_STRING)
+ {
+ const void *ptr = *(const void *const *) member;
+ if (ptr == NULL || ptr == field->default_value)
+ return 0;
+ } else {
+ if (!has)
+ return 0;
+ }
+ return required_field_pack_to_buffer(field, member, buffer);
+}
+
+/**
+ * Pack an unlabeled field to a buffer.
+ *
+ * \param field
+ * Field descriptor.
+ * \param member
+ * The element to be packed.
+ * \param[out] buffer
+ * Virtual buffer to append data to.
+ * \return
+ * Number of bytes serialised to `buffer`.
+ */
+static size_t
+unlabeled_field_pack_to_buffer(const ProtobufCFieldDescriptor *field,
+ const void *member, ProtobufCBuffer *buffer)
+{
+ if (field_is_zeroish(field, member))
+ return 0;
+ return required_field_pack_to_buffer(field, member, buffer);
+}
+
+/**
+ * Get the packed size of an array of same field type.
+ *
+ * \param field
+ * Field descriptor.
+ * \param count
+ * Number of elements of this type.
+ * \param array
+ * The elements to get the size of.
+ * \return
+ * Number of bytes required.
+ */
+static size_t
+get_packed_payload_length(const ProtobufCFieldDescriptor *field,
+ unsigned count, const void *array)
+{
+ unsigned rv = 0;
+ unsigned i;
+
+ switch (field->type) {
+ case PROTOBUF_C_TYPE_SFIXED32:
+ case PROTOBUF_C_TYPE_FIXED32:
+ case PROTOBUF_C_TYPE_FLOAT:
+ return count * 4;
+ case PROTOBUF_C_TYPE_SFIXED64:
+ case PROTOBUF_C_TYPE_FIXED64:
+ case PROTOBUF_C_TYPE_DOUBLE:
+ return count * 8;
+ case PROTOBUF_C_TYPE_ENUM:
+ case PROTOBUF_C_TYPE_INT32: {
+ const int32_t *arr = (const int32_t *) array;
+ for (i = 0; i < count; i++)
+ rv += int32_size(arr[i]);
+ break;
+ }
+ case PROTOBUF_C_TYPE_SINT32: {
+ const int32_t *arr = (const int32_t *) array;
+ for (i = 0; i < count; i++)
+ rv += sint32_size(arr[i]);
+ break;
+ }
+ case PROTOBUF_C_TYPE_UINT32: {
+ const uint32_t *arr = (const uint32_t *) array;
+ for (i = 0; i < count; i++)
+ rv += uint32_size(arr[i]);
+ break;
+ }
+ case PROTOBUF_C_TYPE_SINT64: {
+ const int64_t *arr = (const int64_t *) array;
+ for (i = 0; i < count; i++)
+ rv += sint64_size(arr[i]);
+ break;
+ }
+ case PROTOBUF_C_TYPE_INT64:
+ case PROTOBUF_C_TYPE_UINT64: {
+ const uint64_t *arr = (const uint64_t *) array;
+ for (i = 0; i < count; i++)
+ rv += uint64_size(arr[i]);
+ break;
+ }
+ case PROTOBUF_C_TYPE_BOOL:
+ return count;
+ default:
+ PROTOBUF_C__ASSERT_NOT_REACHED();
+ }
+ return rv;
+}
+
+/**
+ * Pack an array of same field type to a virtual buffer.
+ *
+ * \param field
+ * Field descriptor.
+ * \param count
+ * Number of elements of this type.
+ * \param array
+ * The elements to get the size of.
+ * \param[out] buffer
+ * Virtual buffer to append data to.
+ * \return
+ * Number of bytes packed.
+ */
+static size_t
+pack_buffer_packed_payload(const ProtobufCFieldDescriptor *field,
+ unsigned count, const void *array,
+ ProtobufCBuffer *buffer)
+{
+ uint8_t scratch[16];
+ size_t rv = 0;
+ unsigned i;
+
+ switch (field->type) {
+ case PROTOBUF_C_TYPE_SFIXED32:
+ case PROTOBUF_C_TYPE_FIXED32:
+ case PROTOBUF_C_TYPE_FLOAT:
+#if !defined(WORDS_BIGENDIAN)
+ rv = count * 4;
+ goto no_packing_needed;
+#else
+ for (i = 0; i < count; i++) {
+ unsigned len = fixed32_pack(((uint32_t *) array)[i], scratch);
+ buffer->append(buffer, len, scratch);
+ rv += len;
+ }
+ break;
+#endif
+ case PROTOBUF_C_TYPE_SFIXED64:
+ case PROTOBUF_C_TYPE_FIXED64:
+ case PROTOBUF_C_TYPE_DOUBLE:
+#if !defined(WORDS_BIGENDIAN)
+ rv = count * 8;
+ goto no_packing_needed;
+#else
+ for (i = 0; i < count; i++) {
+ unsigned len = fixed64_pack(((uint64_t *) array)[i], scratch);
+ buffer->append(buffer, len, scratch);
+ rv += len;
+ }
+ break;
+#endif
+ case PROTOBUF_C_TYPE_ENUM:
+ case PROTOBUF_C_TYPE_INT32:
+ for (i = 0; i < count; i++) {
+ unsigned len = int32_pack(((int32_t *) array)[i], scratch);
+ buffer->append(buffer, len, scratch);
+ rv += len;
+ }
+ break;
+ case PROTOBUF_C_TYPE_SINT32:
+ for (i = 0; i < count; i++) {
+ unsigned len = sint32_pack(((int32_t *) array)[i], scratch);
+ buffer->append(buffer, len, scratch);
+ rv += len;
+ }
+ break;
+ case PROTOBUF_C_TYPE_UINT32:
+ for (i = 0; i < count; i++) {
+ unsigned len = uint32_pack(((uint32_t *) array)[i], scratch);
+ buffer->append(buffer, len, scratch);
+ rv += len;
+ }
+ break;
+ case PROTOBUF_C_TYPE_SINT64:
+ for (i = 0; i < count; i++) {
+ unsigned len = sint64_pack(((int64_t *) array)[i], scratch);
+ buffer->append(buffer, len, scratch);
+ rv += len;
+ }
+ break;
+ case PROTOBUF_C_TYPE_INT64:
+ case PROTOBUF_C_TYPE_UINT64:
+ for (i = 0; i < count; i++) {
+ unsigned len = uint64_pack(((uint64_t *) array)[i], scratch);
+ buffer->append(buffer, len, scratch);
+ rv += len;
+ }
+ break;
+ case PROTOBUF_C_TYPE_BOOL:
+ for (i = 0; i < count; i++) {
+ unsigned len = boolean_pack(((protobuf_c_boolean *) array)[i], scratch);
+ buffer->append(buffer, len, scratch);
+ rv += len;
+ }
+ return count;
+ default:
+ PROTOBUF_C__ASSERT_NOT_REACHED();
+ }
+ return rv;
+
+#if !defined(WORDS_BIGENDIAN)
+no_packing_needed:
+ buffer->append(buffer, rv, array);
+ return rv;
+#endif
+}
+
+static size_t
+repeated_field_pack_to_buffer(const ProtobufCFieldDescriptor *field,
+ unsigned count, const void *member,
+ ProtobufCBuffer *buffer)
+{
+ char *array = *(char * const *) member;
+
+ if (count == 0)
+ return 0;
+ if (0 != (field->flags & PROTOBUF_C_FIELD_FLAG_PACKED)) {
+ uint8_t scratch[MAX_UINT64_ENCODED_SIZE * 2];
+ size_t rv = tag_pack(field->id, scratch);
+ size_t payload_len = get_packed_payload_length(field, count, array);
+ size_t tmp;
+
+ scratch[0] |= PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED;
+ rv += uint32_pack(payload_len, scratch + rv);
+ buffer->append(buffer, rv, scratch);
+ tmp = pack_buffer_packed_payload(field, count, array, buffer);
+ assert(tmp == payload_len);
+ return rv + payload_len;
+ } else {
+ size_t siz;
+ unsigned i;
+ /* CONSIDER: optimize this case a bit (by putting the loop inside the switch) */
+ unsigned rv = 0;
+
+ siz = sizeof_elt_in_repeated_array(field->type);
+ for (i = 0; i < count; i++) {
+ rv += required_field_pack_to_buffer(field, array, buffer);
+ array += siz;
+ }
+ return rv;
+ }
+}
+
+static size_t
+unknown_field_pack_to_buffer(const ProtobufCMessageUnknownField *field,
+ ProtobufCBuffer *buffer)
+{
+ uint8_t header[MAX_UINT64_ENCODED_SIZE];
+ size_t rv = tag_pack(field->tag, header);
+
+ header[0] |= field->wire_type;
+ buffer->append(buffer, rv, header);
+ buffer->append(buffer, field->len, field->data);
+ return rv + field->len;
+}
+
+/**@}*/
+
+size_t
+protobuf_c_message_pack_to_buffer(const ProtobufCMessage *message,
+ ProtobufCBuffer *buffer)
+{
+ unsigned i;
+ size_t rv = 0;
+
+ ASSERT_IS_MESSAGE(message);
+ for (i = 0; i < message->descriptor->n_fields; i++) {
+ const ProtobufCFieldDescriptor *field =
+ message->descriptor->fields + i;
+ const void *member =
+ ((const char *) message) + field->offset;
+ const void *qmember =
+ ((const char *) message) + field->quantifier_offset;
+
+ if (field->label == PROTOBUF_C_LABEL_REQUIRED) {
+ rv += required_field_pack_to_buffer(field, member, buffer);
+ } else if ((field->label == PROTOBUF_C_LABEL_OPTIONAL ||
+ field->label == PROTOBUF_C_LABEL_NONE) &&
+ (0 != (field->flags & PROTOBUF_C_FIELD_FLAG_ONEOF))) {
+ rv += oneof_field_pack_to_buffer(
+ field,
+ *(const uint32_t *) qmember,
+ member,
+ buffer
+ );
+ } else if (field->label == PROTOBUF_C_LABEL_OPTIONAL) {
+ rv += optional_field_pack_to_buffer(
+ field,
+ *(const protobuf_c_boolean *) qmember,
+ member,
+ buffer
+ );
+ } else if (field->label == PROTOBUF_C_LABEL_NONE) {
+ rv += unlabeled_field_pack_to_buffer(
+ field,
+ member,
+ buffer
+ );
+ } else {
+ rv += repeated_field_pack_to_buffer(
+ field,
+ *(const size_t *) qmember,
+ member,
+ buffer
+ );
+ }
+ }
+ for (i = 0; i < message->n_unknown_fields; i++)
+ rv += unknown_field_pack_to_buffer(&message->unknown_fields[i], buffer);
+
+ return rv;
+}
+
+/**
+ * \defgroup unpack unpacking implementation
+ *
+ * Routines mainly used by the unpacking functions.
+ *
+ * \ingroup internal
+ * @{
+ */
+
+static inline int
+int_range_lookup(unsigned n_ranges, const ProtobufCIntRange *ranges, int value)
+{
+ unsigned n;
+ unsigned start;
+
+ if (n_ranges == 0)
+ return -1;
+ start = 0;
+ n = n_ranges;
+ while (n > 1) {
+ unsigned mid = start + n / 2;
+
+ if (value < ranges[mid].start_value) {
+ n = mid - start;
+ } else if (value >= ranges[mid].start_value +
+ (int) (ranges[mid + 1].orig_index -
+ ranges[mid].orig_index))
+ {
+ unsigned new_start = mid + 1;
+ n = start + n - new_start;
+ start = new_start;
+ } else
+ return (value - ranges[mid].start_value) +
+ ranges[mid].orig_index;
+ }
+ if (n > 0) {
+ unsigned start_orig_index = ranges[start].orig_index;
+ unsigned range_size =
+ ranges[start + 1].orig_index - start_orig_index;
+
+ if (ranges[start].start_value <= value &&
+ value < (int) (ranges[start].start_value + range_size))
+ {
+ return (value - ranges[start].start_value) +
+ start_orig_index;
+ }
+ }
+ return -1;
+}
+
+static size_t
+parse_tag_and_wiretype(size_t len,
+ const uint8_t *data,
+ uint32_t *tag_out,
+ ProtobufCWireType *wiretype_out)
+{
+ unsigned max_rv = len > 5 ? 5 : len;
+ uint32_t tag = (data[0] & 0x7f) >> 3;
+ unsigned shift = 4;
+ unsigned rv;
+
+ *wiretype_out = data[0] & 7;
+ if ((data[0] & 0x80) == 0) {
+ *tag_out = tag;
+ return 1;
+ }
+ for (rv = 1; rv < max_rv; rv++) {
+ if (data[rv] & 0x80) {
+ tag |= (data[rv] & 0x7f) << shift;
+ shift += 7;
+ } else {
+ tag |= data[rv] << shift;
+ *tag_out = tag;
+ return rv + 1;
+ }
+ }
+ return 0; /* error: bad header */
+}
+
+/* sizeof(ScannedMember) must be <= (1UL<<BOUND_SIZEOF_SCANNED_MEMBER_LOG2) */
+#define BOUND_SIZEOF_SCANNED_MEMBER_LOG2 5
+typedef struct _ScannedMember ScannedMember;
+/** Field as it's being read. */
+struct _ScannedMember {
+ uint32_t tag; /**< Field tag. */
+ uint8_t wire_type; /**< Field type. */
+ uint8_t length_prefix_len; /**< Prefix length. */
+ const ProtobufCFieldDescriptor *field; /**< Field descriptor. */
+ size_t len; /**< Field length. */
+ const uint8_t *data; /**< Pointer to field data. */
+};
+
+static inline uint32_t
+scan_length_prefixed_data(size_t len, const uint8_t *data,
+ size_t *prefix_len_out)
+{
+ unsigned hdr_max = len < 5 ? len : 5;
+ unsigned hdr_len;
+ uint32_t val = 0;
+ unsigned i;
+ unsigned shift = 0;
+
+ for (i = 0; i < hdr_max; i++) {
+ val |= (data[i] & 0x7f) << shift;
+ shift += 7;
+ if ((data[i] & 0x80) == 0)
+ break;
+ }
+ if (i == hdr_max) {
+ PROTOBUF_C_UNPACK_ERROR("error parsing length for length-prefixed data");
+ return 0;
+ }
+ hdr_len = i + 1;
+ *prefix_len_out = hdr_len;
+ if (hdr_len + val > len) {
+ PROTOBUF_C_UNPACK_ERROR("data too short after length-prefix of %u", val);
+ return 0;
+ }
+ return hdr_len + val;
+}
+
+static size_t
+max_b128_numbers(size_t len, const uint8_t *data)
+{
+ size_t rv = 0;
+ while (len--)
+ if ((*data++ & 0x80) == 0)
+ ++rv;
+ return rv;
+}
+
+/**@}*/
+
+/**
+ * Merge earlier message into a latter message.
+ *
+ * For numeric types and strings, if the same value appears multiple
+ * times, the parser accepts the last value it sees. For embedded
+ * message fields, the parser merges multiple instances of the same
+ * field. That is, all singular scalar fields in the latter instance
+ * replace those in the former, singular embedded messages are merged,
+ * and repeated fields are concatenated.
+ *
+ * The earlier message should be freed after calling this function, as
+ * some of its fields may have been reused and changed to their default
+ * values during the merge.
+ */
+static protobuf_c_boolean
+merge_messages(ProtobufCMessage *earlier_msg,
+ ProtobufCMessage *latter_msg,
+ ProtobufCAllocator *allocator)
+{
+ unsigned i;
+ const ProtobufCFieldDescriptor *fields =
+ latter_msg->descriptor->fields;
+ for (i = 0; i < latter_msg->descriptor->n_fields; i++) {
+ if (fields[i].label == PROTOBUF_C_LABEL_REPEATED) {
+ size_t *n_earlier =
+ STRUCT_MEMBER_PTR(size_t, earlier_msg,
+ fields[i].quantifier_offset);
+ uint8_t **p_earlier =
+ STRUCT_MEMBER_PTR(uint8_t *, earlier_msg,
+ fields[i].offset);
+ size_t *n_latter =
+ STRUCT_MEMBER_PTR(size_t, latter_msg,
+ fields[i].quantifier_offset);
+ uint8_t **p_latter =
+ STRUCT_MEMBER_PTR(uint8_t *, latter_msg,
+ fields[i].offset);
+
+ if (*n_earlier > 0) {
+ if (*n_latter > 0) {
+ /* Concatenate the repeated field */
+ size_t el_size =
+ sizeof_elt_in_repeated_array(fields[i].type);
+ uint8_t *new_field;
+
+ new_field = do_alloc(allocator,
+ (*n_earlier + *n_latter) * el_size);
+ if (!new_field)
+ return FALSE;
+
+ memcpy(new_field, *p_earlier,
+ *n_earlier * el_size);
+ memcpy(new_field +
+ *n_earlier * el_size,
+ *p_latter,
+ *n_latter * el_size);
+
+ do_free(allocator, *p_latter);
+ do_free(allocator, *p_earlier);
+ *p_latter = new_field;
+ *n_latter = *n_earlier + *n_latter;
+ } else {
+ /* Zero copy the repeated field from the earlier message */
+ *n_latter = *n_earlier;
+ *p_latter = *p_earlier;
+ }
+ /* Make sure the field does not get double freed */
+ *n_earlier = 0;
+ *p_earlier = 0;
+ }
+ } else if (fields[i].label == PROTOBUF_C_LABEL_OPTIONAL ||
+ fields[i].label == PROTOBUF_C_LABEL_NONE) {
+ const ProtobufCFieldDescriptor *field;
+ uint32_t *earlier_case_p = STRUCT_MEMBER_PTR(uint32_t,
+ earlier_msg,
+ fields[i].
+ quantifier_offset);
+ uint32_t *latter_case_p = STRUCT_MEMBER_PTR(uint32_t,
+ latter_msg,
+ fields[i].
+ quantifier_offset);
+ protobuf_c_boolean need_to_merge = FALSE;
+ void *earlier_elem;
+ void *latter_elem;
+ const void *def_val;
+
+ if (fields[i].flags & PROTOBUF_C_FIELD_FLAG_ONEOF) {
+ if (*latter_case_p == 0) {
+ /* lookup correct oneof field */
+ int field_index =
+ int_range_lookup(
+ latter_msg->descriptor
+ ->n_field_ranges,
+ latter_msg->descriptor
+ ->field_ranges,
+ *earlier_case_p);
+ field = latter_msg->descriptor->fields +
+ field_index;
+ } else {
+ /* Oneof is present in the latter message, move on */
+ continue;
+ }
+ } else {
+ field = &fields[i];
+ }
+
+ earlier_elem = STRUCT_MEMBER_P(earlier_msg, field->offset);
+ latter_elem = STRUCT_MEMBER_P(latter_msg, field->offset);
+ def_val = field->default_value;
+
+ switch (field->type) {
+ case PROTOBUF_C_TYPE_MESSAGE: {
+ ProtobufCMessage *em = *(ProtobufCMessage **) earlier_elem;
+ ProtobufCMessage *lm = *(ProtobufCMessage **) latter_elem;
+ if (em != NULL) {
+ if (lm != NULL) {
+ if (!merge_messages(em, lm, allocator))
+ return FALSE;
+ /* Already merged */
+ need_to_merge = FALSE;
+ } else {
+ /* Zero copy the message */
+ need_to_merge = TRUE;
+ }
+ }
+ break;
+ }
+ case PROTOBUF_C_TYPE_BYTES: {
+ uint8_t *e_data =
+ ((ProtobufCBinaryData *) earlier_elem)->data;
+ uint8_t *l_data =
+ ((ProtobufCBinaryData *) latter_elem)->data;
+ const ProtobufCBinaryData *d_bd =
+ (ProtobufCBinaryData *) def_val;
+
+ need_to_merge =
+ (e_data != NULL &&
+ (d_bd == NULL ||
+ e_data != d_bd->data)) &&
+ (l_data == NULL ||
+ (d_bd != NULL &&
+ l_data == d_bd->data));
+ break;
+ }
+ case PROTOBUF_C_TYPE_STRING: {
+ char *e_str = *(char **) earlier_elem;
+ char *l_str = *(char **) latter_elem;
+ const char *d_str = def_val;
+
+ need_to_merge = e_str != d_str && l_str == d_str;
+ break;
+ }
+ default: {
+ /* Could be has field or case enum, the logic is
+ * equivalent, since 0 (FALSE) means not set for
+ * oneof */
+ need_to_merge = (*earlier_case_p != 0) &&
+ (*latter_case_p == 0);
+ break;
+ }
+ }
+
+ if (need_to_merge) {
+ size_t el_size =
+ sizeof_elt_in_repeated_array(field->type);
+ memcpy(latter_elem, earlier_elem, el_size);
+ /*
+ * Reset the element from the old message to 0
+ * to make sure earlier message deallocation
+ * doesn't corrupt zero-copied data in the new
+ * message, earlier message will be freed after
+ * this function is called anyway
+ */
+ memset(earlier_elem, 0, el_size);
+
+ if (field->quantifier_offset != 0) {
+ /* Set the has field or the case enum,
+ * if applicable */
+ *latter_case_p = *earlier_case_p;
+ *earlier_case_p = 0;
+ }
+ }
+ }
+ }
+ return TRUE;
+}
+
+/**
+ * Count packed elements.
+ *
+ * Given a raw slab of packed-repeated values, determine the number of
+ * elements. This function detects certain kinds of errors but not
+ * others; the remaining error checking is done by
+ * parse_packed_repeated_member().
+ */
+static protobuf_c_boolean
+count_packed_elements(ProtobufCType type,
+ size_t len, const uint8_t *data, size_t *count_out)
+{
+ switch (type) {
+ case PROTOBUF_C_TYPE_SFIXED32:
+ case PROTOBUF_C_TYPE_FIXED32:
+ case PROTOBUF_C_TYPE_FLOAT:
+ if (len % 4 != 0) {
+ PROTOBUF_C_UNPACK_ERROR("length must be a multiple of 4 for fixed-length 32-bit types");
+ return FALSE;
+ }
+ *count_out = len / 4;
+ return TRUE;
+ case PROTOBUF_C_TYPE_SFIXED64:
+ case PROTOBUF_C_TYPE_FIXED64:
+ case PROTOBUF_C_TYPE_DOUBLE:
+ if (len % 8 != 0) {
+ PROTOBUF_C_UNPACK_ERROR("length must be a multiple of 8 for fixed-length 64-bit types");
+ return FALSE;
+ }
+ *count_out = len / 8;
+ return TRUE;
+ case PROTOBUF_C_TYPE_ENUM:
+ case PROTOBUF_C_TYPE_INT32:
+ case PROTOBUF_C_TYPE_SINT32:
+ case PROTOBUF_C_TYPE_UINT32:
+ case PROTOBUF_C_TYPE_INT64:
+ case PROTOBUF_C_TYPE_SINT64:
+ case PROTOBUF_C_TYPE_UINT64:
+ *count_out = max_b128_numbers(len, data);
+ return TRUE;
+ case PROTOBUF_C_TYPE_BOOL:
+ *count_out = len;
+ return TRUE;
+ case PROTOBUF_C_TYPE_STRING:
+ case PROTOBUF_C_TYPE_BYTES:
+ case PROTOBUF_C_TYPE_MESSAGE:
+ default:
+ PROTOBUF_C_UNPACK_ERROR("bad protobuf-c type %u for packed-repeated", type);
+ return FALSE;
+ }
+}
+
+static inline uint32_t
+parse_uint32(unsigned len, const uint8_t *data)
+{
+ uint32_t rv = data[0] & 0x7f;
+ if (len > 1) {
+ rv |= ((uint32_t) (data[1] & 0x7f) << 7);
+ if (len > 2) {
+ rv |= ((uint32_t) (data[2] & 0x7f) << 14);
+ if (len > 3) {
+ rv |= ((uint32_t) (data[3] & 0x7f) << 21);
+ if (len > 4)
+ rv |= ((uint32_t) (data[4]) << 28);
+ }
+ }
+ }
+ return rv;
+}
+
+static inline uint32_t
+parse_int32(unsigned len, const uint8_t *data)
+{
+ return parse_uint32(len, data);
+}
+
+static inline int32_t
+unzigzag32(uint32_t v)
+{
+ if (v & 1)
+ return -(v >> 1) - 1;
+ else
+ return v >> 1;
+}
+
+static inline uint32_t
+parse_fixed_uint32(const uint8_t *data)
+{
+#if !defined(WORDS_BIGENDIAN)
+ uint32_t t;
+ memcpy(&t, data, 4);
+ return t;
+#else
+ return data[0] |
+ ((uint32_t) (data[1]) << 8) |
+ ((uint32_t) (data[2]) << 16) |
+ ((uint32_t) (data[3]) << 24);
+#endif
+}
+
+static uint64_t
+parse_uint64(unsigned len, const uint8_t *data)
+{
+ unsigned shift, i;
+ uint64_t rv;
+
+ if (len < 5)
+ return parse_uint32(len, data);
+ rv = ((uint64_t) (data[0] & 0x7f)) |
+ ((uint64_t) (data[1] & 0x7f) << 7) |
+ ((uint64_t) (data[2] & 0x7f) << 14) |
+ ((uint64_t) (data[3] & 0x7f) << 21);
+ shift = 28;
+ for (i = 4; i < len; i++) {
+ rv |= (((uint64_t) (data[i] & 0x7f)) << shift);
+ shift += 7;
+ }
+ return rv;
+}
+
+static inline int64_t
+unzigzag64(uint64_t v)
+{
+ if (v & 1)
+ return -(v >> 1) - 1;
+ else
+ return v >> 1;
+}
+
+static inline uint64_t
+parse_fixed_uint64(const uint8_t *data)
+{
+#if !defined(WORDS_BIGENDIAN)
+ uint64_t t;
+ memcpy(&t, data, 8);
+ return t;
+#else
+ return (uint64_t) parse_fixed_uint32(data) |
+ (((uint64_t) parse_fixed_uint32(data + 4)) << 32);
+#endif
+}
+
+static protobuf_c_boolean
+parse_boolean(unsigned len, const uint8_t *data)
+{
+ unsigned i;
+ for (i = 0; i < len; i++)
+ if (data[i] & 0x7f)
+ return TRUE;
+ return FALSE;
+}
+
+static protobuf_c_boolean
+parse_required_member(ScannedMember *scanned_member,
+ void *member,
+ ProtobufCAllocator *allocator,
+ protobuf_c_boolean maybe_clear)
+{
+ unsigned len = scanned_member->len;
+ const uint8_t *data = scanned_member->data;
+ ProtobufCWireType wire_type = scanned_member->wire_type;
+
+ switch (scanned_member->field->type) {
+ case PROTOBUF_C_TYPE_ENUM:
+ case PROTOBUF_C_TYPE_INT32:
+ if (wire_type != PROTOBUF_C_WIRE_TYPE_VARINT)
+ return FALSE;
+ *(int32_t *) member = parse_int32(len, data);
+ return TRUE;
+ case PROTOBUF_C_TYPE_UINT32:
+ if (wire_type != PROTOBUF_C_WIRE_TYPE_VARINT)
+ return FALSE;
+ *(uint32_t *) member = parse_uint32(len, data);
+ return TRUE;
+ case PROTOBUF_C_TYPE_SINT32:
+ if (wire_type != PROTOBUF_C_WIRE_TYPE_VARINT)
+ return FALSE;
+ *(int32_t *) member = unzigzag32(parse_uint32(len, data));
+ return TRUE;
+ case PROTOBUF_C_TYPE_SFIXED32:
+ case PROTOBUF_C_TYPE_FIXED32:
+ case PROTOBUF_C_TYPE_FLOAT:
+ if (wire_type != PROTOBUF_C_WIRE_TYPE_32BIT)
+ return FALSE;
+ *(uint32_t *) member = parse_fixed_uint32(data);
+ return TRUE;
+ case PROTOBUF_C_TYPE_INT64:
+ case PROTOBUF_C_TYPE_UINT64:
+ if (wire_type != PROTOBUF_C_WIRE_TYPE_VARINT)
+ return FALSE;
+ *(uint64_t *) member = parse_uint64(len, data);
+ return TRUE;
+ case PROTOBUF_C_TYPE_SINT64:
+ if (wire_type != PROTOBUF_C_WIRE_TYPE_VARINT)
+ return FALSE;
+ *(int64_t *) member = unzigzag64(parse_uint64(len, data));
+ return TRUE;
+ case PROTOBUF_C_TYPE_SFIXED64:
+ case PROTOBUF_C_TYPE_FIXED64:
+ case PROTOBUF_C_TYPE_DOUBLE:
+ if (wire_type != PROTOBUF_C_WIRE_TYPE_64BIT)
+ return FALSE;
+ *(uint64_t *) member = parse_fixed_uint64(data);
+ return TRUE;
+ case PROTOBUF_C_TYPE_BOOL:
+ *(protobuf_c_boolean *) member = parse_boolean(len, data);
+ return TRUE;
+ case PROTOBUF_C_TYPE_STRING: {
+ char **pstr = member;
+ unsigned pref_len = scanned_member->length_prefix_len;
+
+ if (wire_type != PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED)
+ return FALSE;
+
+ if (maybe_clear && *pstr != NULL) {
+ const char *def = scanned_member->field->default_value;
+ if (*pstr != NULL && *pstr != def)
+ do_free(allocator, *pstr);
+ }
+ *pstr = do_alloc(allocator, len - pref_len + 1);
+ if (*pstr == NULL)
+ return FALSE;
+ memcpy(*pstr, data + pref_len, len - pref_len);
+ (*pstr)[len - pref_len] = 0;
+ return TRUE;
+ }
+ case PROTOBUF_C_TYPE_BYTES: {
+ ProtobufCBinaryData *bd = member;
+ const ProtobufCBinaryData *def_bd;
+ unsigned pref_len = scanned_member->length_prefix_len;
+
+ if (wire_type != PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED)
+ return FALSE;
+
+ def_bd = scanned_member->field->default_value;
+ if (maybe_clear &&
+ bd->data != NULL &&
+ (def_bd == NULL || bd->data != def_bd->data))
+ {
+ do_free(allocator, bd->data);
+ }
+ if (len - pref_len > 0) {
+ bd->data = do_alloc(allocator, len - pref_len);
+ if (bd->data == NULL)
+ return FALSE;
+ memcpy(bd->data, data + pref_len, len - pref_len);
+ } else {
+ bd->data = NULL;
+ }
+ bd->len = len - pref_len;
+ return TRUE;
+ }
+ case PROTOBUF_C_TYPE_MESSAGE: {
+ ProtobufCMessage **pmessage = member;
+ ProtobufCMessage *subm;
+ const ProtobufCMessage *def_mess;
+ protobuf_c_boolean merge_successful = TRUE;
+ unsigned pref_len = scanned_member->length_prefix_len;
+
+ if (wire_type != PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED)
+ return FALSE;
+
+ def_mess = scanned_member->field->default_value;
+ subm = protobuf_c_message_unpack(scanned_member->field->descriptor,
+ allocator,
+ len - pref_len,
+ data + pref_len);
+
+ if (maybe_clear &&
+ *pmessage != NULL &&
+ *pmessage != def_mess)
+ {
+ if (subm != NULL)
+ merge_successful = merge_messages(*pmessage, subm, allocator);
+ /* Delete the previous message */
+ protobuf_c_message_free_unpacked(*pmessage, allocator);
+ }
+ *pmessage = subm;
+ if (subm == NULL || !merge_successful)
+ return FALSE;
+ return TRUE;
+ }
+ }
+ return FALSE;
+}
+
+static protobuf_c_boolean
+parse_oneof_member (ScannedMember *scanned_member,
+ void *member,
+ ProtobufCMessage *message,
+ ProtobufCAllocator *allocator)
+{
+ uint32_t *oneof_case = STRUCT_MEMBER_PTR(uint32_t, message,
+ scanned_member->field->quantifier_offset);
+
+ /* If we have already parsed a member of this oneof, free it. */
+ if (*oneof_case != 0) {
+ /* lookup field */
+ int field_index =
+ int_range_lookup(message->descriptor->n_field_ranges,
+ message->descriptor->field_ranges,
+ *oneof_case);
+ const ProtobufCFieldDescriptor *old_field =
+ message->descriptor->fields + field_index;
+ size_t el_size = sizeof_elt_in_repeated_array(old_field->type);
+
+ switch (old_field->type) {
+ case PROTOBUF_C_TYPE_STRING: {
+ char **pstr = member;
+ const char *def = old_field->default_value;
+ if (*pstr != NULL && *pstr != def)
+ do_free(allocator, *pstr);
+ break;
+ }
+ case PROTOBUF_C_TYPE_BYTES: {
+ ProtobufCBinaryData *bd = member;
+ const ProtobufCBinaryData *def_bd = old_field->default_value;
+ if (bd->data != NULL &&
+ (def_bd == NULL || bd->data != def_bd->data))
+ {
+ do_free(allocator, bd->data);
+ }
+ break;
+ }
+ case PROTOBUF_C_TYPE_MESSAGE: {
+ ProtobufCMessage **pmessage = member;
+ const ProtobufCMessage *def_mess = old_field->default_value;
+ if (*pmessage != NULL && *pmessage != def_mess)
+ protobuf_c_message_free_unpacked(*pmessage, allocator);
+ break;
+ }
+ default:
+ break;
+ }
+
+ memset (member, 0, el_size);
+ }
+ if (!parse_required_member (scanned_member, member, allocator, TRUE))
+ return FALSE;
+
+ *oneof_case = scanned_member->tag;
+ return TRUE;
+}
+
+
+static protobuf_c_boolean
+parse_optional_member(ScannedMember *scanned_member,
+ void *member,
+ ProtobufCMessage *message,
+ ProtobufCAllocator *allocator)
+{
+ if (!parse_required_member(scanned_member, member, allocator, TRUE))
+ return FALSE;
+ if (scanned_member->field->quantifier_offset != 0)
+ STRUCT_MEMBER(protobuf_c_boolean,
+ message,
+ scanned_member->field->quantifier_offset) = TRUE;
+ return TRUE;
+}
+
+static protobuf_c_boolean
+parse_repeated_member(ScannedMember *scanned_member,
+ void *member,
+ ProtobufCMessage *message,
+ ProtobufCAllocator *allocator)
+{
+ const ProtobufCFieldDescriptor *field = scanned_member->field;
+ size_t *p_n = STRUCT_MEMBER_PTR(size_t, message, field->quantifier_offset);
+ size_t siz = sizeof_elt_in_repeated_array(field->type);
+ char *array = *(char **) member;
+
+ if (!parse_required_member(scanned_member, array + siz * (*p_n),
+ allocator, FALSE))
+ {
+ return FALSE;
+ }
+ *p_n += 1;
+ return TRUE;
+}
+
+static unsigned
+scan_varint(unsigned len, const uint8_t *data)
+{
+ unsigned i;
+ if (len > 10)
+ len = 10;
+ for (i = 0; i < len; i++)
+ if ((data[i] & 0x80) == 0)
+ break;
+ if (i == len)
+ return 0;
+ return i + 1;
+}
+
+static protobuf_c_boolean
+parse_packed_repeated_member(ScannedMember *scanned_member,
+ void *member,
+ ProtobufCMessage *message)
+{
+ const ProtobufCFieldDescriptor *field = scanned_member->field;
+ size_t *p_n = STRUCT_MEMBER_PTR(size_t, message, field->quantifier_offset);
+ size_t siz = sizeof_elt_in_repeated_array(field->type);
+ void *array = *(char **) member + siz * (*p_n);
+ const uint8_t *at = scanned_member->data + scanned_member->length_prefix_len;
+ size_t rem = scanned_member->len - scanned_member->length_prefix_len;
+ size_t count = 0;
+ unsigned i;
+
+ switch (field->type) {
+ case PROTOBUF_C_TYPE_SFIXED32:
+ case PROTOBUF_C_TYPE_FIXED32:
+ case PROTOBUF_C_TYPE_FLOAT:
+ count = (scanned_member->len - scanned_member->length_prefix_len) / 4;
+#if !defined(WORDS_BIGENDIAN)
+ goto no_unpacking_needed;
+#else
+ for (i = 0; i < count; i++) {
+ ((uint32_t *) array)[i] = parse_fixed_uint32(at);
+ at += 4;
+ }
+ break;
+#endif
+ case PROTOBUF_C_TYPE_SFIXED64:
+ case PROTOBUF_C_TYPE_FIXED64:
+ case PROTOBUF_C_TYPE_DOUBLE:
+ count = (scanned_member->len - scanned_member->length_prefix_len) / 8;
+#if !defined(WORDS_BIGENDIAN)
+ goto no_unpacking_needed;
+#else
+ for (i = 0; i < count; i++) {
+ ((uint64_t *) array)[i] = parse_fixed_uint64(at);
+ at += 8;
+ }
+ break;
+#endif
+ case PROTOBUF_C_TYPE_ENUM:
+ case PROTOBUF_C_TYPE_INT32:
+ while (rem > 0) {
+ unsigned s = scan_varint(rem, at);
+ if (s == 0) {
+ PROTOBUF_C_UNPACK_ERROR("bad packed-repeated int32 value");
+ return FALSE;
+ }
+ ((int32_t *) array)[count++] = parse_int32(s, at);
+ at += s;
+ rem -= s;
+ }
+ break;
+ case PROTOBUF_C_TYPE_SINT32:
+ while (rem > 0) {
+ unsigned s = scan_varint(rem, at);
+ if (s == 0) {
+ PROTOBUF_C_UNPACK_ERROR("bad packed-repeated sint32 value");
+ return FALSE;
+ }
+ ((int32_t *) array)[count++] = unzigzag32(parse_uint32(s, at));
+ at += s;
+ rem -= s;
+ }
+ break;
+ case PROTOBUF_C_TYPE_UINT32:
+ while (rem > 0) {
+ unsigned s = scan_varint(rem, at);
+ if (s == 0) {
+ PROTOBUF_C_UNPACK_ERROR("bad packed-repeated enum or uint32 value");
+ return FALSE;
+ }
+ ((uint32_t *) array)[count++] = parse_uint32(s, at);
+ at += s;
+ rem -= s;
+ }
+ break;
+
+ case PROTOBUF_C_TYPE_SINT64:
+ while (rem > 0) {
+ unsigned s = scan_varint(rem, at);
+ if (s == 0) {
+ PROTOBUF_C_UNPACK_ERROR("bad packed-repeated sint64 value");
+ return FALSE;
+ }
+ ((int64_t *) array)[count++] = unzigzag64(parse_uint64(s, at));
+ at += s;
+ rem -= s;
+ }
+ break;
+ case PROTOBUF_C_TYPE_INT64:
+ case PROTOBUF_C_TYPE_UINT64:
+ while (rem > 0) {
+ unsigned s = scan_varint(rem, at);
+ if (s == 0) {
+ PROTOBUF_C_UNPACK_ERROR("bad packed-repeated int64/uint64 value");
+ return FALSE;
+ }
+ ((int64_t *) array)[count++] = parse_uint64(s, at);
+ at += s;
+ rem -= s;
+ }
+ break;
+ case PROTOBUF_C_TYPE_BOOL:
+ count = rem;
+ for (i = 0; i < count; i++) {
+ if (at[i] > 1) {
+ PROTOBUF_C_UNPACK_ERROR("bad packed-repeated boolean value");
+ return FALSE;
+ }
+ ((protobuf_c_boolean *) array)[i] = at[i];
+ }
+ break;
+ default:
+ PROTOBUF_C__ASSERT_NOT_REACHED();
+ }
+ *p_n += count;
+ return TRUE;
+
+#if !defined(WORDS_BIGENDIAN)
+no_unpacking_needed:
+ memcpy(array, at, count * siz);
+ *p_n += count;
+ return TRUE;
+#endif
+}
+
+static protobuf_c_boolean
+is_packable_type(ProtobufCType type)
+{
+ return
+ type != PROTOBUF_C_TYPE_STRING &&
+ type != PROTOBUF_C_TYPE_BYTES &&
+ type != PROTOBUF_C_TYPE_MESSAGE;
+}
+
+static protobuf_c_boolean
+parse_member(ScannedMember *scanned_member,
+ ProtobufCMessage *message,
+ ProtobufCAllocator *allocator)
+{
+ const ProtobufCFieldDescriptor *field = scanned_member->field;
+ void *member;
+
+ if (field == NULL) {
+ ProtobufCMessageUnknownField *ufield =
+ message->unknown_fields +
+ (message->n_unknown_fields++);
+ ufield->tag = scanned_member->tag;
+ ufield->wire_type = scanned_member->wire_type;
+ ufield->len = scanned_member->len;
+ ufield->data = do_alloc(allocator, scanned_member->len);
+ if (ufield->data == NULL)
+ return FALSE;
+ memcpy(ufield->data, scanned_member->data, ufield->len);
+ return TRUE;
+ }
+ member = (char *) message + field->offset;
+ switch (field->label) {
+ case PROTOBUF_C_LABEL_REQUIRED:
+ return parse_required_member(scanned_member, member,
+ allocator, TRUE);
+ case PROTOBUF_C_LABEL_OPTIONAL:
+ case PROTOBUF_C_LABEL_NONE:
+ if (0 != (field->flags & PROTOBUF_C_FIELD_FLAG_ONEOF)) {
+ return parse_oneof_member(scanned_member, member,
+ message, allocator);
+ } else {
+ return parse_optional_member(scanned_member, member,
+ message, allocator);
+ }
+ case PROTOBUF_C_LABEL_REPEATED:
+ if (scanned_member->wire_type ==
+ PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED &&
+ (0 != (field->flags & PROTOBUF_C_FIELD_FLAG_PACKED) ||
+ is_packable_type(field->type)))
+ {
+ return parse_packed_repeated_member(scanned_member,
+ member, message);
+ } else {
+ return parse_repeated_member(scanned_member,
+ member, message,
+ allocator);
+ }
+ }
+ PROTOBUF_C__ASSERT_NOT_REACHED();
+ return 0;
+}
+
+/**
+ * Initialise messages generated by old code.
+ *
+ * This function is used if desc->message_init == NULL (which occurs
+ * for old code, and which would be useful to support allocating
+ * descriptors dynamically).
+ */
+static void
+message_init_generic(const ProtobufCMessageDescriptor *desc,
+ ProtobufCMessage *message)
+{
+ unsigned i;
+
+ memset(message, 0, desc->sizeof_message);
+ message->descriptor = desc;
+ for (i = 0; i < desc->n_fields; i++) {
+ if (desc->fields[i].default_value != NULL &&
+ desc->fields[i].label != PROTOBUF_C_LABEL_REPEATED)
+ {
+ void *field =
+ STRUCT_MEMBER_P(message, desc->fields[i].offset);
+ const void *dv = desc->fields[i].default_value;
+
+ switch (desc->fields[i].type) {
+ case PROTOBUF_C_TYPE_INT32:
+ case PROTOBUF_C_TYPE_SINT32:
+ case PROTOBUF_C_TYPE_SFIXED32:
+ case PROTOBUF_C_TYPE_UINT32:
+ case PROTOBUF_C_TYPE_FIXED32:
+ case PROTOBUF_C_TYPE_FLOAT:
+ case PROTOBUF_C_TYPE_ENUM:
+ memcpy(field, dv, 4);
+ break;
+ case PROTOBUF_C_TYPE_INT64:
+ case PROTOBUF_C_TYPE_SINT64:
+ case PROTOBUF_C_TYPE_SFIXED64:
+ case PROTOBUF_C_TYPE_UINT64:
+ case PROTOBUF_C_TYPE_FIXED64:
+ case PROTOBUF_C_TYPE_DOUBLE:
+ memcpy(field, dv, 8);
+ break;
+ case PROTOBUF_C_TYPE_BOOL:
+ memcpy(field, dv, sizeof(protobuf_c_boolean));
+ break;
+ case PROTOBUF_C_TYPE_BYTES:
+ memcpy(field, dv, sizeof(ProtobufCBinaryData));
+ break;
+
+ case PROTOBUF_C_TYPE_STRING:
+ case PROTOBUF_C_TYPE_MESSAGE:
+ /*
+ * The next line essentially implements a cast
+ * from const, which is totally unavoidable.
+ */
+ *(const void **) field = dv;
+ break;
+ }
+ }
+ }
+}
+
+/**@}*/
+
+/*
+ * ScannedMember slabs (an unpacking implementation detail). Before doing real
+ * unpacking, we first scan through the elements to see how many there are (for
+ * repeated fields), and which field to use (for non-repeated fields given
+ * twice).
+ *
+ * In order to avoid allocations for small messages, we keep a stack-allocated
+ * slab of ScannedMembers of size FIRST_SCANNED_MEMBER_SLAB_SIZE (16). After we
+ * fill that up, we allocate each slab twice as large as the previous one.
+ */
+#define FIRST_SCANNED_MEMBER_SLAB_SIZE_LOG2 4
+
+/*
+ * The number of slabs, including the stack-allocated ones; choose the number so
+ * that we would overflow if we needed a slab larger than provided.
+ */
+#define MAX_SCANNED_MEMBER_SLAB \
+ (sizeof(unsigned int)*8 - 1 \
+ - BOUND_SIZEOF_SCANNED_MEMBER_LOG2 \
+ - FIRST_SCANNED_MEMBER_SLAB_SIZE_LOG2)
+
+#define REQUIRED_FIELD_BITMAP_SET(index) \
+ (required_fields_bitmap[(index)/8] |= (1UL<<((index)%8)))
+
+#define REQUIRED_FIELD_BITMAP_IS_SET(index) \
+ (required_fields_bitmap[(index)/8] & (1UL<<((index)%8)))
+
+ProtobufCMessage *
+protobuf_c_message_unpack(const ProtobufCMessageDescriptor *desc,
+ ProtobufCAllocator *allocator,
+ size_t len, const uint8_t *data)
+{
+ ProtobufCMessage *rv;
+ size_t rem = len;
+ const uint8_t *at = data;
+ const ProtobufCFieldDescriptor *last_field = desc->fields + 0;
+ ScannedMember first_member_slab[1UL <<
+ FIRST_SCANNED_MEMBER_SLAB_SIZE_LOG2];
+
+ /*
+ * scanned_member_slabs[i] is an array of arrays of ScannedMember.
+ * The first slab (scanned_member_slabs[0] is just a pointer to
+ * first_member_slab), above. All subsequent slabs will be allocated
+ * using the allocator.
+ */
+ ScannedMember *scanned_member_slabs[MAX_SCANNED_MEMBER_SLAB + 1];
+ unsigned which_slab = 0; /* the slab we are currently populating */
+ unsigned in_slab_index = 0; /* number of members in the slab */
+ size_t n_unknown = 0;
+ unsigned f;
+ unsigned j;
+ unsigned i_slab;
+ unsigned last_field_index = 0;
+ unsigned required_fields_bitmap_len;
+ unsigned char required_fields_bitmap_stack[16];
+ unsigned char *required_fields_bitmap = required_fields_bitmap_stack;
+ protobuf_c_boolean required_fields_bitmap_alloced = FALSE;
+
+ ASSERT_IS_MESSAGE_DESCRIPTOR(desc);
+
+ if (allocator == NULL)
+ allocator = &protobuf_c__allocator;
+
+ rv = do_alloc(allocator, desc->sizeof_message);
+ if (!rv)
+ return (NULL);
+ scanned_member_slabs[0] = first_member_slab;
+
+ required_fields_bitmap_len = (desc->n_fields + 7) / 8;
+ if (required_fields_bitmap_len > sizeof(required_fields_bitmap_stack)) {
+ required_fields_bitmap = do_alloc(allocator, required_fields_bitmap_len);
+ if (!required_fields_bitmap) {
+ do_free(allocator, rv);
+ return (NULL);
+ }
+ required_fields_bitmap_alloced = TRUE;
+ }
+ memset(required_fields_bitmap, 0, required_fields_bitmap_len);
+
+ /*
+ * Generated code always defines "message_init". However, we provide a
+ * fallback for (1) users of old protobuf-c generated-code that do not
+ * provide the function, and (2) descriptors constructed from some other
+ * source (most likely, direct construction from the .proto file).
+ */
+ if (desc->message_init != NULL)
+ protobuf_c_message_init(desc, rv);
+ else
+ message_init_generic(desc, rv);
+
+ while (rem > 0) {
+ uint32_t tag;
+ ProtobufCWireType wire_type;
+ size_t used = parse_tag_and_wiretype(rem, at, &tag, &wire_type);
+ const ProtobufCFieldDescriptor *field;
+ ScannedMember tmp;
+
+ if (used == 0) {
+ PROTOBUF_C_UNPACK_ERROR("error parsing tag/wiretype at offset %u",
+ (unsigned) (at - data));
+ goto error_cleanup_during_scan;
+ }
+ /*
+ * \todo Consider optimizing for field[1].id == tag, if field[1]
+ * exists!
+ */
+ if (last_field == NULL || last_field->id != tag) {
+ /* lookup field */
+ int field_index =
+ int_range_lookup(desc->n_field_ranges,
+ desc->field_ranges,
+ tag);
+ if (field_index < 0) {
+ field = NULL;
+ n_unknown++;
+ } else {
+ field = desc->fields + field_index;
+ last_field = field;
+ last_field_index = field_index;
+ }
+ } else {
+ field = last_field;
+ }
+
+ if (field != NULL && field->label == PROTOBUF_C_LABEL_REQUIRED)
+ REQUIRED_FIELD_BITMAP_SET(last_field_index);
+
+ at += used;
+ rem -= used;
+ tmp.tag = tag;
+ tmp.wire_type = wire_type;
+ tmp.field = field;
+ tmp.data = at;
+ tmp.length_prefix_len = 0;
+
+ switch (wire_type) {
+ case PROTOBUF_C_WIRE_TYPE_VARINT: {
+ unsigned max_len = rem < 10 ? rem : 10;
+ unsigned i;
+
+ for (i = 0; i < max_len; i++)
+ if ((at[i] & 0x80) == 0)
+ break;
+ if (i == max_len) {
+ PROTOBUF_C_UNPACK_ERROR("unterminated varint at offset %u",
+ (unsigned) (at - data));
+ goto error_cleanup_during_scan;
+ }
+ tmp.len = i + 1;
+ break;
+ }
+ case PROTOBUF_C_WIRE_TYPE_64BIT:
+ if (rem < 8) {
+ PROTOBUF_C_UNPACK_ERROR("too short after 64bit wiretype at offset %u",
+ (unsigned) (at - data));
+ goto error_cleanup_during_scan;
+ }
+ tmp.len = 8;
+ break;
+ case PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED: {
+ size_t pref_len;
+
+ tmp.len = scan_length_prefixed_data(rem, at, &pref_len);
+ if (tmp.len == 0) {
+ /* NOTE: scan_length_prefixed_data calls UNPACK_ERROR */
+ goto error_cleanup_during_scan;
+ }
+ tmp.length_prefix_len = pref_len;
+ break;
+ }
+ case PROTOBUF_C_WIRE_TYPE_32BIT:
+ if (rem < 4) {
+ PROTOBUF_C_UNPACK_ERROR("too short after 32bit wiretype at offset %u",
+ (unsigned) (at - data));
+ goto error_cleanup_during_scan;
+ }
+ tmp.len = 4;
+ break;
+ default:
+ PROTOBUF_C_UNPACK_ERROR("unsupported tag %u at offset %u",
+ wire_type, (unsigned) (at - data));
+ goto error_cleanup_during_scan;
+ }
+
+ if (in_slab_index == (1UL <<
+ (which_slab + FIRST_SCANNED_MEMBER_SLAB_SIZE_LOG2)))
+ {
+ size_t size;
+
+ in_slab_index = 0;
+ if (which_slab == MAX_SCANNED_MEMBER_SLAB) {
+ PROTOBUF_C_UNPACK_ERROR("too many fields");
+ goto error_cleanup_during_scan;
+ }
+ which_slab++;
+ size = sizeof(ScannedMember)
+ << (which_slab + FIRST_SCANNED_MEMBER_SLAB_SIZE_LOG2);
+ scanned_member_slabs[which_slab] = do_alloc(allocator, size);
+ if (scanned_member_slabs[which_slab] == NULL)
+ goto error_cleanup_during_scan;
+ }
+ scanned_member_slabs[which_slab][in_slab_index++] = tmp;
+
+ if (field != NULL && field->label == PROTOBUF_C_LABEL_REPEATED) {
+ size_t *n = STRUCT_MEMBER_PTR(size_t, rv,
+ field->quantifier_offset);
+ if (wire_type == PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED &&
+ (0 != (field->flags & PROTOBUF_C_FIELD_FLAG_PACKED) ||
+ is_packable_type(field->type)))
+ {
+ size_t count;
+ if (!count_packed_elements(field->type,
+ tmp.len -
+ tmp.length_prefix_len,
+ tmp.data +
+ tmp.length_prefix_len,
+ &count))
+ {
+ PROTOBUF_C_UNPACK_ERROR("counting packed elements");
+ goto error_cleanup_during_scan;
+ }
+ *n += count;
+ } else {
+ *n += 1;
+ }
+ }
+
+ at += tmp.len;
+ rem -= tmp.len;
+ }
+
+ /* allocate space for repeated fields, also check that all required fields have been set */
+ for (f = 0; f < desc->n_fields; f++) {
+ const ProtobufCFieldDescriptor *field = desc->fields + f;
+ if (field->label == PROTOBUF_C_LABEL_REPEATED) {
+ size_t siz =
+ sizeof_elt_in_repeated_array(field->type);
+ size_t *n_ptr =
+ STRUCT_MEMBER_PTR(size_t, rv,
+ field->quantifier_offset);
+ if (*n_ptr != 0) {
+ unsigned n = *n_ptr;
+ void *a;
+ *n_ptr = 0;
+ assert(rv->descriptor != NULL);
+#define CLEAR_REMAINING_N_PTRS() \
+ for(f++;f < desc->n_fields; f++) \
+ { \
+ field = desc->fields + f; \
+ if (field->label == PROTOBUF_C_LABEL_REPEATED) \
+ STRUCT_MEMBER (size_t, rv, field->quantifier_offset) = 0; \
+ }
+ a = do_alloc(allocator, siz * n);
+ if (!a) {
+ CLEAR_REMAINING_N_PTRS();
+ goto error_cleanup;
+ }
+ STRUCT_MEMBER(void *, rv, field->offset) = a;
+ }
+ } else if (field->label == PROTOBUF_C_LABEL_REQUIRED) {
+ if (field->default_value == NULL &&
+ !REQUIRED_FIELD_BITMAP_IS_SET(f))
+ {
+ CLEAR_REMAINING_N_PTRS();
+ PROTOBUF_C_UNPACK_ERROR("message '%s': missing required field '%s'",
+ desc->name, field->name);
+ goto error_cleanup;
+ }
+ }
+ }
+#undef CLEAR_REMAINING_N_PTRS
+
+ /* allocate space for unknown fields */
+ if (n_unknown) {
+ rv->unknown_fields = do_alloc(allocator,
+ n_unknown * sizeof(ProtobufCMessageUnknownField));
+ if (rv->unknown_fields == NULL)
+ goto error_cleanup;
+ }
+
+ /* do real parsing */
+ for (i_slab = 0; i_slab <= which_slab; i_slab++) {
+ unsigned max = (i_slab == which_slab) ?
+ in_slab_index : (1UL << (i_slab + 4));
+ ScannedMember *slab = scanned_member_slabs[i_slab];
+
+ for (j = 0; j < max; j++) {
+ if (!parse_member(slab + j, rv, allocator)) {
+ PROTOBUF_C_UNPACK_ERROR("error parsing member %s of %s",
+ slab->field ? slab->field->name : "*unknown-field*",
+ desc->name);
+ goto error_cleanup;
+ }
+ }
+ }
+
+ /* cleanup */
+ for (j = 1; j <= which_slab; j++)
+ do_free(allocator, scanned_member_slabs[j]);
+ if (required_fields_bitmap_alloced)
+ do_free(allocator, required_fields_bitmap);
+ return rv;
+
+error_cleanup:
+ protobuf_c_message_free_unpacked(rv, allocator);
+ for (j = 1; j <= which_slab; j++)
+ do_free(allocator, scanned_member_slabs[j]);
+ if (required_fields_bitmap_alloced)
+ do_free(allocator, required_fields_bitmap);
+ return NULL;
+
+error_cleanup_during_scan:
+ do_free(allocator, rv);
+ for (j = 1; j <= which_slab; j++)
+ do_free(allocator, scanned_member_slabs[j]);
+ if (required_fields_bitmap_alloced)
+ do_free(allocator, required_fields_bitmap);
+ return NULL;
+}
+
+void
+protobuf_c_message_free_unpacked(ProtobufCMessage *message,
+ ProtobufCAllocator *allocator)
+{
+ const ProtobufCMessageDescriptor *desc;
+ unsigned f;
+
+ if (message == NULL)
+ return;
+
+ desc = message->descriptor;
+
+ ASSERT_IS_MESSAGE(message);
+
+ if (allocator == NULL)
+ allocator = &protobuf_c__allocator;
+ message->descriptor = NULL;
+ for (f = 0; f < desc->n_fields; f++) {
+ if (0 != (desc->fields[f].flags & PROTOBUF_C_FIELD_FLAG_ONEOF) &&
+ desc->fields[f].id !=
+ STRUCT_MEMBER(uint32_t, message, desc->fields[f].quantifier_offset))
+ {
+ /* This is not the selected oneof, skip it */
+ continue;
+ }
+
+ if (desc->fields[f].label == PROTOBUF_C_LABEL_REPEATED) {
+ size_t n = STRUCT_MEMBER(size_t,
+ message,
+ desc->fields[f].quantifier_offset);
+ void *arr = STRUCT_MEMBER(void *,
+ message,
+ desc->fields[f].offset);
+
+ if (arr != NULL) {
+ if (desc->fields[f].type == PROTOBUF_C_TYPE_STRING) {
+ unsigned i;
+ for (i = 0; i < n; i++)
+ do_free(allocator, ((char **) arr)[i]);
+ } else if (desc->fields[f].type == PROTOBUF_C_TYPE_BYTES) {
+ unsigned i;
+ for (i = 0; i < n; i++)
+ do_free(allocator, ((ProtobufCBinaryData *) arr)[i].data);
+ } else if (desc->fields[f].type == PROTOBUF_C_TYPE_MESSAGE) {
+ unsigned i;
+ for (i = 0; i < n; i++)
+ protobuf_c_message_free_unpacked(
+ ((ProtobufCMessage **) arr)[i],
+ allocator
+ );
+ }
+ do_free(allocator, arr);
+ }
+ } else if (desc->fields[f].type == PROTOBUF_C_TYPE_STRING) {
+ char *str = STRUCT_MEMBER(char *, message,
+ desc->fields[f].offset);
+
+ if (str && str != desc->fields[f].default_value)
+ do_free(allocator, str);
+ } else if (desc->fields[f].type == PROTOBUF_C_TYPE_BYTES) {
+ void *data = STRUCT_MEMBER(ProtobufCBinaryData, message,
+ desc->fields[f].offset).data;
+ const ProtobufCBinaryData *default_bd;
+
+ default_bd = desc->fields[f].default_value;
+ if (data != NULL &&
+ (default_bd == NULL ||
+ default_bd->data != data))
+ {
+ do_free(allocator, data);
+ }
+ } else if (desc->fields[f].type == PROTOBUF_C_TYPE_MESSAGE) {
+ ProtobufCMessage *sm;
+
+ sm = STRUCT_MEMBER(ProtobufCMessage *, message,
+ desc->fields[f].offset);
+ if (sm && sm != desc->fields[f].default_value)
+ protobuf_c_message_free_unpacked(sm, allocator);
+ }
+ }
+
+ for (f = 0; f < message->n_unknown_fields; f++)
+ do_free(allocator, message->unknown_fields[f].data);
+ if (message->unknown_fields != NULL)
+ do_free(allocator, message->unknown_fields);
+
+ do_free(allocator, message);
+}
+
+void
+protobuf_c_message_init(const ProtobufCMessageDescriptor * descriptor,
+ void *message)
+{
+ descriptor->message_init((ProtobufCMessage *) (message));
+}
+
+protobuf_c_boolean
+protobuf_c_message_check(const ProtobufCMessage *message)
+{
+ unsigned i;
+
+ if (!message ||
+ !message->descriptor ||
+ message->descriptor->magic != PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC)
+ {
+ return FALSE;
+ }
+
+ for (i = 0; i < message->descriptor->n_fields; i++) {
+ const ProtobufCFieldDescriptor *f = message->descriptor->fields + i;
+ ProtobufCType type = f->type;
+ ProtobufCLabel label = f->label;
+ void *field = STRUCT_MEMBER_P (message, f->offset);
+
+ if (label == PROTOBUF_C_LABEL_REPEATED) {
+ size_t *quantity = STRUCT_MEMBER_P (message, f->quantifier_offset);
+
+ if (*quantity > 0 && *(void **) field == NULL) {
+ return FALSE;
+ }
+
+ if (type == PROTOBUF_C_TYPE_MESSAGE) {
+ ProtobufCMessage **submessage = *(ProtobufCMessage ***) field;
+ unsigned j;
+ for (j = 0; j < *quantity; j++) {
+ if (!protobuf_c_message_check(submessage[j]))
+ return FALSE;
+ }
+ } else if (type == PROTOBUF_C_TYPE_STRING) {
+ char **string = *(char ***) field;
+ unsigned j;
+ for (j = 0; j < *quantity; j++) {
+ if (!string[j])
+ return FALSE;
+ }
+ } else if (type == PROTOBUF_C_TYPE_BYTES) {
+ ProtobufCBinaryData *bd = *(ProtobufCBinaryData **) field;
+ unsigned j;
+ for (j = 0; j < *quantity; j++) {
+ if (bd[j].len > 0 && bd[j].data == NULL)
+ return FALSE;
+ }
+ }
+
+ } else { /* PROTOBUF_C_LABEL_REQUIRED or PROTOBUF_C_LABEL_OPTIONAL */
+
+ if (type == PROTOBUF_C_TYPE_MESSAGE) {
+ ProtobufCMessage *submessage = *(ProtobufCMessage **) field;
+ if (label == PROTOBUF_C_LABEL_REQUIRED || submessage != NULL) {
+ if (!protobuf_c_message_check(submessage))
+ return FALSE;
+ }
+ } else if (type == PROTOBUF_C_TYPE_STRING) {
+ char *string = *(char **) field;
+ if (label == PROTOBUF_C_LABEL_REQUIRED && string == NULL)
+ return FALSE;
+ } else if (type == PROTOBUF_C_TYPE_BYTES) {
+ protobuf_c_boolean *has = STRUCT_MEMBER_P (message, f->quantifier_offset);
+ ProtobufCBinaryData *bd = field;
+ if (label == PROTOBUF_C_LABEL_REQUIRED || *has == TRUE) {
+ if (bd->len > 0 && bd->data == NULL)
+ return FALSE;
+ }
+ }
+ }
+ }
+
+ return TRUE;
+}
+
+/* === services === */
+
+typedef void (*GenericHandler) (void *service,
+ const ProtobufCMessage *input,
+ ProtobufCClosure closure,
+ void *closure_data);
+void
+protobuf_c_service_invoke_internal(ProtobufCService *service,
+ unsigned method_index,
+ const ProtobufCMessage *input,
+ ProtobufCClosure closure,
+ void *closure_data)
+{
+ GenericHandler *handlers;
+ GenericHandler handler;
+
+ /*
+ * Verify that method_index is within range. If this fails, you are
+ * likely invoking a newly added method on an old service. (Although
+ * other memory corruption bugs can cause this assertion too.)
+ */
+ assert(method_index < service->descriptor->n_methods);
+
+ /*
+ * Get the array of virtual methods (which are enumerated by the
+ * generated code).
+ */
+ handlers = (GenericHandler *) (service + 1);
+
+ /*
+ * Get our method and invoke it.
+ * \todo Seems like handler == NULL is a situation that needs handling.
+ */
+ handler = handlers[method_index];
+ (*handler)(service, input, closure, closure_data);
+}
+
+void
+protobuf_c_service_generated_init(ProtobufCService *service,
+ const ProtobufCServiceDescriptor *descriptor,
+ ProtobufCServiceDestroy destroy)
+{
+ ASSERT_IS_SERVICE_DESCRIPTOR(descriptor);
+ service->descriptor = descriptor;
+ service->destroy = destroy;
+ service->invoke = protobuf_c_service_invoke_internal;
+ memset(service + 1, 0, descriptor->n_methods * sizeof(GenericHandler));
+}
+
+void protobuf_c_service_destroy(ProtobufCService *service)
+{
+ service->destroy(service);
+}
+
+/* --- querying the descriptors --- */
+
+const ProtobufCEnumValue *
+protobuf_c_enum_descriptor_get_value_by_name(const ProtobufCEnumDescriptor *desc,
+ const char *name)
+{
+ unsigned start = 0;
+ unsigned count;
+
+ if (desc == NULL || desc->values_by_name == NULL)
+ return NULL;
+
+ count = desc->n_value_names;
+
+ while (count > 1) {
+ unsigned mid = start + count / 2;
+ int rv = strcmp(desc->values_by_name[mid].name, name);
+ if (rv == 0)
+ return desc->values + desc->values_by_name[mid].index;
+ else if (rv < 0) {
+ count = start + count - (mid + 1);
+ start = mid + 1;
+ } else
+ count = mid - start;
+ }
+ if (count == 0)
+ return NULL;
+ if (strcmp(desc->values_by_name[start].name, name) == 0)
+ return desc->values + desc->values_by_name[start].index;
+ return NULL;
+}
+
+const ProtobufCEnumValue *
+protobuf_c_enum_descriptor_get_value(const ProtobufCEnumDescriptor *desc,
+ int value)
+{
+ int rv = int_range_lookup(desc->n_value_ranges, desc->value_ranges, value);
+ if (rv < 0)
+ return NULL;
+ return desc->values + rv;
+}
+
+const ProtobufCFieldDescriptor *
+protobuf_c_message_descriptor_get_field_by_name(const ProtobufCMessageDescriptor *desc,
+ const char *name)
+{
+ unsigned start = 0;
+ unsigned count;
+ const ProtobufCFieldDescriptor *field;
+
+ if (desc == NULL || desc->fields_sorted_by_name == NULL)
+ return NULL;
+
+ count = desc->n_fields;
+
+ while (count > 1) {
+ unsigned mid = start + count / 2;
+ int rv;
+ field = desc->fields + desc->fields_sorted_by_name[mid];
+ rv = strcmp(field->name, name);
+ if (rv == 0)
+ return field;
+ else if (rv < 0) {
+ count = start + count - (mid + 1);
+ start = mid + 1;
+ } else
+ count = mid - start;
+ }
+ if (count == 0)
+ return NULL;
+ field = desc->fields + desc->fields_sorted_by_name[start];
+ if (strcmp(field->name, name) == 0)
+ return field;
+ return NULL;
+}
+
+const ProtobufCFieldDescriptor *
+protobuf_c_message_descriptor_get_field(const ProtobufCMessageDescriptor *desc,
+ unsigned value)
+{
+ int rv = int_range_lookup(desc->n_field_ranges,desc->field_ranges, value);
+ if (rv < 0)
+ return NULL;
+ return desc->fields + rv;
+}
+
+const ProtobufCMethodDescriptor *
+protobuf_c_service_descriptor_get_method_by_name(const ProtobufCServiceDescriptor *desc,
+ const char *name)
+{
+ unsigned start = 0;
+ unsigned count;
+
+ if (desc == NULL || desc->method_indices_by_name == NULL)
+ return NULL;
+
+ count = desc->n_methods;
+
+ while (count > 1) {
+ unsigned mid = start + count / 2;
+ unsigned mid_index = desc->method_indices_by_name[mid];
+ const char *mid_name = desc->methods[mid_index].name;
+ int rv = strcmp(mid_name, name);
+
+ if (rv == 0)
+ return desc->methods + desc->method_indices_by_name[mid];
+ if (rv < 0) {
+ count = start + count - (mid + 1);
+ start = mid + 1;
+ } else {
+ count = mid - start;
+ }
+ }
+ if (count == 0)
+ return NULL;
+ if (strcmp(desc->methods[desc->method_indices_by_name[start]].name, name) == 0)
+ return desc->methods + desc->method_indices_by_name[start];
+ return NULL;
+}
diff --git a/Software/Visual_Studio/Native/Tango.Emulations.Native/protobuf-c/protobuf-c.h b/Software/Visual_Studio/Native/Tango.Emulations.Native/protobuf-c/protobuf-c.h
new file mode 100644
index 000000000..c8fa4fc2a
--- /dev/null
+++ b/Software/Visual_Studio/Native/Tango.Emulations.Native/protobuf-c/protobuf-c.h
@@ -0,0 +1,1106 @@
+/*
+ * Copyright (c) 2008-2017, Dave Benson and the protobuf-c authors.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*! \file
+ * \mainpage Introduction
+ *
+ * This is [protobuf-c], a C implementation of [Protocol Buffers].
+ *
+ * This file defines the public API for the `libprotobuf-c` support library.
+ * This API includes interfaces that can be used directly by client code as well
+ * as the interfaces used by the code generated by the `protoc-c` compiler.
+ *
+ * The `libprotobuf-c` support library performs the actual serialization and
+ * deserialization of Protocol Buffers messages. It interacts with structures,
+ * definitions, and metadata generated by the `protoc-c` compiler from .proto
+ * files.
+ *
+ * \authors Dave Benson and the `protobuf-c` authors.
+ *
+ * \copyright 2008-2014. Licensed under the terms of the [BSD-2-Clause] license.
+ *
+ * [protobuf-c]: https://github.com/protobuf-c/protobuf-c
+ * [Protocol Buffers]: https://developers.google.com/protocol-buffers/
+ * [BSD-2-Clause]: http://opensource.org/licenses/BSD-2-Clause
+ *
+ * \page gencode Generated Code
+ *
+ * For each enum, we generate a C enum. For each message, we generate a C
+ * structure which can be cast to a `ProtobufCMessage`.
+ *
+ * For each enum and message, we generate a descriptor object that allows us to
+ * implement a kind of reflection on the structures.
+ *
+ * First, some naming conventions:
+ *
+ * - The name of the type for enums and messages and services is camel case
+ * (meaning WordsAreCrammedTogether) except that double underscores are used
+ * to delimit scopes. For example, the following `.proto` file:
+ *
+~~~{.proto}
+ package foo.bar;
+ message BazBah {
+ optional int32 val = 1;
+ }
+~~~
+ *
+ * would generate a C type `Foo__Bar__BazBah`.
+ *
+ * - Identifiers for functions and globals are all lowercase, with camel case
+ * words separated by single underscores. For example, one of the function
+ * prototypes generated by `protoc-c` for the above example:
+ *
+~~~{.c}
+Foo__Bar__BazBah *
+ foo__bar__baz_bah__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+~~~
+ *
+ * - Identifiers for enum values contain an uppercase prefix which embeds the
+ * package name and the enum type name.
+ *
+ * - A double underscore is used to separate further components of identifier
+ * names.
+ *
+ * For example, in the name of the unpack function above, the package name
+ * `foo.bar` has become `foo__bar`, the message name BazBah has become
+ * `baz_bah`, and the method name is `unpack`. These are all joined with double
+ * underscores to form the C identifier `foo__bar__baz_bah__unpack`.
+ *
+ * We also generate descriptor objects for messages and enums. These are
+ * declared in the `.pb-c.h` files:
+ *
+~~~{.c}
+extern const ProtobufCMessageDescriptor foo__bar__baz_bah__descriptor;
+~~~
+ *
+ * The message structures all begin with `ProtobufCMessageDescriptor *` which is
+ * sufficient to allow them to be cast to `ProtobufCMessage`.
+ *
+ * For each message defined in a `.proto` file, we generate a number of
+ * functions and macros. Each function name contains a prefix based on the
+ * package name and message name in order to make it a unique C identifier.
+ *
+ * - `INIT`. Statically initializes a message object, initializing its
+ * descriptor and setting its fields to default values. Uninitialized
+ * messages cannot be processed by the protobuf-c library.
+ *
+~~~{.c}
+#define FOO__BAR__BAZ_BAH__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&foo__bar__baz_bah__descriptor), 0 }
+~~~
+ * - `init()`. Initializes a message object, initializing its descriptor and
+ * setting its fields to default values. Uninitialized messages cannot be
+ * processed by the protobuf-c library.
+ *
+~~~{.c}
+void foo__bar__baz_bah__init
+ (Foo__Bar__BazBah *message);
+~~~
+ * - `unpack()`. Unpacks data for a particular message format. Note that the
+ * `allocator` parameter is usually `NULL` to indicate that the system's
+ * `malloc()` and `free()` functions should be used for dynamically allocating
+ * memory.
+ *
+~~~{.c}
+Foo__Bar__BazBah *
+ foo__bar__baz_bah__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+~~~
+ *
+ * - `free_unpacked()`. Frees a message object obtained with the `unpack()`
+ * method. Freeing `NULL` is allowed (the same as with `free()`).
+ *
+~~~{.c}
+void foo__bar__baz_bah__free_unpacked
+ (Foo__Bar__BazBah *message,
+ ProtobufCAllocator *allocator);
+~~~
+ *
+ * - `get_packed_size()`. Calculates the length in bytes of the serialized
+ * representation of the message object.
+ *
+~~~{.c}
+size_t foo__bar__baz_bah__get_packed_size
+ (const Foo__Bar__BazBah *message);
+~~~
+ *
+ * - `pack()`. Pack a message object into a preallocated buffer. Assumes that
+ * the buffer is large enough. (Use `get_packed_size()` first.)
+ *
+~~~{.c}
+size_t foo__bar__baz_bah__pack
+ (const Foo__Bar__BazBah *message,
+ uint8_t *out);
+~~~
+ *
+ * - `pack_to_buffer()`. Packs a message into a "virtual buffer". This is an
+ * object which defines an "append bytes" callback to consume data as it is
+ * serialized.
+ *
+~~~{.c}
+size_t foo__bar__baz_bah__pack_to_buffer
+ (const Foo__Bar__BazBah *message,
+ ProtobufCBuffer *buffer);
+~~~
+ *
+ * \page pack Packing and unpacking messages
+ *
+ * To pack a message, first compute the packed size of the message with
+ * protobuf_c_message_get_packed_size(), then allocate a buffer of at least
+ * that size, then call protobuf_c_message_pack().
+ *
+ * Alternatively, a message can be serialized without calculating the final size
+ * first. Use the protobuf_c_message_pack_to_buffer() function and provide a
+ * ProtobufCBuffer object which implements an "append" method that consumes
+ * data.
+ *
+ * To unpack a message, call the protobuf_c_message_unpack() function. The
+ * result can be cast to an object of the type that matches the descriptor for
+ * the message.
+ *
+ * The result of unpacking a message should be freed with
+ * protobuf_c_message_free_unpacked().
+ */
+
+#ifndef PROTOBUF_C_H
+#define PROTOBUF_C_H
+
+#include <assert.h>
+#include <limits.h>
+#include <stddef.h>
+#include <stdint.h>
+
+#ifdef __cplusplus
+# define PROTOBUF_C__BEGIN_DECLS extern "C" {
+# define PROTOBUF_C__END_DECLS }
+#else
+# define PROTOBUF_C__BEGIN_DECLS
+# define PROTOBUF_C__END_DECLS
+#endif
+
+PROTOBUF_C__BEGIN_DECLS
+
+#if defined(_WIN32) && defined(PROTOBUF_C_USE_SHARED_LIB)
+# ifdef PROTOBUF_C_EXPORT
+# define PROTOBUF_C__API __declspec(dllexport)
+# else
+# define PROTOBUF_C__API __declspec(dllimport)
+# endif
+#else
+# define PROTOBUF_C__API
+#endif
+
+#if !defined(PROTOBUF_C__NO_DEPRECATED) && \
+ ((__GNUC__ > 3) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))
+# define PROTOBUF_C__DEPRECATED __attribute__((__deprecated__))
+#else
+# define PROTOBUF_C__DEPRECATED
+#endif
+
+#ifndef PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE
+ #define PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(enum_name) \
+ , _##enum_name##_IS_INT_SIZE = INT_MAX
+#endif
+
+#define PROTOBUF_C__SERVICE_DESCRIPTOR_MAGIC 0x14159bc3
+#define PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC 0x28aaeef9
+#define PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC 0x114315af
+
+/* Empty string used for initializers */
+extern const char protobuf_c_empty_string[];
+
+/**
+ * \defgroup api Public API
+ *
+ * This is the public API for `libprotobuf-c`. These interfaces are stable and
+ * subject to Semantic Versioning guarantees.
+ *
+ * @{
+ */
+
+/**
+ * Values for the `flags` word in `ProtobufCFieldDescriptor`.
+ */
+typedef enum {
+ /** Set if the field is repeated and marked with the `packed` option. */
+ PROTOBUF_C_FIELD_FLAG_PACKED = (1 << 0),
+
+ /** Set if the field is marked with the `deprecated` option. */
+ PROTOBUF_C_FIELD_FLAG_DEPRECATED = (1 << 1),
+
+ /** Set if the field is a member of a oneof (union). */
+ PROTOBUF_C_FIELD_FLAG_ONEOF = (1 << 2),
+} ProtobufCFieldFlag;
+
+/**
+ * Message field rules.
+ *
+ * \see [Defining A Message Type] in the Protocol Buffers documentation.
+ *
+ * [Defining A Message Type]:
+ * https://developers.google.com/protocol-buffers/docs/proto#simple
+ */
+typedef enum {
+ /** A well-formed message must have exactly one of this field. */
+ PROTOBUF_C_LABEL_REQUIRED,
+
+ /**
+ * A well-formed message can have zero or one of this field (but not
+ * more than one).
+ */
+ PROTOBUF_C_LABEL_OPTIONAL,
+
+ /**
+ * This field can be repeated any number of times (including zero) in a
+ * well-formed message. The order of the repeated values will be
+ * preserved.
+ */
+ PROTOBUF_C_LABEL_REPEATED,
+
+ /**
+ * This field has no label. This is valid only in proto3 and is
+ * equivalent to OPTIONAL but no "has" quantifier will be consulted.
+ */
+ PROTOBUF_C_LABEL_NONE,
+} ProtobufCLabel;
+
+/**
+ * Field value types.
+ *
+ * \see [Scalar Value Types] in the Protocol Buffers documentation.
+ *
+ * [Scalar Value Types]:
+ * https://developers.google.com/protocol-buffers/docs/proto#scalar
+ */
+typedef enum {
+ PROTOBUF_C_TYPE_INT32, /**< int32 */
+ PROTOBUF_C_TYPE_SINT32, /**< signed int32 */
+ PROTOBUF_C_TYPE_SFIXED32, /**< signed int32 (4 bytes) */
+ PROTOBUF_C_TYPE_INT64, /**< int64 */
+ PROTOBUF_C_TYPE_SINT64, /**< signed int64 */
+ PROTOBUF_C_TYPE_SFIXED64, /**< signed int64 (8 bytes) */
+ PROTOBUF_C_TYPE_UINT32, /**< unsigned int32 */
+ PROTOBUF_C_TYPE_FIXED32, /**< unsigned int32 (4 bytes) */
+ PROTOBUF_C_TYPE_UINT64, /**< unsigned int64 */
+ PROTOBUF_C_TYPE_FIXED64, /**< unsigned int64 (8 bytes) */
+ PROTOBUF_C_TYPE_FLOAT, /**< float */
+ PROTOBUF_C_TYPE_DOUBLE, /**< double */
+ PROTOBUF_C_TYPE_BOOL, /**< boolean */
+ PROTOBUF_C_TYPE_ENUM, /**< enumerated type */
+ PROTOBUF_C_TYPE_STRING, /**< UTF-8 or ASCII string */
+ PROTOBUF_C_TYPE_BYTES, /**< arbitrary byte sequence */
+ PROTOBUF_C_TYPE_MESSAGE, /**< nested message */
+} ProtobufCType;
+
+/**
+ * Field wire types.
+ *
+ * \see [Message Structure] in the Protocol Buffers documentation.
+ *
+ * [Message Structure]:
+ * https://developers.google.com/protocol-buffers/docs/encoding#structure
+ */
+typedef enum {
+ PROTOBUF_C_WIRE_TYPE_VARINT = 0,
+ PROTOBUF_C_WIRE_TYPE_64BIT = 1,
+ PROTOBUF_C_WIRE_TYPE_LENGTH_PREFIXED = 2,
+ /* "Start group" and "end group" wire types are unsupported. */
+ PROTOBUF_C_WIRE_TYPE_32BIT = 5,
+} ProtobufCWireType;
+
+struct ProtobufCAllocator;
+struct ProtobufCBinaryData;
+struct ProtobufCBuffer;
+struct ProtobufCBufferSimple;
+struct ProtobufCEnumDescriptor;
+struct ProtobufCEnumValue;
+struct ProtobufCEnumValueIndex;
+struct ProtobufCFieldDescriptor;
+struct ProtobufCIntRange;
+struct ProtobufCMessage;
+struct ProtobufCMessageDescriptor;
+struct ProtobufCMessageUnknownField;
+struct ProtobufCMethodDescriptor;
+struct ProtobufCService;
+struct ProtobufCServiceDescriptor;
+
+typedef struct ProtobufCAllocator ProtobufCAllocator;
+typedef struct ProtobufCBinaryData ProtobufCBinaryData;
+typedef struct ProtobufCBuffer ProtobufCBuffer;
+typedef struct ProtobufCBufferSimple ProtobufCBufferSimple;
+typedef struct ProtobufCEnumDescriptor ProtobufCEnumDescriptor;
+typedef struct ProtobufCEnumValue ProtobufCEnumValue;
+typedef struct ProtobufCEnumValueIndex ProtobufCEnumValueIndex;
+typedef struct ProtobufCFieldDescriptor ProtobufCFieldDescriptor;
+typedef struct ProtobufCIntRange ProtobufCIntRange;
+typedef struct ProtobufCMessage ProtobufCMessage;
+typedef struct ProtobufCMessageDescriptor ProtobufCMessageDescriptor;
+typedef struct ProtobufCMessageUnknownField ProtobufCMessageUnknownField;
+typedef struct ProtobufCMethodDescriptor ProtobufCMethodDescriptor;
+typedef struct ProtobufCService ProtobufCService;
+typedef struct ProtobufCServiceDescriptor ProtobufCServiceDescriptor;
+
+/** Boolean type. */
+typedef int protobuf_c_boolean;
+
+typedef void (*ProtobufCClosure)(const ProtobufCMessage *, void *closure_data);
+typedef void (*ProtobufCMessageInit)(ProtobufCMessage *);
+typedef void (*ProtobufCServiceDestroy)(ProtobufCService *);
+
+/**
+ * Structure for defining a custom memory allocator.
+ */
+struct ProtobufCAllocator {
+ /** Function to allocate memory. */
+ void *(*alloc)(void *allocator_data, size_t size);
+
+ /** Function to free memory. */
+ void (*free)(void *allocator_data, void *pointer);
+
+ /** Opaque pointer passed to `alloc` and `free` functions. */
+ void *allocator_data;
+};
+
+/**
+ * Structure for the protobuf `bytes` scalar type.
+ *
+ * The data contained in a `ProtobufCBinaryData` is an arbitrary sequence of
+ * bytes. It may contain embedded `NUL` characters and is not required to be
+ * `NUL`-terminated.
+ */
+struct ProtobufCBinaryData {
+ size_t len; /**< Number of bytes in the `data` field. */
+ uint8_t *data; /**< Data bytes. */
+};
+
+/**
+ * Structure for defining a virtual append-only buffer. Used by
+ * protobuf_c_message_pack_to_buffer() to abstract the consumption of serialized
+ * bytes.
+ *
+ * `ProtobufCBuffer` "subclasses" may be defined on the stack. For example, to
+ * write to a `FILE` object:
+ *
+~~~{.c}
+typedef struct {
+ ProtobufCBuffer base;
+ FILE *fp;
+} BufferAppendToFile;
+
+static void
+my_buffer_file_append(ProtobufCBuffer *buffer,
+ size_t len,
+ const uint8_t *data)
+{
+ BufferAppendToFile *file_buf = (BufferAppendToFile *) buffer;
+ fwrite(data, len, 1, file_buf->fp); // XXX: No error handling!
+}
+~~~
+ *
+ * To use this new type of ProtobufCBuffer, it could be called as follows:
+ *
+~~~{.c}
+...
+BufferAppendToFile tmp = {0};
+tmp.base.append = my_buffer_file_append;
+tmp.fp = fp;
+protobuf_c_message_pack_to_buffer(&message, &tmp);
+...
+~~~
+ */
+struct ProtobufCBuffer {
+ /** Append function. Consumes the `len` bytes stored at `data`. */
+ void (*append)(ProtobufCBuffer *buffer,
+ size_t len,
+ const uint8_t *data);
+};
+
+/**
+ * Simple buffer "subclass" of `ProtobufCBuffer`.
+ *
+ * A `ProtobufCBufferSimple` object is declared on the stack and uses a
+ * scratch buffer provided by the user for the initial allocation. It performs
+ * exponential resizing, using dynamically allocated memory. A
+ * `ProtobufCBufferSimple` object can be created and used as follows:
+ *
+~~~{.c}
+uint8_t pad[128];
+ProtobufCBufferSimple simple = PROTOBUF_C_BUFFER_SIMPLE_INIT(pad);
+ProtobufCBuffer *buffer = (ProtobufCBuffer *) &simple;
+~~~
+ *
+ * `buffer` can now be used with `protobuf_c_message_pack_to_buffer()`. Once a
+ * message has been serialized to a `ProtobufCBufferSimple` object, the
+ * serialized data bytes can be accessed from the `.data` field.
+ *
+ * To free the memory allocated by a `ProtobufCBufferSimple` object, if any,
+ * call PROTOBUF_C_BUFFER_SIMPLE_CLEAR() on the object, for example:
+ *
+~~~{.c}
+PROTOBUF_C_BUFFER_SIMPLE_CLEAR(&simple);
+~~~
+ *
+ * \see PROTOBUF_C_BUFFER_SIMPLE_INIT
+ * \see PROTOBUF_C_BUFFER_SIMPLE_CLEAR
+ */
+struct ProtobufCBufferSimple {
+ /** "Base class". */
+ ProtobufCBuffer base;
+ /** Number of bytes allocated in `data`. */
+ size_t alloced;
+ /** Number of bytes currently stored in `data`. */
+ size_t len;
+ /** Data bytes. */
+ uint8_t *data;
+ /** Whether `data` must be freed. */
+ protobuf_c_boolean must_free_data;
+ /** Allocator to use. May be NULL to indicate the system allocator. */
+ ProtobufCAllocator *allocator;
+};
+
+/**
+ * Describes an enumeration as a whole, with all of its values.
+ */
+struct ProtobufCEnumDescriptor {
+ /** Magic value checked to ensure that the API is used correctly. */
+ uint32_t magic;
+
+ /** The qualified name (e.g., "namespace.Type"). */
+ const char *name;
+ /** The unqualified name as given in the .proto file (e.g., "Type"). */
+ const char *short_name;
+ /** Identifier used in generated C code. */
+ const char *c_name;
+ /** The dot-separated namespace. */
+ const char *package_name;
+
+ /** Number elements in `values`. */
+ unsigned n_values;
+ /** Array of distinct values, sorted by numeric value. */
+ const ProtobufCEnumValue *values;
+
+ /** Number of elements in `values_by_name`. */
+ unsigned n_value_names;
+ /** Array of named values, including aliases, sorted by name. */
+ const ProtobufCEnumValueIndex *values_by_name;
+
+ /** Number of elements in `value_ranges`. */
+ unsigned n_value_ranges;
+ /** Value ranges, for faster lookups by numeric value. */
+ const ProtobufCIntRange *value_ranges;
+
+ /** Reserved for future use. */
+ void *reserved1;
+ /** Reserved for future use. */
+ void *reserved2;
+ /** Reserved for future use. */
+ void *reserved3;
+ /** Reserved for future use. */
+ void *reserved4;
+};
+
+/**
+ * Represents a single value of an enumeration.
+ */
+struct ProtobufCEnumValue {
+ /** The string identifying this value in the .proto file. */
+ const char *name;
+
+ /** The string identifying this value in generated C code. */
+ const char *c_name;
+
+ /** The numeric value assigned in the .proto file. */
+ int value;
+};
+
+/**
+ * Used by `ProtobufCEnumDescriptor` to look up enum values.
+ */
+struct ProtobufCEnumValueIndex {
+ /** Name of the enum value. */
+ const char *name;
+ /** Index into values[] array. */
+ unsigned index;
+};
+
+/**
+ * Describes a single field in a message.
+ */
+struct ProtobufCFieldDescriptor {
+ /** Name of the field as given in the .proto file. */
+ const char *name;
+
+ /** Tag value of the field as given in the .proto file. */
+ uint32_t id;
+
+ /** Whether the field is `REQUIRED`, `OPTIONAL`, or `REPEATED`. */
+ ProtobufCLabel label;
+
+ /** The type of the field. */
+ ProtobufCType type;
+
+ /**
+ * The offset in bytes of the message's C structure's quantifier field
+ * (the `has_MEMBER` field for optional members or the `n_MEMBER` field
+ * for repeated members or the case enum for oneofs).
+ */
+ unsigned quantifier_offset;
+
+ /**
+ * The offset in bytes into the message's C structure for the member
+ * itself.
+ */
+ unsigned offset;
+
+ /**
+ * A type-specific descriptor.
+ *
+ * If `type` is `PROTOBUF_C_TYPE_ENUM`, then `descriptor` points to the
+ * corresponding `ProtobufCEnumDescriptor`.
+ *
+ * If `type` is `PROTOBUF_C_TYPE_MESSAGE`, then `descriptor` points to
+ * the corresponding `ProtobufCMessageDescriptor`.
+ *
+ * Otherwise this field is NULL.
+ */
+ const void *descriptor; /* for MESSAGE and ENUM types */
+
+ /** The default value for this field, if defined. May be NULL. */
+ const void *default_value;
+
+ /**
+ * A flag word. Zero or more of the bits defined in the
+ * `ProtobufCFieldFlag` enum may be set.
+ */
+ uint32_t flags;
+
+ /** Reserved for future use. */
+ unsigned reserved_flags;
+ /** Reserved for future use. */
+ void *reserved2;
+ /** Reserved for future use. */
+ void *reserved3;
+};
+
+/**
+ * Helper structure for optimizing int => index lookups in the case
+ * where the keys are mostly consecutive values, as they presumably are for
+ * enums and fields.
+ *
+ * The data structures requires that the values in the original array are
+ * sorted.
+ */
+struct ProtobufCIntRange {
+ int start_value;
+ unsigned orig_index;
+ /*
+ * NOTE: the number of values in the range can be inferred by looking
+ * at the next element's orig_index. A dummy element is added to make
+ * this simple.
+ */
+};
+
+/**
+ * An instance of a message.
+ *
+ * `ProtobufCMessage` is a light-weight "base class" for all messages.
+ *
+ * In particular, `ProtobufCMessage` doesn't have any allocation policy
+ * associated with it. That's because it's common to create `ProtobufCMessage`
+ * objects on the stack. In fact, that's what we recommend for sending messages.
+ * If the object is allocated from the stack, you can't really have a memory
+ * leak.
+ *
+ * This means that calls to functions like protobuf_c_message_unpack() which
+ * return a `ProtobufCMessage` must be paired with a call to a free function,
+ * like protobuf_c_message_free_unpacked().
+ */
+struct ProtobufCMessage {
+ /** The descriptor for this message type. */
+ const ProtobufCMessageDescriptor *descriptor;
+ /** The number of elements in `unknown_fields`. */
+ unsigned n_unknown_fields;
+ /** The fields that weren't recognized by the parser. */
+ ProtobufCMessageUnknownField *unknown_fields;
+};
+
+/**
+ * Describes a message.
+ */
+struct ProtobufCMessageDescriptor {
+ /** Magic value checked to ensure that the API is used correctly. */
+ uint32_t magic;
+
+ /** The qualified name (e.g., "namespace.Type"). */
+ const char *name;
+ /** The unqualified name as given in the .proto file (e.g., "Type"). */
+ const char *short_name;
+ /** Identifier used in generated C code. */
+ const char *c_name;
+ /** The dot-separated namespace. */
+ const char *package_name;
+
+ /**
+ * Size in bytes of the C structure representing an instance of this
+ * type of message.
+ */
+ size_t sizeof_message;
+
+ /** Number of elements in `fields`. */
+ unsigned n_fields;
+ /** Field descriptors, sorted by tag number. */
+ const ProtobufCFieldDescriptor *fields;
+ /** Used for looking up fields by name. */
+ const unsigned *fields_sorted_by_name;
+
+ /** Number of elements in `field_ranges`. */
+ unsigned n_field_ranges;
+ /** Used for looking up fields by id. */
+ const ProtobufCIntRange *field_ranges;
+
+ /** Message initialisation function. */
+ ProtobufCMessageInit message_init;
+
+ /** Reserved for future use. */
+ void *reserved1;
+ /** Reserved for future use. */
+ void *reserved2;
+ /** Reserved for future use. */
+ void *reserved3;
+};
+
+/**
+ * An unknown message field.
+ */
+struct ProtobufCMessageUnknownField {
+ /** The tag number. */
+ uint32_t tag;
+ /** The wire type of the field. */
+ ProtobufCWireType wire_type;
+ /** Number of bytes in `data`. */
+ size_t len;
+ /** Field data. */
+ uint8_t *data;
+};
+
+/**
+ * Method descriptor.
+ */
+struct ProtobufCMethodDescriptor {
+ /** Method name. */
+ const char *name;
+ /** Input message descriptor. */
+ const ProtobufCMessageDescriptor *input;
+ /** Output message descriptor. */
+ const ProtobufCMessageDescriptor *output;
+};
+
+/**
+ * Service.
+ */
+struct ProtobufCService {
+ /** Service descriptor. */
+ const ProtobufCServiceDescriptor *descriptor;
+ /** Function to invoke the service. */
+ void (*invoke)(ProtobufCService *service,
+ unsigned method_index,
+ const ProtobufCMessage *input,
+ ProtobufCClosure closure,
+ void *closure_data);
+ /** Function to destroy the service. */
+ void (*destroy)(ProtobufCService *service);
+};
+
+/**
+ * Service descriptor.
+ */
+struct ProtobufCServiceDescriptor {
+ /** Magic value checked to ensure that the API is used correctly. */
+ uint32_t magic;
+
+ /** Service name. */
+ const char *name;
+ /** Short version of service name. */
+ const char *short_name;
+ /** C identifier for the service name. */
+ const char *c_name;
+ /** Package name. */
+ const char *package;
+ /** Number of elements in `methods`. */
+ unsigned n_methods;
+ /** Method descriptors, in the order defined in the .proto file. */
+ const ProtobufCMethodDescriptor *methods;
+ /** Sort index of methods. */
+ const unsigned *method_indices_by_name;
+};
+
+/**
+ * Get the version of the protobuf-c library. Note that this is the version of
+ * the library linked against, not the version of the headers compiled against.
+ *
+ * \return A string containing the version number of protobuf-c.
+ */
+PROTOBUF_C__API
+const char *
+protobuf_c_version(void);
+
+/**
+ * Get the version of the protobuf-c library. Note that this is the version of
+ * the library linked against, not the version of the headers compiled against.
+ *
+ * \return A 32 bit unsigned integer containing the version number of
+ * protobuf-c, represented in base-10 as (MAJOR*1E6) + (MINOR*1E3) + PATCH.
+ */
+PROTOBUF_C__API
+uint32_t
+protobuf_c_version_number(void);
+
+/**
+ * The version of the protobuf-c headers, represented as a string using the same
+ * format as protobuf_c_version().
+ */
+#define PROTOBUF_C_VERSION "1.3.0"
+
+/**
+ * The version of the protobuf-c headers, represented as an integer using the
+ * same format as protobuf_c_version_number().
+ */
+#define PROTOBUF_C_VERSION_NUMBER 1003000
+
+/**
+ * The minimum protoc-c version which works with the current version of the
+ * protobuf-c headers.
+ */
+#define PROTOBUF_C_MIN_COMPILER_VERSION 1000000
+
+/**
+ * Look up a `ProtobufCEnumValue` from a `ProtobufCEnumDescriptor` by name.
+ *
+ * \param desc
+ * The `ProtobufCEnumDescriptor` object.
+ * \param name
+ * The `name` field from the corresponding `ProtobufCEnumValue` object to
+ * match.
+ * \return
+ * A `ProtobufCEnumValue` object.
+ * \retval NULL
+ * If not found or if the optimize_for = CODE_SIZE option was set.
+ */
+PROTOBUF_C__API
+const ProtobufCEnumValue *
+protobuf_c_enum_descriptor_get_value_by_name(
+ const ProtobufCEnumDescriptor *desc,
+ const char *name);
+
+/**
+ * Look up a `ProtobufCEnumValue` from a `ProtobufCEnumDescriptor` by numeric
+ * value.
+ *
+ * \param desc
+ * The `ProtobufCEnumDescriptor` object.
+ * \param value
+ * The `value` field from the corresponding `ProtobufCEnumValue` object to
+ * match.
+ *
+ * \return
+ * A `ProtobufCEnumValue` object.
+ * \retval NULL
+ * If not found.
+ */
+PROTOBUF_C__API
+const ProtobufCEnumValue *
+protobuf_c_enum_descriptor_get_value(
+ const ProtobufCEnumDescriptor *desc,
+ int value);
+
+/**
+ * Look up a `ProtobufCFieldDescriptor` from a `ProtobufCMessageDescriptor` by
+ * the name of the field.
+ *
+ * \param desc
+ * The `ProtobufCMessageDescriptor` object.
+ * \param name
+ * The name of the field.
+ * \return
+ * A `ProtobufCFieldDescriptor` object.
+ * \retval NULL
+ * If not found or if the optimize_for = CODE_SIZE option was set.
+ */
+PROTOBUF_C__API
+const ProtobufCFieldDescriptor *
+protobuf_c_message_descriptor_get_field_by_name(
+ const ProtobufCMessageDescriptor *desc,
+ const char *name);
+
+/**
+ * Look up a `ProtobufCFieldDescriptor` from a `ProtobufCMessageDescriptor` by
+ * the tag value of the field.
+ *
+ * \param desc
+ * The `ProtobufCMessageDescriptor` object.
+ * \param value
+ * The tag value of the field.
+ * \return
+ * A `ProtobufCFieldDescriptor` object.
+ * \retval NULL
+ * If not found.
+ */
+PROTOBUF_C__API
+const ProtobufCFieldDescriptor *
+protobuf_c_message_descriptor_get_field(
+ const ProtobufCMessageDescriptor *desc,
+ unsigned value);
+
+/**
+ * Determine the number of bytes required to store the serialised message.
+ *
+ * \param message
+ * The message object to serialise.
+ * \return
+ * Number of bytes.
+ */
+PROTOBUF_C__API
+size_t
+protobuf_c_message_get_packed_size(const ProtobufCMessage *message);
+
+/**
+ * Serialise a message from its in-memory representation.
+ *
+ * This function stores the serialised bytes of the message in a pre-allocated
+ * buffer.
+ *
+ * \param message
+ * The message object to serialise.
+ * \param[out] out
+ * Buffer to store the bytes of the serialised message. This buffer must
+ * have enough space to store the packed message. Use
+ * protobuf_c_message_get_packed_size() to determine the number of bytes
+ * required.
+ * \return
+ * Number of bytes stored in `out`.
+ */
+PROTOBUF_C__API
+size_t
+protobuf_c_message_pack(const ProtobufCMessage *message, uint8_t *out);
+
+/**
+ * Serialise a message from its in-memory representation to a virtual buffer.
+ *
+ * This function calls the `append` method of a `ProtobufCBuffer` object to
+ * consume the bytes generated by the serialiser.
+ *
+ * \param message
+ * The message object to serialise.
+ * \param buffer
+ * The virtual buffer object.
+ * \return
+ * Number of bytes passed to the virtual buffer.
+ */
+PROTOBUF_C__API
+size_t
+protobuf_c_message_pack_to_buffer(
+ const ProtobufCMessage *message,
+ ProtobufCBuffer *buffer);
+
+/**
+ * Unpack a serialised message into an in-memory representation.
+ *
+ * \param descriptor
+ * The message descriptor.
+ * \param allocator
+ * `ProtobufCAllocator` to use for memory allocation. May be NULL to
+ * specify the default allocator.
+ * \param len
+ * Length in bytes of the serialised message.
+ * \param data
+ * Pointer to the serialised message.
+ * \return
+ * An unpacked message object.
+ * \retval NULL
+ * If an error occurred during unpacking.
+ */
+PROTOBUF_C__API
+ProtobufCMessage *
+protobuf_c_message_unpack(
+ const ProtobufCMessageDescriptor *descriptor,
+ ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+
+/**
+ * Free an unpacked message object.
+ *
+ * This function should be used to deallocate the memory used by a call to
+ * protobuf_c_message_unpack().
+ *
+ * \param message
+ * The message object to free. May be NULL.
+ * \param allocator
+ * `ProtobufCAllocator` to use for memory deallocation. May be NULL to
+ * specify the default allocator.
+ */
+PROTOBUF_C__API
+void
+protobuf_c_message_free_unpacked(
+ ProtobufCMessage *message,
+ ProtobufCAllocator *allocator);
+
+/**
+ * Check the validity of a message object.
+ *
+ * Makes sure all required fields (`PROTOBUF_C_LABEL_REQUIRED`) are present.
+ * Recursively checks nested messages.
+ *
+ * \retval TRUE
+ * Message is valid.
+ * \retval FALSE
+ * Message is invalid.
+ */
+PROTOBUF_C__API
+protobuf_c_boolean
+protobuf_c_message_check(const ProtobufCMessage *);
+
+/** Message initialiser. */
+#define PROTOBUF_C_MESSAGE_INIT(descriptor) { descriptor, 0, NULL }
+
+/**
+ * Initialise a message object from a message descriptor.
+ *
+ * \param descriptor
+ * Message descriptor.
+ * \param message
+ * Allocated block of memory of size `descriptor->sizeof_message`.
+ */
+PROTOBUF_C__API
+void
+protobuf_c_message_init(
+ const ProtobufCMessageDescriptor *descriptor,
+ void *message);
+
+/**
+ * Free a service.
+ *
+ * \param service
+ * The service object to free.
+ */
+PROTOBUF_C__API
+void
+protobuf_c_service_destroy(ProtobufCService *service);
+
+/**
+ * Look up a `ProtobufCMethodDescriptor` by name.
+ *
+ * \param desc
+ * Service descriptor.
+ * \param name
+ * Name of the method.
+ *
+ * \return
+ * A `ProtobufCMethodDescriptor` object.
+ * \retval NULL
+ * If not found or if the optimize_for = CODE_SIZE option was set.
+ */
+PROTOBUF_C__API
+const ProtobufCMethodDescriptor *
+protobuf_c_service_descriptor_get_method_by_name(
+ const ProtobufCServiceDescriptor *desc,
+ const char *name);
+
+/**
+ * Initialise a `ProtobufCBufferSimple` object.
+ */
+#define PROTOBUF_C_BUFFER_SIMPLE_INIT(array_of_bytes) \
+{ \
+ { protobuf_c_buffer_simple_append }, \
+ sizeof(array_of_bytes), \
+ 0, \
+ (array_of_bytes), \
+ 0, \
+ NULL \
+}
+
+/**
+ * Clear a `ProtobufCBufferSimple` object, freeing any allocated memory.
+ */
+#define PROTOBUF_C_BUFFER_SIMPLE_CLEAR(simp_buf) \
+do { \
+ if ((simp_buf)->must_free_data) { \
+ if ((simp_buf)->allocator != NULL) \
+ (simp_buf)->allocator->free( \
+ (simp_buf)->allocator, \
+ (simp_buf)->data); \
+ else \
+ free((simp_buf)->data); \
+ } \
+} while (0)
+
+/**
+ * The `append` method for `ProtobufCBufferSimple`.
+ *
+ * \param buffer
+ * The buffer object to append to. Must actually be a
+ * `ProtobufCBufferSimple` object.
+ * \param len
+ * Number of bytes in `data`.
+ * \param data
+ * Data to append.
+ */
+PROTOBUF_C__API
+void
+protobuf_c_buffer_simple_append(
+ ProtobufCBuffer *buffer,
+ size_t len,
+ const unsigned char *data);
+
+PROTOBUF_C__API
+void
+protobuf_c_service_generated_init(
+ ProtobufCService *service,
+ const ProtobufCServiceDescriptor *descriptor,
+ ProtobufCServiceDestroy destroy);
+
+PROTOBUF_C__API
+void
+protobuf_c_service_invoke_internal(
+ ProtobufCService *service,
+ unsigned method_index,
+ const ProtobufCMessage *input,
+ ProtobufCClosure closure,
+ void *closure_data);
+
+/**@}*/
+
+PROTOBUF_C__END_DECLS
+
+#endif /* PROTOBUF_C_H */