public static String GenerateClientServerInterfaceArguments(ClientServerOperation operation, Boolean MultipleInstantiation = false) { String result = "("; if (MultipleInstantiation) { result += RteFunctionsGenerator.ComponentInstancePointerDatatype + " instance"; if (operation.Fields.Count > 0) { result += ", "; } } else { if (operation.Fields.Count == 0) { result += "void"; } } for (int i = 0; i < operation.Fields.Count; i++) { ClientServerOperationField field = operation.Fields[i]; result += GetClientServerOperationFieldIdentification(field); if (i != operation.Fields.Count - 1) { result += ", "; } } return(result + ")"); }
public void ChangeDatatypeButtonClick() { int index = grid.SelectedIndex; if (gridElements[index].containObject is ClientServerOperationField) { ClientServerOperationField field = (gridElements[index].containObject as ClientServerOperationField); List <IGUID> datatypes = AutosarApplication.GetInstance().GetAllDataTypes(); System.Windows.Forms.DialogResult result = DatatypeForm.GetInstance().ShowForm(datatypes, field.BaseDataTypeGUID); if (result == System.Windows.Forms.DialogResult.OK) { field.BaseDataTypeGUID = DatatypeForm.GetInstance().SelectedDatatype.GUID; RefreshGridView(); } } }
public static String GetClientServerOperationFieldIdentification(ClientServerOperationField field) { String result = ""; String dataTypeName = AutosarApplication.GetInstance().GetDataTypeName(field.BaseDataTypeGUID); if (field.Direction == ClientServerOperationDirection.IN) { result = "const " + dataTypeName + " * const " + field.Name; } else if (field.Direction == ClientServerOperationDirection.OUT) { result = dataTypeName + " * const " + field.Name; } else //IN-OUT { result = dataTypeName + "* " + field.Name; } return(result); }