Browse Source

ajout du serveur dans le moniteur

Sébastien DI MERCURIO 5 years ago
parent
commit
8536d288ce
24 changed files with 1488 additions and 96 deletions
  1. 1
    0
      .gitignore
  2. 40
    0
      software/monitor/monitor/.gitignore
  3. 16
    0
      software/monitor/monitor/MonitorUI.cs
  4. 16
    0
      software/monitor/monitor/Program.cs
  5. 26
    0
      software/monitor/monitor/Properties/AssemblyInfo.cs
  6. 126
    0
      software/monitor/monitor/gtk-gui/MainWindow.cs
  7. 30
    0
      software/monitor/monitor/gtk-gui/generated.cs
  8. 129
    0
      software/monitor/monitor/gtk-gui/gui.stetic
  9. 64
    0
      software/monitor/monitor/monitor.csproj
  10. 17
    0
      software/monitor/monitor/monitor.sln
  11. BIN
      software/raspberry/conception_robot_2018.pdf
  12. BIN
      software/raspberry/sujet_robot_2018.pdf
  13. 28
    0
      software/raspberry/superviseur-robot/lib/server.h
  14. 14
    96
      software/raspberry/superviseur-robot/lib/src/monitor.cpp
  15. 97
    0
      software/raspberry/superviseur-robot/lib/src/server.cpp
  16. 1
    0
      software/raspberry/superviseur-robot/nbproject/private/CodeAssistancePathMapper.properties
  17. 48
    0
      software/raspberry/superviseur-robot/nbproject/private/Default-build.log
  18. 225
    0
      software/raspberry/superviseur-robot/nbproject/private/Default-exec.log
  19. 6
    0
      software/raspberry/superviseur-robot/nbproject/private/Default.properties
  20. 75
    0
      software/raspberry/superviseur-robot/nbproject/private/c_standard_headers_indexer.c
  21. 331
    0
      software/raspberry/superviseur-robot/nbproject/private/configurations.xml
  22. 135
    0
      software/raspberry/superviseur-robot/nbproject/private/cpp_standard_headers_indexer.cpp
  23. 42
    0
      software/raspberry/superviseur-robot/nbproject/private/launcher.properties
  24. 21
    0
      software/raspberry/superviseur-robot/nbproject/private/private.xml

+ 1
- 0
.gitignore View File

@@ -62,3 +62,4 @@ GUI
62 62
 # Android
63 63
 *.apk
64 64
 
65
+/software/raspberry/superviseur-robot/superviseur/dist/

+ 40
- 0
software/monitor/monitor/.gitignore View File

@@ -0,0 +1,40 @@
1
+# Autosave files
2
+*~
3
+
4
+# build
5
+[Oo]bj/
6
+[Bb]in/
7
+packages/
8
+TestResults/
9
+
10
+# globs
11
+Makefile.in
12
+*.DS_Store
13
+*.sln.cache
14
+*.suo
15
+*.cache
16
+*.pidb
17
+*.userprefs
18
+*.usertasks
19
+config.log
20
+config.make
21
+config.status
22
+aclocal.m4
23
+install-sh
24
+autom4te.cache/
25
+*.user
26
+*.tar.gz
27
+tarballs/
28
+test-results/
29
+Thumbs.db
30
+
31
+# Mac bundle stuff
32
+*.dmg
33
+*.app
34
+
35
+# resharper
36
+*_Resharper.*
37
+*.Resharper
38
+
39
+# dotCover
40
+*.dotCover

+ 16
- 0
software/monitor/monitor/MonitorUI.cs View File

@@ -0,0 +1,16 @@
1
+using System;
2
+using Gtk;
3
+
4
+public partial class MainWindow : Gtk.Window
5
+{
6
+    public MainWindow() : base(Gtk.WindowType.Toplevel)
7
+    {
8
+        Build();
9
+    }
10
+
11
+    protected void OnDeleteEvent(object sender, DeleteEventArgs a)
12
+    {
13
+        Application.Quit();
14
+        a.RetVal = true;
15
+    }
16
+}

+ 16
- 0
software/monitor/monitor/Program.cs View File

@@ -0,0 +1,16 @@
1
+using System;
2
+using Gtk;
3
+
4
+namespace monitor
5
+{
6
+    class MainClass
7
+    {
8
+        public static void Main(string[] args)
9
+        {
10
+            Application.Init();
11
+            MainWindow win = new MainWindow();
12
+            win.Show();
13
+            Application.Run();
14
+        }
15
+    }
16
+}

+ 26
- 0
software/monitor/monitor/Properties/AssemblyInfo.cs View File

@@ -0,0 +1,26 @@
1
+using System.Reflection;
2
+using System.Runtime.CompilerServices;
3
+
4
+// Information about this assembly is defined by the following attributes. 
5
+// Change them to the values specific to your project.
6
+
7
+[assembly: AssemblyTitle("monitor")]
8
+[assembly: AssemblyDescription("")]
9
+[assembly: AssemblyConfiguration("")]
10
+[assembly: AssemblyCompany("")]
11
+[assembly: AssemblyProduct("")]
12
+[assembly: AssemblyCopyright("${AuthorCopyright}")]
13
+[assembly: AssemblyTrademark("")]
14
+[assembly: AssemblyCulture("")]
15
+
16
+// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
17
+// The form "{Major}.{Minor}.*" will automatically update the build and revision,
18
+// and "{Major}.{Minor}.{Build}.*" will update just the revision.
19
+
20
+[assembly: AssemblyVersion("1.0.*")]
21
+
22
+// The following attributes are used to specify the signing key for the assembly, 
23
+// if desired. See the Mono documentation for more information about signing.
24
+
25
+//[assembly: AssemblyDelaySign(false)]
26
+//[assembly: AssemblyKeyFile("")]

+ 126
- 0
software/monitor/monitor/gtk-gui/MainWindow.cs View File

@@ -0,0 +1,126 @@
1
+
2
+// This file has been generated by the GUI designer. Do not modify.
3
+
4
+public partial class MainWindow
5
+{
6
+	private global::Gtk.UIManager UIManager;
7
+
8
+	private global::Gtk.VBox vbox1;
9
+
10
+	private global::Gtk.MenuBar menubar1;
11
+
12
+	private global::Gtk.HBox hbox1;
13
+
14
+	private global::Gtk.DrawingArea drawingarea1;
15
+
16
+	private global::Gtk.Alignment alignment1;
17
+
18
+	private global::Gtk.ScrolledWindow GtkScrolledWindow;
19
+
20
+	private global::Gtk.Frame frame1;
21
+
22
+	private global::Gtk.Fixed fixed4;
23
+
24
+	private global::Gtk.Button button7;
25
+
26
+	private global::Gtk.Label GtkLabel2;
27
+
28
+	private global::Gtk.Statusbar statusbar1;
29
+
30
+	protected virtual void Build()
31
+	{
32
+		global::Stetic.Gui.Initialize(this);
33
+		// Widget MainWindow
34
+		this.UIManager = new global::Gtk.UIManager();
35
+		global::Gtk.ActionGroup w1 = new global::Gtk.ActionGroup("Default");
36
+		this.UIManager.InsertActionGroup(w1, 0);
37
+		this.AddAccelGroup(this.UIManager.AccelGroup);
38
+		this.Name = "MainWindow";
39
+		this.Title = global::Mono.Unix.Catalog.GetString("Monitor UI");
40
+		this.WindowPosition = ((global::Gtk.WindowPosition)(4));
41
+		// Container child MainWindow.Gtk.Container+ContainerChild
42
+		this.vbox1 = new global::Gtk.VBox();
43
+		this.vbox1.Name = "vbox1";
44
+		this.vbox1.Spacing = 6;
45
+		// Container child vbox1.Gtk.Box+BoxChild
46
+		this.UIManager.AddUiFromString("<ui><menubar name=\'menubar1\'/></ui>");
47
+		this.menubar1 = ((global::Gtk.MenuBar)(this.UIManager.GetWidget("/menubar1")));
48
+		this.menubar1.Name = "menubar1";
49
+		this.vbox1.Add(this.menubar1);
50
+		global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.vbox1[this.menubar1]));
51
+		w2.Position = 0;
52
+		w2.Expand = false;
53
+		w2.Fill = false;
54
+		// Container child vbox1.Gtk.Box+BoxChild
55
+		this.hbox1 = new global::Gtk.HBox();
56
+		this.hbox1.Name = "hbox1";
57
+		this.hbox1.Spacing = 6;
58
+		// Container child hbox1.Gtk.Box+BoxChild
59
+		this.drawingarea1 = new global::Gtk.DrawingArea();
60
+		this.drawingarea1.Name = "drawingarea1";
61
+		this.hbox1.Add(this.drawingarea1);
62
+		global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.hbox1[this.drawingarea1]));
63
+		w3.Position = 0;
64
+		// Container child hbox1.Gtk.Box+BoxChild
65
+		this.alignment1 = new global::Gtk.Alignment(0.5F, 0.5F, 1F, 1F);
66
+		this.alignment1.Name = "alignment1";
67
+		// Container child alignment1.Gtk.Container+ContainerChild
68
+		this.GtkScrolledWindow = new global::Gtk.ScrolledWindow();
69
+		this.GtkScrolledWindow.Name = "GtkScrolledWindow";
70
+		this.GtkScrolledWindow.ShadowType = ((global::Gtk.ShadowType)(1));
71
+		// Container child GtkScrolledWindow.Gtk.Container+ContainerChild
72
+		global::Gtk.Viewport w4 = new global::Gtk.Viewport();
73
+		w4.ShadowType = ((global::Gtk.ShadowType)(0));
74
+		// Container child GtkViewport.Gtk.Container+ContainerChild
75
+		this.frame1 = new global::Gtk.Frame();
76
+		this.frame1.Name = "frame1";
77
+		this.frame1.ShadowType = ((global::Gtk.ShadowType)(0));
78
+		// Container child frame1.Gtk.Container+ContainerChild
79
+		this.fixed4 = new global::Gtk.Fixed();
80
+		this.fixed4.Name = "fixed4";
81
+		this.fixed4.HasWindow = false;
82
+		// Container child fixed4.Gtk.Fixed+FixedChild
83
+		this.button7 = new global::Gtk.Button();
84
+		this.button7.CanFocus = true;
85
+		this.button7.Name = "button7";
86
+		this.button7.UseUnderline = true;
87
+		this.button7.Label = global::Mono.Unix.Catalog.GetString("GtkButton");
88
+		this.fixed4.Add(this.button7);
89
+		global::Gtk.Fixed.FixedChild w5 = ((global::Gtk.Fixed.FixedChild)(this.fixed4[this.button7]));
90
+		w5.X = 30;
91
+		w5.Y = 25;
92
+		this.frame1.Add(this.fixed4);
93
+		this.GtkLabel2 = new global::Gtk.Label();
94
+		this.GtkLabel2.Name = "GtkLabel2";
95
+		this.GtkLabel2.LabelProp = global::Mono.Unix.Catalog.GetString("<b>Controls</b>");
96
+		this.GtkLabel2.UseMarkup = true;
97
+		this.frame1.LabelWidget = this.GtkLabel2;
98
+		w4.Add(this.frame1);
99
+		this.GtkScrolledWindow.Add(w4);
100
+		this.alignment1.Add(this.GtkScrolledWindow);
101
+		this.hbox1.Add(this.alignment1);
102
+		global::Gtk.Box.BoxChild w10 = ((global::Gtk.Box.BoxChild)(this.hbox1[this.alignment1]));
103
+		w10.Position = 1;
104
+		this.vbox1.Add(this.hbox1);
105
+		global::Gtk.Box.BoxChild w11 = ((global::Gtk.Box.BoxChild)(this.vbox1[this.hbox1]));
106
+		w11.Position = 1;
107
+		// Container child vbox1.Gtk.Box+BoxChild
108
+		this.statusbar1 = new global::Gtk.Statusbar();
109
+		this.statusbar1.Name = "statusbar1";
110
+		this.statusbar1.Spacing = 6;
111
+		this.vbox1.Add(this.statusbar1);
112
+		global::Gtk.Box.BoxChild w12 = ((global::Gtk.Box.BoxChild)(this.vbox1[this.statusbar1]));
113
+		w12.Position = 2;
114
+		w12.Expand = false;
115
+		w12.Fill = false;
116
+		this.Add(this.vbox1);
117
+		if ((this.Child != null))
118
+		{
119
+			this.Child.ShowAll();
120
+		}
121
+		this.DefaultWidth = 1039;
122
+		this.DefaultHeight = 705;
123
+		this.Show();
124
+		this.DeleteEvent += new global::Gtk.DeleteEventHandler(this.OnDeleteEvent);
125
+	}
126
+}

