aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Code_Composer
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Code_Composer')
-rw-r--r--Software/Code_Composer/twine_usblib_demo/.cproject3
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ColorSpace.pb-c.c4
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ColorSpace.pb-c.h2
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ConversionInput.pb-c.c32
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ConversionInput.pb-c.h6
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/LiquidType.pb-c.c16
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/LiquidType.pb-c.h4
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Common/MessageType.pb-c.c114
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Common/MessageType.pb-c.h16
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogCategory.pb-c.c43
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogCategory.pb-c.h46
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogRequest.pb-c.c72
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogRequest.pb-c.h70
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogResponse.pb-c.c157
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogResponse.pb-c.h81
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DataFileFrame.pb-c.c19
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DataFileFrame.pb-c.h4
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DiagnosticsMonitors.pb-c.c547
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DiagnosticsMonitors.pb-c.h143
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/Event.pb-c.c105
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/Event.pb-c.h74
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/EventType.pb-c.c101
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/EventType.pb-c.h75
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsRequest.pb-c.c56
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsRequest.pb-c.h8
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsResponse.pb-c.c183
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsResponse.pb-c.h35
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/SetComponentValueRequest.pb-c.c105
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/SetComponentValueRequest.pb-c.h75
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/SetComponentValueResponse.pb-c.c72
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/SetComponentValueResponse.pb-c.h70
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/ValueComponent.pb-c.c37
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/ValueComponent.pb-c.h43
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/ValueComponentState.pb-c.c105
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/ValueComponentState.pb-c.h75
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/AnalyzeInput.pb-c.c92
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/AnalyzeInput.pb-c.h71
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/AnalyzeOutput.pb-c.c92
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/AnalyzeOutput.pb-c.h72
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/ConvertFileInput.pb-c.c105
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/ConvertFileInput.pb-c.h72
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/ConvertFileOutput.pb-c.c92
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/ConvertFileOutput.pb-c.h72
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/EmbroideryFile.pb-c.c170
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/EmbroideryFile.pb-c.h84
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/Extents.pb-c.c131
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/Extents.pb-c.h78
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/Stitch.pb-c.c196
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/Stitch.pb-c.h89
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/StitchColor.pb-c.c118
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/StitchColor.pb-c.h76
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/StitchFlag.pb-c.c45
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/StitchFlag.pb-c.h47
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareConfiguration.pb-c.c144
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareConfiguration.pb-c.h85
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancer.pb-c.c144
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancer.pb-c.h81
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancerType.pb-c.c39
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancerType.pb-c.h44
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDispenser.pb-c.c274
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDispenser.pb-c.h101
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDispenserType.pb-c.c35
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDispenserType.pb-c.h42
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotor.pb-c.c274
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotor.pb-c.h101
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotorType.pb-c.c91
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotorType.pb-c.h70
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControl.pb-c.c274
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControl.pb-c.h101
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControlType.pb-c.c61
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControlType.pb-c.h55
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareWinder.pb-c.c105
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareWinder.pb-c.h75
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareWinderType.pb-c.c35
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareWinderType.pb-c.h42
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/UploadHardwareConfigurationRequest.pb-c.c92
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/UploadHardwareConfigurationRequest.pb-c.h72
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/UploadHardwareConfigurationResponse.pb-c.c72
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Hardware/UploadHardwareConfigurationResponse.pb-c.h70
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/DispenserLiquidType.pb-c.c47
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/DispenserLiquidType.pb-c.h48
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/DispenserStepDivision.pb-c.c51
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/DispenserStepDivision.pb-c.h50
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobBrushStop.pb-c.c131
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobBrushStop.pb-c.h79
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobDispenser.pb-c.c196
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobDispenser.pb-c.h90
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobRequest.pb-c.c23
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobRequest.pb-c.h3
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSegment.pb-c.c19
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSegment.pb-c.h5
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSpool.pb-c.c170
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSpool.pb-c.h85
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSpoolType.pb-c.c35
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSpoolType.pb-c.h42
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobTicket.pb-c.c23
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobTicket.pb-c.h4
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/ProcessParameters.pb-c.c108
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/ProcessParameters.pb-c.h37
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/UploadProcessParametersRequest.pb-c.c92
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/UploadProcessParametersRequest.pb-c.h72
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/UploadProcessParametersResponse.pb-c.c72
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Printing/UploadProcessParametersResponse.pb-c.h70
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestPollRequest.pb-c.c72
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestPollRequest.pb-c.h70
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestPollResponse.pb-c.c170
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestPollResponse.pb-c.h87
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestRequest.pb-c.c131
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestRequest.pb-c.h77
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestResponse.pb-c.c170
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestResponse.pb-c.h87
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubMotorRequest.pb-c.c131
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubMotorRequest.pb-c.h78
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubMotorResponse.pb-c.c105
-rw-r--r--Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubMotorResponse.pb-c.h74
-rw-r--r--Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Container.c4
-rw-r--r--Software/Code_Composer/twine_usblib_demo/Stubs_Handler/DataDef.h5
-rw-r--r--Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_FPGAReadVersion.c8
-rw-r--r--Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.c76
-rw-r--r--Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.h3
-rw-r--r--Software/Code_Composer/twine_usblib_demo/drivers/Danser_SSI/SSI_Comm.c180
-rw-r--r--Software/Code_Composer/twine_usblib_demo/drivers/Danser_SSI/SSI_Comm.h4
-rw-r--r--Software/Code_Composer/twine_usblib_demo/drivers/FPGA/FPGA.c6
-rw-r--r--Software/Code_Composer/twine_usblib_demo/drivers/SPI/SPI_Comm.c32
-rw-r--r--Software/Code_Composer/twine_usblib_demo/drivers/SPI/SPI_Comm.h3
-rw-r--r--Software/Code_Composer/twine_usblib_demo/main.c8
126 files changed, 9598 insertions, 414 deletions
diff --git a/Software/Code_Composer/twine_usblib_demo/.cproject b/Software/Code_Composer/twine_usblib_demo/.cproject
index b1256533d..2f078e38b 100644
--- a/Software/Code_Composer/twine_usblib_demo/.cproject
+++ b/Software/Code_Composer/twine_usblib_demo/.cproject
@@ -123,6 +123,9 @@
</tool>
</toolChain>
</folderInfo>
+ <sourceEntries>
+ <entry excluding="PMR/Stubs/StubHeatingTestResponse.pb-c.c|PMR/Stubs/StubHeatingTestRequest.pb-c.c|PMR/Stubs/StubHeatingTestPollResponse.pb-c.c|PMR/Stubs/StubHeatingTestPollRequest.pb-c.c" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
+ </sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ColorSpace.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ColorSpace.pb-c.c
index 663c73262..23f827f18 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ColorSpace.pb-c.c
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ColorSpace.pb-c.c
@@ -13,7 +13,7 @@ static const ProtobufCEnumValue color_space__enum_values_by_number[5] =
{ "RGB", "COLOR_SPACE__RGB", 1 },
{ "CMYK", "COLOR_SPACE__CMYK", 2 },
{ "LAB", "COLOR_SPACE__LAB", 3 },
- { "Panton", "COLOR_SPACE__Panton", 4 },
+ { "PANTON", "COLOR_SPACE__PANTON", 4 },
};
static const ProtobufCIntRange color_space__value_ranges[] = {
{0, 0},{0, 5}
@@ -22,7 +22,7 @@ static const ProtobufCEnumValueIndex color_space__enum_values_by_name[5] =
{
{ "CMYK", 2 },
{ "LAB", 3 },
- { "Panton", 4 },
+ { "PANTON", 4 },
{ "RGB", 1 },
{ "Volume", 0 },
};
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ColorSpace.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ColorSpace.pb-c.h
index 70d386e0c..2f25ef087 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ColorSpace.pb-c.h
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ColorSpace.pb-c.h
@@ -24,7 +24,7 @@ typedef enum _ColorSpace {
COLOR_SPACE__RGB = 1,
COLOR_SPACE__CMYK = 2,
COLOR_SPACE__LAB = 3,
- COLOR_SPACE__Panton = 4
+ COLOR_SPACE__PANTON = 4
PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(COLOR_SPACE)
} ColorSpace;
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ConversionInput.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ConversionInput.pb-c.c
index a6221c8ba..46b4b2f54 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ConversionInput.pb-c.c
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ConversionInput.pb-c.c
@@ -52,7 +52,7 @@ void conversion_input__free_unpacked
assert(message->base.descriptor == &conversion_input__descriptor);
protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
-static const ProtobufCFieldDescriptor conversion_input__field_descriptors[8] =
+static const ProtobufCFieldDescriptor conversion_input__field_descriptors[10] =
{
{
"ThreadL",
@@ -150,9 +150,35 @@ static const ProtobufCFieldDescriptor conversion_input__field_descriptors[8] =
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 */
@@ -164,7 +190,7 @@ static const unsigned conversion_input__field_indices_by_name[] = {
static const ProtobufCIntRange conversion_input__number_ranges[1 + 1] =
{
{ 1, 0 },
- { 0, 8 }
+ { 0, 10 }
};
const ProtobufCMessageDescriptor conversion_input__descriptor =
{
@@ -174,7 +200,7 @@ const ProtobufCMessageDescriptor conversion_input__descriptor =
"ConversionInput",
"",
sizeof(ConversionInput),
- 8,
+ 10,
conversion_input__field_descriptors,
conversion_input__field_indices_by_name,
1, conversion_input__number_ranges,
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ConversionInput.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ConversionInput.pb-c.h
index 6b929033a..4184f6551 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ConversionInput.pb-c.h
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/ConversionInput.pb-c.h
@@ -43,10 +43,14 @@ struct _ConversionInput
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, 0, 0, 0, COLOR_SPACE__Volume, NULL, 0, {0,NULL}, 0, {0,NULL}, 0, 0, 0, 0, 0, 0 }
/* ConversionInput methods */
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/LiquidType.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/LiquidType.pb-c.c
index 10b061dd6..d1bc8c432 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/LiquidType.pb-c.c
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/LiquidType.pb-c.c
@@ -7,22 +7,26 @@
#endif
#include "LiquidType.pb-c.h"
-static const ProtobufCEnumValue liquid_type__enum_values_by_number[5] =
+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},{0, 5}
+{0, 0},{7, 6},{0, 7}
};
-static const ProtobufCEnumValueIndex liquid_type__enum_values_by_name[5] =
+static const ProtobufCEnumValueIndex liquid_type__enum_values_by_name[7] =
{
{ "Black", 3 },
{ "Cyan", 0 },
+ { "Lubricant", 5 },
{ "Magenta", 1 },
+ { "Red", 6 },
{ "TransparentInk", 4 },
{ "Yellow", 2 },
};
@@ -33,11 +37,11 @@ const ProtobufCEnumDescriptor liquid_type__descriptor =
"LiquidType",
"LiquidType",
"",
- 5,
+ 7,
liquid_type__enum_values_by_number,
- 5,
+ 7,
liquid_type__enum_values_by_name,
- 1,
+ 2,
liquid_type__value_ranges,
NULL,NULL,NULL,NULL /* reserved[1234] */
};
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/LiquidType.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/LiquidType.pb-c.h
index 3559cc09c..19f99411c 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/LiquidType.pb-c.h
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/ColorLab/LiquidType.pb-c.h
@@ -24,7 +24,9 @@ typedef enum _LiquidType {
LIQUID_TYPE__Magenta = 1,
LIQUID_TYPE__Yellow = 2,
LIQUID_TYPE__Black = 3,
- LIQUID_TYPE__TransparentInk = 4
+ LIQUID_TYPE__TransparentInk = 4,
+ LIQUID_TYPE__Lubricant = 5,
+ LIQUID_TYPE__Red = 7
PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(LIQUID_TYPE)
} LiquidType;
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Common/MessageType.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Common/MessageType.pb-c.c
index f0d133007..78ba96d77 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Common/MessageType.pb-c.c
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Common/MessageType.pb-c.c
@@ -7,7 +7,7 @@
#endif
#include "MessageType.pb-c.h"
-static const ProtobufCEnumValue message_type__enum_values_by_number[96] =
+static const ProtobufCEnumValue message_type__enum_values_by_number[110] =
{
{ "None", "MESSAGE_TYPE__None", 0 },
{ "CalculateRequest", "MESSAGE_TYPE__CalculateRequest", 3 },
@@ -68,6 +68,12 @@ static const ProtobufCEnumValue message_type__enum_values_by_number[96] =
{ "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 },
{ "ExternalBridgeUdpDiscoveryPacket", "MESSAGE_TYPE__ExternalBridgeUdpDiscoveryPacket", 1000 },
{ "ExternalClientLoginRequest", "MESSAGE_TYPE__ExternalClientLoginRequest", 1001 },
{ "ExternalClientLoginResponse", "MESSAGE_TYPE__ExternalClientLoginResponse", 1002 },
@@ -101,54 +107,66 @@ static const ProtobufCEnumValue message_type__enum_values_by_number[96] =
{ "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 },
{ "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 },
+ { "DebugLogRequest", "MESSAGE_TYPE__DebugLogRequest", 4000 },
+ { "DebugLogResponse", "MESSAGE_TYPE__DebugLogResponse", 4001 },
+ { "UploadHardwareConfigurationRequest", "MESSAGE_TYPE__UploadHardwareConfigurationRequest", 5000 },
+ { "UploadHardwareConfigurationResponse", "MESSAGE_TYPE__UploadHardwareConfigurationResponse", 5001 },
};
static const ProtobufCIntRange message_type__value_ranges[] = {
-{0, 0},{3, 1},{1000, 59},{2000, 68},{3000, 92},{0, 96}
+{0, 0},{3, 1},{1000, 65},{2000, 74},{3000, 100},{4000, 106},{5000, 108},{0, 110}
};
-static const ProtobufCEnumValueIndex message_type__enum_values_by_name[96] =
+static const ProtobufCEnumValueIndex message_type__enum_values_by_name[110] =
{
- { "AbortJobRequest", 94 },
- { "AbortJobResponse", 95 },
+ { "AbortJobRequest", 102 },
+ { "AbortJobResponse", 103 },
{ "CalculateRequest", 1 },
{ "CalculateResponse", 2 },
- { "DirectSynchronizationRequest", 62 },
- { "DirectSynchronizationResponse", 63 },
- { "DispenserAbortHomingRequest", 78 },
- { "DispenserAbortHomingResponse", 79 },
- { "DispenserAbortJoggingRequest", 84 },
- { "DispenserAbortJoggingResponse", 85 },
- { "DispenserHomingRequest", 80 },
- { "DispenserHomingResponse", 81 },
- { "DispenserJoggingRequest", 82 },
- { "DispenserJoggingResponse", 83 },
- { "ExternalBridgeUdpDiscoveryPacket", 59 },
- { "ExternalClientLoginRequest", 60 },
- { "ExternalClientLoginResponse", 61 },
- { "JobRequest", 92 },
- { "JobResponse", 93 },
- { "KeepAliveRequest", 66 },
- { "KeepAliveResponse", 67 },
- { "MotorAbortHomingRequest", 70 },
- { "MotorAbortHomingResponse", 71 },
- { "MotorAbortJoggingRequest", 76 },
- { "MotorAbortJoggingResponse", 77 },
- { "MotorHomingRequest", 72 },
- { "MotorHomingResponse", 73 },
- { "MotorJoggingRequest", 74 },
- { "MotorJoggingResponse", 75 },
+ { "DebugLogRequest", 106 },
+ { "DebugLogResponse", 107 },
+ { "DirectSynchronizationRequest", 68 },
+ { "DirectSynchronizationResponse", 69 },
+ { "DispenserAbortHomingRequest", 84 },
+ { "DispenserAbortHomingResponse", 85 },
+ { "DispenserAbortJoggingRequest", 90 },
+ { "DispenserAbortJoggingResponse", 91 },
+ { "DispenserHomingRequest", 86 },
+ { "DispenserHomingResponse", 87 },
+ { "DispenserJoggingRequest", 88 },
+ { "DispenserJoggingResponse", 89 },
+ { "ExternalBridgeUdpDiscoveryPacket", 65 },
+ { "ExternalClientLoginRequest", 66 },
+ { "ExternalClientLoginResponse", 67 },
+ { "JobRequest", 100 },
+ { "JobResponse", 101 },
+ { "KeepAliveRequest", 72 },
+ { "KeepAliveResponse", 73 },
+ { "MotorAbortHomingRequest", 76 },
+ { "MotorAbortHomingResponse", 77 },
+ { "MotorAbortJoggingRequest", 82 },
+ { "MotorAbortJoggingResponse", 83 },
+ { "MotorHomingRequest", 78 },
+ { "MotorHomingResponse", 79 },
+ { "MotorJoggingRequest", 80 },
+ { "MotorJoggingResponse", 81 },
{ "None", 0 },
- { "OverrideDataBaseRequest", 64 },
- { "OverrideDataBaseResponse", 65 },
+ { "OverrideDataBaseRequest", 70 },
+ { "OverrideDataBaseResponse", 71 },
{ "ProgressRequest", 3 },
{ "ProgressResponse", 4 },
- { "PushDiagnosticsRequest", 68 },
- { "PushDiagnosticsResponse", 69 },
- { "SetDigitalOutRequest", 86 },
- { "SetDigitalOutResponse", 87 },
+ { "PushDiagnosticsRequest", 74 },
+ { "PushDiagnosticsResponse", 75 },
+ { "SetComponentValueRequest", 98 },
+ { "SetComponentValueResponse", 99 },
+ { "SetDigitalOutRequest", 92 },
+ { "SetDigitalOutResponse", 93 },
{ "StubCartridgeReadRequest", 5 },
{ "StubCartridgeReadResponse", 6 },
{ "StubCartridgeWriteRequest", 7 },
@@ -179,6 +197,10 @@ static const ProtobufCEnumValueIndex message_type__enum_values_by_name[96] =
{ "StubHWVersionResponse", 56 },
{ "StubHeaterRequest", 21 },
{ "StubHeaterResponse", 22 },
+ { "StubHeatingTestPollRequest", 61 },
+ { "StubHeatingTestPollResponse", 62 },
+ { "StubHeatingTestRequest", 59 },
+ { "StubHeatingTestResponse", 60 },
{ "StubL6470DriverRequest", 39 },
{ "StubL6470DriverResponse", 40 },
{ "StubMotorEncoderRequest", 23 },
@@ -189,6 +211,8 @@ static const ProtobufCEnumValueIndex message_type__enum_values_by_name[96] =
{ "StubMotorMovResponse", 50 },
{ "StubMotorPositionRequest", 53 },
{ "StubMotorPositionResponse", 54 },
+ { "StubMotorRequest", 63 },
+ { "StubMotorResponse", 64 },
{ "StubMotorRunRequest", 43 },
{ "StubMotorRunResponse", 44 },
{ "StubMotorSpeedRequest", 51 },
@@ -203,10 +227,14 @@ static const ProtobufCEnumValueIndex message_type__enum_values_by_name[96] =
{ "StubSteperMotorResponse", 28 },
{ "StubValveRequest", 29 },
{ "StubValveResponse", 30 },
- { "ThreadAbortJoggingRequest", 90 },
- { "ThreadAbortJoggingResponse", 91 },
- { "ThreadJoggingRequest", 88 },
- { "ThreadJoggingResponse", 89 },
+ { "ThreadAbortJoggingRequest", 96 },
+ { "ThreadAbortJoggingResponse", 97 },
+ { "ThreadJoggingRequest", 94 },
+ { "ThreadJoggingResponse", 95 },
+ { "UploadHardwareConfigurationRequest", 108 },
+ { "UploadHardwareConfigurationResponse", 109 },
+ { "UploadProcessParametersRequest", 104 },
+ { "UploadProcessParametersResponse", 105 },
};
const ProtobufCEnumDescriptor message_type__descriptor =
{
@@ -215,11 +243,11 @@ const ProtobufCEnumDescriptor message_type__descriptor =
"MessageType",
"MessageType",
"",
- 96,
+ 110,
message_type__enum_values_by_number,
- 96,
+ 110,
message_type__enum_values_by_name,
- 5,
+ 7,
message_type__value_ranges,
NULL,NULL,NULL,NULL /* reserved[1234] */
};
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Common/MessageType.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Common/MessageType.pb-c.h
index ccae52dd8..fdc8f18ba 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Common/MessageType.pb-c.h
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Common/MessageType.pb-c.h
@@ -79,6 +79,12 @@ typedef enum _MessageType {
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__ExternalBridgeUdpDiscoveryPacket = 1000,
MESSAGE_TYPE__ExternalClientLoginRequest = 1001,
MESSAGE_TYPE__ExternalClientLoginResponse = 1002,
@@ -112,10 +118,18 @@ typedef enum _MessageType {
MESSAGE_TYPE__ThreadJoggingResponse = 2021,
MESSAGE_TYPE__ThreadAbortJoggingRequest = 2022,
MESSAGE_TYPE__ThreadAbortJoggingResponse = 2023,
+ MESSAGE_TYPE__SetComponentValueRequest = 2024,
+ MESSAGE_TYPE__SetComponentValueResponse = 2025,
MESSAGE_TYPE__JobRequest = 3000,
MESSAGE_TYPE__JobResponse = 3001,
MESSAGE_TYPE__AbortJobRequest = 3002,
- MESSAGE_TYPE__AbortJobResponse = 3003
+ MESSAGE_TYPE__AbortJobResponse = 3003,
+ MESSAGE_TYPE__UploadProcessParametersRequest = 3004,
+ MESSAGE_TYPE__UploadProcessParametersResponse = 3005,
+ MESSAGE_TYPE__DebugLogRequest = 4000,
+ MESSAGE_TYPE__DebugLogResponse = 4001,
+ MESSAGE_TYPE__UploadHardwareConfigurationRequest = 5000,
+ MESSAGE_TYPE__UploadHardwareConfigurationResponse = 5001
PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(MESSAGE_TYPE)
} MessageType;
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogCategory.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogCategory.pb-c.c
new file mode 100644
index 000000000..ebb901ba8
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogCategory.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogCategory.pb-c.h
new file mode 100644
index 000000000..d97b42d33
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogRequest.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogRequest.pb-c.c
new file mode 100644
index 000000000..e8faeddcb
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogRequest.pb-c.c
@@ -0,0 +1,72 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DebugLogRequest.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DebugLogRequest.pb-c.h"
+void debug_log_request__init
+ (DebugLogRequest *message)
+{
+ static const DebugLogRequest init_value = DEBUG_LOG_REQUEST__INIT;
+ *message = init_value;
+}
+size_t debug_log_request__get_packed_size
+ (const DebugLogRequest *message)
+{
+ assert(message->base.descriptor == &debug_log_request__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t debug_log_request__pack
+ (const DebugLogRequest *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &debug_log_request__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t debug_log_request__pack_to_buffer
+ (const DebugLogRequest *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &debug_log_request__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DebugLogRequest *
+ debug_log_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DebugLogRequest *)
+ protobuf_c_message_unpack (&debug_log_request__descriptor,
+ allocator, len, data);
+}
+void debug_log_request__free_unpacked
+ (DebugLogRequest *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &debug_log_request__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+#define debug_log_request__field_descriptors NULL
+#define debug_log_request__field_indices_by_name NULL
+#define debug_log_request__number_ranges NULL
+const ProtobufCMessageDescriptor debug_log_request__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DebugLogRequest",
+ "DebugLogRequest",
+ "DebugLogRequest",
+ "",
+ sizeof(DebugLogRequest),
+ 0,
+ debug_log_request__field_descriptors,
+ debug_log_request__field_indices_by_name,
+ 0, debug_log_request__number_ranges,
+ (ProtobufCMessageInit) debug_log_request__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogRequest.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogRequest.pb-c.h
new file mode 100644
index 000000000..2507b3068
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogRequest.pb-c.h
@@ -0,0 +1,70 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DebugLogRequest.proto */
+
+#ifndef PROTOBUF_C_DebugLogRequest_2eproto__INCLUDED
+#define PROTOBUF_C_DebugLogRequest_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 _DebugLogRequest DebugLogRequest;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DebugLogRequest
+{
+ ProtobufCMessage base;
+};
+#define DEBUG_LOG_REQUEST__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&debug_log_request__descriptor) \
+ }
+
+
+/* DebugLogRequest methods */
+void debug_log_request__init
+ (DebugLogRequest *message);
+size_t debug_log_request__get_packed_size
+ (const DebugLogRequest *message);
+size_t debug_log_request__pack
+ (const DebugLogRequest *message,
+ uint8_t *out);
+size_t debug_log_request__pack_to_buffer
+ (const DebugLogRequest *message,
+ ProtobufCBuffer *buffer);
+DebugLogRequest *
+ debug_log_request__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void debug_log_request__free_unpacked
+ (DebugLogRequest *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DebugLogRequest_Closure)
+ (const DebugLogRequest *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor debug_log_request__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DebugLogRequest_2eproto__INCLUDED */
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogResponse.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogResponse.pb-c.c
new file mode 100644
index 000000000..36e08e981
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogResponse.pb-c.c
@@ -0,0 +1,157 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DebugLogResponse.proto */
+
+/* Do not generate deprecated warnings for self */
+#ifndef PROTOBUF_C__NO_DEPRECATED
+#define PROTOBUF_C__NO_DEPRECATED
+#endif
+
+#include "DebugLogResponse.pb-c.h"
+void debug_log_response__init
+ (DebugLogResponse *message)
+{
+ static const DebugLogResponse init_value = DEBUG_LOG_RESPONSE__INIT;
+ *message = init_value;
+}
+size_t debug_log_response__get_packed_size
+ (const DebugLogResponse *message)
+{
+ assert(message->base.descriptor == &debug_log_response__descriptor);
+ return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
+}
+size_t debug_log_response__pack
+ (const DebugLogResponse *message,
+ uint8_t *out)
+{
+ assert(message->base.descriptor == &debug_log_response__descriptor);
+ return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
+}
+size_t debug_log_response__pack_to_buffer
+ (const DebugLogResponse *message,
+ ProtobufCBuffer *buffer)
+{
+ assert(message->base.descriptor == &debug_log_response__descriptor);
+ return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
+}
+DebugLogResponse *
+ debug_log_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data)
+{
+ return (DebugLogResponse *)
+ protobuf_c_message_unpack (&debug_log_response__descriptor,
+ allocator, len, data);
+}
+void debug_log_response__free_unpacked
+ (DebugLogResponse *message,
+ ProtobufCAllocator *allocator)
+{
+ if(!message)
+ return;
+ assert(message->base.descriptor == &debug_log_response__descriptor);
+ protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
+}
+static const ProtobufCFieldDescriptor debug_log_response__field_descriptors[6] =
+{
+ {
+ "Category",
+ 1,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_ENUM,
+ offsetof(DebugLogResponse, has_category),
+ offsetof(DebugLogResponse, 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(DebugLogResponse, filename),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "LineNumber",
+ 3,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(DebugLogResponse, has_linenumber),
+ offsetof(DebugLogResponse, linenumber),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Filter",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(DebugLogResponse, has_filter),
+ offsetof(DebugLogResponse, 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(DebugLogResponse, message),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ModuleId",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_UINT32,
+ offsetof(DebugLogResponse, has_moduleid),
+ offsetof(DebugLogResponse, moduleid),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned 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 debug_log_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 6 }
+};
+const ProtobufCMessageDescriptor debug_log_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "DebugLogResponse",
+ "DebugLogResponse",
+ "DebugLogResponse",
+ "",
+ sizeof(DebugLogResponse),
+ 6,
+ debug_log_response__field_descriptors,
+ debug_log_response__field_indices_by_name,
+ 1, debug_log_response__number_ranges,
+ (ProtobufCMessageInit) debug_log_response__init,
+ NULL,NULL,NULL /* reserved[123] */
+};
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogResponse.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogResponse.pb-c.h
new file mode 100644
index 000000000..414c07188
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Debugging/DebugLogResponse.pb-c.h
@@ -0,0 +1,81 @@
+/* Generated by the protocol buffer compiler. DO NOT EDIT! */
+/* Generated from: DebugLogResponse.proto */
+
+#ifndef PROTOBUF_C_DebugLogResponse_2eproto__INCLUDED
+#define PROTOBUF_C_DebugLogResponse_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 _DebugLogResponse DebugLogResponse;
+
+
+/* --- enums --- */
+
+
+/* --- messages --- */
+
+struct _DebugLogResponse
+{
+ 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 DEBUG_LOG_RESPONSE__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&debug_log_response__descriptor) \
+ , 0, DEBUG_LOG_CATEGORY__Info, NULL, 0, 0, 0, 0, NULL, 0, 0 }
+
+
+/* DebugLogResponse methods */
+void debug_log_response__init
+ (DebugLogResponse *message);
+size_t debug_log_response__get_packed_size
+ (const DebugLogResponse *message);
+size_t debug_log_response__pack
+ (const DebugLogResponse *message,
+ uint8_t *out);
+size_t debug_log_response__pack_to_buffer
+ (const DebugLogResponse *message,
+ ProtobufCBuffer *buffer);
+DebugLogResponse *
+ debug_log_response__unpack
+ (ProtobufCAllocator *allocator,
+ size_t len,
+ const uint8_t *data);
+void debug_log_response__free_unpacked
+ (DebugLogResponse *message,
+ ProtobufCAllocator *allocator);
+/* --- per-message closures --- */
+
+typedef void (*DebugLogResponse_Closure)
+ (const DebugLogResponse *message,
+ void *closure_data);
+
+/* --- services --- */
+
+
+/* --- descriptors --- */
+
+extern const ProtobufCMessageDescriptor debug_log_response__descriptor;
+
+PROTOBUF_C__END_DECLS
+
+
+#endif /* PROTOBUF_C_DebugLogResponse_2eproto__INCLUDED */
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DataFileFrame.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DataFileFrame.pb-c.c
index e50aa5c2c..d4f4ff5cf 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DataFileFrame.pb-c.c
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DataFileFrame.pb-c.c
@@ -52,7 +52,7 @@ void data_file_frame__free_unpacked
assert(message->base.descriptor == &data_file_frame__descriptor);
protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
-static const ProtobufCFieldDescriptor data_file_frame__field_descriptors[2] =
+static const ProtobufCFieldDescriptor data_file_frame__field_descriptors[3] =
{
{
"Milliseconds",
@@ -78,15 +78,28 @@ static const ProtobufCFieldDescriptor data_file_frame__field_descriptors[2] =
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] = PushDiagnosticsResponse */
+ 2, /* field[2] = VideoFrames */
};
static const ProtobufCIntRange data_file_frame__number_ranges[1 + 1] =
{
{ 1, 0 },
- { 0, 2 }
+ { 0, 3 }
};
const ProtobufCMessageDescriptor data_file_frame__descriptor =
{
@@ -96,7 +109,7 @@ const ProtobufCMessageDescriptor data_file_frame__descriptor =
"DataFileFrame",
"",
sizeof(DataFileFrame),
- 2,
+ 3,
data_file_frame__field_descriptors,
data_file_frame__field_indices_by_name,
1, data_file_frame__number_ranges,
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DataFileFrame.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DataFileFrame.pb-c.h
index 9ad0da792..9e9c9af48 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DataFileFrame.pb-c.h
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DataFileFrame.pb-c.h
@@ -30,10 +30,12 @@ struct _DataFileFrame
protobuf_c_boolean has_milliseconds;
int32_t milliseconds;
PushDiagnosticsResponse *pushdiagnosticsresponse;
+ size_t n_videoframes;
+ ProtobufCBinaryData *videoframes;
};
#define DATA_FILE_FRAME__INIT \
{ PROTOBUF_C_MESSAGE_INIT (&data_file_frame__descriptor) \
- , 0, 0, NULL }
+ , 0, 0, NULL, 0,NULL }
/* DataFileFrame methods */
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DiagnosticsMonitors.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DiagnosticsMonitors.pb-c.c
new file mode 100644
index 000000000..35bbafdd9
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DiagnosticsMonitors.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DiagnosticsMonitors.pb-c.h
new file mode 100644
index 000000000..2de77dc8f
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/DiagnosticsMonitors.pb-c.h
@@ -0,0 +1,143 @@
+/* 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;
+ size_t n_dancer1angle;
+ double *dancer1angle;
+ size_t n_dancer2angle;
+ double *dancer2angle;
+ size_t n_dancer3angle;
+ double *dancer3angle;
+ size_t n_feedermotorfrequency;
+ double *feedermotorfrequency;
+ size_t n_dryermotor;
+ double *dryermotor;
+ size_t n_pollermotor;
+ double *pollermotor;
+ size_t n_windermotor;
+ double *windermotor;
+ size_t n_screwmotor;
+ double *screwmotor;
+ size_t n_threadspeed;
+ double *threadspeed;
+ size_t n_mixertemperature;
+ double *mixertemperature;
+ size_t n_headzone1temperature;
+ double *headzone1temperature;
+ size_t n_headzone2temperature;
+ double *headzone2temperature;
+ size_t n_headzone3temperature;
+ double *headzone3temperature;
+ size_t n_headairflow;
+ double *headairflow;
+ size_t n_feedertension;
+ double *feedertension;
+ size_t n_pullertension;
+ double *pullertension;
+ size_t n_dryerzone1temperature;
+ double *dryerzone1temperature;
+ size_t n_dryerzone2temperature;
+ double *dryerzone2temperature;
+ size_t n_dryerzone3temperature;
+ double *dryerzone3temperature;
+ size_t n_dryerairflow;
+ double *dryerairflow;
+ size_t n_windertension;
+ double *windertension;
+ size_t n_dispensersmotorsfrequency;
+ DoubleArray **dispensersmotorsfrequency;
+ size_t n_dispensersangularencoders;
+ DoubleArray **dispensersangularencoders;
+ size_t n_dispenserslinearpositions;
+ DoubleArray **dispenserslinearpositions;
+ size_t n_dispenserspressure;
+ DoubleArray **dispenserspressure;
+ size_t n_midtankpressure;
+ double *midtankpressure;
+ size_t n_filterdeltapressure;
+ double *filterdeltapressure;
+ size_t n_chillertemperature;
+ double *chillertemperature;
+ size_t n_dispenser1motorfrequency;
+ double *dispenser1motorfrequency;
+ size_t n_dispenser2motorfrequency;
+ double *dispenser2motorfrequency;
+ size_t n_dispenser3motorfrequency;
+ double *dispenser3motorfrequency;
+ size_t n_dispenser4motorfrequency;
+ double *dispenser4motorfrequency;
+ size_t n_dispenser5motorfrequency;
+ double *dispenser5motorfrequency;
+ size_t n_dispenser6motorfrequency;
+ double *dispenser6motorfrequency;
+ size_t n_dispenser7motorfrequency;
+ double *dispenser7motorfrequency;
+ 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/Code_Composer/twine_usblib_demo/PMR/Diagnostics/Event.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/Event.pb-c.c
new file mode 100644
index 000000000..df4234755
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Diagnostics/Event.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/Event.pb-c.h
new file mode 100644
index 000000000..f94e88480
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Diagnostics/EventType.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/EventType.pb-c.c
new file mode 100644
index 000000000..cf6300148
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/EventType.pb-c.c
@@ -0,0 +1,101 @@
+/* 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[34] =
+{
+ { "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", 34 },
+};
+static const ProtobufCIntRange event_type__value_ranges[] = {
+{0, 0},{34, 33},{0, 34}
+};
+static const ProtobufCEnumValueIndex event_type__enum_values_by_name[34] =
+{
+ { "AirFilterClogged", 13 },
+ { "AirFilterNotInstalled", 14 },
+ { "ApplicationException", 32 },
+ { "ApplicationInformation", 33 },
+ { "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 },
+ { "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",
+ "",
+ 34,
+ event_type__enum_values_by_number,
+ 34,
+ event_type__enum_values_by_name,
+ 2,
+ event_type__value_ranges,
+ NULL,NULL,NULL,NULL /* reserved[1234] */
+};
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/EventType.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/EventType.pb-c.h
new file mode 100644
index 000000000..0fbfc6914
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/EventType.pb-c.h
@@ -0,0 +1,75 @@
+/* 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 {
+ EVENT_TYPE__ThreadBreak = 0,
+ EVENT_TYPE__ThreadTensionControlFailure = 1,
+ EVENT_TYPE__FeederConeInsufficiant = 2,
+ EVENT_TYPE__WinderGeneralError = 3,
+ EVENT_TYPE__WinderConeNotExists = 4,
+ EVENT_TYPE__ThreadFeedingGeneralError = 5,
+ EVENT_TYPE__DyeingHeadOverTemperature = 6,
+ EVENT_TYPE__DHThermalCutoff = 7,
+ EVENT_TYPE__DryerOverTemperature = 8,
+ EVENT_TYPE__DryerThermalCutoff = 9,
+ EVENT_TYPE__DyeingHeadHeatersCurrentOutOfRange = 10,
+ EVENT_TYPE__DryerHeatersCurrentOutOfRange = 11,
+ EVENT_TYPE__DryerDHeadCoverOpen = 12,
+ EVENT_TYPE__AirFilterClogged = 13,
+ EVENT_TYPE__AirFilterNotInstalled = 14,
+ EVENT_TYPE__WHSFailure = 15,
+ EVENT_TYPE__WasteContainerIsAlmostFull = 16,
+ EVENT_TYPE__WasteContainerIsFull = 17,
+ EVENT_TYPE__DispenserEmpty = 18,
+ EVENT_TYPE__DispenserLowLevel = 19,
+ EVENT_TYPE__DispenserRefillFailure = 20,
+ EVENT_TYPE__MidTankEmpty = 21,
+ EVENT_TYPE__MidTankLowLevel = 22,
+ EVENT_TYPE__MidTankNotInPlace = 23,
+ EVENT_TYPE__SystemBITFail = 24,
+ EVENT_TYPE__GeneralInternalOverTemperature = 25,
+ EVENT_TYPE__MachineCoverOpen = 26,
+ EVENT_TYPE__EmergencyPushButtonPressed = 27,
+ EVENT_TYPE__SystemGeneralError = 28,
+ EVENT_TYPE__RequestSent = 29,
+ EVENT_TYPE__ResponseReceived = 30,
+ EVENT_TYPE__RequestFailed = 31,
+ EVENT_TYPE__ApplicationException = 32,
+ EVENT_TYPE__ApplicationInformation = 34
+ 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/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsRequest.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsRequest.pb-c.c
index 1c7790f41..ecec3830b 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsRequest.pb-c.c
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsRequest.pb-c.c
@@ -52,55 +52,9 @@ void push_diagnostics_request__free_unpacked
assert(message->base.descriptor == &push_diagnostics_request__descriptor);
protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
-static const ProtobufCFieldDescriptor push_diagnostics_request__field_descriptors[3] =
-{
- {
- "PushSensors",
- 1,
- PROTOBUF_C_LABEL_OPTIONAL,
- PROTOBUF_C_TYPE_BOOL,
- offsetof(PushDiagnosticsRequest, has_pushsensors),
- offsetof(PushDiagnosticsRequest, pushsensors),
- NULL,
- NULL,
- 0, /* flags */
- 0,NULL,NULL /* reserved1,reserved2, etc */
- },
- {
- "PushMotors",
- 2,
- PROTOBUF_C_LABEL_OPTIONAL,
- PROTOBUF_C_TYPE_BOOL,
- offsetof(PushDiagnosticsRequest, has_pushmotors),
- offsetof(PushDiagnosticsRequest, pushmotors),
- NULL,
- NULL,
- 0, /* flags */
- 0,NULL,NULL /* reserved1,reserved2, etc */
- },
- {
- "PushLogs",
- 3,
- PROTOBUF_C_LABEL_OPTIONAL,
- PROTOBUF_C_TYPE_BOOL,
- offsetof(PushDiagnosticsRequest, has_pushlogs),
- offsetof(PushDiagnosticsRequest, pushlogs),
- NULL,
- NULL,
- 0, /* flags */
- 0,NULL,NULL /* reserved1,reserved2, etc */
- },
-};
-static const unsigned push_diagnostics_request__field_indices_by_name[] = {
- 2, /* field[2] = PushLogs */
- 1, /* field[1] = PushMotors */
- 0, /* field[0] = PushSensors */
-};
-static const ProtobufCIntRange push_diagnostics_request__number_ranges[1 + 1] =
-{
- { 1, 0 },
- { 0, 3 }
-};
+#define push_diagnostics_request__field_descriptors NULL
+#define push_diagnostics_request__field_indices_by_name NULL
+#define push_diagnostics_request__number_ranges NULL
const ProtobufCMessageDescriptor push_diagnostics_request__descriptor =
{
PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
@@ -109,10 +63,10 @@ const ProtobufCMessageDescriptor push_diagnostics_request__descriptor =
"PushDiagnosticsRequest",
"",
sizeof(PushDiagnosticsRequest),
- 3,
+ 0,
push_diagnostics_request__field_descriptors,
push_diagnostics_request__field_indices_by_name,
- 1, push_diagnostics_request__number_ranges,
+ 0, push_diagnostics_request__number_ranges,
(ProtobufCMessageInit) push_diagnostics_request__init,
NULL,NULL,NULL /* reserved[123] */
};
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsRequest.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsRequest.pb-c.h
index b4e3053f0..6410f3eae 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsRequest.pb-c.h
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsRequest.pb-c.h
@@ -26,16 +26,10 @@ typedef struct _PushDiagnosticsRequest PushDiagnosticsRequest;
struct _PushDiagnosticsRequest
{
ProtobufCMessage base;
- protobuf_c_boolean has_pushsensors;
- protobuf_c_boolean pushsensors;
- protobuf_c_boolean has_pushmotors;
- protobuf_c_boolean pushmotors;
- protobuf_c_boolean has_pushlogs;
- protobuf_c_boolean pushlogs;
};
#define PUSH_DIAGNOSTICS_REQUEST__INIT \
{ PROTOBUF_C_MESSAGE_INIT (&push_diagnostics_request__descriptor) \
- , 0, 0, 0, 0, 0, 0 }
+ }
/* PushDiagnosticsRequest methods */
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsResponse.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsResponse.pb-c.c
index c34913fae..c5a7850ae 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsResponse.pb-c.c
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsResponse.pb-c.c
@@ -52,167 +52,59 @@ void push_diagnostics_response__free_unpacked
assert(message->base.descriptor == &push_diagnostics_response__descriptor);
protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
-static const ProtobufCFieldDescriptor push_diagnostics_response__field_descriptors[16] =
+static const ProtobufCFieldDescriptor push_diagnostics_response__field_descriptors[7] =
{
{
- "Dancer1Angle",
+ "Monitors",
1,
- PROTOBUF_C_LABEL_REPEATED,
- PROTOBUF_C_TYPE_DOUBLE,
- offsetof(PushDiagnosticsResponse, n_dancer1angle),
- offsetof(PushDiagnosticsResponse, dancer1angle),
- NULL,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ 0, /* quantifier_offset */
+ offsetof(PushDiagnosticsResponse, monitors),
+ &diagnostics_monitors__descriptor,
NULL,
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "Dancer2Angle",
+ "DigitalPins",
2,
PROTOBUF_C_LABEL_REPEATED,
- PROTOBUF_C_TYPE_DOUBLE,
- offsetof(PushDiagnosticsResponse, n_dancer2angle),
- offsetof(PushDiagnosticsResponse, dancer2angle),
- NULL,
+ PROTOBUF_C_TYPE_MESSAGE,
+ offsetof(PushDiagnosticsResponse, n_digitalpins),
+ offsetof(PushDiagnosticsResponse, digitalpins),
+ &digital_pin__descriptor,
NULL,
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "Dancer3Angle",
+ "ComponentsStates",
3,
PROTOBUF_C_LABEL_REPEATED,
- PROTOBUF_C_TYPE_DOUBLE,
- offsetof(PushDiagnosticsResponse, n_dancer3angle),
- offsetof(PushDiagnosticsResponse, dancer3angle),
- NULL,
- NULL,
- 0, /* flags */
- 0,NULL,NULL /* reserved1,reserved2, etc */
- },
- {
- "DispensersMotorsFrequency",
- 4,
- PROTOBUF_C_LABEL_REPEATED,
PROTOBUF_C_TYPE_MESSAGE,
- offsetof(PushDiagnosticsResponse, n_dispensersmotorsfrequency),
- offsetof(PushDiagnosticsResponse, dispensersmotorsfrequency),
- &double_array__descriptor,
- NULL,
- 0, /* flags */
- 0,NULL,NULL /* reserved1,reserved2, etc */
- },
- {
- "Dispenser1MotorFrequency",
- 5,
- PROTOBUF_C_LABEL_REPEATED,
- PROTOBUF_C_TYPE_DOUBLE,
- offsetof(PushDiagnosticsResponse, n_dispenser1motorfrequency),
- offsetof(PushDiagnosticsResponse, dispenser1motorfrequency),
- NULL,
- NULL,
- 0, /* flags */
- 0,NULL,NULL /* reserved1,reserved2, etc */
- },
- {
- "Dispenser2MotorFrequency",
- 6,
- PROTOBUF_C_LABEL_REPEATED,
- PROTOBUF_C_TYPE_DOUBLE,
- offsetof(PushDiagnosticsResponse, n_dispenser2motorfrequency),
- offsetof(PushDiagnosticsResponse, dispenser2motorfrequency),
- NULL,
- NULL,
- 0, /* flags */
- 0,NULL,NULL /* reserved1,reserved2, etc */
- },
- {
- "Dispenser3MotorFrequency",
- 7,
- PROTOBUF_C_LABEL_REPEATED,
- PROTOBUF_C_TYPE_DOUBLE,
- offsetof(PushDiagnosticsResponse, n_dispenser3motorfrequency),
- offsetof(PushDiagnosticsResponse, dispenser3motorfrequency),
- NULL,
+ offsetof(PushDiagnosticsResponse, n_componentsstates),
+ offsetof(PushDiagnosticsResponse, componentsstates),
+ &value_component_state__descriptor,
NULL,
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "Dispenser4MotorFrequency",
- 8,
- PROTOBUF_C_LABEL_REPEATED,
- PROTOBUF_C_TYPE_DOUBLE,
- offsetof(PushDiagnosticsResponse, n_dispenser4motorfrequency),
- offsetof(PushDiagnosticsResponse, dispenser4motorfrequency),
- NULL,
- NULL,
- 0, /* flags */
- 0,NULL,NULL /* reserved1,reserved2, etc */
- },
- {
- "Dispenser5MotorFrequency",
- 9,
- PROTOBUF_C_LABEL_REPEATED,
- PROTOBUF_C_TYPE_DOUBLE,
- offsetof(PushDiagnosticsResponse, n_dispenser5motorfrequency),
- offsetof(PushDiagnosticsResponse, dispenser5motorfrequency),
- NULL,
- NULL,
- 0, /* flags */
- 0,NULL,NULL /* reserved1,reserved2, etc */
- },
- {
- "Dispenser6MotorFrequency",
- 10,
- PROTOBUF_C_LABEL_REPEATED,
- PROTOBUF_C_TYPE_DOUBLE,
- offsetof(PushDiagnosticsResponse, n_dispenser6motorfrequency),
- offsetof(PushDiagnosticsResponse, dispenser6motorfrequency),
- NULL,
- NULL,
- 0, /* flags */
- 0,NULL,NULL /* reserved1,reserved2, etc */
- },
- {
- "Dispenser7MotorFrequency",
- 11,
- PROTOBUF_C_LABEL_REPEATED,
- PROTOBUF_C_TYPE_DOUBLE,
- offsetof(PushDiagnosticsResponse, n_dispenser7motorfrequency),
- offsetof(PushDiagnosticsResponse, dispenser7motorfrequency),
- NULL,
- NULL,
- 0, /* flags */
- 0,NULL,NULL /* reserved1,reserved2, etc */
- },
- {
- "Dispenser8MotorFrequency",
- 12,
- PROTOBUF_C_LABEL_REPEATED,
- PROTOBUF_C_TYPE_DOUBLE,
- offsetof(PushDiagnosticsResponse, n_dispenser8motorfrequency),
- offsetof(PushDiagnosticsResponse, dispenser8motorfrequency),
- NULL,
- NULL,
- 0, /* flags */
- 0,NULL,NULL /* reserved1,reserved2, etc */
- },
- {
- "DigitalPins",
- 13,
+ "Events",
+ 4,
PROTOBUF_C_LABEL_REPEATED,
PROTOBUF_C_TYPE_MESSAGE,
- offsetof(PushDiagnosticsResponse, n_digitalpins),
- offsetof(PushDiagnosticsResponse, digitalpins),
- &digital_pin__descriptor,
+ offsetof(PushDiagnosticsResponse, n_events),
+ offsetof(PushDiagnosticsResponse, events),
+ &event__descriptor,
NULL,
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
"Version",
- 14,
+ 5,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_STRING,
0, /* quantifier_offset */
@@ -224,7 +116,7 @@ static const ProtobufCFieldDescriptor push_diagnostics_response__field_descripto
},
{
"VersionName",
- 15,
+ 6,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_STRING,
0, /* quantifier_offset */
@@ -236,7 +128,7 @@ static const ProtobufCFieldDescriptor push_diagnostics_response__field_descripto
},
{
"VersionBuildDate",
- 16,
+ 7,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_STRING,
0, /* quantifier_offset */
@@ -248,27 +140,18 @@ static const ProtobufCFieldDescriptor push_diagnostics_response__field_descripto
},
};
static const unsigned push_diagnostics_response__field_indices_by_name[] = {
- 0, /* field[0] = Dancer1Angle */
- 1, /* field[1] = Dancer2Angle */
- 2, /* field[2] = Dancer3Angle */
- 12, /* field[12] = DigitalPins */
- 4, /* field[4] = Dispenser1MotorFrequency */
- 5, /* field[5] = Dispenser2MotorFrequency */
- 6, /* field[6] = Dispenser3MotorFrequency */
- 7, /* field[7] = Dispenser4MotorFrequency */
- 8, /* field[8] = Dispenser5MotorFrequency */
- 9, /* field[9] = Dispenser6MotorFrequency */
- 10, /* field[10] = Dispenser7MotorFrequency */
- 11, /* field[11] = Dispenser8MotorFrequency */
- 3, /* field[3] = DispensersMotorsFrequency */
- 13, /* field[13] = Version */
- 15, /* field[15] = VersionBuildDate */
- 14, /* field[14] = VersionName */
+ 2, /* field[2] = ComponentsStates */
+ 1, /* field[1] = DigitalPins */
+ 3, /* field[3] = Events */
+ 0, /* field[0] = Monitors */
+ 4, /* field[4] = Version */
+ 6, /* field[6] = VersionBuildDate */
+ 5, /* field[5] = VersionName */
};
static const ProtobufCIntRange push_diagnostics_response__number_ranges[1 + 1] =
{
{ 1, 0 },
- { 0, 16 }
+ { 0, 7 }
};
const ProtobufCMessageDescriptor push_diagnostics_response__descriptor =
{
@@ -278,7 +161,7 @@ const ProtobufCMessageDescriptor push_diagnostics_response__descriptor =
"PushDiagnosticsResponse",
"",
sizeof(PushDiagnosticsResponse),
- 16,
+ 7,
push_diagnostics_response__field_descriptors,
push_diagnostics_response__field_indices_by_name,
1, push_diagnostics_response__number_ranges,
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsResponse.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsResponse.pb-c.h
index 40f7d616b..8aac55075 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsResponse.pb-c.h
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/PushDiagnosticsResponse.pb-c.h
@@ -14,8 +14,10 @@ PROTOBUF_C__BEGIN_DECLS
# 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"
#include "DigitalPin.pb-c.h"
+#include "ValueComponentState.pb-c.h"
+#include "DiagnosticsMonitors.pb-c.h"
+#include "Event.pb-c.h"
typedef struct _PushDiagnosticsResponse PushDiagnosticsResponse;
@@ -28,39 +30,20 @@ typedef struct _PushDiagnosticsResponse PushDiagnosticsResponse;
struct _PushDiagnosticsResponse
{
ProtobufCMessage base;
- size_t n_dancer1angle;
- double *dancer1angle;
- size_t n_dancer2angle;
- double *dancer2angle;
- size_t n_dancer3angle;
- double *dancer3angle;
- size_t n_dispensersmotorsfrequency;
- DoubleArray **dispensersmotorsfrequency;
- size_t n_dispenser1motorfrequency;
- double *dispenser1motorfrequency;
- size_t n_dispenser2motorfrequency;
- double *dispenser2motorfrequency;
- size_t n_dispenser3motorfrequency;
- double *dispenser3motorfrequency;
- size_t n_dispenser4motorfrequency;
- double *dispenser4motorfrequency;
- size_t n_dispenser5motorfrequency;
- double *dispenser5motorfrequency;
- size_t n_dispenser6motorfrequency;
- double *dispenser6motorfrequency;
- size_t n_dispenser7motorfrequency;
- double *dispenser7motorfrequency;
- size_t n_dispenser8motorfrequency;
- double *dispenser8motorfrequency;
+ DiagnosticsMonitors *monitors;
size_t n_digitalpins;
DigitalPin **digitalpins;
+ size_t n_componentsstates;
+ ValueComponentState **componentsstates;
+ size_t n_events;
+ Event **events;
char *version;
char *versionname;
char *versionbuilddate;
};
#define PUSH_DIAGNOSTICS_RESPONSE__INIT \
{ PROTOBUF_C_MESSAGE_INIT (&push_diagnostics_response__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, NULL, NULL, NULL }
+ , NULL, 0,NULL, 0,NULL, 0,NULL, NULL, NULL, NULL }
/* PushDiagnosticsResponse methods */
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/SetComponentValueRequest.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/SetComponentValueRequest.pb-c.c
new file mode 100644
index 000000000..62bd95f35
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Diagnostics/SetComponentValueRequest.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/SetComponentValueRequest.pb-c.h
new file mode 100644
index 000000000..abcaf254f
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Diagnostics/SetComponentValueResponse.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/SetComponentValueResponse.pb-c.c
new file mode 100644
index 000000000..e6b1be0c2
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Diagnostics/SetComponentValueResponse.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/SetComponentValueResponse.pb-c.h
new file mode 100644
index 000000000..129c1668c
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Diagnostics/ValueComponent.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/ValueComponent.pb-c.c
new file mode 100644
index 000000000..b69527bd0
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Diagnostics/ValueComponent.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/ValueComponent.pb-c.h
new file mode 100644
index 000000000..013c5f7a0
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/ValueComponent.pb-c.h
@@ -0,0 +1,43 @@
+/* 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 {
+ VALUE_COMPONENT__Heater1Temp = 0,
+ 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/Code_Composer/twine_usblib_demo/PMR/Diagnostics/ValueComponentState.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/ValueComponentState.pb-c.c
new file mode 100644
index 000000000..0dfc42f2c
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Diagnostics/ValueComponentState.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Diagnostics/ValueComponentState.pb-c.h
new file mode 100644
index 000000000..29ee32d55
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/AnalyzeInput.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/AnalyzeInput.pb-c.c
new file mode 100644
index 000000000..8cab316aa
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/AnalyzeInput.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/AnalyzeInput.pb-c.h
new file mode 100644
index 000000000..15d124132
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/AnalyzeOutput.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/AnalyzeOutput.pb-c.c
new file mode 100644
index 000000000..9739abc10
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/AnalyzeOutput.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/AnalyzeOutput.pb-c.h
new file mode 100644
index 000000000..6e0812aa2
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/ConvertFileInput.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/ConvertFileInput.pb-c.c
new file mode 100644
index 000000000..7bc45b2cf
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/ConvertFileInput.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/ConvertFileInput.pb-c.h
new file mode 100644
index 000000000..085ba2129
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/ConvertFileOutput.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/ConvertFileOutput.pb-c.c
new file mode 100644
index 000000000..01121784f
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/ConvertFileOutput.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/ConvertFileOutput.pb-c.h
new file mode 100644
index 000000000..c3714ce09
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/EmbroideryFile.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/EmbroideryFile.pb-c.c
new file mode 100644
index 000000000..3d07907e9
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/EmbroideryFile.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/EmbroideryFile.pb-c.h
new file mode 100644
index 000000000..2ffee6518
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/Extents.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/Extents.pb-c.c
new file mode 100644
index 000000000..69cba25cf
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/Extents.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/Extents.pb-c.h
new file mode 100644
index 000000000..a7d867bab
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/Stitch.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/Stitch.pb-c.c
new file mode 100644
index 000000000..3d0e895bf
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/Stitch.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/Stitch.pb-c.h
new file mode 100644
index 000000000..157dbce02
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/StitchColor.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/StitchColor.pb-c.c
new file mode 100644
index 000000000..a33e76d5a
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/StitchColor.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/StitchColor.pb-c.h
new file mode 100644
index 000000000..38ad23dca
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/StitchFlag.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/StitchFlag.pb-c.c
new file mode 100644
index 000000000..1936a5436
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Embroidery/StitchFlag.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Embroidery/StitchFlag.pb-c.h
new file mode 100644
index 000000000..81c090e35
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareConfiguration.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareConfiguration.pb-c.c
new file mode 100644
index 000000000..6ba4d7fc9
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareConfiguration.pb-c.c
@@ -0,0 +1,144 @@
+/* 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[5] =
+{
+ {
+ "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 */
+ },
+};
+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 */
+ 4, /* field[4] = Winders */
+};
+static const ProtobufCIntRange hardware_configuration__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor hardware_configuration__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "HardwareConfiguration",
+ "HardwareConfiguration",
+ "HardwareConfiguration",
+ "",
+ sizeof(HardwareConfiguration),
+ 5,
+ 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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareConfiguration.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareConfiguration.pb-c.h
new file mode 100644
index 000000000..d9818c891
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareConfiguration.pb-c.h
@@ -0,0 +1,85 @@
+/* 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"
+
+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;
+};
+#define HARDWARE_CONFIGURATION__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&hardware_configuration__descriptor) \
+ , 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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancer.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancer.pb-c.c
new file mode 100644
index 000000000..b838e1382
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancer.pb-c.c
@@ -0,0 +1,144 @@
+/* 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[5] =
+{
+ {
+ "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 */
+ },
+};
+static const unsigned hardware_dancer__field_indices_by_name[] = {
+ 1, /* field[1] = Gradual */
+ 0, /* field[0] = HardwareDancerType */
+ 2, /* field[2] = K */
+ 4, /* field[4] = PulsePerMmSpring */
+ 3, /* field[3] = X */
+};
+static const ProtobufCIntRange hardware_dancer__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 5 }
+};
+const ProtobufCMessageDescriptor hardware_dancer__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "HardwareDancer",
+ "HardwareDancer",
+ "HardwareDancer",
+ "",
+ sizeof(HardwareDancer),
+ 5,
+ 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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancer.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancer.pb-c.h
new file mode 100644
index 000000000..8e6e74cde
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancer.pb-c.h
@@ -0,0 +1,81 @@
+/* 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;
+};
+#define HARDWARE_DANCER__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&hardware_dancer__descriptor) \
+ , 0, HARDWARE_DANCER_TYPE__LeftDancer, 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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancerType.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancerType.pb-c.c
new file mode 100644
index 000000000..d1ad051e9
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancerType.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancerType.pb-c.h
new file mode 100644
index 000000000..fed2b0108
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDancerType.pb-c.h
@@ -0,0 +1,44 @@
+/* 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 {
+ HARDWARE_DANCER_TYPE__LeftDancer = 0,
+ HARDWARE_DANCER_TYPE__MiddleDancer = 1,
+ 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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDispenser.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDispenser.pb-c.c
new file mode 100644
index 000000000..1691150ab
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDispenser.pb-c.c
@@ -0,0 +1,274 @@
+/* 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[15] =
+{
+ {
+ "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 */
+ },
+ {
+ "NlPerPulse",
+ 2,
+ 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",
+ 3,
+ 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 */
+ },
+ {
+ "MinFrequency",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareDispenser, has_minfrequency),
+ offsetof(HardwareDispenser, minfrequency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MaxFrequency",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareDispenser, has_maxfrequency),
+ offsetof(HardwareDispenser, maxfrequency),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MinMicroStep",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareDispenser, has_minmicrostep),
+ offsetof(HardwareDispenser, minmicrostep),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MaxMicroStep",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareDispenser, has_maxmicrostep),
+ offsetof(HardwareDispenser, maxmicrostep),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "CorrectionGain",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareDispenser, has_correctiongain),
+ offsetof(HardwareDispenser, correctiongain),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "RatioToDryerSpeed",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareDispenser, has_ratiotodryerspeed),
+ offsetof(HardwareDispenser, ratiotodryerspeed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Kp",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareDispenser, has_kp),
+ offsetof(HardwareDispenser, kp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Ki",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareDispenser, has_ki),
+ offsetof(HardwareDispenser, ki),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Kd",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareDispenser, has_kd),
+ offsetof(HardwareDispenser, kd),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ChangeSlope",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareDispenser, has_changeslope),
+ offsetof(HardwareDispenser, changeslope),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HighLengthMicroSecond",
+ 14,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareDispenser, has_highlengthmicrosecond),
+ offsetof(HardwareDispenser, highlengthmicrosecond),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ControlTiming",
+ 15,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareDispenser, has_controltiming),
+ offsetof(HardwareDispenser, controltiming),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned hardware_dispenser__field_indices_by_name[] = {
+ 2, /* field[2] = Capacity */
+ 12, /* field[12] = ChangeSlope */
+ 14, /* field[14] = ControlTiming */
+ 7, /* field[7] = CorrectionGain */
+ 0, /* field[0] = HardwareDispenserType */
+ 13, /* field[13] = HighLengthMicroSecond */
+ 11, /* field[11] = Kd */
+ 10, /* field[10] = Ki */
+ 9, /* field[9] = Kp */
+ 4, /* field[4] = MaxFrequency */
+ 6, /* field[6] = MaxMicroStep */
+ 3, /* field[3] = MinFrequency */
+ 5, /* field[5] = MinMicroStep */
+ 1, /* field[1] = NlPerPulse */
+ 8, /* field[8] = RatioToDryerSpeed */
+};
+static const ProtobufCIntRange hardware_dispenser__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 15 }
+};
+const ProtobufCMessageDescriptor hardware_dispenser__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "HardwareDispenser",
+ "HardwareDispenser",
+ "HardwareDispenser",
+ "",
+ sizeof(HardwareDispenser),
+ 15,
+ 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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDispenser.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDispenser.pb-c.h
new file mode 100644
index 000000000..bde6bad40
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDispenser.pb-c.h
@@ -0,0 +1,101 @@
+/* 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_nlperpulse;
+ double nlperpulse;
+ protobuf_c_boolean has_capacity;
+ double capacity;
+ protobuf_c_boolean has_minfrequency;
+ int32_t minfrequency;
+ protobuf_c_boolean has_maxfrequency;
+ int32_t maxfrequency;
+ protobuf_c_boolean has_minmicrostep;
+ int32_t minmicrostep;
+ protobuf_c_boolean has_maxmicrostep;
+ int32_t maxmicrostep;
+ protobuf_c_boolean has_correctiongain;
+ double correctiongain;
+ protobuf_c_boolean has_ratiotodryerspeed;
+ double ratiotodryerspeed;
+ protobuf_c_boolean has_kp;
+ double kp;
+ protobuf_c_boolean has_ki;
+ double ki;
+ protobuf_c_boolean has_kd;
+ double kd;
+ protobuf_c_boolean has_changeslope;
+ double changeslope;
+ protobuf_c_boolean has_highlengthmicrosecond;
+ double highlengthmicrosecond;
+ protobuf_c_boolean has_controltiming;
+ int32_t controltiming;
+};
+#define HARDWARE_DISPENSER__INIT \
+ { PROTOBUF_C_MESSAGE_INIT (&hardware_dispenser__descriptor) \
+ , 0, HARDWARE_DISPENSER_TYPE__StandardDispenser, 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 }
+
+
+/* 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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDispenserType.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDispenserType.pb-c.c
new file mode 100644
index 000000000..723d41bc3
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDispenserType.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareDispenserType.pb-c.h
new file mode 100644
index 000000000..cd6319f60
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotor.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotor.pb-c.c
new file mode 100644
index 000000000..68b02ae76
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotor.pb-c.c
@@ -0,0 +1,274 @@
+/* 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[15] =
+{
+ {
+ "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 */
+ },
+ {
+ "MinMicroStep",
+ 4,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_minmicrostep),
+ offsetof(HardwareMotor, minmicrostep),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MaxMicroStep",
+ 5,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_maxmicrostep),
+ offsetof(HardwareMotor, maxmicrostep),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "LinearRatio",
+ 6,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareMotor, has_linearratio),
+ offsetof(HardwareMotor, linearratio),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "MedianPosition",
+ 7,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(HardwareMotor, has_medianposition),
+ offsetof(HardwareMotor, medianposition),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "CorrectionGain",
+ 8,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareMotor, has_correctiongain),
+ offsetof(HardwareMotor, correctiongain),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "RatioToDryerSpeed",
+ 9,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareMotor, has_ratiotodryerspeed),
+ offsetof(HardwareMotor, ratiotodryerspeed),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Kp",
+ 10,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareMotor, has_kp),
+ offsetof(HardwareMotor, kp),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Ki",
+ 11,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareMotor, has_ki),
+ offsetof(HardwareMotor, ki),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "Kd",
+ 12,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareMotor, has_kd),
+ offsetof(HardwareMotor, kd),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "ChangeSlope",
+ 13,
+ PROTOBUF_C_LABEL_OPTIONAL,
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(HardwareMotor, has_changeslope),
+ offsetof(HardwareMotor, changeslope),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+ {
+ "HighLengthMicroSecond",
+ 14,
+ 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",
+ 15,
+ 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 */
+ },
+};
+static const unsigned hardware_motor__field_indices_by_name[] = {
+ 12, /* field[12] = ChangeSlope */
+ 7, /* field[7] = CorrectionGain */
+ 0, /* field[0] = HardwareMotorType */
+ 13, /* field[13] = HighLengthMicroSecond */
+ 11, /* field[11] = Kd */
+ 10, /* field[10] = Ki */
+ 9, /* field[9] = Kp */
+ 5, /* field[5] = LinearRatio */
+ 2, /* field[2] = MaxFrequency */
+ 4, /* field[4] = MaxMicroStep */
+ 6, /* field[6] = MedianPosition */
+ 1, /* field[1] = MinFrequency */
+ 3, /* field[3] = MinMicroStep */
+ 8, /* field[8] = RatioToDryerSpeed */
+ 14, /* field[14] = SpeedMaster */
+};
+static const ProtobufCIntRange hardware_motor__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 15 }
+};
+const ProtobufCMessageDescriptor hardware_motor__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "HardwareMotor",
+ "HardwareMotor",
+ "HardwareMotor",
+ "",
+ sizeof(HardwareMotor),
+ 15,
+ 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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotor.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotor.pb-c.h
new file mode 100644
index 000000000..1b09015fb
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotor.pb-c.h
@@ -0,0 +1,101 @@
+/* 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_minmicrostep;
+ int32_t minmicrostep;
+ protobuf_c_boolean has_maxmicrostep;
+ int32_t maxmicrostep;
+ protobuf_c_boolean has_linearratio;
+ double linearratio;
+ protobuf_c_boolean has_medianposition;
+ int32_t medianposition;
+ protobuf_c_boolean has_correctiongain;
+ double correctiongain;
+ protobuf_c_boolean has_ratiotodryerspeed;
+ double ratiotodryerspeed;
+ protobuf_c_boolean has_kp;
+ double kp;
+ protobuf_c_boolean has_ki;
+ double ki;
+ protobuf_c_boolean has_kd;
+ double kd;
+ protobuf_c_boolean has_changeslope;
+ double changeslope;
+ protobuf_c_boolean has_highlengthmicrosecond;
+ double highlengthmicrosecond;
+ protobuf_c_boolean has_speedmaster;
+ protobuf_c_boolean speedmaster;
+};
+#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 }
+
+
+/* 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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotorType.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotorType.pb-c.c
new file mode 100644
index 000000000..be7dcf517
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotorType.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotorType.pb-c.h
new file mode 100644
index 000000000..b98139a4d
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareMotorType.pb-c.h
@@ -0,0 +1,70 @@
+/* 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 {
+ HARDWARE_MOTOR_TYPE__MOTO_DH_CLEANHEAD = 0,
+ HARDWARE_MOTOR_TYPE__MOTO_DH_CLEANMECH = 1,
+ HARDWARE_MOTOR_TYPE__MOTO_DH_LID = 2,
+ HARDWARE_MOTOR_TYPE__MOTO_DRYER_DRIVING = 3,
+ HARDWARE_MOTOR_TYPE__MOTO_DRYER_LID = 4,
+ HARDWARE_MOTOR_TYPE__MOTO_DRYER_LOADARM = 5,
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_1 = 6,
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_2 = 7,
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_3 = 8,
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_4 = 9,
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_5 = 10,
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_6 = 11,
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_7 = 12,
+ HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_8 = 13,
+ HARDWARE_MOTOR_TYPE__MOTO_SCREW = 14,
+ HARDWARE_MOTOR_TYPE__MOTO_WINDER = 15,
+ HARDWARE_MOTOR_TYPE__MOTO_LDANCER1 = 16,
+ HARDWARE_MOTOR_TYPE__MOTO_LDANCER2 = 17,
+ HARDWARE_MOTOR_TYPE__MOTO_LDRIVING = 18,
+ HARDWARE_MOTOR_TYPE__MOTO_LLOADING = 19,
+ HARDWARE_MOTOR_TYPE__MOTO_LPIVOT1 = 20,
+ HARDWARE_MOTOR_TYPE__MOTO_RDANCER = 21,
+ HARDWARE_MOTOR_TYPE__MOTO_RDRIVING = 22,
+ HARDWARE_MOTOR_TYPE__MOTO_RLOADARM = 23,
+ HARDWARE_MOTOR_TYPE__MOTO_RLOADING = 24,
+ HARDWARE_MOTOR_TYPE__MOTO_SPARE1_1 = 25,
+ HARDWARE_MOTOR_TYPE__MOTO_SPARE1_2 = 26,
+ HARDWARE_MOTOR_TYPE__MOTO_SPARE2_1 = 27,
+ 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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControl.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControl.pb-c.c
new file mode 100644
index 000000000..8eb96d16d
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControl.pb-c.c
@@ -0,0 +1,274 @@
+/* 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[15] =
+{
+ {
+ "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_INT32,
+ 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_INT32,
+ 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_INT32,
+ 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_INT32,
+ 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_INT32,
+ 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_INT32,
+ 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_INT32,
+ 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_INT32,
+ 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_INT32,
+ 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_INT32,
+ 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_INT32,
+ 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_INT32,
+ 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_INT32,
+ 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_INT32,
+ offsetof(HardwarePidControl, has_pvinputfilterfactormode),
+ offsetof(HardwarePidControl, pvinputfilterfactormode),
+ NULL,
+ NULL,
+ 0, /* flags */
+ 0,NULL,NULL /* reserved1,reserved2, etc */
+ },
+};
+static const unsigned hardware_pid_control__field_indices_by_name[] = {
+ 10, /* field[10] = ControlOutputType */
+ 4, /* field[4] = DerivativeTime */
+ 0, /* field[0] = HardwarePidControlType */
+ 3, /* field[3] = IntegralTime */
+ 12, /* field[12] = OutputOnOffHysteresisValue */
+ 2, /* field[2] = OutputProportionalBand */
+ 1, /* field[1] = OutputProportionalPowerLimit */
+ 13, /* field[13] = ProcessVariableSamplingRate */
+ 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, 15 }
+};
+const ProtobufCMessageDescriptor hardware_pid_control__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "HardwarePidControl",
+ "HardwarePidControl",
+ "HardwarePidControl",
+ "",
+ sizeof(HardwarePidControl),
+ 15,
+ 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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControl.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControl.pb-c.h
new file mode 100644
index 000000000..2a316b5ab
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControl.pb-c.h
@@ -0,0 +1,101 @@
+/* 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;
+ int32_t outputproportionalpowerlimit;
+ protobuf_c_boolean has_outputproportionalband;
+ int32_t outputproportionalband;
+ protobuf_c_boolean has_integraltime;
+ int32_t integraltime;
+ protobuf_c_boolean has_derivativetime;
+ int32_t derivativetime;
+ protobuf_c_boolean has_sensorcorrectionadjustment;
+ int32_t sensorcorrectionadjustment;
+ protobuf_c_boolean has_sensorminvalue;
+ int32_t sensorminvalue;
+ protobuf_c_boolean has_sensormaxvalue;
+ int32_t sensormaxvalue;
+ protobuf_c_boolean has_setpointramprateorsoftstartramp;
+ int32_t setpointramprateorsoftstartramp;
+ protobuf_c_boolean has_setpointcontroloutputrate;
+ int32_t setpointcontroloutputrate;
+ protobuf_c_boolean has_controloutputtype;
+ int32_t controloutputtype;
+ protobuf_c_boolean has_ssrcontroloutputtype;
+ int32_t ssrcontroloutputtype;
+ protobuf_c_boolean has_outputonoffhysteresisvalue;
+ int32_t outputonoffhysteresisvalue;
+ protobuf_c_boolean has_processvariablesamplingrate;
+ int32_t processvariablesamplingrate;
+ protobuf_c_boolean has_pvinputfilterfactormode;
+ int32_t pvinputfilterfactormode;
+};
+#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 }
+
+
+/* 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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControlType.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControlType.pb-c.c
new file mode 100644
index 000000000..a64913666
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControlType.pb-c.c
@@ -0,0 +1,61 @@
+/* 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[14] =
+{
+ { "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 },
+ { "DryerHeater400", "HARDWARE_PID_CONTROL_TYPE__DryerHeater400", 13 },
+};
+static const ProtobufCIntRange hardware_pid_control_type__value_ranges[] = {
+{0, 0},{0, 14}
+};
+static const ProtobufCEnumValueIndex hardware_pid_control_type__enum_values_by_name[14] =
+{
+ { "DryerHeater1000w", 0 },
+ { "DryerHeater200w1", 1 },
+ { "DryerHeater200w2", 2 },
+ { "DryerHeater400", 13 },
+ { "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",
+ "",
+ 14,
+ hardware_pid_control_type__enum_values_by_number,
+ 14,
+ 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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControlType.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControlType.pb-c.h
new file mode 100644
index 000000000..8bcea3bd0
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwarePidControlType.pb-c.h
@@ -0,0 +1,55 @@
+/* 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 {
+ HARDWARE_PID_CONTROL_TYPE__DryerHeater1000w = 0,
+ HARDWARE_PID_CONTROL_TYPE__DryerHeater200w1 = 1,
+ HARDWARE_PID_CONTROL_TYPE__DryerHeater200w2 = 2,
+ HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ1 = 3,
+ HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ2 = 4,
+ HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ3 = 5,
+ HARDWARE_PID_CONTROL_TYPE__HeadHeaterZ4 = 6,
+ HARDWARE_PID_CONTROL_TYPE__MixerHeater = 7,
+ HARDWARE_PID_CONTROL_TYPE__WasteControl = 8,
+ HARDWARE_PID_CONTROL_TYPE__MotorDryer = 9,
+ HARDWARE_PID_CONTROL_TYPE__MotorFeeder = 10,
+ HARDWARE_PID_CONTROL_TYPE__MotorPooler = 11,
+ HARDWARE_PID_CONTROL_TYPE__MotorWinder = 12,
+ HARDWARE_PID_CONTROL_TYPE__DryerHeater400 = 13
+ 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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareWinder.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareWinder.pb-c.c
new file mode 100644
index 000000000..2ed95d9a5
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareWinder.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareWinder.pb-c.h
new file mode 100644
index 000000000..1595e4313
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareWinderType.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareWinderType.pb-c.c
new file mode 100644
index 000000000..ed168e14d
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareWinderType.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareWinderType.pb-c.h
new file mode 100644
index 000000000..952c9ea12
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/HardwareWinderType.pb-c.h
@@ -0,0 +1,42 @@
+/* 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 {
+ 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/Code_Composer/twine_usblib_demo/PMR/Hardware/UploadHardwareConfigurationRequest.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/UploadHardwareConfigurationRequest.pb-c.c
new file mode 100644
index 000000000..160c02c0b
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Hardware/UploadHardwareConfigurationRequest.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/UploadHardwareConfigurationRequest.pb-c.h
new file mode 100644
index 000000000..6e715a378
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Hardware/UploadHardwareConfigurationResponse.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/UploadHardwareConfigurationResponse.pb-c.c
new file mode 100644
index 000000000..56aff3176
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Hardware/UploadHardwareConfigurationResponse.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Hardware/UploadHardwareConfigurationResponse.pb-c.h
new file mode 100644
index 000000000..7f754f3bf
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Printing/DispenserLiquidType.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/DispenserLiquidType.pb-c.c
new file mode 100644
index 000000000..15fe539f2
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Printing/DispenserLiquidType.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/DispenserLiquidType.pb-c.h
new file mode 100644
index 000000000..a6ae3e867
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Printing/DispenserStepDivision.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/DispenserStepDivision.pb-c.c
new file mode 100644
index 000000000..38da8a46b
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Printing/DispenserStepDivision.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/DispenserStepDivision.pb-c.h
new file mode 100644
index 000000000..42e340daa
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Printing/JobBrushStop.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobBrushStop.pb-c.c
new file mode 100644
index 000000000..45e10394b
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Printing/JobBrushStop.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobBrushStop.pb-c.h
new file mode 100644
index 000000000..6e887a448
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Printing/JobDispenser.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobDispenser.pb-c.c
new file mode 100644
index 000000000..f868d121e
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Printing/JobDispenser.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobDispenser.pb-c.h
new file mode 100644
index 000000000..2b21e265c
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Printing/JobRequest.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobRequest.pb-c.c
index d282c0e56..d1e101dfd 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobRequest.pb-c.c
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobRequest.pb-c.c
@@ -52,23 +52,11 @@ void job_request__free_unpacked
assert(message->base.descriptor == &job_request__descriptor);
protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
-static const ProtobufCFieldDescriptor job_request__field_descriptors[2] =
+static const ProtobufCFieldDescriptor job_request__field_descriptors[1] =
{
{
- "Name",
- 1,
- PROTOBUF_C_LABEL_OPTIONAL,
- PROTOBUF_C_TYPE_STRING,
- 0, /* quantifier_offset */
- offsetof(JobRequest, name),
- NULL,
- NULL,
- 0, /* flags */
- 0,NULL,NULL /* reserved1,reserved2, etc */
- },
- {
"JobTicket",
- 2,
+ 1,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_MESSAGE,
0, /* quantifier_offset */
@@ -80,13 +68,12 @@ static const ProtobufCFieldDescriptor job_request__field_descriptors[2] =
},
};
static const unsigned job_request__field_indices_by_name[] = {
- 1, /* field[1] = JobTicket */
- 0, /* field[0] = Name */
+ 0, /* field[0] = JobTicket */
};
static const ProtobufCIntRange job_request__number_ranges[1 + 1] =
{
{ 1, 0 },
- { 0, 2 }
+ { 0, 1 }
};
const ProtobufCMessageDescriptor job_request__descriptor =
{
@@ -96,7 +83,7 @@ const ProtobufCMessageDescriptor job_request__descriptor =
"JobRequest",
"",
sizeof(JobRequest),
- 2,
+ 1,
job_request__field_descriptors,
job_request__field_indices_by_name,
1, job_request__number_ranges,
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobRequest.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobRequest.pb-c.h
index 2019c859b..224db64af 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobRequest.pb-c.h
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobRequest.pb-c.h
@@ -28,11 +28,10 @@ struct _JobRequest
{
ProtobufCMessage base;
JobTicket *jobticket;
- char *name;
};
#define JOB_REQUEST__INIT \
{ PROTOBUF_C_MESSAGE_INIT (&job_request__descriptor) \
- , NULL, NULL }
+ , NULL }
/* JobRequest methods */
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSegment.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSegment.pb-c.c
index 94042855d..8b1710079 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSegment.pb-c.c
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSegment.pb-c.c
@@ -52,7 +52,7 @@ void job_segment__free_unpacked
assert(message->base.descriptor == &job_segment__descriptor);
protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
-static const ProtobufCFieldDescriptor job_segment__field_descriptors[2] =
+static const ProtobufCFieldDescriptor job_segment__field_descriptors[3] =
{
{
"Name",
@@ -78,15 +78,28 @@ static const ProtobufCFieldDescriptor job_segment__field_descriptors[2] =
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, 2 }
+ { 0, 3 }
};
const ProtobufCMessageDescriptor job_segment__descriptor =
{
@@ -96,7 +109,7 @@ const ProtobufCMessageDescriptor job_segment__descriptor =
"JobSegment",
"",
sizeof(JobSegment),
- 2,
+ 3,
job_segment__field_descriptors,
job_segment__field_indices_by_name,
1, job_segment__number_ranges,
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSegment.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSegment.pb-c.h
index df8fb21e5..2c077abaa 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSegment.pb-c.h
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSegment.pb-c.h
@@ -14,6 +14,7 @@ PROTOBUF_C__BEGIN_DECLS
# 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;
@@ -29,10 +30,12 @@ struct _JobSegment
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 }
+ , NULL, 0, 0, 0,NULL }
/* JobSegment methods */
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSpool.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSpool.pb-c.c
new file mode 100644
index 000000000..329c9e701
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSpool.pb-c.c
@@ -0,0 +1,170 @@
+/* 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[7] =
+{
+ {
+ "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 */
+ },
+};
+static const unsigned job_spool__field_indices_by_name[] = {
+ 5, /* field[5] = BackingRate */
+ 3, /* field[3] = Diameter */
+ 0, /* field[0] = JobSpoolType */
+ 1, /* field[1] = Length */
+ 6, /* field[6] = SegmentOffsetPulses */
+ 4, /* field[4] = StartOffsetPulses */
+ 2, /* field[2] = Weight */
+};
+static const ProtobufCIntRange job_spool__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor job_spool__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "JobSpool",
+ "JobSpool",
+ "JobSpool",
+ "",
+ sizeof(JobSpool),
+ 7,
+ 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/Code_Composer/twine_usblib_demo/PMR/Printing/JobSpool.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSpool.pb-c.h
new file mode 100644
index 000000000..38e9236ce
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSpool.pb-c.h
@@ -0,0 +1,85 @@
+/* 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;
+};
+#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 }
+
+
+/* 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/Code_Composer/twine_usblib_demo/PMR/Printing/JobSpoolType.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSpoolType.pb-c.c
new file mode 100644
index 000000000..aa72dc2c9
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Printing/JobSpoolType.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobSpoolType.pb-c.h
new file mode 100644
index 000000000..2cfab4ae8
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Printing/JobTicket.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobTicket.pb-c.c
index 765494fce..c9f1e859f 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobTicket.pb-c.c
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobTicket.pb-c.c
@@ -52,7 +52,7 @@ void job_ticket__free_unpacked
assert(message->base.descriptor == &job_ticket__descriptor);
protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
-static const ProtobufCFieldDescriptor job_ticket__field_descriptors[7] =
+static const ProtobufCFieldDescriptor job_ticket__field_descriptors[8] =
{
{
"Name",
@@ -127,8 +127,20 @@ static const ProtobufCFieldDescriptor job_ticket__field_descriptors[7] =
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "Segments",
+ "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),
@@ -145,13 +157,14 @@ static const unsigned job_ticket__field_indices_by_name[] = {
3, /* field[3] = Length */
0, /* field[0] = Name */
4, /* field[4] = ProcessParameters */
- 6, /* field[6] = Segments */
+ 7, /* field[7] = Segments */
+ 6, /* field[6] = Spool */
5, /* field[5] = WindingMethod */
};
static const ProtobufCIntRange job_ticket__number_ranges[1 + 1] =
{
{ 1, 0 },
- { 0, 7 }
+ { 0, 8 }
};
const ProtobufCMessageDescriptor job_ticket__descriptor =
{
@@ -161,7 +174,7 @@ const ProtobufCMessageDescriptor job_ticket__descriptor =
"JobTicket",
"",
sizeof(JobTicket),
- 7,
+ 8,
job_ticket__field_descriptors,
job_ticket__field_indices_by_name,
1, job_ticket__number_ranges,
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobTicket.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobTicket.pb-c.h
index b64ee6292..b20d1db3c 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobTicket.pb-c.h
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/JobTicket.pb-c.h
@@ -17,6 +17,7 @@ PROTOBUF_C__BEGIN_DECLS
#include "JobSegment.pb-c.h"
#include "ProcessParameters.pb-c.h"
#include "JobWindingMethod.pb-c.h"
+#include "JobSpool.pb-c.h"
typedef struct _JobTicket JobTicket;
@@ -39,12 +40,13 @@ struct _JobTicket
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, 0,NULL }
+ , NULL, 0, 0, 0, 0, 0, 0, NULL, 0, JOB_WINDING_METHOD__Embroidery, NULL, 0,NULL }
/* JobTicket methods */
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/ProcessParameters.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/ProcessParameters.pb-c.c
index f1d45c351..a6c9b8f08 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/ProcessParameters.pb-c.c
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/ProcessParameters.pb-c.c
@@ -55,48 +55,48 @@ void process_parameters__free_unpacked
static const ProtobufCFieldDescriptor process_parameters__field_descriptors[16] =
{
{
- "Name",
+ "DyeingSpeed",
1,
PROTOBUF_C_LABEL_OPTIONAL,
- PROTOBUF_C_TYPE_STRING,
- 0, /* quantifier_offset */
- offsetof(ProcessParameters, name),
+ PROTOBUF_C_TYPE_DOUBLE,
+ offsetof(ProcessParameters, has_dyeingspeed),
+ offsetof(ProcessParameters, dyeingspeed),
NULL,
NULL,
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "DyeingSpeed",
+ "MixerTemp",
2,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_DOUBLE,
- offsetof(ProcessParameters, has_dyeingspeed),
- offsetof(ProcessParameters, dyeingspeed),
+ offsetof(ProcessParameters, has_mixertemp),
+ offsetof(ProcessParameters, mixertemp),
NULL,
NULL,
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "MinInkUptake",
+ "DryerBufferLength",
3,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_DOUBLE,
- offsetof(ProcessParameters, has_mininkuptake),
- offsetof(ProcessParameters, mininkuptake),
+ offsetof(ProcessParameters, has_dryerbufferlength),
+ offsetof(ProcessParameters, dryerbufferlength),
NULL,
NULL,
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "MixerTemp",
+ "MinInkUptake",
4,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_DOUBLE,
- offsetof(ProcessParameters, has_mixertemp),
- offsetof(ProcessParameters, mixertemp),
+ offsetof(ProcessParameters, has_mininkuptake),
+ offsetof(ProcessParameters, mininkuptake),
NULL,
NULL,
0, /* flags */
@@ -115,48 +115,48 @@ static const ProtobufCFieldDescriptor process_parameters__field_descriptors[16]
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "HeadZone2Temp",
+ "DryerZone1Temp",
6,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_DOUBLE,
- offsetof(ProcessParameters, has_headzone2temp),
- offsetof(ProcessParameters, headzone2temp),
+ offsetof(ProcessParameters, has_dryerzone1temp),
+ offsetof(ProcessParameters, dryerzone1temp),
NULL,
NULL,
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "HeadZone3Temp",
+ "FeederTension",
7,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_DOUBLE,
- offsetof(ProcessParameters, has_headzone3temp),
- offsetof(ProcessParameters, headzone3temp),
+ offsetof(ProcessParameters, has_feedertension),
+ offsetof(ProcessParameters, feedertension),
NULL,
NULL,
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "HeadAirFlow",
+ "DryerZone2Temp",
8,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_DOUBLE,
- offsetof(ProcessParameters, has_headairflow),
- offsetof(ProcessParameters, headairflow),
+ offsetof(ProcessParameters, has_dryerzone2temp),
+ offsetof(ProcessParameters, dryerzone2temp),
NULL,
NULL,
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "FeederTension",
+ "HeadZone2Temp",
9,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_DOUBLE,
- offsetof(ProcessParameters, has_feedertension),
- offsetof(ProcessParameters, feedertension),
+ offsetof(ProcessParameters, has_headzone2temp),
+ offsetof(ProcessParameters, headzone2temp),
NULL,
NULL,
0, /* flags */
@@ -175,48 +175,48 @@ static const ProtobufCFieldDescriptor process_parameters__field_descriptors[16]
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "DryerBufferLength",
+ "HeadZone3Temp",
11,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_DOUBLE,
- offsetof(ProcessParameters, has_dryerbufferlength),
- offsetof(ProcessParameters, dryerbufferlength),
+ offsetof(ProcessParameters, has_headzone3temp),
+ offsetof(ProcessParameters, headzone3temp),
NULL,
NULL,
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "DryerZone1Temp",
+ "DryerZone3Temp",
12,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_DOUBLE,
- offsetof(ProcessParameters, has_dryerzone1temp),
- offsetof(ProcessParameters, dryerzone1temp),
+ offsetof(ProcessParameters, has_dryerzone3temp),
+ offsetof(ProcessParameters, dryerzone3temp),
NULL,
NULL,
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "DryerZone2Temp",
+ "WinderTension",
13,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_DOUBLE,
- offsetof(ProcessParameters, has_dryerzone2temp),
- offsetof(ProcessParameters, dryerzone2temp),
+ offsetof(ProcessParameters, has_windertension),
+ offsetof(ProcessParameters, windertension),
NULL,
NULL,
0, /* flags */
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "DryerZone3Temp",
+ "HeadAirFlow",
14,
PROTOBUF_C_LABEL_OPTIONAL,
PROTOBUF_C_TYPE_DOUBLE,
- offsetof(ProcessParameters, has_dryerzone3temp),
- offsetof(ProcessParameters, dryerzone3temp),
+ offsetof(ProcessParameters, has_headairflow),
+ offsetof(ProcessParameters, headairflow),
NULL,
NULL,
0, /* flags */
@@ -235,12 +235,12 @@ static const ProtobufCFieldDescriptor process_parameters__field_descriptors[16]
0,NULL,NULL /* reserved1,reserved2, etc */
},
{
- "WinderTension",
+ "TableIndex",
16,
PROTOBUF_C_LABEL_OPTIONAL,
- PROTOBUF_C_TYPE_DOUBLE,
- offsetof(ProcessParameters, has_windertension),
- offsetof(ProcessParameters, windertension),
+ PROTOBUF_C_TYPE_INT32,
+ offsetof(ProcessParameters, has_tableindex),
+ offsetof(ProcessParameters, tableindex),
NULL,
NULL,
0, /* flags */
@@ -249,21 +249,21 @@ static const ProtobufCFieldDescriptor process_parameters__field_descriptors[16]
};
static const unsigned process_parameters__field_indices_by_name[] = {
14, /* field[14] = DryerAirFlow */
- 10, /* field[10] = DryerBufferLength */
- 11, /* field[11] = DryerZone1Temp */
- 12, /* field[12] = DryerZone2Temp */
- 13, /* field[13] = DryerZone3Temp */
- 1, /* field[1] = DyeingSpeed */
- 8, /* field[8] = FeederTension */
- 7, /* field[7] = HeadAirFlow */
+ 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 */
- 5, /* field[5] = HeadZone2Temp */
- 6, /* field[6] = HeadZone3Temp */
- 2, /* field[2] = MinInkUptake */
- 3, /* field[3] = MixerTemp */
- 0, /* field[0] = Name */
+ 8, /* field[8] = HeadZone2Temp */
+ 10, /* field[10] = HeadZone3Temp */
+ 3, /* field[3] = MinInkUptake */
+ 1, /* field[1] = MixerTemp */
9, /* field[9] = PullerTension */
- 15, /* field[15] = WinderTension */
+ 15, /* field[15] = TableIndex */
+ 12, /* field[12] = WinderTension */
};
static const ProtobufCIntRange process_parameters__number_ranges[1 + 1] =
{
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/ProcessParameters.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/ProcessParameters.pb-c.h
index a658f6b5b..00be2df93 100644
--- a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/ProcessParameters.pb-c.h
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/ProcessParameters.pb-c.h
@@ -26,41 +26,42 @@ typedef struct _ProcessParameters ProcessParameters;
struct _ProcessParameters
{
ProtobufCMessage base;
- char *name;
protobuf_c_boolean has_dyeingspeed;
double dyeingspeed;
- protobuf_c_boolean has_mininkuptake;
- double mininkuptake;
protobuf_c_boolean has_mixertemp;
double mixertemp;
- protobuf_c_boolean has_headzone1temp;
- double headzone1temp;
- protobuf_c_boolean has_headzone2temp;
- double headzone2temp;
- protobuf_c_boolean has_headzone3temp;
- double headzone3temp;
- protobuf_c_boolean has_headairflow;
- double headairflow;
- protobuf_c_boolean has_feedertension;
- double feedertension;
- protobuf_c_boolean has_pullertension;
- double pullertension;
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_dryerairflow;
- double dryerairflow;
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) \
- , NULL, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
/* ProcessParameters methods */
diff --git a/Software/Code_Composer/twine_usblib_demo/PMR/Printing/UploadProcessParametersRequest.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/UploadProcessParametersRequest.pb-c.c
new file mode 100644
index 000000000..bae09c741
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Printing/UploadProcessParametersRequest.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/UploadProcessParametersRequest.pb-c.h
new file mode 100644
index 000000000..c39ee4174
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Printing/UploadProcessParametersResponse.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/UploadProcessParametersResponse.pb-c.c
new file mode 100644
index 000000000..2503df80d
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Printing/UploadProcessParametersResponse.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Printing/UploadProcessParametersResponse.pb-c.h
new file mode 100644
index 000000000..4089217d2
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestPollRequest.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestPollRequest.pb-c.c
new file mode 100644
index 000000000..9e17c8153
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestPollRequest.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestPollRequest.pb-c.h
new file mode 100644
index 000000000..4581522ed
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestPollResponse.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestPollResponse.pb-c.c
new file mode 100644
index 000000000..6697b916d
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestPollResponse.pb-c.c
@@ -0,0 +1,170 @@
+/* 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[7] =
+{
+ {
+ "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 */
+ },
+};
+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 */
+ 1, /* field[1] = Zone1Temp */
+ 2, /* field[2] = Zone2Temp */
+};
+static const ProtobufCIntRange stub_heating_test_poll_response__number_ranges[1 + 1] =
+{
+ { 1, 0 },
+ { 0, 7 }
+};
+const ProtobufCMessageDescriptor stub_heating_test_poll_response__descriptor =
+{
+ PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
+ "StubHeatingTestPollResponse",
+ "StubHeatingTestPollResponse",
+ "StubHeatingTestPollResponse",
+ "",
+ sizeof(StubHeatingTestPollResponse),
+ 7,
+ 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/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestPollResponse.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestPollResponse.pb-c.h
new file mode 100644
index 000000000..8cf25d5be
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestPollResponse.pb-c.h
@@ -0,0 +1,87 @@
+/* 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;
+};
+#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 }
+
+
+/* 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/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestRequest.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestRequest.pb-c.c
new file mode 100644
index 000000000..e35ae9def
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestRequest.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestRequest.pb-c.h
new file mode 100644
index 000000000..c0cfb95b7
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestResponse.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestResponse.pb-c.c
new file mode 100644
index 000000000..b6a117fc4
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestResponse.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubHeatingTestResponse.pb-c.h
new file mode 100644
index 000000000..ca26a48e1
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Stubs/StubMotorRequest.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubMotorRequest.pb-c.c
new file mode 100644
index 000000000..c20a5c57b
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Stubs/StubMotorRequest.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubMotorRequest.pb-c.h
new file mode 100644
index 000000000..d7a9826c0
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Stubs/StubMotorResponse.pb-c.c b/Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubMotorResponse.pb-c.c
new file mode 100644
index 000000000..3affd71f5
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/PMR/Stubs/StubMotorResponse.pb-c.h b/Software/Code_Composer/twine_usblib_demo/PMR/Stubs/StubMotorResponse.pb-c.h
new file mode 100644
index 000000000..d2aa43c76
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/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/Code_Composer/twine_usblib_demo/Stubs_Handler/Container.c b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Container.c
index b87eea020..3cd3b3931 100644
--- a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Container.c
+++ b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Container.c
@@ -151,6 +151,10 @@ void receive_callback(char* buffer, size_t length)
case MESSAGE_TYPE__StubHWVersionRequest:
Stub_HWVersionRequest(requestContainer);
break;
+ case MESSAGE_TYPE__StubMotorRequest:
+ Stub_MotorRequest(requestContainer);
+ break;
+
default:
//unsupported message type !!
break;
diff --git a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/DataDef.h b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/DataDef.h
index c7e41d2b8..30b9cab07 100644
--- a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/DataDef.h
+++ b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/DataDef.h
@@ -114,7 +114,10 @@ The warning:
or in the environment add command line:
Project -> properties ->
-
+Press on show advanced settings
+CCS Build ->
+Advanced Options ->
+Diagnistic Options ->
Add the warning number in
Supports diagnostic <id> (--diag_suppress, - pds)
169
diff --git a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_FPGAReadVersion.c b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_FPGAReadVersion.c
index 0861ddb5f..63b643eef 100644
--- a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_FPGAReadVersion.c
+++ b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_FPGAReadVersion.c
@@ -23,10 +23,10 @@
void Stub_FPGAReadVersionRequest(MessageContainer* requestContainer)
{
uint32_t status = FAILED;
- unsigned char Version;
- unsigned char Year;
- unsigned char Month;
- unsigned char Day;
+ unsigned char Version = 0;
+ unsigned char Year = 0 ;
+ unsigned char Month = 0;
+ unsigned char Day = 0;
MessageContainer responseContainer;
diff --git a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.c b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.c
index 88f015f9a..d1e6ff82d 100644
--- a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.c
+++ b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.c
@@ -13,6 +13,8 @@
#include <PMR/Stubs/StubMotorPositionResponse.pb-c.h>
#include <PMR/Stubs/StubMotorMovRequest.pb-c.h>
#include <PMR/Stubs/StubMotorMovResponse.pb-c.h>
+#include <PMR/Stubs/StubMotorRequest.pb-c.h>
+#include <PMR/Stubs/StubMotorResponse.pb-c.h>
#include <stdbool.h>
#include <stdlib.h>
@@ -37,6 +39,7 @@
#include "drivers/FPGA/Moters_Driver/L6470.h"
#include "driverlib/ssi.h"
+#include "drivers/SPI/SPI_Comm.h"
extern unsigned long Run_Value ;
@@ -451,3 +454,76 @@ void Stub_MotorMovRequest(MessageContainer* requestContainer)
free(requestContainer);
}
+void Stub_MotorRequest(MessageContainer* requestContainer)
+{
+
+ //uint32_t read_status;
+ uint32_t temp = 0;
+ uint32_t rx = 0;
+
+ unsigned char N_Get = 0;
+
+
+ MessageContainer responseContainer;
+
+ StubMotorRequest* request = stub_motor_request__unpack(NULL, requestContainer->data.len, requestContainer->data.data);
+
+ StubMotorResponse response = STUB_MOTOR_RESPONSE__INIT;
+
+ N_Get = (unsigned char)request->n_bytes_to_get;
+
+ switch(request->n_bytes_to_set)
+ {
+ case 4:
+ temp = Write_Byte((byte)((request->data_to_send >> 24)&0xFF));
+ rx |= (temp & 0xFF) ;
+ N_Get = N_Get-1;
+ case 3:
+ rx = rx << 8;
+ temp = Write_Byte((byte)((request->data_to_send >> 16)&0xFF));
+ rx |= (temp & 0xFF);
+ N_Get = N_Get-1;
+ case 2:
+ rx = rx << 8;
+ temp = Write_Byte((byte)((request->data_to_send >> 8 )&0xFF));
+ rx |= (temp & 0xFF);
+ N_Get = N_Get-1;
+ case 1:
+ default:
+ rx = rx << 8;
+ temp = Write_Byte((byte)((request->data_to_send )&0xFF));
+ rx |= temp & 0xFF;
+ N_Get = N_Get-1;
+ }
+
+ while (N_Get)
+ {
+ rx = rx << 8;
+ temp = Write_Byte((uint8_t)(0x00));
+ rx |= temp & 0xFF;
+ N_Get = N_Get-1;
+ }
+
+ response.has_recived_data = true;
+ response.recived_data = rx;
+
+ response.has_motor_id = true;
+ response.motor_id = request->motor_id;
+
+ responseContainer = createContainer(MESSAGE_TYPE__StubMotorResponse, requestContainer->token, true, &response, &stub_motor_response__pack, &stub_motor_response__get_packed_size);
+
+ writeLine("Sending Response: ");
+
+ writeFloat(response.motor_id);
+
+
+ free(request);
+ //-------------------------------------------------------------------------------------------
+ uint8_t* container_buffer = malloc(message_container__get_packed_size(&responseContainer));
+ size_t container_size = message_container__pack(&responseContainer, container_buffer);
+ SendChars((char*)container_buffer, container_size);
+ free(container_buffer);
+ free(requestContainer);
+}
+
+
diff --git a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.h b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.h
index 95f82353f..59312179f 100644
--- a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.h
+++ b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.h
@@ -5,3 +5,6 @@ void Stub_MotorStatusRequest(MessageContainer* requestContainer);
void Stub_MotorSpeedRequest(MessageContainer* requestContainer);
void Stub_MotorPositionRequest(MessageContainer* requestContainer);
void Stub_MotorMovRequest(MessageContainer* requestContainer);
+void Stub_MotorRequest(MessageContainer* requestContainer);
+
+
diff --git a/Software/Code_Composer/twine_usblib_demo/drivers/Danser_SSI/SSI_Comm.c b/Software/Code_Composer/twine_usblib_demo/drivers/Danser_SSI/SSI_Comm.c
new file mode 100644
index 000000000..bf9460ab5
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/drivers/Danser_SSI/SSI_Comm.c
@@ -0,0 +1,180 @@
+// RLS Orbis BR10SCB14B12CH00
+//RLS Orbis
+//BR10
+//SC - SSI
+//B - Start bit and idle data line 1 (standard)
+//14B - 14 bits per revolution
+//12 - Magnet type compatibility
+//C - - 0 °C to +85 °C
+//H - Soldering pads with through holes
+//00 - No special requirements
+
+
+#include <stdbool.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <stdint.h>
+#include <string.h>
+
+#include "inc/hw_memmap.h"
+#include "driverlib/gpio.h"
+#include "driverlib/pin_map.h"
+#include "driverlib/ssi.h"
+#include "driverlib/sysctl.h"
+#include "utils/uartstdio.h"
+
+#include "graphics_adapter.h"
+#include <Stubs_Handler/DataDef.h>
+
+#include "drivers/FPGA/FPGA_Comm.h"
+
+#include <driverlib/rom.h>
+#include <driverlib/rom_map.h>
+
+typedef struct // 24bit
+{
+ unsigned char Det_status:8;
+ unsigned char Gen_status:2;
+ unsigned short Position:14;
+}SSI_ENC;
+
+SSI_ENC SSI_enc;
+
+void SSI1_Init()
+{
+ #if defined(TARGET_IS_TM4C129_RA0) || \
+ defined(TARGET_IS_TM4C129_RA1) || \
+ defined(TARGET_IS_TM4C129_RA2)
+ uint32_t ui32SysClock;
+ #endif
+
+ //
+ // Set the clocking to run directly from the external crystal/oscillator.
+ // TODO: The SYSCTL_XTAL_ value must be changed to match the value of the
+ // crystal on your board.
+ //
+ #if defined(TARGET_IS_TM4C129_RA0) || \
+ defined(TARGET_IS_TM4C129_RA1) || \
+ defined(TARGET_IS_TM4C129_RA2)
+
+ ui32SysClock = MAP_SysCtlClockFreqSet((SYSCTL_XTAL_25MHZ |
+ SYSCTL_OSC_MAIN | SYSCTL_USE_PLL |
+ SYSCTL_CFG_VCO_480), 120000000);
+ #else
+ SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN |
+ SYSCTL_XTAL_16MHZ);
+ #endif
+
+ // The SSI1 peripheral must be enabled for use.
+ //
+ SysCtlPeripheralReset(SYSCTL_PERIPH_SSI1);
+ SysCtlPeripheralEnable(SYSCTL_PERIPH_SSI1);
+
+ //
+ // For this example SSI1 is used with PortG[7:4]. GPIO port G needs to be
+ // enabled so these pins can be used.
+ //
+ SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB);
+ SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOD);
+ SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOE);
+
+ /* Configure pad settings */ // AVI
+ GPIOPadConfigSet(GPIO_PORTE_BASE,
+ GPIO_PIN_4,
+ GPIO_STRENGTH_4MA, GPIO_PIN_TYPE_STD);
+
+ GPIOPadConfigSet(GPIO_PORTE_BASE,
+ GPIO_PIN_5,
+ GPIO_STRENGTH_4MA, GPIO_PIN_TYPE_STD_WPU);
+
+ GPIOPadConfigSet(GPIO_PORTB_BASE,
+ GPIO_PIN_4 | GPIO_PIN_5,
+ GPIO_STRENGTH_4MA, GPIO_PIN_TYPE_STD);
+
+ //
+ // Configure the pin muxing for SSI1 functions
+ // This step is not necessary if your part does not support pin muxing.
+ //
+
+ GPIOPinConfigure(GPIO_PB5_SSI1CLK);
+ GPIOPinConfigure(GPIO_PB4_SSI1FSS);
+ GPIOPinConfigure(GPIO_PE4_SSI1XDAT0);
+ GPIOPinConfigure(GPIO_PE5_SSI1XDAT1);
+
+ //
+ // Configure the GPIO settings for the SSI pins. This function also gives
+ // control of these pins to the SSI hardware. Consult the data sheet to
+ // see which functions are allocated per pin.
+ // The pins are assigned as follows:
+ // PE4 - SSI1Tx
+ // PE5 - SSI1Rx
+ // PB4 - SSI1Fss
+ // PB5 - SSI1CLK
+ //SSI0XDAT0......SSI0TX in Legacy SSI Mode....which is MOSI in your terms
+ //SSI0XDAT1......SSI0RX in Legacy SSI Mode....which is MISO in your terms
+ //
+ GPIOPinTypeSSI(GPIO_PORTB_BASE, GPIO_PIN_4 | GPIO_PIN_5);
+ //GPIOPinTypeSSI(GPIO_PORTD_BASE, GPIO_PIN_4 | GPIO_PIN_5);
+ GPIOPinTypeSSI(GPIO_PORTE_BASE, GPIO_PIN_4 | GPIO_PIN_5);
+
+ //
+ // Configure and enable the SSI1 port for SPI Master mode.
+ //
+
+ SSIConfigSetExpClk(SSI1_BASE, ui32SysClock, SSI_FRF_NMW,
+ SSI_MODE_MASTER, 500000, 16); // to receive Clock period 2uSec, Clock frequency 500KHz
+ //SSI_MODE_MASTER send 24 bits 0x00 (dummy) 0x7f 0xff -> create clock of 24 bits for SSI
+
+ SSIAdvModeSet(SSI1_BASE,SSI_ADV_MODE_READ_WRITE );
+ //
+ // Disable the SSI1 module.
+ //
+ SSIDisable(SSI1_BASE);
+ //----------------------------------------------------------------
+
+}
+
+uint32_t Write_Dummy_Byte()
+{
+ //Transmit a dummy set of words to get the SPI to generate a certain number of clocks
+ uint8_t WByte = 0x00; // Dummy Byte
+ uint32_t RByte = 0x00;
+
+ SSIDataPut(SSI1_BASE, WByte);
+
+ while(SSIBusy(SSI1_BASE)){};
+
+ SSIDataGet(SSI1_BASE, &RByte);// 24 bytes
+
+ return (RByte & 0xffffff);// 24 bytes
+
+}
+
+void Read_Dancer_Position ()
+{
+ uint32_t ENC_SSI_Data = 0;
+
+ SSIEnable(SSI1_BASE);
+
+ ENC_SSI_Data = Write_Dummy_Byte();
+
+ SSI_enc.Det_status = ENC_SSI_Data & 0xFF;
+ ENC_SSI_Data = ENC_SSI_Data >> 8;
+ SSI_enc.Gen_status = ENC_SSI_Data & 0x3;
+ ENC_SSI_Data = ENC_SSI_Data >> 2;
+ SSI_enc.Position = ENC_SSI_Data & 0x3FFF;
+
+ SSIDisable(SSI1_BASE);
+}
+
+void Loop_SSI()
+{
+ while(1)
+ {
+ Read_Dancer_Position();
+ SysCtlDelay(1000); // Min 1000 (Pause time > 20uSec)
+ }
+
+}
+
+
diff --git a/Software/Code_Composer/twine_usblib_demo/drivers/Danser_SSI/SSI_Comm.h b/Software/Code_Composer/twine_usblib_demo/drivers/Danser_SSI/SSI_Comm.h
new file mode 100644
index 000000000..1f24b49bf
--- /dev/null
+++ b/Software/Code_Composer/twine_usblib_demo/drivers/Danser_SSI/SSI_Comm.h
@@ -0,0 +1,4 @@
+void SSI1_Init();
+void Read_Dancer_Position ();
+
+void Loop_SSI();
diff --git a/Software/Code_Composer/twine_usblib_demo/drivers/FPGA/FPGA.c b/Software/Code_Composer/twine_usblib_demo/drivers/FPGA/FPGA.c
index db9859216..968e55390 100644
--- a/Software/Code_Composer/twine_usblib_demo/drivers/FPGA/FPGA.c
+++ b/Software/Code_Composer/twine_usblib_demo/drivers/FPGA/FPGA.c
@@ -86,6 +86,12 @@ int FPGA_ReadVersion(unsigned char FPGA_NUM, unsigned char *Version, unsigned c
break;
}
+ if( (Ver1.bytes.Month > 12) || (Ver1.bytes.Day > 31) || (Ver2.bytes.Year < 17) )
+ {
+ return FAILED;
+ }
+
+
*Month = Ver1.bytes.Month;
*Day = Ver1.bytes.Day;
*Year = Ver2.bytes.Year; // to check how many digits is needed
diff --git a/Software/Code_Composer/twine_usblib_demo/drivers/SPI/SPI_Comm.c b/Software/Code_Composer/twine_usblib_demo/drivers/SPI/SPI_Comm.c
index b3a7728e0..4eeeda774 100644
--- a/Software/Code_Composer/twine_usblib_demo/drivers/SPI/SPI_Comm.c
+++ b/Software/Code_Composer/twine_usblib_demo/drivers/SPI/SPI_Comm.c
@@ -429,7 +429,8 @@ void setup(StubMotorInitRequest* request)
//STALL threshold
while(SSIBusy(SSI2_BASE)){};
- SetParam(x_STALL_TH, 0x1F);//187.5mA Reset Value 0x40 (2.03A) ---------------------
+ //RMS=sqrt((I*I)*dutycycle)
+ SetParam(x_STALL_TH, 0x1F);//1A Reset Value 0x40 (2.03A) ---------------------
// Configure the acceleration rate, in steps/tick/tick. There is
@@ -527,14 +528,27 @@ void setup(StubMotorInitRequest* request)
// There are ACC, DEC, and HOLD KVAL registers as well; you may
// need to play with those values to get acceptable performance
// for a given application.
- SetParam(x_KVAL_HOLD, /*0x0B);// */ 0x05);
- SetParam(x_KVAL_RUN, /*0x4B);// */ 0x23);
- SetParam(x_KVAL_ACC, /*0x4B);// */ 0x23);
- SetParam(x_KVAL_DEC, /*0x4B);// */ 0x23);
- SetParam(x_ST_SLP, 0x18);
- SetParam(x_INT_SPD, /*0x1A13);// */ 0x3550);
- SetParam(x_FN_SLP_ACC, /*0x48);// */ 0x23);
- SetParam(x_FN_SLP_DEC, /*0x48);// */ 0x23);
+
+
+// SetParam(x_KVAL_HOLD, /*0x0B);// */ 0x05);
+// SetParam(x_KVAL_RUN, /*0x4B);// */ 0x23);
+// SetParam(x_KVAL_ACC, /*0x4B);// */ 0x23);
+// SetParam(x_KVAL_DEC, /*0x4B);// */ 0x23);
+// SetParam(x_ST_SLP, 0x18);
+// SetParam(x_INT_SPD, /*0x1A13);// */ 0x3550);
+// SetParam(x_FN_SLP_ACC, /*0x48);// */ 0x23);
+// SetParam(x_FN_SLP_DEC, /*0x48);// */ 0x23);
+
+ //for Motor 49:
+ SetParam(x_KVAL_HOLD, 0x35);
+ SetParam(x_KVAL_RUN, 0x4B);
+ SetParam(x_KVAL_ACC, 0x4B);
+ SetParam(x_KVAL_DEC, 0x4B);
+ SetParam(x_ST_SLP, 0x20);
+ SetParam(x_INT_SPD, 0x1A13);
+ SetParam(x_FN_SLP_ACC, 0x50);
+ SetParam(x_FN_SLP_DEC, 0x50);
+
//https://www.youtube.com/watch?v=8C7qdjPbhlg MIN 2:20
diff --git a/Software/Code_Composer/twine_usblib_demo/drivers/SPI/SPI_Comm.h b/Software/Code_Composer/twine_usblib_demo/drivers/SPI/SPI_Comm.h
index 6b4d5ecf1..4d84ba8b0 100644
--- a/Software/Code_Composer/twine_usblib_demo/drivers/SPI/SPI_Comm.h
+++ b/Software/Code_Composer/twine_usblib_demo/drivers/SPI/SPI_Comm.h
@@ -14,3 +14,6 @@ void setup();
void init_BUSY_Pin(void);
#include <PMR/Stubs/StubMotorInitRequest.pb-c.h>
void setup(StubMotorInitRequest* request);
+bool Check_SPI_Busy(void);
+byte Write_Byte(uint8_t WByte);
+
diff --git a/Software/Code_Composer/twine_usblib_demo/main.c b/Software/Code_Composer/twine_usblib_demo/main.c
index 7c497f869..2f1591661 100644
--- a/Software/Code_Composer/twine_usblib_demo/main.c
+++ b/Software/Code_Composer/twine_usblib_demo/main.c
@@ -51,7 +51,7 @@
#include "drivers/SPI/spi_master.h"
#include "drivers/SPI/SPI_Comm.h"
-
+#include "drivers/Danser_SSI/SSI_Comm.h"
//*****************************************************************************
//
@@ -132,13 +132,17 @@ int main(void)
/////////////// tests by AVI
//Ext_Flash_Operation(TX,5);
//SoundExample();
- //temperature_main();
+ //temperature_main(); // use uart0 PA0+PA1
//test_FPGA();
//SPI_main();
// SPI_Control();
+ SSI1_Init(); // Read dancer ENC SSI
+ //Loop_SSI();
+ SPI2_Init();
+ init_BUSY_Pin();
/////////////////////
RegisterReceiveCallback(&receive_callback);