classUpperTesterMapemSpatemFactory.html 14.9 KB
Newer Older
garciay's avatar
garciay committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>ETSI STF525 / Internal Testing test suite: UpperTesterMapemSpatemFactory Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">ETSI STF525 / Internal Testing test suite
   </div>
   <div id="projectbrief">This project provides an internal testing test suite and its associated Test Adapter/Codec</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-static-attribs">Static Private Attributes</a> &#124;
<a href="classUpperTesterMapemSpatemFactory-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">UpperTesterMapemSpatemFactory Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="UpperTesterMapemSpatemFactory_8hh_source.html">UpperTesterMapemSpatemFactory.hh</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for UpperTesterMapemSpatemFactory:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classUpperTesterMapemSpatemFactory.png" usemap="#UpperTesterMapemSpatemFactory_map" alt=""/>
  <map id="UpperTesterMapemSpatemFactory_map" name="UpperTesterMapemSpatemFactory_map">
78
<area href="classlayer__factory.html" title="This class provides a factory class to create layer class instances . " alt="layer_factory" shape="rect" coords="0,0,207,24"/>
garciay's avatar
garciay committed
79 80 81 82 83 84 85
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a758d370d00084451ab6600c04a7d3d90"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUpperTesterMapemSpatemFactory.html#a758d370d00084451ab6600c04a7d3d90">UpperTesterMapemSpatemFactory</a> ()</td></tr>
<tr class="separator:a758d370d00084451ab6600c04a7d3d90"><td class="memSeparator" colspan="2">&#160;</td></tr>
86 87 88
<tr class="memitem:a1544274fdd219159e7b72ac032f8bc51"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classlayer.html">layer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUpperTesterMapemSpatemFactory.html#a1544274fdd219159e7b72ac032f8bc51">create_layer</a> (const std::string &amp;p_type, const std::string &amp;p_param)</td></tr>
<tr class="memdesc:a1544274fdd219159e7b72ac032f8bc51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create the layers stack based on the provided layers stack description (cf. remark)  <a href="#a1544274fdd219159e7b72ac032f8bc51">More...</a><br /></td></tr>
<tr class="separator:a1544274fdd219159e7b72ac032f8bc51"><td class="memSeparator" colspan="2">&#160;</td></tr>
garciay's avatar
garciay committed
89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124
<tr class="inherit_header pub_methods_classlayer__factory"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classlayer__factory')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classlayer__factory.html">layer_factory</a></td></tr>
<tr class="memitem:a483ba7ff7937b7fad9da71826f7be8ad inherit pub_methods_classlayer__factory"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlayer__factory.html#a483ba7ff7937b7fad9da71826f7be8ad">layer_factory</a> ()</td></tr>
<tr class="separator:a483ba7ff7937b7fad9da71826f7be8ad inherit pub_methods_classlayer__factory"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-static-attribs"></a>
Static Private Attributes</h2></td></tr>
<tr class="memitem:affb098bdfad6930261444510e26d70ec"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classUpperTesterMapemSpatemFactory.html">UpperTesterMapemSpatemFactory</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUpperTesterMapemSpatemFactory.html#affb098bdfad6930261444510e26d70ec">_f</a></td></tr>
<tr class="separator:affb098bdfad6930261444510e26d70ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a758d370d00084451ab6600c04a7d3d90"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a758d370d00084451ab6600c04a7d3d90">&#9670;&nbsp;</a></span>UpperTesterMapemSpatemFactory()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">UpperTesterMapemSpatemFactory::UpperTesterMapemSpatemFactory </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
125 126
<a id="a1544274fdd219159e7b72ac032f8bc51"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1544274fdd219159e7b72ac032f8bc51">&#9670;&nbsp;</a></span>create_layer()</h2>
garciay's avatar
garciay committed
127 128 129 130 131 132 133 134

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
135
          <td class="memname">virtual <a class="el" href="classlayer.html">layer</a>* UpperTesterMapemSpatemFactory::create_layer </td>
