| <?xml version="1.0" encoding="iso-8859-1" ?> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
| "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd--> |
| <html xmlns="http://www.w3.org/1999/xhtml" |
| > |
| <head><title>Protocols</title> |
| <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> |
| <meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" /> |
| <meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" /> |
| <!-- xhtml,3,next,html --> |
| <meta name="src" content="etrice-doc.tex" /> |
| <meta name="date" content="2013-10-21 12:44:00" /> |
| <link rel="stylesheet" type="text/css" href="etrice-doc.css" /> |
| </head><body |
| > |
| <!--l. 167--><div class="crosslinks"><p class="noindent">[<a |
| href="etrice-docse20.html" >next</a>] [<a |
| href="etrice-docse18.html" >prev</a>] [<a |
| href="etrice-docse18.html#tailetrice-docse18.html" >prev-tail</a>] [<a |
| href="#tailetrice-docse19.html">tail</a>] [<a |
| href="etrice-docch4.html#etrice-docse19.html" >up</a>] </p></div> |
| <h3 class="sectionHead"><span class="titlemark">4.2 </span> <a |
| id="x25-1080004.2"></a>Protocols</h3> |
| <!--l. 169--><p class="noindent" > |
| </p> |
| <h4 class="subsectionHead"><span class="titlemark">4.2.1 </span> <a |
| id="x25-1090004.2.1"></a>Description</h4> |
| <!--l. 171--><p class="noindent" >A <span id="textcolor40"><span |
| class="ec-lmssbx-10">ProtocolClass</span></span> defines a set of incoming and outgoing <span id="textcolor41"><span |
| class="ec-lmssbx-10">Message</span></span>s that can be exchanged between two ports. The exact |
| semantics of a message is defined by the execution model. |
| </p><!--l. 174--><p class="noindent" > |
| </p> |
| <h4 class="subsectionHead"><span class="titlemark">4.2.2 </span> <a |
| id="x25-1100004.2.2"></a>Motivation</h4> |
| <ul class="itemize1"> |
| <li class="itemize">Protocol classes provide a reusable interface specification for ports |
| </li> |
| <li class="itemize">Protocol classes can optionally specify valid message exchange sequences</li></ul> |
| <!--l. 181--><p class="noindent" > |
| </p> |
| <h4 class="subsectionHead"><span class="titlemark">4.2.3 </span> <a |
| id="x25-1110004.2.3"></a>Notation</h4> |
| <!--l. 183--><p class="noindent" >Protocol classes have only textual notation. The example defines a protocol class with 2 incoming and two outgoing |
| messages. Messages can have data attached. The data can be of a primitive type (e.g. int32, float64, ...) or a data |
| class. |
| </p> |
| <!--l. 188--> |
| <div class="lstlisting" id="listing-23"><span class="label"><a |
| id="x25-111001r1"></a></span><span |
| class="ec-lmssbx-10x-x-90">ProtocolClass</span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9">ProtocolClass1</span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9">{</span><span |
| class="ec-lmtt-9"> </span><br /><span class="label"><a |
| id="x25-111002r2"></a></span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmssbx-10x-x-90">incoming</span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9">{</span><span |
| class="ec-lmtt-9"> </span><br /><span class="label"><a |
| id="x25-111003r3"></a></span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmssbx-10x-x-90">Message</span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9">m1</span><span |
| class="ec-lmtt-9">(</span><span |
| class="ec-lmtt-9">data</span><span |
| class="ec-lmtt-9">:</span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9">int32</span><span |
| class="ec-lmtt-9">}</span><span |
| class="ec-lmtt-9"> </span><br /><span class="label"><a |
| id="x25-111004r4"></a></span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmssbx-10x-x-90">Message</span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9">m2</span><span |
| class="ec-lmtt-9">()</span><span |
| class="ec-lmtt-9"> </span><br /><span class="label"><a |
| id="x25-111005r5"></a></span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9">}</span><span |
| class="ec-lmtt-9"> </span><br /><span class="label"><a |
| id="x25-111006r6"></a></span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmssbx-10x-x-90">outgoing</span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9">{</span><span |
| class="ec-lmtt-9"> </span><br /><span class="label"><a |
| id="x25-111007r7"></a></span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmssbx-10x-x-90">Message</span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9">m3</span><span |
| class="ec-lmtt-9">(</span><span |
| class="ec-lmtt-9">data</span><span |
| class="ec-lmtt-9">:</span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9">DataClass1</span><span |
| class="ec-lmtt-9">}</span><span |
| class="ec-lmtt-9"> </span><br /><span class="label"><a |
| id="x25-111008r8"></a></span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmssbx-10x-x-90">Message</span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9">m4</span><span |
| class="ec-lmtt-9">()</span><span |
| class="ec-lmtt-9"> </span><br /><span class="label"><a |
| id="x25-111009r9"></a></span><span |
| class="ec-lmtt-9"> </span><span |
| class="ec-lmtt-9">}</span><span |
| class="ec-lmtt-9"> </span><br /><span class="label"><a |
| id="x25-111010r10"></a></span><span |
| class="ec-lmtt-9">}</span> |
| </div> |
| |
| |
| <!--l. 201--><div class="crosslinks"><p class="noindent">[<a |
| href="etrice-docse20.html" >next</a>] [<a |
| href="etrice-docse18.html" >prev</a>] [<a |
| href="etrice-docse18.html#tailetrice-docse18.html" >prev-tail</a>] [<a |
| href="etrice-docse19.html" >front</a>] [<a |
| href="etrice-docch4.html#etrice-docse19.html" >up</a>] </p></div> |
| <!--l. 201--><p class="noindent" ><a |
| id="tailetrice-docse19.html"></a> </p> |
| </body></html> |