Adding Javadoc documentation.
[pingpong.git] / Code / Projects / PacketLevelSignatureExtractor / javadoc / edu / uci / iotproject / detection / layer2 / Layer2RangeMatcher.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2 <!-- NewPage -->
3 <html lang="en">
4 <head>
5 <!-- Generated by javadoc (1.8.0_191) on Thu Mar 28 11:26:59 PDT 2019 -->
6 <title>Layer2RangeMatcher</title>
7 <meta name="date" content="2019-03-28">
8 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
9 <script type="text/javascript" src="../../../../../script.js"></script>
10 </head>
11 <body>
12 <script type="text/javascript"><!--
13     try {
14         if (location.href.indexOf('is-external=true') == -1) {
15             parent.document.title="Layer2RangeMatcher";
16         }
17     }
18     catch(err) {
19     }
20 //-->
21 var methods = {"i0":10,"i1":10,"i2":10,"i3":10};
22 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
23 var altColor = "altColor";
24 var rowColor = "rowColor";
25 var tableTab = "tableTab";
26 var activeTableTab = "activeTableTab";
27 </script>
28 <noscript>
29 <div>JavaScript is disabled on your browser.</div>
30 </noscript>
31 <!-- ========= START OF TOP NAVBAR ======= -->
32 <div class="topNav"><a name="navbar.top">
33 <!--   -->
34 </a>
35 <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
36 <a name="navbar.top.firstrow">
37 <!--   -->
38 </a>
39 <ul class="navList" title="Navigation">
40 <li><a href="../../../../../overview-summary.html">Overview</a></li>
41 <li><a href="package-summary.html">Package</a></li>
42 <li class="navBarCell1Rev">Class</li>
43 <li><a href="package-tree.html">Tree</a></li>
44 <li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
45 <li><a href="../../../../../index-files/index-1.html">Index</a></li>
46 <li><a href="../../../../../help-doc.html">Help</a></li>
47 </ul>
48 </div>
49 <div class="subNav">
50 <ul class="navList">
51 <li><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2ClusterMatcher.html" title="class in edu.uci.iotproject.detection.layer2"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
52 <li><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2SequenceMatcher.html" title="class in edu.uci.iotproject.detection.layer2"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
53 </ul>
54 <ul class="navList">
55 <li><a href="../../../../../index.html?edu/uci/iotproject/detection/layer2/Layer2RangeMatcher.html" target="_top">Frames</a></li>
56 <li><a href="Layer2RangeMatcher.html" target="_top">No&nbsp;Frames</a></li>
57 </ul>
58 <ul class="navList" id="allclasses_navbar_top">
59 <li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
60 </ul>
61 <div>
62 <script type="text/javascript"><!--
63   allClassesLink = document.getElementById("allclasses_navbar_top");
64   if(window==top) {
65     allClassesLink.style.display = "block";
66   }
67   else {
68     allClassesLink.style.display = "none";
69   }
70   //-->
71 </script>
72 </div>
73 <div>
74 <ul class="subNavList">
75 <li>Summary:&nbsp;</li>
76 <li>Nested&nbsp;|&nbsp;</li>
77 <li>Field&nbsp;|&nbsp;</li>
78 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
79 <li><a href="#method.summary">Method</a></li>
80 </ul>
81 <ul class="subNavList">
82 <li>Detail:&nbsp;</li>
83 <li>Field&nbsp;|&nbsp;</li>
84 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
85 <li><a href="#method.detail">Method</a></li>
86 </ul>
87 </div>
88 <a name="skip.navbar.top">
89 <!--   -->
90 </a></div>
91 <!-- ========= END OF TOP NAVBAR ========= -->
92 <!-- ======== START OF CLASS DATA ======== -->
93 <div class="header">
94 <div class="subTitle">edu.uci.iotproject.detection.layer2</div>
95 <h2 title="Class Layer2RangeMatcher" class="title">Class Layer2RangeMatcher</h2>
96 </div>
97 <div class="contentContainer">
98 <ul class="inheritance">
99 <li>java.lang.Object</li>
100 <li>
101 <ul class="inheritance">
102 <li><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2AbstractMatcher.html" title="class in edu.uci.iotproject.detection.layer2">edu.uci.iotproject.detection.layer2.Layer2AbstractMatcher</a></li>
103 <li>
104 <ul class="inheritance">
105 <li>edu.uci.iotproject.detection.layer2.Layer2RangeMatcher</li>
106 </ul>
107 </li>
108 </ul>
109 </li>
110 </ul>
111 <div class="description">
112 <ul class="blockList">
113 <li class="blockList">
114 <hr>
115 <br>
116 <pre>public class <span class="typeNameLabel">Layer2RangeMatcher</span>
117 extends <a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2AbstractMatcher.html" title="class in edu.uci.iotproject.detection.layer2">Layer2AbstractMatcher</a></pre>
118 <div class="block">Attempts to detect the presence of a specific packet sequence in the set of packets provided through multiple calls
119  to <a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2RangeMatcher.html#matchPacket-org.pcap4j.core.PcapPacket-"><code>matchPacket(PcapPacket)</code></a>, considering only layer 2 information. This class has the same flavor as the
120  <a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2SequenceMatcher.html" title="class in edu.uci.iotproject.detection.layer2"><code>Layer2SequenceMatcher</code></a> class.</div>
121 </li>
122 </ul>
123 </div>
124 <div class="summary">
125 <ul class="blockList">
126 <li class="blockList">
127 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
128 <ul class="blockList">
129 <li class="blockList"><a name="constructor.summary">
130 <!--   -->
131 </a>
132 <h3>Constructor Summary</h3>
133 <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
134 <caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
135 <tr>
136 <th class="colOne" scope="col">Constructor and Description</th>
137 </tr>
138 <tr class="altColor">
139 <td class="colOne"><code><span class="memberNameLink"><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2RangeMatcher.html#Layer2RangeMatcher-java.util.List-java.util.List-int-double-">Layer2RangeMatcher</a></span>(java.util.List&lt;org.pcap4j.core.PcapPacket&gt;&nbsp;lowerBound,
140                   java.util.List&lt;org.pcap4j.core.PcapPacket&gt;&nbsp;upperBound,
141                   int&nbsp;inclusionTimeMillis,
142                   double&nbsp;eps)</code>
143 <div class="block">Create a <code>Layer2RangeMatcher</code>.</div>
144 </td>
145 </tr>
146 </table>
147 </li>
148 </ul>
149 <!-- ========== METHOD SUMMARY =========== -->
150 <ul class="blockList">
151 <li class="blockList"><a name="method.summary">
152 <!--   -->
153 </a>
154 <h3>Method Summary</h3>
155 <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
156 <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
157 <tr>
158 <th class="colFirst" scope="col">Modifier and Type</th>
159 <th class="colLast" scope="col">Method and Description</th>
160 </tr>
161 <tr id="i0" class="altColor">
162 <td class="colFirst"><code>java.util.List&lt;org.pcap4j.core.PcapPacket&gt;</code></td>
163 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2RangeMatcher.html#getTargetLowerBound--">getTargetLowerBound</a></span>()</code>&nbsp;</td>
164 </tr>
165 <tr id="i1" class="rowColor">
166 <td class="colFirst"><code>int</code></td>
167 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2RangeMatcher.html#getTargetSequencePacketCount--">getTargetSequencePacketCount</a></span>()</code>
168 <div class="block">See the implementer class for the following method.</div>
169 </td>
170 </tr>
171 <tr id="i2" class="altColor">
172 <td class="colFirst"><code>java.util.List&lt;org.pcap4j.core.PcapPacket&gt;</code></td>
173 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2RangeMatcher.html#getTargetUpperBound--">getTargetUpperBound</a></span>()</code>&nbsp;</td>
174 </tr>
175 <tr id="i3" class="rowColor">
176 <td class="colFirst"><code>boolean</code></td>
177 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2RangeMatcher.html#matchPacket-org.pcap4j.core.PcapPacket-">matchPacket</a></span>(org.pcap4j.core.PcapPacket&nbsp;packet)</code>
178 <div class="block">Attempt to advance this <code>Layer2RangeMatcher</code> by matching <code>packet</code> against the packet that this
179  <code>Layer2RangeMatcher</code> expects as the next packet of the sequence it is searching for.</div>
180 </td>
181 </tr>
182 </table>
183 <ul class="blockList">
184 <li class="blockList"><a name="methods.inherited.from.class.edu.uci.iotproject.detection.layer2.Layer2AbstractMatcher">
185 <!--   -->
186 </a>
187 <h3>Methods inherited from class&nbsp;edu.uci.iotproject.detection.layer2.<a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2AbstractMatcher.html" title="class in edu.uci.iotproject.detection.layer2">Layer2AbstractMatcher</a></h3>
188 <code><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2AbstractMatcher.html#getLastPacket--">getLastPacket</a>, <a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2AbstractMatcher.html#getMatchedPackets--">getMatchedPackets</a>, <a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2AbstractMatcher.html#getMatchedPacketsCount--">getMatchedPacketsCount</a></code></li>
189 </ul>
190 <ul class="blockList">
191 <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
192 <!--   -->
193 </a>
194 <h3>Methods inherited from class&nbsp;java.lang.Object</h3>
195 <code>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
196 </ul>
197 </li>
198 </ul>
199 </li>
200 </ul>
201 </div>
202 <div class="details">
203 <ul class="blockList">
204 <li class="blockList">
205 <!-- ========= CONSTRUCTOR DETAIL ======== -->
206 <ul class="blockList">
207 <li class="blockList"><a name="constructor.detail">
208 <!--   -->
209 </a>
210 <h3>Constructor Detail</h3>
211 <a name="Layer2RangeMatcher-java.util.List-java.util.List-int-double-">
212 <!--   -->
213 </a>
214 <ul class="blockListLast">
215 <li class="blockList">
216 <h4>Layer2RangeMatcher</h4>
217 <pre>public&nbsp;Layer2RangeMatcher(java.util.List&lt;org.pcap4j.core.PcapPacket&gt;&nbsp;lowerBound,
218                           java.util.List&lt;org.pcap4j.core.PcapPacket&gt;&nbsp;upperBound,
219                           int&nbsp;inclusionTimeMillis,
220                           double&nbsp;eps)</pre>
221 <div class="block">Create a <code>Layer2RangeMatcher</code>.</div>
222 <dl>
223 <dt><span class="paramLabel">Parameters:</span></dt>
224 <dd><code>lowerBound</code> - The lower bound of the sequence to match against (search for).</dd>
225 <dd><code>upperBound</code> - The upper bound of the sequence to match against (search for).</dd>
226 <dd><code>eps</code> - The epsilon value used in the DBSCAN algorithm.</dd>
227 </dl>
228 </li>
229 </ul>
230 </li>
231 </ul>
232 <!-- ============ METHOD DETAIL ========== -->
233 <ul class="blockList">
234 <li class="blockList"><a name="method.detail">
235 <!--   -->
236 </a>
237 <h3>Method Detail</h3>
238 <a name="matchPacket-org.pcap4j.core.PcapPacket-">
239 <!--   -->
240 </a>
241 <ul class="blockList">
242 <li class="blockList">
243 <h4>matchPacket</h4>
244 <pre>public&nbsp;boolean&nbsp;matchPacket(org.pcap4j.core.PcapPacket&nbsp;packet)</pre>
245 <div class="block">Attempt to advance this <code>Layer2RangeMatcher</code> by matching <code>packet</code> against the packet that this
246  <code>Layer2RangeMatcher</code> expects as the next packet of the sequence it is searching for.</div>
247 <dl>
248 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
249 <dd><code><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2AbstractMatcher.html#matchPacket-org.pcap4j.core.PcapPacket-">matchPacket</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2AbstractMatcher.html" title="class in edu.uci.iotproject.detection.layer2">Layer2AbstractMatcher</a></code></dd>
250 <dt><span class="paramLabel">Parameters:</span></dt>
251 <dd><code>packet</code> - </dd>
252 <dt><span class="returnLabel">Returns:</span></dt>
253 <dd><code>true</code> if this <code>Layer2SequenceMatcher</code> could advance by adding <code>packet</code> to its set of
254          matched packets, <code>false</code> otherwise.</dd>
255 </dl>
256 </li>
257 </ul>
258 <a name="getTargetSequencePacketCount--">
259 <!--   -->
260 </a>
261 <ul class="blockList">
262 <li class="blockList">
263 <h4>getTargetSequencePacketCount</h4>
264 <pre>public&nbsp;int&nbsp;getTargetSequencePacketCount()</pre>
265 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2AbstractMatcher.html#getTargetSequencePacketCount--">Layer2AbstractMatcher</a></code></span></div>
266 <div class="block">See the implementer class for the following method.</div>
267 <dl>
268 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
269 <dd><code><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2AbstractMatcher.html#getTargetSequencePacketCount--">getTargetSequencePacketCount</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2AbstractMatcher.html" title="class in edu.uci.iotproject.detection.layer2">Layer2AbstractMatcher</a></code></dd>
270 </dl>
271 </li>
272 </ul>
273 <a name="getTargetLowerBound--">
274 <!--   -->
275 </a>
276 <ul class="blockList">
277 <li class="blockList">
278 <h4>getTargetLowerBound</h4>
279 <pre>public&nbsp;java.util.List&lt;org.pcap4j.core.PcapPacket&gt;&nbsp;getTargetLowerBound()</pre>
280 </li>
281 </ul>
282 <a name="getTargetUpperBound--">
283 <!--   -->
284 </a>
285 <ul class="blockListLast">
286 <li class="blockList">
287 <h4>getTargetUpperBound</h4>
288 <pre>public&nbsp;java.util.List&lt;org.pcap4j.core.PcapPacket&gt;&nbsp;getTargetUpperBound()</pre>
289 </li>
290 </ul>
291 </li>
292 </ul>
293 </li>
294 </ul>
295 </div>
296 </div>
297 <!-- ========= END OF CLASS DATA ========= -->
298 <!-- ======= START OF BOTTOM NAVBAR ====== -->
299 <div class="bottomNav"><a name="navbar.bottom">
300 <!--   -->
301 </a>
302 <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
303 <a name="navbar.bottom.firstrow">
304 <!--   -->
305 </a>
306 <ul class="navList" title="Navigation">
307 <li><a href="../../../../../overview-summary.html">Overview</a></li>
308 <li><a href="package-summary.html">Package</a></li>
309 <li class="navBarCell1Rev">Class</li>
310 <li><a href="package-tree.html">Tree</a></li>
311 <li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
312 <li><a href="../../../../../index-files/index-1.html">Index</a></li>
313 <li><a href="../../../../../help-doc.html">Help</a></li>
314 </ul>
315 </div>
316 <div class="subNav">
317 <ul class="navList">
318 <li><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2ClusterMatcher.html" title="class in edu.uci.iotproject.detection.layer2"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
319 <li><a href="../../../../../edu/uci/iotproject/detection/layer2/Layer2SequenceMatcher.html" title="class in edu.uci.iotproject.detection.layer2"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
320 </ul>
321 <ul class="navList">
322 <li><a href="../../../../../index.html?edu/uci/iotproject/detection/layer2/Layer2RangeMatcher.html" target="_top">Frames</a></li>
323 <li><a href="Layer2RangeMatcher.html" target="_top">No&nbsp;Frames</a></li>
324 </ul>
325 <ul class="navList" id="allclasses_navbar_bottom">
326 <li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
327 </ul>
328 <div>
329 <script type="text/javascript"><!--
330   allClassesLink = document.getElementById("allclasses_navbar_bottom");
331   if(window==top) {
332     allClassesLink.style.display = "block";
333   }
334   else {
335     allClassesLink.style.display = "none";
336   }
337   //-->
338 </script>
339 </div>
340 <div>
341 <ul class="subNavList">
342 <li>Summary:&nbsp;</li>
343 <li>Nested&nbsp;|&nbsp;</li>
344 <li>Field&nbsp;|&nbsp;</li>
345 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
346 <li><a href="#method.summary">Method</a></li>
347 </ul>
348 <ul class="subNavList">
349 <li>Detail:&nbsp;</li>
350 <li>Field&nbsp;|&nbsp;</li>
351 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
352 <li><a href="#method.detail">Method</a></li>
353 </ul>
354 </div>
355 <a name="skip.navbar.bottom">
356 <!--   -->
357 </a></div>
358 <!-- ======== END OF BOTTOM NAVBAR ======= -->
359 </body>
360 </html>