Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(156)

Side by Side Diff: native_client_sdk/src/examples/demo/voronoi/example.js

Issue 15732012: Revive voronoi multi-threaded demo. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // Add event listeners after the NaCl module has loaded. These listeners will
6 // forward messages to the NaCl module via postMessage()
7 function moduleDidLoad() {
binji 2013/05/24 21:47:55 we usually use attachListeners() for this. See the
nfullagar1 2013/05/28 23:11:50 Done.
8 document.getElementById("benchmark").addEventListener("click",
binji 2013/05/24 21:47:55 single quotes for strings
nfullagar1 2013/05/28 23:11:50 Done.
9 function() {
10 common.naclModule.postMessage("run benchmark");
11 alert("Please wait while running benchmark.")
binji 2013/05/24 21:47:55 alert() doesn't work in packaged apps.
nfullagar1 2013/05/28 23:11:50 Ok, changed to update Status: while benchmarking
12 }, false);
binji 2013/05/24 21:47:55 ", false" shouldn't be needed. We don't need to ca
nfullagar1 2013/05/28 23:11:50 Done.
13 document.getElementById("draw_points").addEventListener("click",
binji 2013/05/24 21:47:55 we use camelCase for ids
nfullagar1 2013/05/28 23:11:50 Done.
14 function() {
15 var checked = document.getElementById("draw_points").checked;
16 if (checked)
17 common.naclModule.postMessage("with points");
18 else
19 common.naclModule.postMessage("without points");
20 }, false);
21 document.getElementById("draw_interiors").addEventListener("click",
22 function() {
23 var checked = document.getElementById("draw_interiors").checked;
24 if (checked)
25 common.naclModule.postMessage("with interiors");
26 else
27 common.naclModule.postMessage("without interiors");
28 }, false);
29 document.getElementById("one").addEventListener("click",
binji 2013/05/24 21:47:55 this could probably be made a lot more obvious by
nfullagar1 2013/05/28 23:11:50 Done.
30 function() {
31 common.naclModule.postMessage("threads: 1");
32 }, false);
33 document.getElementById("two").addEventListener("click",
34 function() {
35 common.naclModule.postMessage("threads: 2");
36 }, false);
37 document.getElementById("four").addEventListener("click",
38 function() {
39 common.naclModule.postMessage("threads: 4");
40 }, false);
41 document.getElementById("six").addEventListener("click",
42 function() {
43 common.naclModule.postMessage("threads: 6");
44 }, false);
45 document.getElementById("eight").addEventListener("click",
46 function() {
47 common.naclModule.postMessage("threads: 8");
48 }, false);
49 document.getElementById("twelve").addEventListener("click",
50 function() {
51 common.naclModule.postMessage("threads: 12");
52 }, false);
53 document.getElementById("sixteen").addEventListener("click",
54 function() {
55 common.naclModule.postMessage("threads: 16");
56 }, false);
57 document.getElementById("twentyfour").addEventListener("click",
58 function() {
59 common.naclModule.postMessage("threads: 24");
60 }, false);
61 document.getElementById("thirtytwo").addEventListener("click",
62 function() {
63 common.naclModule.postMessage("threads: 32");
64 }, false);
65
66 document.getElementById("point_range").addEventListener("change",
67 function() {
68 var value = document.getElementById("point_range").value;
69 common.naclModule.postMessage("points: " + value);
70 document.getElementById("point_count").textContent = value + " points";
71 }, false);
72 }
73
74 // Handle a message coming from the NaCl module.
75 // In the Voronoi example, the only message will be the benchmark result.
76 function handleMessage(message_event) {
77 var x = Math.round(message_event.data * 1000) / 1000;
binji 2013/05/24 21:47:55 You can just use parseFloat(message_event.data) to
nfullagar1 2013/05/28 23:11:50 This arrives as a float, and we're rounding to 3 d
binji 2013/05/28 23:37:50 Seems to from my tests in the Chrome console: (3.0
nfullagar1 2013/05/29 01:19:53 I should have said toFixed doesn't round 'as expec
78 document.getElementById("result").textContent =
79 "Result: " + x.toFixed(3) + " seconds";
80 }
81
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698