+ 30
- 0
software/monitor/monitor/gtk-gui/generated.cs View File

@@ -0,0 +1,30 @@
1
+
2
+// This file has been generated by the GUI designer. Do not modify.
3
+namespace Stetic
4
+{
5
+	internal class Gui
6
+	{
7
+		private static bool initialized;
8
+
9
+		internal static void Initialize(Gtk.Widget iconRenderer)
10
+		{
11
+			if ((Stetic.Gui.initialized == false))
12
+			{
13
+				Stetic.Gui.initialized = true;
14
+			}
15
+		}
16
+	}
17
+
18
+	internal class ActionGroups
19
+	{
20
+		public static Gtk.ActionGroup GetActionGroup(System.Type type)
21
+		{
22
+			return Stetic.ActionGroups.GetActionGroup(type.FullName);
23
+		}
24
+
25
+		public static Gtk.ActionGroup GetActionGroup(string name)
26
+		{
27
+			return null;
28
+		}
29
+	}
30
+}

+ 129
- 0
software/monitor/monitor/gtk-gui/gui.stetic View File

@@ -0,0 +1,129 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<stetic-interface>
3
+  <configuration>
4
+    <images-root-path>..</images-root-path>
5
+  </configuration>
6
+  <import>
7
+    <widget-library name="glade-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
8
+    <widget-library name="../bin/Debug/monitor.exe" internal="true" />
9
+  </import>
10
+  <widget class="Gtk.Window" id="MainWindow" design-size="1039 705">
11
+    <action-group name="Default" />
12
+    <property name="MemberName" />
13
+    <property name="Title" translatable="yes">Monitor UI</property>
14
+    <property name="WindowPosition">CenterOnParent</property>
15
+    <signal name="DeleteEvent" handler="OnDeleteEvent" />
16
+    <child>
17
+      <widget class="Gtk.VBox" id="vbox1">
18
+        <property name="MemberName" />
19
+        <property name="Spacing">6</property>
20
+        <child>
21
+          <widget class="Gtk.MenuBar" id="menubar1">
22
+            <property name="MemberName" />
23
+            <node name="__gtksharp_132_Stetic_Editor_ActionMenuBar" type="Menubar" />
24
+          </widget>
25
+          <packing>
26
+            <property name="Position">0</property>
27
+            <property name="AutoSize">True</property>
28
+            <property name="Expand">False</property>
29
+            <property name="Fill">False</property>
30
+          </packing>
31
+        </child>
32
+        <child>
33
+          <widget class="Gtk.HBox" id="hbox1">
34
+            <property name="MemberName" />
35
+            <property name="Spacing">6</property>
36
+            <child>
37
+              <widget class="Gtk.DrawingArea" id="drawingarea1">
38
+                <property name="MemberName" />
39
+              </widget>
40
+              <packing>
41
+                <property name="Position">0</property>
42
+                <property name="AutoSize">True</property>
43
+              </packing>
44
+            </child>
45
+            <child>
46
+              <widget class="Gtk.Alignment" id="alignment1">
47
+                <property name="MemberName" />
48
+                <child>
49
+                  <widget class="Gtk.ScrolledWindow" id="GtkScrolledWindow">
50
+                    <property name="MemberName" />
51
+                    <property name="ShadowType">In</property>
52
+                    <child>
53
+                      <widget class="Gtk.Viewport" id="GtkViewport">
54
+                        <property name="MemberName" />
55
+                        <property name="ShadowType">None</property>
56
+                        <child>
57
+                          <widget class="Gtk.Frame" id="frame1">
58
+                            <property name="MemberName" />
59
+                            <property name="ShowScrollbars">True</property>
60
+                            <property name="ShadowType">None</property>
61
+                            <child>
62
+                              <widget class="Gtk.Fixed" id="fixed4">
63
+                                <property name="MemberName" />
64
+                                <property name="HasWindow">False</property>
65
+                                <child>
66
+                                  <widget class="Gtk.Button" id="button7">
67
+                                    <property name="MemberName" />
68
+                                    <property name="CanFocus">True</property>
69
+                                    <property name="Type">TextOnly</property>
70
+                                    <property name="Label" translatable="yes">GtkButton</property>
71
+                                    <property name="UseUnderline">True</property>
72
+                                  </widget>
73
+                                  <packing>
74
+                                    <property name="X">30</property>
75
+                                    <property name="Y">25</property>
76
+                                  </packing>
77
+                                </child>
78
+                              </widget>
79
+                            </child>
80
+                            <child>
81
+                              <widget class="Gtk.Label" id="GtkLabel2">
82
+                                <property name="MemberName" />
83
+                                <property name="LabelProp" translatable="yes">&lt;b&gt;Controls&lt;/b&gt;</property>
84
+                                <property name="UseMarkup">True</property>
85
+                              </widget>
86
+                              <packing>
87
+                                <property name="type">label_item</property>
88
+                              </packing>
89
+                            </child>
90
+                          </widget>
91
+                        </child>
92
+                      </widget>
93
+                    </child>
94
+                  </widget>
95
+                </child>
96
+              </widget>
97
+              <packing>
98
+                <property name="Position">1</property>
99
+                <property name="AutoSize">True</property>
100
+              </packing>
101
+            </child>
102
+          </widget>
103
+          <packing>
104
+            <property name="Position">1</property>
105
+            <property name="AutoSize">True</property>
106
+          </packing>
107
+        </child>
108
+        <child>
109
+          <widget class="Gtk.Statusbar" id="statusbar1">
110
+            <property name="MemberName" />
111
+            <property name="Spacing">6</property>
112
+            <child>
113
+              <placeholder />
114
+            </child>
115
+            <child>
116
+              <placeholder />
117
+            </child>
118
+          </widget>
119
+          <packing>
120
+            <property name="Position">2</property>
121
+            <property name="AutoSize">True</property>
122
+            <property name="Expand">False</property>
123
+            <property name="Fill">False</property>
124
+          </packing>
125
+        </child>
126
+      </widget>
127
+    </child>
128
+  </widget>
129
+</stetic-interface>

+ 64
- 0
software/monitor/monitor/monitor.csproj View File

