Skip to content

Commit e379e50

Browse files
committed
added documentation generation to markdown
fixed saving of low and high values its now possible to add describtions to subobjects
1 parent 336ec77 commit e379e50

File tree

7 files changed

+268
-11
lines changed

7 files changed

+268
-11
lines changed

‎EDSTest/DeviceODView.cs‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -148,8 +148,9 @@ private void button_save_changes_Click(object sender, EventArgs e)
148148

149149
selectedobject.defaultvalue = textBox_defaultvalue.Text;
150150
selectedobject.TPDODetectCos = checkBox_COS.Checked;
151-
152-
151+
selectedobject.HighLimit = textBox_highvalue.Text;
152+
selectedobject.LowLimit = textBox_lowvalue.Text;
153+
selectedobject.actualvalue = textBox_actualvalue.Text;
153154
DataType dt = (DataType)Enum.Parse(typeof(DataType), comboBox_datatype.SelectedItem.ToString());
154155
selectedobject.datatype = dt;
155156

‎EDSTest/Form1.cs‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -932,12 +932,14 @@ private void documentationToolStripMenuItem_Click(object sender, EventArgs e)
932932
}
933933

934934
string temp = dir + Path.DirectorySeparatorChar + "documentation.html";
935+
string temp2 = dir + Path.DirectorySeparatorChar + "documentation.md";
935936

936937
this.UseWaitCursor = true;
937938

938939
DocumentationGen docgen = new DocumentationGen();
939940
docgen.genhtmldoc(temp, dv.eds);
940-
941+
docgen.genmddoc(temp2, dv.eds);
942+
System.Diagnostics.Process.Start("file://" + temp2);
941943
if (IsRunningOnMono())
942944
{
943945
System.Diagnostics.Process.Start("file://" + temp);

‎libEDSsharp/Bridge.cs‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,8 @@ public Device convert(EDSsharp eds)
6464
coo.AccessType = od.accesstype.ToString();
6565
coo.DataType = string.Format("0x{0:x2}", (int)od.datatype);
6666
coo.DefaultValue = od.defaultvalue;
67+
coo.HighValue = od.HighLimit;
68+
coo.LowValue = od.LowLimit;
6769
coo.PDOmapping = od.PDOtype.ToString();
6870
coo.TPDOdetectCOS = od.TPDODetectCos.ToString().ToLower();
6971
coo.AccessFunctionPreCode = od.AccessFunctionPreCode;
@@ -85,10 +87,14 @@ public Device convert(EDSsharp eds)
8587
Xml2CSharp.CANopenSubObject sub = new Xml2CSharp.CANopenSubObject();
8688

8789
sub.Name = subod.parameter_name;
90+
sub.Description = new Xml2CSharp.Description();
91+
sub.Description.Text = subod.Description;
8892
sub.ObjectType = subod.objecttype.ToString();
8993
sub.AccessType = subod.accesstype.ToString();
9094
sub.DataType = string.Format("0x{0:x2}", (int)subod.datatype);
9195
sub.DefaultValue = subod.defaultvalue;
96+
sub.HighValue = subod.HighLimit;
97+
sub.LowValue = subod.LowLimit;
9298
sub.PDOmapping = subod.PDOtype.ToString();
9399
sub.SubIndex = String.Format("{0:x2}", subindex);
94100
sub.TPDOdetectCOS = subod.TPDODetectCos.ToString().ToLower();
@@ -317,6 +323,8 @@ public EDSsharp convert(Device dev)
317323
entry.objecttype = (ObjectType)Enum.Parse(typeof(ObjectType), coo.ObjectType);
318324

319325
entry.defaultvalue = coo.DefaultValue;
326+
entry.HighLimit = coo.HighValue;
327+
entry.LowLimit = coo.LowValue;
320328
//entry.nosubindexes = Convert.ToInt16(coo.SubNumber);
321329

322330
if (coo.PDOmapping != null)
@@ -375,7 +383,12 @@ public EDSsharp convert(Device dev)
375383
subentry.datatype = (DataType)datatype;
376384
}
377385

