Skip to content

Commit b7e4a0b

Browse files
HARD-FAULTmarcoarruda
authored andcommitted
Added support for compressed image transport. (#9)
* Added support for compressed image transport. * Diagnostics widgets
1 parent 12b219c commit b7e4a0b

File tree

17 files changed

+615
-11
lines changed

17 files changed

+615
-11
lines changed

src/index.html

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -91,18 +91,20 @@ <h2>Widget Settings</h2>
9191

9292
<!-- JavaScript -->
9393
<script src="js/handlebars.min.js"></script>
94-
<script src="js/jquery.min.js"></script>
94+
<!--<script src="js/jquery.min.js"></script>-->
95+
<script type="text/javascript" src="http://code.jquery.com/jquery-2.2.4.min.js" ></script>
9596
<script src="js/templates.js"></script>
96-
<script src="js/eventemitter2.js"></script>
97-
<script src="js/roslib.min.js"></script>
97+
<!--<script src="js/eventemitter2.js"></script>-->
98+
<script type="text/javascript" src="http://static.robotwebtools.org/EventEmitter2/0.4.14/eventemitter2.min.js"></script>
99+
<script type="text/javascript" src="http://static.robotwebtools.org/roslibjs/current/roslib.min.js"></script>
98100
<script src="js/mjpegcanvas.min.js"></script>
99101
<!--<script src="js/three.min.js"></script>-->
100-
<script type="text/javascript" src="http://cdn.robotwebtools.org/threejs/current/three.min.js"></script>
101-
<script src="js/ros3d.min.js"></script>
102+
<script type="text/javascript" src="http://static.robotwebtools.org/threejs/current/three.min.js"></script>
103+
<script type="text/javascript" src="http://static.robotwebtools.org/ros3djs/current/ros3d.min.js"></script>
102104
<script src="js/bundle.js"></script>
103105
<script src="js/widgets.bundle.js"></script>
104106

105-
107+
<script src="https://d3js.org/d3.v4.min.js"></script>
106108
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyBGir7uuIvdEOH24VRmNcDCUCHSwmWS6No" async defer></script>
107109
<script>
108110
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
@@ -115,4 +117,4 @@ <h2>Widget Settings</h2>
115117
</script>
116118
</body>
117119

118-
</html>
120+
</html>

src/js/mjpegcanvas.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/npm-debug.log

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
0 info it worked if it ends with ok
2+
1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'install', '.' ]
3+
2 info using npm@2.15.11
4+
3 info using node@v4.8.7
5+
4 verbose install initial load of /home/ros/Workspace/rosweb/package.json
6+
5 warn package.json rosweb@1.0.0 No repository field.
7+
6 verbose readDependencies loading dependencies from /home/ros/Workspace/rosweb/package.json
8+
7 silly cache add args [ '.', null ]
9+
8 verbose cache add spec .
10+
9 silly cache add parsed spec Result {
11+
9 silly cache add raw: '.',
12+
9 silly cache add scope: null,
13+
9 silly cache add name: null,
14+
9 silly cache add rawSpec: '.',
15+
9 silly cache add spec: '/home/ros/Workspace/rosweb/src',
16+
9 silly cache add type: 'local' }
17+
10 error addLocal Could not install /home/ros/Workspace/rosweb/src
18+
11 verbose stack Error: EISDIR: illegal operation on a directory, read
19+
11 verbose stack at Error (native)
20+
12 verbose cwd /home/ros/Workspace/rosweb/src
21+
13 error Linux 4.13.0-32-generic
22+
14 error argv "/usr/bin/node" "/usr/bin/npm" "install" "."
23+
15 error node v4.8.7
24+
16 error npm v2.15.11
25+
17 error code EISDIR
26+
18 error errno -21
27+
19 error syscall read
28+
20 error eisdir EISDIR: illegal operation on a directory, read
29+
20 error eisdir This is most likely not a problem with npm itself
30+
20 error eisdir and is related to npm not being able to find a package.json in
31+
20 error eisdir a package you are trying to install.
32+
21 verbose exit [ -21, true ]

