- fixed SDO bug in dynamic code generator

This commit is contained in:
Michael Zillgith 2017-05-15 15:44:10 +02:00
parent 8999487b24
commit ad98531b1b
4 changed files with 7 additions and 3 deletions

View file

@ -132,7 +132,9 @@ int main(int argc, char** argv) {
Thread_sleep(1000);
IedConnection_triggerGIReport(con, &error, "simpleIOGenericIO/LLN0.RP.EventsRCB01");
/* Trigger GI Report */
ClientReportControlBlock_setGI(rcb, true);
IedConnection_setRCBValues(con, &error, rcb, RCB_ELEMENT_GI, true);
if (error != IED_ERROR_OK) {
printf("Error triggering a GI report (code: %i)\n", error);

View file

@ -810,6 +810,8 @@ IedConnection_uninstallReportHandler(IedConnection self, const char* rcbReferenc
*
* The RCB must have been enabled and GI set as trigger option before this command can be performed.
*
* \deprecated Use ClientReportControlBlock_setGI instead
*
* \param connection the connection object
* \param error the error code if an error occurs
* \param rcbReference object reference of the report control block

Binary file not shown.

View file

@ -189,8 +189,8 @@ public class DynamicCodeGenerator {
for (DataObjectDefinition dod : doType.getSubDataObjects()) {
out.print(" DO_" + dod.getType() + "_createInstance(\"" + dod.getName() + "\")");
out.println("(ModelNode*) newDo);");
out.print(" DO_" + dod.getType() + "_createInstance(\"" + dod.getName() + "\", ");
out.println("(ModelNode*) newDo, " + dod.getCount() + ");");
}
out.println("\n return newDo;");