示例#1
0
        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();
                }
            }
        }
示例#3
0
        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);
        }