src/ts/#main.ts#

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
/// <reference path="./typings/tsd.d.ts" />
2+
3+
// Events
4+
import {TabEvents} from "./events/tab";
5+
import {WidgetEvents} from "./events/widget";
6+
import {WidgetInstanceEvents} from "./events/widget_instance";
7+
import {RosEvents} from "./events/ros";
8+
import {WorkspaceEvents} from "./events/workspace";
9+
10+
// Super
11+
import {lightbox} from "./super/lightbox";
12+
import {storage} from "./super/storage";
13+
import {Frontend} from "./super/frontend";
14+
15+
// Models
16+
import {Widget} from "./model/widget";
17+
import {Workspace} from "./model/workspace";
18+
import {currentWorkspace} from "./model/workspace";
19+
20+
function init() {
21+
$(document).ready(function () {
22+
var url = window.location.href;
23+
url = url.replace(/.*:\/\//i,"");
24+
url = url.replace(/:\d{1,5}/i,"");
25+
url = url.replace(/\/.*/i,"");
26+
$("#jsRosUrl").val("ws://" + url + ":9090");
27+
28+
var ros: ROSLIB.Ros = new ROSLIB.Ros("");
29+
window["ros"] = ros;
30+
events(ros);
31+
lightbox.CreateLightbox();
32+
currentWorkspace.initWorkspace();
33+
});
34+
}
35+
36+
function events(ros: ROSLIB.Ros): void {
37+
let tabEvents: TabEvents = new TabEvents();
38+
let widgetEvents: WidgetEvents = new WidgetEvents(ros);
39+
let widgetInstanceEvents: WidgetInstanceEvents = new WidgetInstanceEvents(ros);
40+
let rosEvents: RosEvents = new RosEvents(ros);
41+
let workspace: WorkspaceEvents = new WorkspaceEvents();
42+
43+
rosEvents.Connect();
44+
}
45+
46+
init();

src/ts/.#main.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
ros@ros-VirtualBox.2517:1518159739

src/ts/main.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,17 @@ import {currentWorkspace} from "./model/workspace";
1919

2020
function init() {
2121
$(document).ready(function () {
22+
var url = window.location.href;
23+
url = url.replace(/.*:\/\//i,"");
24+
url = url.replace(/:\d{1,5}/i,"");
25+
url = url.replace(/\/.*/i,"");
26+
$("#jsRosUrl").val("ws://" + url + ":9090");
27+
2228
var ros: ROSLIB.Ros = new ROSLIB.Ros("");
2329
window["ros"] = ros;
2430
events(ros);
2531
lightbox.CreateLightbox();
2632
currentWorkspace.initWorkspace();
27-
2833
});
2934
}
3035

src/ts/model/workspace.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,11 @@ export class Workspace {
5858

5959
wg = new WidgetGroup("3D Viewer");
6060
new Widget(wg.id, "ROS 3D Viewer", "ROS3DViewer", "./widgets/ros_3d_viewer");
61-
61+
62+
wg = new WidgetGroup("Diagnostics");
63+
new Widget(wg.id, "Diagnostics Viewer", "DiagnosticsViewer", "./widgets/diagnostics_viewer");
64+
new Widget(wg.id, "Log reader", "LogReader", "./widgets/log_reader");
65+
6266
wg = new WidgetGroup("Development");
6367
new Widget(wg.id, "New Widget", "NewWidget", "./widgets/new_widget");
6468
}

src/widgets/camera_viewer/index.hbs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
data-ros-topic-chng="onchange" data-ros-topic-slctd="" />
77
<meta data-wdgt-param="1" data-widget-param-id="1" data-widget-param-desc="Web Video Server Port" data-widget-param-var="webVideoServerPort"
88
data-widget-param-value="8080" />
9+
<meta data-wdgt-param="1" data-widget-param-id="2" data-widget-param-desc="Web Video Compression Type" data-widget-param-var="webVideoCompressionType"
10+
data-widget-param-value="mjpeg" />
911

1012
<!-- The content which could be manipulated by widget class -->
1113
<div class="jsMjpeg"></div>

src/widgets/camera_viewer/main.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ var WidgetCameraViewer = function (widgetInstanceId) {
3232
querySelector: '.jsWidgetContainer[data-widget-instance-id=\'' + self.widgetInstanceId + '\'] .jsMjpeg',
3333
host: self.host,
3434
port: self.webVideoServerPort,
35+
type: self.webVideoCompressionType,
3536
width: self.width,
3637
height: self.height,
3738
topic: selectedTopic
@@ -52,4 +53,4 @@ var WidgetCameraViewer = function (widgetInstanceId) {
5253

5354
$(document).ready(function () {
5455
// If you need an onload callback
55-
});
56+
});
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
<div class="ros-widget" data-widget-name="diagnostics-viewer"
2+
data-min-height="150" data-min-width="200"
3+
data-max-height="1200" data-max-width="1600"
4+
data-height="300" data-width="400">
5+
6+
<!-- META Tags to describe topics subscription -->
7+
<meta data-ros-topic="1"
8+
data-ros-topic-id="1"
9+
data-ros-topic-desc="Topic to subscribe"
10+
data-ros-topic-type="diagnostic_msgs/DiagnosticArray"
11+
data-ros-topic-chng="on_topic_selected"/>
12+
<meta data-wdgt-param="1"
13+
data-widget-param-id="1"
14+
data-widget-param-desc="Diagnostics Subject"
15+
data-widget-param-var="diagnosticsSubject"
16+
data-widget-param-value="" />
17+
18+
<!-- The content which could be manipulated by widget class -->
19+
<div class="header">
20+
<p class="name">-- topic name --</p>
21+
<p class="type">-- topic type --</p>
22+
<p class="msg">-- topic message ---</p>
23+
</div>
24+
25+
<svg class="content"></svg>
26+
</div>

0 commit comments

Comments
 (0)