blob: 0e5b814251229f5e47aeff56e1d7f83eab7e95f6 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_262) on Thu Oct 29 15:52:04 GMT 2020 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>AbstractNetworkAmbassador (Eclipse MOSAIC Parent 20.0 API)</title>
<meta name="date" content="2020-10-29">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="AbstractNetworkAmbassador (Eclipse MOSAIC Parent 20.0 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/AbstractNetworkAmbassador.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li><a href="../../../../../org/eclipse/mosaic/lib/coupling/CAbstractNetworkAmbassador.html" title="class in org.eclipse.mosaic.lib.coupling"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html" target="_top">Frames</a></li>
<li><a href="AbstractNetworkAmbassador.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.classes.inherited.from.class.org.eclipse.mosaic.rti.api.AbstractFederateAmbassador">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.eclipse.mosaic.lib.coupling</div>
<h2 title="Class AbstractNetworkAmbassador" class="title">Class AbstractNetworkAmbassador</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html" title="class in org.eclipse.mosaic.rti.api">org.eclipse.mosaic.rti.api.AbstractFederateAmbassador</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.mosaic.lib.coupling.AbstractNetworkAmbassador</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../../../org/eclipse/mosaic/rti/api/FederateAmbassador.html" title="interface in org.eclipse.mosaic.rti.api">FederateAmbassador</a>&gt;, <a href="../../../../../org/eclipse/mosaic/rti/api/FederateAmbassador.html" title="interface in org.eclipse.mosaic.rti.api">FederateAmbassador</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../../org/eclipse/mosaic/fed/ns3/ambassador/Ns3Ambassador.html" title="class in org.eclipse.mosaic.fed.ns3.ambassador">Ns3Ambassador</a>, <a href="../../../../../org/eclipse/mosaic/fed/omnetpp/ambassador/OmnetppAmbassador.html" title="class in org.eclipse.mosaic.fed.omnetpp.ambassador">OmnetppAmbassador</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">AbstractNetworkAmbassador</span>
extends <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html" title="class in org.eclipse.mosaic.rti.api">AbstractFederateAmbassador</a></pre>
<div class="block">The Ambassador for coupling a network simulator to MOSAIC RTI.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.org.eclipse.mosaic.rti.api.AbstractFederateAmbassador">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;org.eclipse.mosaic.rti.api.<a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html" title="class in org.eclipse.mosaic.rti.api">AbstractFederateAmbassador</a></h3>
<code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.InteractionQueue.html" title="class in org.eclipse.mosaic.rti.api">AbstractFederateAmbassador.InteractionQueue</a></code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../org/eclipse/mosaic/lib/coupling/CAbstractNetworkAmbassador.html" title="class in org.eclipse.mosaic.lib.coupling">CAbstractNetworkAmbassador</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html#config">config</a></span></code>
<div class="block">A config object for whether to bypass federate destination type capability queries in
<a href="../../../../../org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html#receiveTypedInteraction-org.eclipse.mosaic.interactions.communication.V2xMessageTransmission-"><code>receiveTypedInteraction(V2xMessageTransmission interaction)</code></a> if needed.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../org/eclipse/mosaic/rti/api/federatestarter/DockerFederateExecutor.html" title="class in org.eclipse.mosaic.rti.api.federatestarter">DockerFederateExecutor</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html#dockerFederateExecutor">dockerFederateExecutor</a></span></code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.eclipse.mosaic.rti.api.AbstractFederateAmbassador">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.mosaic.rti.api.<a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html" title="class in org.eclipse.mosaic.rti.api">AbstractFederateAmbassador</a></h3>
<code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#ambassadorParameter">ambassadorParameter</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#descriptor">descriptor</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#endTime">endTime</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#interactionQueue">interactionQueue</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#log">log</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#lookahead">lookahead</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#rti">rti</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colLast" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html#AbstractNetworkAmbassador-org.eclipse.mosaic.rti.api.parameters.AmbassadorParameter-java.lang.String-java.lang.String-">AbstractNetworkAmbassador</a></span>(<a href="../../../../../org/eclipse/mosaic/rti/api/parameters/AmbassadorParameter.html" title="class in org.eclipse.mosaic.rti.api.parameters">AmbassadorParameter</a>&nbsp;ambassadorParameter,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;ambassadorName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;federateName)</code>
<div class="block">Creates a new AbstractNetworkAmbassador.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<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>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html#connectToFederate-java.lang.String-java.io.InputStream-java.io.InputStream-">connectToFederate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;host,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;err)</code>
<div class="block">Connects to the federate.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html#connectToFederate-java.lang.String-int-">connectToFederate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;host,
int&nbsp;port)</code>
<div class="block">Connects the incoming channel with the federate, waits for INIT message and a port number,
connects the outgoing channel to the received port number.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html#finishSimulation--">finishSimulation</a></span>()</code>
<div class="block">Finishes the simulation.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html#initialize-long-long-">initialize</a></span>(long&nbsp;startTime,
long&nbsp;endTime)</code>
<div class="block">This method is called by the TimeManagement to tell the federate the
start and the end time.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html#isTimeConstrained--">isTimeConstrained</a></span>()</code>
<div class="block">Returns whether this federate is time constrained.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html#isTimeRegulating--">isTimeRegulating</a></span>()</code>
<div class="block">Returns whether this federate is time regulating.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html#processInteraction-org.eclipse.mosaic.rti.api.Interaction-">processInteraction</a></span>(<a href="../../../../../org/eclipse/mosaic/rti/api/Interaction.html" title="class in org.eclipse.mosaic.rti.api">Interaction</a>&nbsp;interaction)</code>
<div class="block">This method is called by the <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html" title="class in org.eclipse.mosaic.rti.api"><code>AbstractFederateAmbassador</code></a>s whenever the
federate can safely process interactions in its incoming interaction queue.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html#processTimeAdvanceGrant-long-">processTimeAdvanceGrant</a></span>(long&nbsp;time)</code>
<div class="block">This method is called by the AbstractFederateAmbassador when a time
advance has been granted by the RTI.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html#receiveTypedInteraction-org.eclipse.mosaic.interactions.communication.AdHocCommunicationConfiguration-">receiveTypedInteraction</a></span>(<a href="../../../../../org/eclipse/mosaic/interactions/communication/AdHocCommunicationConfiguration.html" title="class in org.eclipse.mosaic.interactions.communication">AdHocCommunicationConfiguration</a>&nbsp;interaction)</code>
<div class="block">Receive an <a href="../../../../../org/eclipse/mosaic/interactions/communication/AdHocCommunicationConfiguration.html" title="class in org.eclipse.mosaic.interactions.communication"><code>AdHocCommunicationConfiguration</code></a> and send it to the federate if the corresponding node is simulated.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.eclipse.mosaic.rti.api.AbstractFederateAmbassador">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.mosaic.rti.api.<a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html" title="class in org.eclipse.mosaic.rti.api">AbstractFederateAmbassador</a></h3>
<code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#advanceTime-long-">advanceTime</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#compareTo-org.eclipse.mosaic.rti.api.FederateAmbassador-">compareTo</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#createDockerFederateExecutor-java.lang.String-org.eclipse.mosaic.rti.config.CLocalHost.OperatingSystem-">createDockerFederateExecutor</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#createFederateExecutor-java.lang.String-int-org.eclipse.mosaic.rti.config.CLocalHost.OperatingSystem-">createFederateExecutor</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#getEndTime--">getEndTime</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#getId--">getId</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#getPriority--">getPriority</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#receiveInteraction-org.eclipse.mosaic.rti.api.Interaction-">receiveInteraction</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#setFederateDescriptor-org.eclipse.mosaic.rti.api.parameters.FederateDescriptor-">setFederateDescriptor</a>, <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#setRtiAmbassador-org.eclipse.mosaic.rti.api.RtiAmbassador-">setRtiAmbassador</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="dockerFederateExecutor">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dockerFederateExecutor</h4>
<pre>protected&nbsp;<a href="../../../../../org/eclipse/mosaic/rti/api/federatestarter/DockerFederateExecutor.html" title="class in org.eclipse.mosaic.rti.api.federatestarter">DockerFederateExecutor</a> dockerFederateExecutor</pre>
</li>
</ul>
<a name="config">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>config</h4>
<pre>protected&nbsp;<a href="../../../../../org/eclipse/mosaic/lib/coupling/CAbstractNetworkAmbassador.html" title="class in org.eclipse.mosaic.lib.coupling">CAbstractNetworkAmbassador</a> config</pre>
<div class="block">A config object for whether to bypass federate destination type capability queries in
<a href="../../../../../org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html#receiveTypedInteraction-org.eclipse.mosaic.interactions.communication.V2xMessageTransmission-"><code>receiveTypedInteraction(V2xMessageTransmission interaction)</code></a> if needed.</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="AbstractNetworkAmbassador-org.eclipse.mosaic.rti.api.parameters.AmbassadorParameter-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>AbstractNetworkAmbassador</h4>
<pre>protected&nbsp;AbstractNetworkAmbassador(<a href="../../../../../org/eclipse/mosaic/rti/api/parameters/AmbassadorParameter.html" title="class in org.eclipse.mosaic.rti.api.parameters">AmbassadorParameter</a>&nbsp;ambassadorParameter,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;ambassadorName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;federateName)</pre>
<div class="block">Creates a new AbstractNetworkAmbassador.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ambassadorParameter</code> - parameters to configure the ambassador</dd>
<dd><code>ambassadorName</code> - ambassador identifier</dd>
<dd><code>federateName</code> - federate identifier</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="connectToFederate-java.lang.String-java.io.InputStream-java.io.InputStream-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>connectToFederate</h4>
<pre>public&nbsp;void&nbsp;connectToFederate(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;host,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;err)
throws <a href="../../../../../org/eclipse/mosaic/rti/api/InternalFederateException.html" title="class in org.eclipse.mosaic.rti.api">InternalFederateException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#connectToFederate-java.lang.String-java.io.InputStream-java.io.InputStream-">AbstractFederateAmbassador</a></code></span></div>
<div class="block">Connects to the federate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/FederateAmbassador.html#connectToFederate-java.lang.String-java.io.InputStream-java.io.InputStream-">connectToFederate</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/FederateAmbassador.html" title="interface in org.eclipse.mosaic.rti.api">FederateAmbassador</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#connectToFederate-java.lang.String-java.io.InputStream-java.io.InputStream-">connectToFederate</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html" title="class in org.eclipse.mosaic.rti.api">AbstractFederateAmbassador</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>host</code> - The host on which the simulator is running.</dd>
<dd><code>in</code> - This input stream is connected to the output stream of the
started simulator process. The stream is only valid during
this method call.</dd>
<dd><code>err</code> - The error input stream</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/InternalFederateException.html" title="class in org.eclipse.mosaic.rti.api">InternalFederateException</a></code> - if the federation should be stopped due to an critical error</dd>
</dl>
</li>
</ul>
<a name="connectToFederate-java.lang.String-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>connectToFederate</h4>
<pre>public&nbsp;void&nbsp;connectToFederate(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;host,
int&nbsp;port)</pre>
<div class="block">Connects the incoming channel with the federate, waits for INIT message and a port number,
connects the outgoing channel to the received port number.
<br>
This method is called by the federation management service</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/FederateAmbassador.html#connectToFederate-java.lang.String-int-">connectToFederate</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/FederateAmbassador.html" title="interface in org.eclipse.mosaic.rti.api">FederateAmbassador</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#connectToFederate-java.lang.String-int-">connectToFederate</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html" title="class in org.eclipse.mosaic.rti.api">AbstractFederateAmbassador</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>host</code> - host on which the federate is listening</dd>
<dd><code>port</code> - port on which the federate is listening</dd>
</dl>
</li>
</ul>
<a name="initialize-long-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialize</h4>
<pre>public&nbsp;void&nbsp;initialize(long&nbsp;startTime,
long&nbsp;endTime)
throws <a href="../../../../../org/eclipse/mosaic/rti/api/InternalFederateException.html" title="class in org.eclipse.mosaic.rti.api">InternalFederateException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#initialize-long-long-">AbstractFederateAmbassador</a></code></span></div>
<div class="block">This method is called by the TimeManagement to tell the federate the
start and the end time.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/FederateAmbassador.html#initialize-long-long-">initialize</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/FederateAmbassador.html" title="interface in org.eclipse.mosaic.rti.api">FederateAmbassador</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#initialize-long-long-">initialize</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html" title="class in org.eclipse.mosaic.rti.api">AbstractFederateAmbassador</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>startTime</code> - Start time of the simulation run in nano seconds.</dd>
<dd><code>endTime</code> - End time of the simulation run in nano seconds.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/InternalFederateException.html" title="class in org.eclipse.mosaic.rti.api">InternalFederateException</a></code> - if the federation should be stopped due to an critical error</dd>
</dl>
</li>
</ul>
<a name="processInteraction-org.eclipse.mosaic.rti.api.Interaction-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>processInteraction</h4>
<pre>protected&nbsp;void&nbsp;processInteraction(<a href="../../../../../org/eclipse/mosaic/rti/api/Interaction.html" title="class in org.eclipse.mosaic.rti.api">Interaction</a>&nbsp;interaction)
throws <a href="../../../../../org/eclipse/mosaic/rti/api/InternalFederateException.html" title="class in org.eclipse.mosaic.rti.api">InternalFederateException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#processInteraction-org.eclipse.mosaic.rti.api.Interaction-">AbstractFederateAmbassador</a></code></span></div>
<div class="block">This method is called by the <a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html" title="class in org.eclipse.mosaic.rti.api"><code>AbstractFederateAmbassador</code></a>s whenever the
federate can safely process interactions in its incoming interaction queue. The
decision when it is safe to process such an interaction depends on the
policies TimeRegulating and TimeConstrained that has to be set by the
federate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#processInteraction-org.eclipse.mosaic.rti.api.Interaction-">processInteraction</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html" title="class in org.eclipse.mosaic.rti.api">AbstractFederateAmbassador</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>interaction</code> - the interaction to be processed</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/InternalFederateException.html" title="class in org.eclipse.mosaic.rti.api">InternalFederateException</a></code> - an exception inside of a joined federate occurs</dd>
</dl>
</li>
</ul>
<a name="processTimeAdvanceGrant-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>processTimeAdvanceGrant</h4>
<pre>protected&nbsp;void&nbsp;processTimeAdvanceGrant(long&nbsp;time)
throws <a href="../../../../../org/eclipse/mosaic/rti/api/InternalFederateException.html" title="class in org.eclipse.mosaic.rti.api">InternalFederateException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#processTimeAdvanceGrant-long-">AbstractFederateAmbassador</a></code></span></div>
<div class="block">This method is called by the AbstractFederateAmbassador when a time
advance has been granted by the RTI. Before this call is placed, any
unprocessed interaction is forwarded to the federate using the processInteraction
method.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#processTimeAdvanceGrant-long-">processTimeAdvanceGrant</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html" title="class in org.eclipse.mosaic.rti.api">AbstractFederateAmbassador</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>time</code> - The timestamp towards which the federate can advance it local time.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/InternalFederateException.html" title="class in org.eclipse.mosaic.rti.api">InternalFederateException</a></code></dd>
</dl>
</li>
</ul>
<a name="finishSimulation--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>finishSimulation</h4>
<pre>public&nbsp;void&nbsp;finishSimulation()
throws <a href="../../../../../org/eclipse/mosaic/rti/api/InternalFederateException.html" title="class in org.eclipse.mosaic.rti.api">InternalFederateException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#finishSimulation--">AbstractFederateAmbassador</a></code></span></div>
<div class="block">Finishes the simulation.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/FederateAmbassador.html#finishSimulation--">finishSimulation</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/FederateAmbassador.html" title="interface in org.eclipse.mosaic.rti.api">FederateAmbassador</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html#finishSimulation--">finishSimulation</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/AbstractFederateAmbassador.html" title="class in org.eclipse.mosaic.rti.api">AbstractFederateAmbassador</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/InternalFederateException.html" title="class in org.eclipse.mosaic.rti.api">InternalFederateException</a></code> - an exception inside of a joined federate occurs</dd>
</dl>
</li>
</ul>
<a name="receiveTypedInteraction-org.eclipse.mosaic.interactions.communication.AdHocCommunicationConfiguration-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>receiveTypedInteraction</h4>
<pre>protected&nbsp;void&nbsp;receiveTypedInteraction(<a href="../../../../../org/eclipse/mosaic/interactions/communication/AdHocCommunicationConfiguration.html" title="class in org.eclipse.mosaic.interactions.communication">AdHocCommunicationConfiguration</a>&nbsp;interaction)
throws <a href="../../../../../org/eclipse/mosaic/rti/api/InternalFederateException.html" title="class in org.eclipse.mosaic.rti.api">InternalFederateException</a></pre>
<div class="block">Receive an <a href="../../../../../org/eclipse/mosaic/interactions/communication/AdHocCommunicationConfiguration.html" title="class in org.eclipse.mosaic.interactions.communication"><code>AdHocCommunicationConfiguration</code></a> and send it to the federate if the corresponding node is simulated.
If the node is not simulated (only added but did not move yet) the configuration interaction will be saved for later.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>interaction</code> - the AdHoc configuration interaction</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/eclipse/mosaic/rti/api/InternalFederateException.html" title="class in org.eclipse.mosaic.rti.api">InternalFederateException</a></code></dd>
</dl>
</li>
</ul>
<a name="isTimeConstrained--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isTimeConstrained</h4>
<pre>public&nbsp;boolean&nbsp;isTimeConstrained()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/FederateAmbassador.html#isTimeConstrained--">FederateAmbassador</a></code></span></div>
<div class="block">Returns whether this federate is time constrained.
Is set if the federate is sensitive towards the correct ordering of
events. The federate ambassador will ensure that the message
processing happens in time stamp order. If set to false, interactions will be
processed will be in receive order.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if this federate is time constrained, else <code>false</code></dd>
</dl>
</li>
</ul>
<a name="isTimeRegulating--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>isTimeRegulating</h4>
<pre>public&nbsp;boolean&nbsp;isTimeRegulating()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/eclipse/mosaic/rti/api/FederateAmbassador.html#isTimeRegulating--">FederateAmbassador</a></code></span></div>
<div class="block">Returns whether this federate is time regulating.
Is set if the federate influences other federates and can prevent them
from advancing their local time.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if this federate is time regulating, <code>false</code> else</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/AbstractNetworkAmbassador.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li><a href="../../../../../org/eclipse/mosaic/lib/coupling/CAbstractNetworkAmbassador.html" title="class in org.eclipse.mosaic.lib.coupling"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/eclipse/mosaic/lib/coupling/AbstractNetworkAmbassador.html" target="_top">Frames</a></li>
<li><a href="AbstractNetworkAmbassador.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.classes.inherited.from.class.org.eclipse.mosaic.rti.api.AbstractFederateAmbassador">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2020 <a href="https://www.fokus.fraunhofer.de/">Fraunhofer FOKUS</a>. All rights reserved.</small></p>
</body>
</html>