/// <summary> /// Constructor /// </summary> /// <param name="name">Name</param> /// <param name="type">Type</param> /// <param name="parent">Parent</param> protected Block(string name, string type, SimulinkSubsystem parent) { this.name = name; this.type = type; this.parent = parent; SetBlockType(); }
internal Block(XElement element, SimulinkSubsystem parent) { xml = element; name = element.GetAttribute(SimulinkXmlParser.Name); type = element.GetAttribute(SimulinkXmlParser.BlockType); this.parent = parent; SetBlockType(); }
/// <summary> /// Constructor /// </summary> /// <param name="text">Simulink source text</param> public CodeCreator(IList <string> text) { doc = Simulink.Parser.Library.SimulinkXmlParser.Create(text); Simulink.Parser.Library.SimulinkXmlParser.TransformFunc(doc); system = new SimulinkSystem(doc); subsystem = system.Subsystem; int k = 0; subsystem.Enumerate(ref k); subsystem.SetArrowVariables("arrow_"); List <Block> lb = subsystem.AllBlocks; order = Block.SetOrder(lb, new BlockCodeCreator()); blocks = lb.ToArray(); }
private void treeView_AfterSelect(object sender, TreeViewEventArgs e) { TreeNode node = treeView.SelectedNode; if (node == null) { return; } object o = node.Tag; if (o is SimulinkSubsystem) { SimulinkSubsystem ss = o as SimulinkSubsystem; act(ss); } }
string IChildrenCreator.GetObjectName(object o) { if (o is SimulinkSystem) { return("Simulink"); } if (o is SimulinkSubsystem) { SimulinkSubsystem ss = o as SimulinkSubsystem; return(ss.Name); } if (o is SimulinkStateflow) { return("Stateflow"); } return(null); }
object[] IChildrenCreator.GetChildern(object o) { if (o is SimulinkSystem) { SimulinkSystem sys = o as SimulinkSystem; SimulinkStateflow sf = sys.Stateflow; if (sf == null) { return(new object[] { sys.Subsystem }); } return(new object[] { sys.Subsystem, sys.Stateflow }); } if (o is SimulinkSubsystem) { SimulinkSubsystem ss = o as SimulinkSubsystem; SimulinkSubsystem[] sss = ss.Systems; return(sss.ToArray <object>()); } return(null); }
internal SystemBase(SimulinkSubsystem system, IDesktop desktop) { this.system = system; this.desktop = desktop; }
/// <summary> /// Construtor /// </summary> /// <param name="system">System</param> /// <param name="source">Source</param> /// <param name="target">Target</param> public Arrow(SimulinkSubsystem system, BlockPort source, BlockPort target) { this.system = system; this.source = source; this.target = target; }
IList <string> ICodeCreator.CreateCode(SimulinkSubsystem system) { List <string> lcode = new List <string>(); lcode.Add(StandardHeader); List <string> var = CreateVariables(out reset); string ss = "namespace Calculation"; // ss += guid; ss += "\r\n{\r\n public class Calculate : IStateCalculation"; ss += "\r\n{\r\n"; lcode.Add(ss); lcode.Add(" public void Update()\r\n {\r\n"); IBlockInternalCode ic = this; List <string> l = new List <string>(); init.Clear(); for (int i = 0; i < blocks.Length; i++) { IList <string> c = ic.Create(blocks[i], i); if (c == null) { continue; } l.AddRange(c); } lcode.AddRange(l); lcode.Add("oldTime = time;"); lcode.Add(" }\r\n"); lcode.AddRange(var); List <string> lh; List <string> lic; List <string> ld = CreateInput(out lh, out lic); lcode.AddRange(ld); lcode.AddRange(lh); List <string> loc; ld = CreateOutput(out lh, out loc); lcode.AddRange(ld); lcode.AddRange(lh); List <string> lconsto; List <string> lconsti; List <string> lconst = CreateConstats(out lconsto, out lconsti); lcode.Add("public Calculate()"); lcode.Add("{"); lcode.AddRange(lic); lcode.AddRange(loc); lcode.AddRange(lconsti); lcode.Add("}"); lcode.Add(" public void Reset()\r\n {\r\n"); lcode.AddRange(reset); lcode.Add("}"); lcode.AddRange(lconst); lcode.AddRange(lconsto); lcode.AddRange(init); lcode.Add(" }\r\n"); lcode.Add(" }\r\n"); return(lcode); }