@@ -0,0 +1,64 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3
+  <PropertyGroup>
4
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
5
+    <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
6
+    <ProjectGuid>{F759E76E-E6D5-4117-8CE3-7FB83FECCAF9}</ProjectGuid>
7
+    <OutputType>WinExe</OutputType>
8
+    <RootNamespace>monitor</RootNamespace>
9
+    <AssemblyName>monitor</AssemblyName>
10
+    <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
11
+  </PropertyGroup>
12
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
13
+    <DebugSymbols>true</DebugSymbols>
14
+    <DebugType>full</DebugType>
15
+    <Optimize>false</Optimize>
16
+    <OutputPath>bin\Debug</OutputPath>
17
+    <DefineConstants>DEBUG;</DefineConstants>
18
+    <ErrorReport>prompt</ErrorReport>
19
+    <WarningLevel>4</WarningLevel>
20
+    <PlatformTarget>x86</PlatformTarget>
21
+  </PropertyGroup>
22
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
23
+    <Optimize>true</Optimize>
24
+    <OutputPath>bin\Release</OutputPath>
25
+    <ErrorReport>prompt</ErrorReport>
26
+    <WarningLevel>4</WarningLevel>
27
+    <PlatformTarget>x86</PlatformTarget>
28
+  </PropertyGroup>
29
+  <ItemGroup>
30
+    <Reference Include="System" />
31
+    <Reference Include="gtk-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
32
+      <SpecificVersion>False</SpecificVersion>
33
+    </Reference>
34
+    <Reference Include="gdk-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
35
+      <SpecificVersion>False</SpecificVersion>
36
+    </Reference>
37
+    <Reference Include="glib-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
38
+      <SpecificVersion>False</SpecificVersion>
39
+    </Reference>
40
+    <Reference Include="glade-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
41
+      <SpecificVersion>False</SpecificVersion>
42
+    </Reference>
43
+    <Reference Include="pango-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
44
+      <SpecificVersion>False</SpecificVersion>
45
+    </Reference>
46
+    <Reference Include="atk-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
47
+      <SpecificVersion>False</SpecificVersion>
48
+    </Reference>
49
+    <Reference Include="Mono.Posix" />
50
+  </ItemGroup>
51
+  <ItemGroup>
52
+    <EmbeddedResource Include="gtk-gui\gui.stetic">
53
+      <LogicalName>gui.stetic</LogicalName>
54
+    </EmbeddedResource>
55
+  </ItemGroup>
56
+  <ItemGroup>
57
+    <Compile Include="gtk-gui\generated.cs" />
58
+    <Compile Include="MonitorUI.cs" />
59
+    <Compile Include="gtk-gui\MainWindow.cs" />
60
+    <Compile Include="Program.cs" />
61
+    <Compile Include="Properties\AssemblyInfo.cs" />
62
+  </ItemGroup>
63
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
64
+</Project>

+ 17
- 0
software/monitor/monitor/monitor.sln View File

@@ -0,0 +1,17 @@
1
+
2
+Microsoft Visual Studio Solution File, Format Version 12.00
3
+# Visual Studio 2012
4
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "monitor", "monitor.csproj", "{F759E76E-E6D5-4117-8CE3-7FB83FECCAF9}"
5
+EndProject
6
+Global
7
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
8
+		Debug|x86 = Debug|x86
9
+		Release|x86 = Release|x86
10
+	EndGlobalSection
11
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
12
+		{F759E76E-E6D5-4117-8CE3-7FB83FECCAF9}.Debug|x86.ActiveCfg = Debug|x86
13
+		{F759E76E-E6D5-4117-8CE3-7FB83FECCAF9}.Debug|x86.Build.0 = Debug|x86
14
+		{F759E76E-E6D5-4117-8CE3-7FB83FECCAF9}.Release|x86.ActiveCfg = Release|x86
15
+		{F759E76E-E6D5-4117-8CE3-7FB83FECCAF9}.Release|x86.Build.0 = Release|x86
16
+	EndGlobalSection
17
+EndGlobal

BIN
software/raspberry/conception_robot_2018.pdf View File


BIN
software/raspberry/sujet_robot_2018.pdf View File


+ 28
- 0
software/raspberry/superviseur-robot/lib/server.h View File

@@ -0,0 +1,28 @@
1
+/*
2
+ * To change this license header, choose License Headers in Project Properties.
3
+ * To change this template file, choose Tools | Templates
4
+ * and open the template in the editor.
5
+ */
6
+
7
+/* 
8
+ * File:   server.h
9
+ * Author: dimercur
10
+ *
11
+ * Created on 19 octobre 2018, 14:24
12
+ */
13
+
14
+#ifndef _SERVER_H_
15
+#define _SERVER_H_
16
+
17
+#define DEFAULT_SERVER_PORT 2323
18
+
19
+int openServer (int port);
20
+int closeServer();
21
+int acceptClient();
22
+
23
+int sendDataToServer(char *data, int length);
24
+int sendDataToServerForClient(int client, char *data, int length);
25
+int receiveDataFromServer(char *data, int size);
26
+int receiveDataFromServerFromClient(int client, char *data, int size);
27
+#endif /* _SERVER_H_ */
28
+

+ 14
- 96
software/raspberry/superviseur-robot/lib/src/monitor.cpp View File

@@ -1,4 +1,5 @@
1 1
 #include "monitor.h"
2
+#include "server.h"
2 3
 
3 4
 using namespace std;
4 5
 
@@ -6,131 +7,48 @@ SOCKADDR_IN ssin;
6 7
 SOCKET sock;
7 8
 socklen_t recsize = sizeof (ssin);
8 9
 
9
-/*Socket et contexte d'adressage du client */
10
-SOCKADDR_IN csin;
11
-SOCKET csock;
12
-socklen_t crecsize = sizeof (csin);
13
-
14
-int sock_err;
15
-pid_t pidNodejs;
16 10
 
17 11
 string serverReceive(int size);
18
-int serverSend(const void *data, int dataLength);
12
+int sendMessage(const char *data, int dataLength);
19 13
 int receive(char *data);
20 14
 
