Code Examples
A repository of 155 code examples for BeepBeep
Main Page
+
Packages
Packages
+
Classes
Class List
Class Index
Class Hierarchy
+
Class Members
+
All
a
e
g
h
i
m
n
r
t
v
w
+
Functions
a
g
m
r
t
v
Variables
+
Files
File List
package-info.java
1
/*
2
BeepBeep, an event stream processor
3
Copyright (C) 2008-2018 Sylvain Hallé
4
5
This program is free software: you can redistribute it and/or modify
6
it under the terms of the GNU Lesser General Public License as published
7
by the Free Software Foundation, either version 3 of the License, or
8
(at your option) any later version.
9
10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU Lesser General Public License for more details.
14
15
You should have received a copy of the GNU Lesser General Public License
16
along with this program. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
/**
20
* Examples related to a stream of events for a pressure sensor. This stream of
21
* events is made of raw pressure readings made by the sensor, and is separated
22
* into various parts using special events that act as markers.
23
* <em>Episodes</em> are sub-sequences of successive pressure readings, and
24
* <em>days</em> are sequences of episodes.
25
* <p>
26
* Formally, a {@link PressureEvent} can be either:
27
* <ul>
28
* <li>A pressure reading</li>
29
* <li>A marker indicating the end of a day, represented by the symbol ✸</li>
30
* <li>A marker indicating the start of an <em>episode</em>, represented by the
31
* symbol ↑</li>
32
* <li>A marker indicating the end of an <em>episode</em>, represented by the
33
* symbol ↓</li>
34
* </ul>
35
* For example, given this stream of pressure events:
36
* <blockquote>
37
* ✸ ↑ 151 142 ↓ ↑ 148 149 144 ↓ ✸ ↑ 150 142 ↓ ✸
38
* </blockquote>
39
* one can identify two days; Day 1 is composed of two episodes (one of two
40
* readings and one of three readings), and Day 2 is composed of one episode of
41
* two readings.
42
* <p>
43
* The examples in this section illustrate the possibility of computing
44
* "hierarchical" summaries on parts of the input stream; two examples are
45
* included:
46
* <ul>
47
* <li>{@link MaxEpisode}: compute the maximum value inside each episode</li>
48
* <li>{@link AverageEpisodes}: compute the average of each episode, and
49
* group these averages into days</li>
50
* </ul>
51
* <p>
52
* In BeepBeep, such hierarchies can be obtained by nesting {@link Slice} or
53
* {@link ResetLast} processors.
54
* The notion of hierarchical summary has been discussed, among others, in
55
* the following publication:
56
* <blockquote>
57
* K. Mamouras, M. Raghothaman, R. Alur, Z.G. Ives, S. Khanna. (2017).
58
* StreamQRE: modular specification and efficient evaluation of quantitative
59
* queries over streaming data. <i>Proc. PLDI 2017</i>, ACM.
60
* DOI: <tt>10.1145/3062341.3062369</tt>.
61
* </blockquote>
62
*/
63
package
episodes;
Source
src
episodes
package-info.java
Generated by
1.8.13