garciay's avatar
garciay committed
136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>param</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Create the layers stack based on the provided layers stack description (cf. remark) </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">p_type</td><td>The provided layers stack description </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">p_params</td><td>Optional parameters </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 on success, -1 otherwise </dd></dl>
168
<dl class="section remark"><dt>Remarks</dt><dd>The description below introduces layers stack in case of ITS project: CAM layer next_header : btpA|btpB (overwrite BTP.type) header_type : tsb|gbc header_sub_type : sh (single hop) DENM layer next_header : btpA|btpB (overwrite BTP.type) header_type : tsb|gbc BTP layer type : btpA|btpB destination port: dst_port source port : src_port device_mode : Set to 1 if the layer shall encapsulate upper layer PDU GN layer its_aid : ITS AID as defined by ETSI TS 102 965 V1.2.1. Default: 141 ll_address : GeoNetworking address of the Test System latitude : latitude of the Test System longitude : longitude of the Test System beaconing : Set to 1 if GnLayer shall start beaconing Beaconing timer expiry : expiry (ms) device_mode : Set to 1 if the layer shall encapsulate upper layer PDU secured_mode : Set to 1 if message exchanges shall be signed encrypted_mode : Set to 1 if message exchanges shall be encrypted NOTE: For signed &amp; encrypted message exchanges, both secured_mode and encrypted_mode shall be set to 1 certificate : Certificate identifier the Test Adapter shall use secure_db_path : Path to the certificates and keys storage location hash : Hash algorithm to be used when secured mode is set Authorized values are SHA-256 or SHA-384 Default: SHA-256 signature : Signature algorithm to be used when secured mode is set Authorized values are NISTP-256, BP-256 and BP-384 Default: NISTP-256 cypher : Cyphering algorithm to be used when secured mode is set Ethernet layer mac_src :Source MAC address mac_bc :Broadcast address eth_type : Ethernet type Commsignia layer mac_src : Device MAC address, used to discard packets To indicate no filering, use the value 000000000000 mac_bc : Broadcast address eth_type : Ethernet type, used to discard packets target_host : Device address target_port : Device port source_port : Test System port interface_id: Interface id, used to discard packets tx_power : TX power (dB) UDP layer (IP/UDP based on Pcap) dst_ip : destination IPv4 address (aa.bb.cc.dd) dst_port: destination port src_ip : source IPv4 address (aa.bb.cc.dd) src_port: source port Pcap layer mac_src : Source MAC address, used to exclude from capture the acket sent by the Test System filter : Pcap filter (compliant with tcpdump syntax) E.g. filter=and ether src 04e548000001 Online mode: nic: Local NIC If set, online mode is used Offline mode (nic is present but not set): file : File to read frame_offset: Frame offset, used to skip packets with frame number &lt; frame_offset time_offset : Time offset, used to skip packets with time offset &lt; time_offset save_mode : 1 to save sent packet, 0 otherwise Here are some examples: GeoNetworking multiple component case: NodeB.geoNetworkingPort.params := "GN(ll_address=04e548000001,latitude=43551050,longitude=10298730,beaconing=0,expiry=1000,its_aid=141)/COMMSIGNIA(mac_src=04e548000001,mac_bc=FFFFFFFFFFFF,eth_type=8947,target_host=10.200.1.101,target_port=7942,source_port=7943,its_aid=141,interface_id=2,tx_power=-32)/UDP(dst_ip=192.168.56.1,dst_port=12346,src_ip=192.168.156.4,src_port=12345)/ETH(mac_src=04e548000001,mac_dst=0A0027000011,eth_type=0800)/PCAP(mac_src=04e548000001,file=/home/vagrant/TriesAndDelete/etsi_its/testdata/TC_AUTO_IOT_DENM_RWW_BV_01_short.pcap,filter=and (udp port 30000 or udp port 7943))" NodeC.geoNetworkingPort.params := "GN(ll_address=70b3d5791b48,latitude=43551050,longitude=10298730,beaconing=0,expiry=1000,its_aid=141)/COMMSIGNIA(mac_src=70b3d5791b48,mac_bc=FFFFFFFFFFFF,eth_type=8947,target_host=10.200.1.101,target_port=7942,source_port=7943,its_aid=141,interface_id=2,tx_power=-32)/UDP(dst_ip=192.168.56.1,dst_port=12346,src_ip=192.168.156.4,src_port=12345)/ETH(mac_src=70b3d5791b48,mac_dst=0A0027000011,eth_type=0800)/PCAP(mac_src=70b3d5791b48,file=/home/vagrant/TriesAndDelete/etsi_its/testdata/TC_AUTO_IOT_DENM_RWW_BV_01_short.pcap,filter=and (udp port 30000 or udp port 7943))" NodeB.geoNetworkingPort.params := "GN(ll_address=04e548000001,latitude=43551050,longitude=10298730,beaconing=0,expiry=1000,its_aid=141)/ETH(mac_src=04e548000001,mac_dst=0A0027000011,eth_type=0800)/PCAP(mac_src=04e548000001,file=/home/vagrant/TriesAndDelete/etsi_its/testdata/TC_AUTO_IOT_DENM_RWW_BV_01.pcap,filter=and ether src 04e548000001)" #NodeC.geoNetworkingPort.params := "GN(ll_address=70b3d5791b48,latitude=43551050,longitude=10298730,beaconing=0,expiry=1000,its_aid=141)/ETH(mac_src=70b3d5791b48,mac_dst=0A0027000011,eth_type=0800)/PCAP(mac_src=70b3d5791b48,file=/home/vagrant/TriesAndDelete/etsi_its/testdata/TC_AUTO_IOT_DENM_RWW_BV_01.pcap,filter=and  ether src 70b3d5791b48)" UpperTester port based on UDP system.utPort.params := "UT_GN/UDP(dst_ip=192.168.1.1,dst_port=12346,src_ip=192.168.156.4,src_port=12345)/ETH(mac_src=026f8338c1e5,mac_dst=0A0027000011,eth_type=0800)/PCAP(mac_src=0800275c4959,nic=enp0s8,filter=and udp port 12346)"  </dd></dl>
garciay's avatar
garciay committed
169

170
<p>Implements <a class="el" href="classlayer__factory.html#af65482e4c77da879b8b3d2734a726853">layer_factory</a>.</p>
garciay's avatar
garciay committed
171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="affb098bdfad6930261444510e26d70ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#affb098bdfad6930261444510e26d70ec">&#9670;&nbsp;</a></span>_f</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classUpperTesterMapemSpatemFactory.html">UpperTesterMapemSpatemFactory</a> UpperTesterMapemSpatemFactory::_f</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>/home/vagrant/TriesAndDelete/etsi_its/framework/include/<a class="el" href="UpperTesterMapemSpatemFactory_8hh_source.html">UpperTesterMapemSpatemFactory.hh</a></li>
<li>/home/vagrant/TriesAndDelete/etsi_its/framework/src/<a class="el" href="UpperTesterMapemSpatemLayer_8cc.html">UpperTesterMapemSpatemLayer.cc</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
204
Generated on Wed Apr 4 2018 14:16:38 for ETSI STF525 / Internal Testing test suite by &#160;<a href="http://www.doxygen.org/index.html">
garciay's avatar
garciay committed
205 206 207 208 209
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>