21
-int run_nodejs(const char * path, char * file) {
22
-    int ret;
23
-    //char *const parmList[] = {"/bin/ls", "-l", "/home", NULL};
24
-    char * const parmList[] = {"node", file, NULL};
25
-
26
-    if ((ret = fork()) == -1)
27
-        perror("fork error");
28
-    else if (ret == 0) {
29
-        ret = execv(path, parmList);
30
-    }
31
-    return ret;
32
-}
33
-
34
-int kill_nodejs() {
35
-#ifdef __VERBOSE__  
36
-    printf("kill nodejs\n");
37
-#endif
38
-    return kill(pidNodejs, SIGTERM);
39
-}
40
-
41
-int open_server(int port) {
42
-    /* Création d'un socket */
43
-    sock = socket(AF_INET, SOCK_STREAM, 0);
44
-    int enable = 1;
45
-
46
-    /* Si la socket est valide */
47
-    if (sock != INVALID_SOCKET) {
48
-#ifdef _WITH_TRACE_
49
-        printf("TCP/IP Socket %d opened\n", sock);
50
-#endif
51
-        setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &enable, sizeof (enable));
52
-
53
-        /* Configuration */
54
-        ssin.sin_addr.s_addr = htonl(INADDR_ANY); /* Adresse IP automatique */
55
-        ssin.sin_family = AF_INET; /* Protocole familial (IP) */
56
-        ssin.sin_port = htons(port); /* Listage du port */
57
-        sock_err = bind(sock, (SOCKADDR*) & ssin, recsize);
58
-
59
-        /* Si la socket fonctionne */
60
-        if (sock_err != SOCKET_ERROR) {
61
-            /* Démarrage du listage (mode server) */
62
-            sock_err = listen(sock, 1);
63
-
64
-            /* Si la socket fonctionne */
65
-            if (sock_err != SOCKET_ERROR) {
66
-                /* Attente pendant laquelle le client se connecte */
67
-#ifdef _WITH_TRACE_
68
-                printf("Waiting a client on port %d\n", port);
69
-#endif
70
-                csock = accept(sock, (SOCKADDR*) & csin, &crecsize);
71
-#ifdef _WITH_TRACE_
72
-                printf("Client connected\n");
73
-#endif
74
-                return 0;
75
-            } else {
76
-                perror("listen");
77
-            }
78
-        } else {
79
-            perror("bind");
80
-            return (-1);
81
-        }
82
-    } else {
83
-        perror("socket");
84
-        return (-1);
85
-    }
86
-    return 0;
87
-}
88
-
89
-int close_server(void) {
90
-    /* Fermeture de la socket client et de la socket serveur */
91
-    close(csock);
92
-    close(sock);
93
-    printf("Socket fermé\n");
94
-    return 0;
95
-}
96
-
97 15
 int send_message_to_monitor(const char* typeMessage, const void * data) {
98 16
     if ((string) typeMessage == HEADER_STM_IMAGE) {
99 17
         Jpg * imgC = (Jpg*) data;
100
-        serverSend("IMG", 3);
101
-        serverSend(imgC->data(), imgC->size());
102
-        serverSend("TRAME", 5);
18
+        sendMessage("IMG", 3);
19
+        sendMessage((const char*)imgC->data(), imgC->size());
20
+        sendMessage("TRAME", 5);
103 21
         return 0;
104 22
     } else if ((string) typeMessage == HEADER_STM_POS) {
105 23
         char buffer[400];
106 24
         Position * maPosition = (Position*) data;
107 25
         sprintf(buffer, "POScenter: %3d;%3d | %.1fTRAME", maPosition->center.x, maPosition->center.y, maPosition->angle);
108
-        serverSend(buffer, strlen(buffer));
26
+        sendMessage(buffer, strlen(buffer));
109 27
         return 0;
110 28
     } else if ((string) typeMessage == HEADER_STM_MES) {
111 29
         char buffer[50];
112 30
         sprintf(buffer, "MSG%sTRAME", (const char*) data);
113
-        serverSend(buffer, strlen(buffer));
31
+        sendMessage(buffer, strlen(buffer));
114 32
         return 0;
115 33
     } else if ((string) typeMessage == HEADER_STM_ACK) {
116 34
         char buffer[50];
117 35
         sprintf(buffer, "ACK%sTRAME", (const char*) data);
118
-        serverSend(buffer, strlen(buffer));
36
+        sendMessage(buffer, strlen(buffer));
119 37
         return 0;
120 38
     } else if ((string) typeMessage == HEADER_STM_BAT) {
121 39
         char buffer[50];
122 40
         sprintf(buffer, "BAT%sTRAME", (const char*) data);
123
-        serverSend(buffer, strlen(buffer));
41
+        sendMessage(buffer, strlen(buffer));
124 42
         return 0;
125 43
     } else if ((string) typeMessage == HEADER_STM_NO_ACK) {
126 44
         char buffer[50];
127 45
         sprintf(buffer, "NAK%sTRAME", (const char*) data);
128
-        serverSend(buffer, strlen(buffer));
46
+        sendMessage(buffer, strlen(buffer));
129 47
         return 0;
130 48
     } else if ((string) typeMessage == HEADER_STM_LOST_DMB) {
131 49
         char buffer[50];
132 50
         sprintf(buffer, "LCD%sTRAME", (const char*) data);
133
-        serverSend(buffer, strlen(buffer));
51
+        sendMessage(buffer, strlen(buffer));
134 52
         return 0;
135 53
     } else {
136 54
         return -1;
@@ -146,13 +64,13 @@ int receive_message_from_monitor(char *typeMessage, char *data) {
146 64
 
147 65
 int receive(char *data) {
148 66
     int result;
149
-    result = recv(csock, data, 20, 0);
67
+    result = receiveDataFromServer(data, 20);
150 68
     //cout <<"Data : " << data << endl;
151 69
     return result;
152 70
 }
153 71
 
154
-int serverSend(const void *data, int dataLength) {
155
-    if (send(csock, data, dataLength, 0) != dataLength) {
72
+int sendMessage(const char *data, int dataLength) {
73
+    if (sendDataToServer((char*)data, dataLength) != dataLength) {
156 74
         perror("Send failed : ");
157 75
         return false;
158 76
     }

+ 97
- 0
software/raspberry/superviseur-robot/lib/src/server.cpp View File

@@ -0,0 +1,97 @@
1
+/*
2
+ * To change this license header, choose License Headers in Project Properties.
3
+ * To change this template file, choose Tools | Templates
4
+ * and open the template in the editor.
5
+ */
6
+
7
+/* 
8
+ * File:   server.cpp
9
+ * Author: dimercur
10
+ * 
11
+ * Created on 19 octobre 2018, 14:24
12
+ */
13
+
14
+#include "server.h"
15
+#include <sys/socket.h>
16
+#include <arpa/inet.h>
17
+#include <netinet/in.h>
18
+
19
+#include <stdio.h>
20
+#include <stdlib.h>
21
+#include <unistd.h>
22
+
23
+#define NB_CONNECTION_MAX 1
24
+
25
+int socketFD = -1;
26
+int clientID = -1;
27
+
28
+int openServer(int port) {
29
+    struct sockaddr_in server;
30
+
31
+    socketFD = socket(AF_INET, SOCK_STREAM, 0);
32
+    if (socketFD < 0) {
33
+        perror("Can not create socket");
34
+        exit(-1);
35
+    }
36
+
37
+    server.sin_addr.s_addr = INADDR_ANY;
38
+    server.sin_family = AF_INET;
39
+    server.sin_port = htons(port);
40
+
41
+    if (bind(socketFD, (struct sockaddr *) &server, sizeof (server)) < 0) {
42
+        perror("Can not bind socket");
43
+        exit(-1);
44
+    }
45
+
46
+    listen(socketFD, NB_CONNECTION_MAX);
47
+
48
+    return socketFD;
49
+}
50
+
51
+int closeServer() {
52
+    close(socketFD);
53
+
54
+    socketFD = -1;
55
+}
56
+
57
+int acceptClient() {
58
+    struct sockaddr_in client;
59
+    int c = sizeof (struct sockaddr_in);
60
+
61
+    clientID = accept(socketFD, (struct sockaddr *) &client, (socklen_t*) & c);
62
+
63
+    if (clientID < 0) {
64
+        perror("Accept failed in acceptClient");
65
+        exit(-1);
66
+    }
67
+
68
+    return clientID;
69
+}
70
+
71
+int sendDataToServer(char *data, int length) {
72
+    return sendDataToServerForClient(clientID, data, length);
73
+}
74
+
75
+int sendDataToServerForClient(int client, char *data, int length) {
76
+    if (client >= 0)
77
+        return write(client, (void*)data, length);
78
+    else return 0;
79
+}
80
+
81
+int receiveDataFromServer(char *data, int size) {
82
+    return receiveDataFromServerFromClient(clientID, data, size);
83
+}
84
+
85
+int receiveDataFromServerFromClient(int client, char *data, int size) {
86
+    char length = 0;
87
+
88
+    if (client > 0) {
89
+        if ((length = recv(client, (void*)data, size, 0)) > 0) {
90
+            data[length] = 0;
91
+        }
92
+    }
93
+
94
+    return length;
95
+}
96
+
97
+

+ 1
- 0
software/raspberry/superviseur-robot/nbproject/private/CodeAssistancePathMapper.properties View File

@@ -0,0 +1 @@
1
+# Automatic path mapper. CRC = 1

+ 48
- 0
software/raspberry/superviseur-robot/nbproject/private/Default-build.log View File

@@ -0,0 +1,48 @@
1
+Scanning dependencies of target destijl
2
+[ 12%] Building CXX object lib/CMakeFiles/destijl.dir/src/robot.cpp.o
3
+[ 25%] Building CXX object lib/CMakeFiles/destijl.dir/src/monitor.cpp.o
4
+In file included from /home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/monitor.cpp:1:0:
5
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/./monitor.h:65:117: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
6
+ int run_nodejs(const char *path = (const char*)DEFAULT_NODEJS_PATH, char *file = (const char*)DEFAULT_INTERFACE_FILE);
7
+                                                                                                                     ^
8
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/monitor.cpp: In function ‘int run_nodejs(const char*, char*)’:
9
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/monitor.cpp:24:50: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
10
+     char * const parmList[] = {"node", file, NULL};
11
+                                                  ^
12
+[ 37%] Building CXX object lib/CMakeFiles/destijl.dir/src/message.cpp.o
13
+[ 50%] Building CXX object lib/CMakeFiles/destijl.dir/src/image.cpp.o
14
+[ 62%] Linking CXX static library /home/dimercur/Documents/Travail/git/dumber/software/raspberry/lib/libdestijl.a
15
+[ 62%] Built target destijl
16
+Scanning dependencies of target superviseur
17
+[ 75%] Building CXX object superviseur/CMakeFiles/superviseur.dir/src/main.cpp.o
18
+In file included from /home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.h:28:0,
19
+                 from /home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/main.cpp:19:
20
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/../lib/monitor.h:65:117: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
21
+ int run_nodejs(const char *path = (const char*)DEFAULT_NODEJS_PATH, char *file = (const char*)DEFAULT_INTERFACE_FILE);
22
+                                                                                                                     ^
23
+[ 87%] Building CXX object superviseur/CMakeFiles/superviseur.dir/src/functions.cpp.o
24
+In file included from /home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.h:28:0,
25
+                 from /home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.cpp:1:
26
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/../lib/monitor.h:65:117: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
27
+ int run_nodejs(const char *path = (const char*)DEFAULT_NODEJS_PATH, char *file = (const char*)DEFAULT_INTERFACE_FILE);
28
+                                                                                                                     ^
29
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.cpp: In function ‘void f_server(void*)’:
30
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.cpp:15:81: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
31
+     err = run_nodejs("/usr/local/bin/node", "/home/pi/Interface_Robot/server.js");
32
+                                                                                 ^
33
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.cpp: In function ‘void f_openComRobot(void*)’:
34
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.cpp:140:53: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
35
+             set_msgToMon_header(&msg, HEADER_STM_ACK);
36
+                                                     ^
37
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.cpp:144:56: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
38
+             set_msgToMon_header(&msg, HEADER_STM_NO_ACK);
39
+                                                        ^
40
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.cpp: In function ‘void f_startRobot(void*)’:
41
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.cpp:176:53: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
42
+             set_msgToMon_header(&msg, HEADER_STM_ACK);
43
+                                                     ^
44
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.cpp:180:56: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
45
+             set_msgToMon_header(&msg, HEADER_STM_NO_ACK);
46
+                                                        ^
47
+[100%] Linking CXX executable /home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur/bin/superviseur
48
+[100%] Built target superviseur

+ 225
- 0
software/raspberry/superviseur-robot/nbproject/private/Default-exec.log View File

@@ -0,0 +1,225 @@
1
+called: /usr/bin/g++
2
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib
3
+	/usr/bin/g++
4
+	-I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/.
5
+	-I/usr/xenomai/include/mercury
6
+	-I/usr/xenomai/include
7
+	-D_GNU_SOURCE
8
+	-D_REENTRANT
9
+	-fasynchronous-unwind-tables
10
+	-D__MERCURY__
11
+	-I/usr/xenomai/include/alchemy
12
+	-g3
13
+	-gdwarf-2
14
+	-std=gnu++11
15
+	-o
16
+	CMakeFiles/destijl.dir/src/robot.cpp.o
17
+	-c
18
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/robot.cpp
19
+
20
+called: /usr/bin/g++
21
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib
22
+	/usr/bin/g++
23
+	-I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/.
24
+	-I/usr/xenomai/include/mercury
25
+	-I/usr/xenomai/include
26
+	-D_GNU_SOURCE
27
+	-D_REENTRANT
28
+	-fasynchronous-unwind-tables
29
+	-D__MERCURY__
30
+	-I/usr/xenomai/include/alchemy
31
+	-g3
32
+	-gdwarf-2
33
+	-std=gnu++11
34
+	-o
35
+	CMakeFiles/destijl.dir/src/monitor.cpp.o
36
+	-c
37
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/monitor.cpp
38
+
39
+called: /usr/bin/g++
40
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib
41
+	/usr/bin/g++
42
+	-I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/.
43
+	-I/usr/xenomai/include/mercury
44
+	-I/usr/xenomai/include
45
+	-D_GNU_SOURCE
46
+	-D_REENTRANT
47
+	-fasynchronous-unwind-tables
48
+	-D__MERCURY__
49
+	-I/usr/xenomai/include/alchemy
50
+	-g3
51
+	-gdwarf-2
52
+	-std=gnu++11
53
+	-o
54
+	CMakeFiles/destijl.dir/src/message.cpp.o
55
+	-c
56
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/message.cpp
57
+
58
+called: /usr/bin/g++
59
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib
60
+	/usr/bin/g++
61
+	-I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/.
62
+	-I/usr/xenomai/include/mercury
63
+	-I/usr/xenomai/include
64
+	-D_GNU_SOURCE
65
+	-D_REENTRANT
66
+	-fasynchronous-unwind-tables
67
+	-D__MERCURY__
68
+	-I/usr/xenomai/include/alchemy
69
+	-g3
70
+	-gdwarf-2
71
+	-std=gnu++11
72
+	-o
73
+	CMakeFiles/destijl.dir/src/image.cpp.o
74
+	-c
75
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/image.cpp
76
+
77
+called: /usr/bin/ar
78
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib
79
+	/usr/bin/ar
80
+	qc
81
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/lib/libdestijl.a
82
+	CMakeFiles/destijl.dir/src/robot.cpp.o
83
+	CMakeFiles/destijl.dir/src/monitor.cpp.o
84
+	CMakeFiles/destijl.dir/src/message.cpp.o
85
+	CMakeFiles/destijl.dir/src/image.cpp.o
86
+
87
+called: /usr/bin/g++
88
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur
89
+	/usr/bin/g++
90
+	-I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/./src
91
+	-I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/../lib
92
+	-I/usr/xenomai/include
93
+	-I/usr/xenomai/include/mercury
94
+	-I/usr/xenomai/include/mercury
95
+	-I/usr/xenomai/include
96
+	-D_GNU_SOURCE
97
+	-D_REENTRANT
98
+	-fasynchronous-unwind-tables
99
+	-D__MERCURY__
100
+	-I/usr/xenomai/include/alchemy
101
+	-g3
102
+	-gdwarf-2
103
+	-std=gnu++11
104
+	-o
105
+	CMakeFiles/superviseur.dir/src/main.cpp.o
106
+	-c
107
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/main.cpp
108
+
109
+called: /usr/bin/g++
110
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur
111
+	/usr/bin/g++
112
+	-I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/./src
113
+	-I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/../lib
114
+	-I/usr/xenomai/include
115
+	-I/usr/xenomai/include/mercury
116
+	-I/usr/xenomai/include/mercury
117
+	-I/usr/xenomai/include
118
+	-D_GNU_SOURCE
119
+	-D_REENTRANT
120
+	-fasynchronous-unwind-tables
121
+	-D__MERCURY__
122
+	-I/usr/xenomai/include/alchemy
123
+	-g3
124
+	-gdwarf-2
125
+	-std=gnu++11
126
+	-o
127
+	CMakeFiles/superviseur.dir/src/functions.cpp.o
128
+	-c
129
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.cpp
130
+
131
+called: /usr/bin/g++
132
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur
133
+	/usr/bin/g++
134
+	-I/usr/xenomai/include/mercury
135
+	-I/usr/xenomai/include
136
+	-D_GNU_SOURCE
137
+	-D_REENTRANT
138
+	-fasynchronous-unwind-tables
139
+	-D__MERCURY__
140
+	-I/usr/xenomai/include/alchemy
141
+	-g3
142
+	-gdwarf-2
143
+	-Wl,--no-as-needed
144
+	-lalchemy
145
+	-lcopperplate
146
+	/usr/xenomai/lib/xenomai/bootstrap.o
147
+	-Wl,--wrap=main
148
+	-Wl,--dynamic-list=/usr/xenomai/lib/dynlist.ld
149
+	-L/usr/xenomai/lib
150
+	-lmercury
151
+	-lpthread
152
+	-lrt
153
+	CMakeFiles/superviseur.dir/src/main.cpp.o
154
+	CMakeFiles/superviseur.dir/src/functions.cpp.o
155
+	-o
156
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur/bin/superviseur
157
+	-L/usr/xenomai/lib
158
+	-Wl,-rpath,/usr/xenomai/lib
159
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/lib/libdestijl.a
160
+
161
+called: /usr/bin/ld
162
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur
163
+	/usr/bin/ld
164
+	-plugin
165
+	/usr/lib/gcc/x86_64-linux-gnu/7/liblto_plugin.so
166
+	-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper
167
+	-plugin-opt=-fresolution=/tmp/ccpeJ2Nc.res
168
+	-plugin-opt=-pass-through=-lgcc_s
169
+	-plugin-opt=-pass-through=-lgcc
170
+	-plugin-opt=-pass-through=-lc
171
+	-plugin-opt=-pass-through=-lgcc_s
172
+	-plugin-opt=-pass-through=-lgcc
173
+	--sysroot=/
174
+	--build-id
175
+	--eh-frame-hdr
176
+	-m
177
+	elf_x86_64
178
+	--hash-style=gnu
179
+	--as-needed
180
+	-dynamic-linker
181
+	/lib64/ld-linux-x86-64.so.2
182
+	-pie
183
+	-z
184
+	now
185
+	-z
186
+	relro
187
+	-o
188
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur/bin/superviseur
189
+	/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/Scrt1.o
190
+	/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crti.o
191
+	/usr/lib/gcc/x86_64-linux-gnu/7/crtbeginS.o
192
+	-L/usr/xenomai/lib
193
+	-L/usr/xenomai/lib
194
+	-L/usr/lib/gcc/x86_64-linux-gnu/7
195
+	-L/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu
196
+	-L/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib
197
+	-L/lib/x86_64-linux-gnu
198
+	-L/lib/../lib
199
+	-L/usr/lib/x86_64-linux-gnu
200
+	-L/usr/lib/../lib
201
+	-L/usr/lib/gcc/x86_64-linux-gnu/7/../../..
202
+	--no-as-needed
203
+	-lalchemy
204
+	-lcopperplate
205
+	/usr/xenomai/lib/xenomai/bootstrap.o
206
+	--wrap=main
207
+	--dynamic-list=/usr/xenomai/lib/dynlist.ld
208
+	-lmercury
209
+	-lpthread
210
+	-lrt
211
+	CMakeFiles/superviseur.dir/src/main.cpp.o
212
+	CMakeFiles/superviseur.dir/src/functions.cpp.o
213
+	-rpath
214
+	/usr/xenomai/lib
215
+	/home/dimercur/Documents/Travail/git/dumber/software/raspberry/lib/libdestijl.a
216
+	-lstdc++
217
+	-lm
218
+	-lgcc_s
219
+	-lgcc
220
+	-lc
221
+	-lgcc_s
222
+	-lgcc
223
+	/usr/lib/gcc/x86_64-linux-gnu/7/crtendS.o
224
+	/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crtn.o
225
+

+ 6
- 0
software/raspberry/superviseur-robot/nbproject/private/Default.properties View File

@@ -0,0 +1,6 @@
1
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/message.cpp=/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib#-I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/. -I/usr/xenomai/include/mercury -I/usr/xenomai/include -D_GNU_SOURCE -D_REENTRANT -fasynchronous-unwind-tables -D__MERCURY__ -I/usr/xenomai/include/alchemy -g3 -gdwarf-2 -std=gnu++11 -o CMakeFiles/destijl.dir/src/message.cpp.o -c /home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/message.cpp
2
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/monitor.cpp=/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib#-I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/. -I/usr/xenomai/include/mercury -I/usr/xenomai/include -D_GNU_SOURCE -D_REENTRANT -fasynchronous-unwind-tables -D__MERCURY__ -I/usr/xenomai/include/alchemy -g3 -gdwarf-2 -std=gnu++11 -o CMakeFiles/destijl.dir/src/monitor.cpp.o -c /home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/monitor.cpp
3
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/robot.cpp=/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib#-I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/. -I/usr/xenomai/include/mercury -I/usr/xenomai/include -D_GNU_SOURCE -D_REENTRANT -fasynchronous-unwind-tables -D__MERCURY__ -I/usr/xenomai/include/alchemy -g3 -gdwarf-2 -std=gnu++11 -o CMakeFiles/destijl.dir/src/robot.cpp.o -c /home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/robot.cpp
4
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/image.cpp=/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib#-I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/. -I/usr/xenomai/include/mercury -I/usr/xenomai/include -D_GNU_SOURCE -D_REENTRANT -fasynchronous-unwind-tables -D__MERCURY__ -I/usr/xenomai/include/alchemy -g3 -gdwarf-2 -std=gnu++11 -o CMakeFiles/destijl.dir/src/image.cpp.o -c /home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/image.cpp
5
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/main.cpp=/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur#-I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/./src -I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/../lib -I/usr/xenomai/include -I/usr/xenomai/include/mercury -I/usr/xenomai/include/mercury -I/usr/xenomai/include -D_GNU_SOURCE -D_REENTRANT -fasynchronous-unwind-tables -D__MERCURY__ -I/usr/xenomai/include/alchemy -g3 -gdwarf-2 -std=gnu++11 -o CMakeFiles/superviseur.dir/src/main.cpp.o -c /home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/main.cpp
6
+/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.cpp=/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur#-I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/./src -I/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/../lib -I/usr/xenomai/include -I/usr/xenomai/include/mercury -I/usr/xenomai/include/mercury -I/usr/xenomai/include -D_GNU_SOURCE -D_REENTRANT -fasynchronous-unwind-tables -D__MERCURY__ -I/usr/xenomai/include/alchemy -g3 -gdwarf-2 -std=gnu++11 -o CMakeFiles/superviseur.dir/src/functions.cpp.o -c /home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.cpp

+ 75
- 0
software/raspberry/superviseur-robot/nbproject/private/c_standard_headers_indexer.c View File

@@ -0,0 +1,75 @@
1
+/*
2
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
3
+ *
4
+ * Copyright (c) 2016 Oracle and/or its affiliates. All rights reserved.
5
+ *
6
+ * Oracle and Java are registered trademarks of Oracle and/or its affiliates.
7
+ * Other names may be trademarks of their respective owners.
8
+ *
9
+ * The contents of this file are subject to the terms of either the GNU
10
+ * General Public License Version 2 only ("GPL") or the Common
11
+ * Development and Distribution License("CDDL") (collectively, the
12
+ * "License"). You may not use this file except in compliance with the
13
+ * License. You can obtain a copy of the License at
14
+ * http://www.netbeans.org/cddl-gplv2.html
15
+ * or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the
16
+ * specific language governing permissions and limitations under the
17
+ * License.  When distributing the software, include this License Header
18
+ * Notice in each file and include the License file at
19
+ * nbbuild/licenses/CDDL-GPL-2-CP.  Oracle designates this
20
+ * particular file as subject to the "Classpath" exception as provided
21
+ * by Oracle in the GPL Version 2 section of the License file that
22
+ * accompanied this code. If applicable, add the following below the
23
+ * License Header, with the fields enclosed by brackets [] replaced by
24
+ * your own identifying information:
25
+ * "Portions Copyrighted [year] [name of copyright owner]"
26
+ *
27
+ * If you wish your version of this file to be governed by only the CDDL
28
+ * or only the GPL Version 2, indicate your decision by adding
29
+ * "[Contributor] elects to include this software in this distribution
30
+ * under the [CDDL or GPL Version 2] license." If you do not indicate a
31
+ * single choice of license, a recipient has the option to distribute
32
+ * your version of this file under either the CDDL, the GPL Version 2 or
33
+ * to extend the choice of license to its licensees as provided above.
34
+ * However, if you add GPL Version 2 code and therefore, elected the GPL
35
+ * Version 2 license, then the option applies only if the new code is
36
+ * made subject to such option by the copyright holder.
37
+ *
38
+ * Contributor(s):
39
+ */
40
+
41
+// List of standard headers was taken in http://en.cppreference.com/w/c/header
42
+
43
+#include <assert.h> 	 // Conditionally compiled macro that compares its argument to zero
44
+#include <ctype.h> 	 // Functions to determine the type contained in character data
45
+#include <errno.h> 	 // Macros reporting error conditions
46
+#include <float.h> 	 // Limits of float types
47
+#include <limits.h> 	 // Sizes of basic types
48
+#include <locale.h> 	 // Localization utilities
49
+#include <math.h> 	 // Common mathematics functions
50
+#include <setjmp.h> 	 // Nonlocal jumps
51
+#include <signal.h> 	 // Signal handling
52
+#include <stdarg.h> 	 // Variable arguments
53
+#include <stddef.h> 	 // Common macro definitions
54
+#include <stdio.h> 	 // Input/output
55
+#include <string.h> 	 // String handling
56
+#include <stdlib.h> 	 // General utilities: memory management, program utilities, string conversions, random numbers
57
+#include <time.h> 	 // Time/date utilities
58
+#include <iso646.h>      // (since C95) Alternative operator spellings
59
+#include <wchar.h>       // (since C95) Extended multibyte and wide character utilities
60
+#include <wctype.h>      // (since C95) Wide character classification and mapping utilities
61
+#ifdef _STDC_C99
62
+#include <complex.h>     // (since C99) Complex number arithmetic
63
+#include <fenv.h>        // (since C99) Floating-point environment
64
+#include <inttypes.h>    // (since C99) Format conversion of integer types
65
+#include <stdbool.h>     // (since C99) Boolean type
66
+#include <stdint.h>      // (since C99) Fixed-width integer types
67
+#include <tgmath.h>      // (since C99) Type-generic math (macros wrapping math.h and complex.h)
68
+#endif
69
+#ifdef _STDC_C11
70
+#include <stdalign.h>    // (since C11) alignas and alignof convenience macros
71
+#include <stdatomic.h>   // (since C11) Atomic types
72
+#include <stdnoreturn.h> // (since C11) noreturn convenience macros
73
+#include <threads.h>     // (since C11) Thread library
74
+#include <uchar.h>       // (since C11) UTF-16 and UTF-32 character utilities
75
+#endif

+ 331
- 0
software/raspberry/superviseur-robot/nbproject/private/configurations.xml View File

@@ -0,0 +1,331 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<configurationDescriptor version="100">
3
+  <logicalFolder name="root" displayName="root" projectFiles="true" kind="ROOT">
4
+    <df root="." name="0">
5
+      <df name=".idea">
6
+        <df name="codeStyles">
7
+        </df>
8
+      </df>
9
+      <df name="build">
10
+        <df name="CMakeFiles">
11
+          <df name="3.10.2">
12
+            <df name="CompilerIdCXX">
13
+              <df name="tmp">
14
+              </df>
15
+              <in>CMakeCXXCompilerId.cpp</in>
16
+            </df>
17
+          </df>
18
+          <df name="CMakeTmp">
19
+          </df>
20
+          <in>feature_tests.cxx</in>
21
+        </df>
22
+        <df name="lib">
23
+          <df name="CMakeFiles">
24
+            <df name="destijl.dir">
25
+              <df name="src">
26
+              </df>
27
+            </df>
28
+          </df>
29
+        </df>
30
+        <df name="superviseur">
31
+          <df name="CMakeFiles">
32
+            <df name="superviseur.dir">
33
+              <df name="src">
34
+              </df>
35
+            </df>
36
+          </df>
37
+        </df>
38
+      </df>
39
+      <df name="cmake-build-debug">
40
+        <df name="CMakeFiles">
41
+          <df name="3.10.2">
42
+            <df name="CompilerIdCXX">
43
+              <df name="tmp">
44
+              </df>
45
+              <in>CMakeCXXCompilerId.cpp</in>
46
+            </df>
47
+          </df>
48
+          <df name="3.12.2">
49
+            <df name="CompilerIdCXX">
50
+              <df name="tmp">
51
+              </df>
52
+              <in>CMakeCXXCompilerId.cpp</in>
53
+            </df>
54
+          </df>
55
+          <df name="CMakeTmp">
56
+          </df>
57
+          <in>feature_tests.cxx</in>
58
+        </df>
59
+        <df name="examples">
60
+          <df name="CMakeFiles">
61
+            <df name="serialTest.dir">
62
+              <df name="src">
63
+              </df>
64
+            </df>
65
+            <df name="serialtest.dir">
66
+              <df name="src">
67
+              </df>
68
+            </df>
69
+            <df name="serverTest.dir">
70
+              <df name="src">
71
+              </df>
72
+            </df>
73
+            <df name="servertest.dir">
74
+              <df name="src">
75
+              </df>
76
+            </df>
77
+          </df>
78
+        </df>
79
+        <df name="lib">
80
+          <df name="CMakeFiles">
81
+            <df name="destijl.dir">
82
+              <df name="src">
83
+              </df>
84
+            </df>
85
+          </df>
86
+        </df>
87
+        <df name="monitor">
88
+          <df name="CMakeFiles">
89
+            <df name="monitor.dir">
90
+              <df name="src">
91
+              </df>
92
+            </df>
93
+          </df>
94
+        </df>
95
+        <df name="monitor-pc">
96
+          <df name="CMakeFiles">
97
+            <df name="monitor.dir">
98
+              <df name="src">
99
+              </df>
100
+            </df>
101
+          </df>
102
+        </df>
103
+        <df name="monitor-pthread">
104
+          <df name="CMakeFiles">
105
+            <df name="monitor.dir">
106
+              <df name="src">
107
+              </df>
108
+            </df>
109
+          </df>
110
+        </df>
111
+        <df name="superviseur">
112
+          <df name="CMakeFiles">
113
+            <df name="superviseur-xenomai.dir">
114
+              <df name="src">
115
+              </df>
116
+            </df>
117
+            <df name="superviseur.dir">
118
+              <df name="src">
119
+              </df>
120
+            </df>
121
+          </df>
122
+        </df>
123
+        <df name="superviseur-pthread">
124
+          <df name="CMakeFiles">
125
+            <df name="superviseur-pthread.dir">
126
+              <df name="src">
127
+              </df>
128
+            </df>
129
+          </df>
130
+        </df>
131
+        <df name="superviseur-xenomai">
132
+          <df name="CMakeFiles">
133
+            <df name="superviseur-xenomai.dir">
134
+              <df name="src">
135
+              </df>
136
+            </df>
137
+          </df>
138
+        </df>
139
+      </df>
140
+      <df name="CMakeFiles">
141
+        <df name="3.10.2">
142
+          <df name="CompilerIdCXX">
143
+            <df name="tmp">
144
+            </df>
145
+          </df>
146
+        </df>
147
+        <df name="CMakeTmp">
148
+        </df>
149
+      </df>
150
+      <df name="examples">
151
+        <df name="bin">
152
+        </df>
153
+        <df name="src">
154
+          <in>rtvideoExample.cpp</in>
155
+          <in>serialExample.cpp</in>
156
+          <in>serialTest.cpp</in>
157
+          <in>serverTest.cpp</in>
158
+          <in>uiExample.cpp</in>
159
+          <in>videoExample.cpp</in>
160
+        </df>
161
+      </df>
162
+      <df name="futur">
163
+        <df name="examples">
164
+          <df name="bin">
165
+          </df>
166
+          <df name="src">
167
+            <in>rtvideoExample.cpp</in>
168
+            <in>serialExample.cpp</in>
169
+            <in>serialTest.cpp</in>
170
+            <in>serverTest.cpp</in>
171
+            <in>uiExample.cpp</in>
172
+            <in>videoExample.cpp</in>
173
+          </df>
174
+        </df>
175
+        <df name="lib">
176
+          <df name="src">
177
+            <in>Camera.cpp</in>
178
+            <in>Image.cpp</in>
179
+            <in>MsgManager.cpp</in>
180
+            <in>Robot.cpp</in>
181
+            <in>Serial.cpp</in>
182
+            <in>TcpServer.cpp</in>
183
+          </df>
184
+          <in>Camera.h</in>
185
+          <in>Definition.h</in>
186
+          <in>Image.h</in>
187
+          <in>MsgManager.h</in>
188
+          <in>Robot.h</in>
189
+          <in>Serial.h</in>
190
+          <in>TcpServer.h</in>
191
+        </df>
192
+        <df name="superviseur-xenomai">
193
+          <df name="bin">
194
+          </df>
195
+          <df name="src">
196
+            <in>Program.cpp</in>
197
+            <in>Tasks.cpp</in>
198
+            <in>Tasks.h</in>
199
+          </df>
200
+        </df>
201
+      </df>
202
+      <df name="lib">
203
+        <df name="CMakeFiles">
204
+          <df name="destijl.dir">
205
+            <df name="src">
206
+            </df>
207
+          </df>
208
+        </df>
209
+        <df name="src">
210
+          <in>image.cpp</in>
211
+          <in>message.cpp</in>
212
+          <in>monitor.cpp</in>
213
+          <in>robot.cpp</in>
214
+          <in>server.cpp</in>
215
+        </df>
216
+        <in>definitions.h</in>
217
+        <in>image.h</in>
218
+        <in>message.h</in>
219
+        <in>monitor.h</in>
220
+        <in>robot.h</in>
221
+        <in>server.h</in>
222
+      </df>
223
+      <df name="src.sav">
224
+        <in>definitions.h</in>
225
+        <in>image.cpp</in>
226
+        <in>image.h</in>
227
+        <in>message.cpp</in>
228
+        <in>message.h</in>
229
+        <in>monitor.cpp</in>
230
+        <in>monitor.h</in>
231
+        <in>robot.cpp</in>
232
+        <in>robot.h</in>
233
+      </df>
234
+      <df name="superviseur">
235
+        <df name="bin">
236
+        </df>
237
+        <df name="build">
238
+          <df name="Debug">
239
+            <df name="GNU-Linux">
240
+              <df name="_ext">
241
+                <df name="a59f760b">
242
+                </df>
243
+              </df>
244
+              <df name="src">
245
+              </df>
246
+            </df>
247
+          </df>
248
+        </df>
249
+        <df name="CMakeFiles">
250
+          <df name="superviseur.dir">
251
+            <df name="src">
252
+            </df>
253
+          </df>
254
+        </df>
255
+        <df name="dist">
256
+          <df name="Debug">
257
+            <df name="GNU-Linux">
258
+            </df>
259
+          </df>
260
+        </df>
261
+        <df name="src">
262
+          <in>functions.cpp</in>
263
+          <in>functions.h</in>
264
+          <in>main.cpp</in>
265
+        </df>
266
+        <in>.gitignore</in>
267
+      </df>
268
+      <df name="superviseur-pthread">
269
+        <df name="bin">
270
+        </df>
271
+        <df name="src">
272
+          <in>Program.cpp</in>
273
+          <in>Tasks.cpp</in>
274
+          <in>Tasks.h</in>
275
+        </df>
276
+      </df>
277
+      <df name="superviseur-xenomai">
278
+        <df name="bin">
279
+        </df>
280
+      </df>
281
+    </df>
282
+  </logicalFolder>
283
+  <projectmakefile>Makefile</projectmakefile>
284
+  <confs>
285
+    <conf name="Default" type="0">
286
+      <toolsSet>
287
+        <developmentServer>localhost</developmentServer>
288
+        <platform>2</platform>
289
+      </toolsSet>
290
+      <compile>
291
+        <compiledirpicklist>
292
+          <compiledirpicklistitem>.</compiledirpicklistitem>
293
+          <compiledirpicklistitem>${AUTO_FOLDER}</compiledirpicklistitem>
294
+        </compiledirpicklist>
295
+        <compiledir>${AUTO_FOLDER}</compiledir>
296
+        <compilecommandpicklist>
297
+          <compilecommandpicklistitem>${MAKE} ${ITEM_NAME}.o</compilecommandpicklistitem>
298
+          <compilecommandpicklistitem>${AUTO_COMPILE}</compilecommandpicklistitem>
299
+        </compilecommandpicklist>
300
+        <compilecommand>${AUTO_COMPILE}</compilecommand>
301
+      </compile>
302
+      <dbx_gdbdebugger version="1">
303
+        <gdb_pathmaps>
304
+        </gdb_pathmaps>
305
+        <gdb_interceptlist>
306
+          <gdbinterceptoptions gdb_all="false" gdb_unhandled="true" gdb_unexpected="true"/>
307
+        </gdb_interceptlist>
308
+        <gdb_options>
309
+          <DebugOptions>
310
+          </DebugOptions>
311
+        </gdb_options>
312
+        <gdb_buildfirst gdb_buildfirst_overriden="false" gdb_buildfirst_old="false"/>
313
+      </dbx_gdbdebugger>
314
+      <nativedebugger version="1">
315
+        <engine>gdb</engine>
316
+      </nativedebugger>
317
+      <runprofile version="9">
318
+        <runcommandpicklist>
319
+          <runcommandpicklistitem>"${OUTPUT_PATH}"</runcommandpicklistitem>
320
+        </runcommandpicklist>
321
+        <runcommand>"${OUTPUT_PATH}"</runcommand>
322
+        <rundir>.</rundir>
323
+        <buildfirst>false</buildfirst>
324
+        <terminal-type>0</terminal-type>
325
+        <remove-instrumentation>0</remove-instrumentation>
326
+        <environment>
327
+        </environment>
328
+      </runprofile>
329
+    </conf>
330
+  </confs>
331
+</configurationDescriptor>

+ 135
- 0
software/raspberry/superviseur-robot/nbproject/private/cpp_standard_headers_indexer.cpp View File

@@ -0,0 +1,135 @@
1
+/*
2
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
3
+ *
4
+ * Copyright (c) 2016 Oracle and/or its affiliates. All rights reserved.
5
+ *
6
+ * Oracle and Java are registered trademarks of Oracle and/or its affiliates.
7
+ * Other names may be trademarks of their respective owners.
8
+ *
9
+ * The contents of this file are subject to the terms of either the GNU
10
+ * General Public License Version 2 only ("GPL") or the Common
11
+ * Development and Distribution License("CDDL") (collectively, the
12
+ * "License"). You may not use this file except in compliance with the
13
+ * License. You can obtain a copy of the License at
14
+ * http://www.netbeans.org/cddl-gplv2.html
15
+ * or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the
16
+ * specific language governing permissions and limitations under the
17
+ * License.  When distributing the software, include this License Header
18
+ * Notice in each file and include the License file at
19
+ * nbbuild/licenses/CDDL-GPL-2-CP.  Oracle designates this
20
+ * particular file as subject to the "Classpath" exception as provided
21
+ * by Oracle in the GPL Version 2 section of the License file that
22
+ * accompanied this code. If applicable, add the following below the
23
+ * License Header, with the fields enclosed by brackets [] replaced by
24
+ * your own identifying information:
25
+ * "Portions Copyrighted [year] [name of copyright owner]"
26
+ *
27
+ * If you wish your version of this file to be governed by only the CDDL
28
+ * or only the GPL Version 2, indicate your decision by adding
29
+ * "[Contributor] elects to include this software in this distribution
30
+ * under the [CDDL or GPL Version 2] license." If you do not indicate a
31
+ * single choice of license, a recipient has the option to distribute
32
+ * your version of this file under either the CDDL, the GPL Version 2 or
33
+ * to extend the choice of license to its licensees as provided above.
34
+ * However, if you add GPL Version 2 code and therefore, elected the GPL
35
+ * Version 2 license, then the option applies only if the new code is
36
+ * made subject to such option by the copyright holder.
37
+ *
38
+ * Contributor(s):
39
+ */
40
+
41
+// List of standard headers was taken in http://en.cppreference.com/w/cpp/header
42
+
43
+#include <cstdlib> 	    // General purpose utilities: program control, dynamic memory allocation, random numbers, sort and search
44
+#include <csignal> 	    // Functions and macro constants for signal management
45
+#include <csetjmp> 	    // Macro (and function) that saves (and jumps) to an execution context
46
+#include <cstdarg> 	    // Handling of variable length argument lists
47
+#include <typeinfo> 	    // Runtime type information utilities
48
+#include <bitset> 	    // std::bitset class template
49
+#include <functional> 	    // Function objects, designed for use with the standard algorithms
50
+#include <utility> 	    // Various utility components
51
+#include <ctime> 	    // C-style time/date utilites
52
+#include <cstddef> 	    // typedefs for types such as size_t, NULL and others
53
+#include <new> 	            // Low-level memory management utilities
54
+#include <memory> 	    // Higher level memory management utilities
55
+#include <climits>          // limits of integral types
56
+#include <cfloat> 	    // limits of float types
57
+#include <limits> 	    // standardized way to query properties of arithmetic types
58
+#include <exception> 	    // Exception handling utilities
59
+#include <stdexcept> 	    // Standard exception objects
60
+#include <cassert> 	    // Conditionally compiled macro that compares its argument to zero
61
+#include <cerrno>           // Macro containing the last error number
62
+#include <cctype>           // functions to determine the type contained in character data
63
+#include <cwctype>          // functions for determining the type of wide character data
64
+#include <cstring> 	    // various narrow character string handling functions
65
+#include <cwchar> 	    // various wide and multibyte string handling functions
66
+#include <string> 	    // std::basic_string class template
67
+#include <vector> 	    // std::vector container
68
+#include <deque> 	    // std::deque container
69
+#include <list> 	    // std::list container
70
+#include <set> 	            // std::set and std::multiset associative containers
71
+#include <map> 	            // std::map and std::multimap associative containers
72
+#include <stack> 	    // std::stack container adaptor
73
+#include <queue> 	    // std::queue and std::priority_queue container adaptors
74
+#include <algorithm> 	    // Algorithms that operate on containers
75
+#include <iterator> 	    // Container iterators
76
+#include <cmath>            // Common mathematics functions
77
+#include <complex>          // Complex number type
78
+#include <valarray>         // Class for representing and manipulating arrays of values
79
+#include <numeric>          // Numeric operations on values in containers
80
+#include <iosfwd>           // forward declarations of all classes in the input/output library
81
+#include <ios>              // std::ios_base class, std::basic_ios class template and several typedefs
82
+#include <istream>          // std::basic_istream class template and several typedefs
83
+#include <ostream>          // std::basic_ostream, std::basic_iostream class templates and several typedefs
84
+#include <iostream>         // several standard stream objects
85
+#include <fstream>          // std::basic_fstream, std::basic_ifstream, std::basic_ofstream class templates and several typedefs
86
+#include <sstream>          // std::basic_stringstream, std::basic_istringstream, std::basic_ostringstream class templates and several typedefs
87
+#include <strstream>        // std::strstream, std::istrstream, std::ostrstream(deprecated)
88
+#include <iomanip>          // Helper functions to control the format or input and output
89
+#include <streambuf>        // std::basic_streambuf class template
90
+#include <cstdio>           // C-style input-output functions
91
+#include <locale>           // Localization utilities
92
+#include <clocale>          // C localization utilities
93
+#include <ciso646>          // empty header. The macros that appear in iso646.h in C are keywords in C++
94
+#if __cplusplus >= 201103L
95
+#include <typeindex>        // (since C++11) 	std::type_index
96
+#include <type_traits>      // (since C++11) 	Compile-time type information
97
+#include <chrono>           // (since C++11) 	C++ time utilites
98
+#include <initializer_list> // (since C++11) 	std::initializer_list class template
99
+#include <tuple>            // (since C++11) 	std::tuple class template
100
+#include <scoped_allocator> // (since C++11) 	Nested allocator class
101
+#include <cstdint>          // (since C++11) 	fixed-size types and limits of other types
102
+#include <cinttypes>        // (since C++11) 	formatting macros , intmax_t and uintmax_t math and conversions
103
+#include <system_error>     // (since C++11) 	defines std::error_code, a platform-dependent error code
104
+#include <cuchar>           // (since C++11) 	C-style Unicode character conversion functions
105
+#include <array>            // (since C++11) 	std::array container
106
+#include <forward_list>     // (since C++11) 	std::forward_list container
107
+#include <unordered_set>    // (since C++11) 	std::unordered_set and std::unordered_multiset unordered associative containers
108
+#include <unordered_map>    // (since C++11) 	std::unordered_map and std::unordered_multimap unordered associative containers
109
+#include <random>           // (since C++11) 	Random number generators and distributions
110
+#include <ratio>            // (since C++11) 	Compile-time rational arithmetic
111
+#include <cfenv>            // (since C++11) 	Floating-point environment access functions
112
+#include <codecvt>          // (since C++11) 	Unicode conversion facilities
113
+#include <regex>            // (since C++11) 	Classes, algorithms and iterators to support regular expression processing
114
+#include <atomic>           // (since C++11) 	Atomic operations library
115
+#include <ccomplex>         // (since C++11)(deprecated in C++17) 	simply includes the header <complex>
116
+#include <ctgmath>          // (since C++11)(deprecated in C++17) 	simply includes the headers <ccomplex> (until C++17)<complex> (since C++17) and <cmath>: the overloads equivalent to the contents of the C header tgmath.h are already provided by those headers
117
+#include <cstdalign>        // (since C++11)(deprecated in C++17) 	defines one compatibility macro constant
118
+#include <cstdbool>         // (since C++11)(deprecated in C++17) 	defines one compatibility macro constant
119
+#include <thread>           // (since C++11) 	std::thread class and supporting functions
120
+#include <mutex>            // (since C++11) 	mutual exclusion primitives
121
+#include <future>           // (since C++11) 	primitives for asynchronous computations
122
+#include <condition_variable> // (since C++11) 	thread waiting conditions
123
+#endif
124
+#if __cplusplus >= 201300L
125
+#include <shared_mutex>     // (since C++14) 	shared mutual exclusion primitives
126
+#endif
127
+#if __cplusplus >= 201500L
128
+#include <any>              // (since C++17) 	std::any class template
129
+#include <optional>         // (since C++17) 	std::optional class template
130
+#include <variant>          // (since C++17) 	std::variant class template
131
+#include <memory_resource>  // (since C++17) 	Polymorphic allocators and memory resources
132
+#include <string_view>      // (since C++17) 	std::basic_string_view class template
133
+#include <execution>        // (since C++17) 	Predefined execution policies for parallel versions of the algorithms
134
+#include <filesystem>       // (since C++17) 	std::path class and supporting functions
135
+#endif

+ 42
- 0
software/raspberry/superviseur-robot/nbproject/private/launcher.properties View File

@@ -0,0 +1,42 @@
1
+# Launchers File syntax:
2
+#
3
+# [Must-have property line] 
4
+# launcher1.runCommand=<Run Command>
5
+# [Optional extra properties] 
6
+# launcher1.displayName=<Display Name, runCommand by default>
7
+# launcher1.hide=<true if lancher is not visible in menu, false by default>
8
+# launcher1.buildCommand=<Build Command, Build Command specified in project properties by default>
9
+# launcher1.runDir=<Run Directory, ${PROJECT_DIR} by default>
10
+# launcher1.runInOwnTab=<false if launcher reuse common "Run" output tab, true by default>
11
+# launcher1.symbolFiles=<Symbol Files loaded by debugger, ${OUTPUT_PATH} by default>
12
+# launcher1.env.<Environment variable KEY>=<Environment variable VALUE>
13
+# (If this value is quoted with ` it is handled as a native command which execution result will become the value)
14
+# [Common launcher properties]
15
+# common.runDir=<Run Directory>
16
+# (This value is overwritten by a launcher specific runDir value if the latter exists)
17
+# common.env.<Environment variable KEY>=<Environment variable VALUE>
18
+# (Environment variables from common launcher are merged with launcher specific variables)
19
+# common.symbolFiles=<Symbol Files loaded by debugger>
20
+# (This value is overwritten by a launcher specific symbolFiles value if the latter exists)
21
+#
22
+# In runDir, symbolFiles and env fields you can use these macroses:
23
+# ${PROJECT_DIR}    -   project directory absolute path
24
+# ${OUTPUT_PATH}    -   linker output path (relative to project directory path)
25
+# ${OUTPUT_BASENAME}-   linker output filename
26
+# ${TESTDIR}        -   test files directory (relative to project directory path)
27
+# ${OBJECTDIR}      -   object files directory (relative to project directory path)
28
+# ${CND_DISTDIR}    -   distribution directory (relative to project directory path)
29
+# ${CND_BUILDDIR}   -   build directory (relative to project directory path)
30
+# ${CND_PLATFORM}   -   platform name
31
+# ${CND_CONF}       -   configuration name
32
+# ${CND_DLIB_EXT}   -   dynamic library extension
33
+#
34
+# All the project launchers must be listed in the file!
35
+#
36
+# launcher1.runCommand=...
37
+# launcher2.runCommand=...
38
+# ...
39
+# common.runDir=...
40
+# common.env.KEY=VALUE
41
+
42
+# launcher1.runCommand=<type your run command here>

+ 21
- 0
software/raspberry/superviseur-robot/nbproject/private/private.xml View File

@@ -0,0 +1,21 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project-private xmlns="http://www.netbeans.org/ns/project-private/1">
3
+    <code-assistance-data xmlns="http://www.netbeans.org/ns/make-project-private/1">
4
+        <code-model-enabled>true</code-model-enabled>
5
+    </code-assistance-data>
6
+    <data xmlns="http://www.netbeans.org/ns/make-project-private/1">
7
+        <activeConfTypeElem>0</activeConfTypeElem>
8
+        <activeConfIndexElem>0</activeConfIndexElem>
9
+    </data>
10
+    <editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/2" lastBookmarkId="0"/>
11
+    <open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/2">
12
+        <group>
13
+            <file>file:/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/monitor.cpp</file>
14
+            <file>file:/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/main.cpp</file>
15
+            <file>file:/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/src/server.cpp</file>
16
+            <file>file:/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/lib/server.h</file>
17
+            <file>file:/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.cpp</file>
18
+            <file>file:/home/dimercur/Documents/Travail/git/dumber/software/raspberry/superviseur-robot/superviseur/src/functions.h</file>
19
+        </group>
20
+    </open-files>
21
+</project-private>

Loading…
Cancel
Save