386+
if (coosub.Description != null)
387+
subentry.Description = coosub.Description.Text; //FIXME URL/LANG
388+
378389
subentry.defaultvalue = coosub.DefaultValue;
390+
subentry.HighLimit = coosub.HighValue;
391+
subentry.LowLimit = coosub.LowValue;
379392

380393
byte subindex = Convert.ToByte(coosub.SubIndex, 16);
381394

‎libEDSsharp/CanOpenNodeExporter.cs‎

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -381,10 +381,11 @@ private void export_h()
381381

382382
StreamWriter file = new StreamWriter(folderpath + Path.DirectorySeparatorChar + "CO_OD.h");
383383

384-
384+
file.WriteLine("// clang-format off");
385385
addGPLheader(file);
386386

387-
file.WriteLine("#pragma once");
387+
file.WriteLine("#ifndef CO_OD_H_");
388+
file.WriteLine("#define CO_OD_H_");
388389
file.WriteLine("");
389390

390391
file.WriteLine(@"/*******************************************************************************
@@ -527,7 +528,7 @@ TYPE DEFINITIONS FOR RECORDS
527528

528529
file.WriteLine(string.Format("/*{0:x4} */ typedef struct {{", kvp.Key));
529530
foreach (KeyValuePair<UInt16, ODentry> kvp2 in kvp.Value.subobjects)
530-
{
531+
{
531532
string paramaterarrlen = "";
532533

533534
ODentry subod = kvp2.Value;
@@ -766,7 +767,8 @@ ALIASES FOR OBJECT DICTIONARY VARIABLES
766767
break;
767768
}
768769
}
769-
770+
file.WriteLine("#endif");
771+
file.WriteLine("// clang-format on");
770772
file.Close();
771773

772774
}
@@ -775,6 +777,7 @@ private void export_c()
775777
{
776778
StreamWriter file = new StreamWriter(folderpath + Path.DirectorySeparatorChar + "CO_OD.c");
777779

780+
file.WriteLine("// clang-format off");
778781
addGPLheader(file);
779782

780783
file.WriteLine(@"#include ""CO_driver.h""
@@ -840,6 +843,7 @@ OBJECT DICTIONARY
840843
file.Write(write_od());
841844

842845
file.WriteLine("};");
846+
file.WriteLine("// clang-format on");
843847

844848
file.Close();
845849
}

‎libEDSsharp/CanOpenXML.cs‎

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,11 @@ public class CANopenObject {
145145
public string PDOmapping { get; set; }
146146
[XmlAttribute(AttributeName="defaultValue")]
147147
public string DefaultValue { get; set; }
148-
[XmlElement(ElementName="CANopenSubObject")]
148+
[XmlAttribute(AttributeName = "highValue")]
149+
public string HighValue { get; set; }
150+
[XmlAttribute(AttributeName = "lowValue")]
151+
public string LowValue { get; set; }
152+
[XmlElement(ElementName="CANopenSubObject")]
149153
public List<CANopenSubObject> CANopenSubObject { get; set; }
150154
[XmlAttribute(AttributeName="subNumber")]
151155
public string SubNumber { get; set; }
@@ -165,7 +169,9 @@ public class CANopenSubObject {
165169
public string SubIndex { get; set; }
166170
[XmlAttribute(AttributeName="name")]
167171
public string Name { get; set; }
168-
[XmlAttribute(AttributeName="objectType")]
172+
[XmlElement(ElementName = "description")]
173+
public Description Description { get; set; }
174+
[XmlAttribute(AttributeName="objectType")]
169175
public string ObjectType { get; set; }
170176
[XmlAttribute(AttributeName="dataType")]
171177
public string DataType { get; set; }
@@ -175,6 +181,10 @@ public class CANopenSubObject {
175181
public string PDOmapping { get; set; }
176182
[XmlAttribute(AttributeName="defaultValue")]
177183
public string DefaultValue { get; set; }
184+
[XmlAttribute(AttributeName = "highValue")]
185+
public string HighValue { get; set; }
186+
[XmlAttribute(AttributeName = "lowValue")]
187+
public string LowValue { get; set; }
178188
[XmlAttribute(AttributeName = "TPDOdetectCOS")]
179189
public string TPDOdetectCOS { get; set; }
180190
}

0 commit comments

Comments
 (0)