public static sinter_Variable makeNewVariable(sinter_Sim sim, string path) { sinter_Variable retVar = null; sinter.sinter_Variable.sinter_IOType vartype = sim.guessTypeFromSim(path); if (vartype == sinter.sinter_Variable.sinter_IOType.si_DOUBLE || vartype == sinter.sinter_Variable.sinter_IOType.si_INTEGER || vartype == sinter.sinter_Variable.sinter_IOType.si_STRING) { sinter_Variable previewVar = new sinter_Variable(); string[] addressString = new string[1] { path }; previewVar.init(sim, vartype, addressString); previewVar.initializeUnits(sim); previewVar.initializeDescription(sim); retVar = previewVar; } else if (vartype == sinter.sinter_Variable.sinter_IOType.si_DOUBLE_VEC || vartype == sinter.sinter_Variable.sinter_IOType.si_INTEGER_VEC || vartype == sinter.sinter_Variable.sinter_IOType.si_STRING_VEC) { sinter_Vector previewVar = new sinter_Vector(); string[] addressString = new string[1] { path }; previewVar.init(sim, vartype, addressString); previewVar.initializeUnits(sim); previewVar.initializeDescription(sim); retVar = previewVar; } return(retVar); }
/** * This version of init attempts to discover as much as possible about the variable automatically. * This is useful for the GUI, when the user selects a variable off the tree we need to try to figure out all about it. **/ public virtual void init(sinter_Sim sim, sinter.sinter_Variable.sinter_IOType type, string[] addStrings) { o_addressStrings = addStrings; IList <string> splitPath = sim.parsePath(o_addressStrings[0]); o_name = getVariableName(sim, addStrings[0]); o_mode = sinter_IOMode.si_IN; //Default to input o_type = type; o_description = null; o_table = null; o_tableName = null; o_tableCol = 0; o_tableRow = 0; makeValue(); recvFromSim(sim); setDefaultToValue(); }
/** * This version of init attempts to discover as much as possible about the variable automatically. * This is useful for the GUI, when the user selects a variable off the tree we need to try to figure out all about it. **/ public virtual void init(sinter_InteractiveSim sim, sinter.sinter_Variable.sinter_IOType type, int TimeSeriesLen, string[] addStrings) { o_TimeSeriesLength = TimeSeriesLen; base.init(sim, type, addStrings); }