Skip to content
Snippets Groups Projects
Commit 46fff065 authored by Brutzman, Don's avatar Brutzman, Don
Browse files

Merge origin/master

parents 613cfd9e 60927a08
No related branches found
No related tags found
No related merge requests found
Showing
with 2419 additions and 0 deletions
/**
* open-dis library version 4: Java examples supporting the NPS MOVES MV3500 Networked Graphics course.
*
* @see <a href="https://gitlab.nps.edu/Savage/NetworkedGraphicsMV3500/-/tree/master/examples/src/OpenDis4Examples" target="blank">NetworkedGraphicsMV3500 examples: OpenDis4Examples</a>
* @see java.lang.Package
* @see <a href="https://stackoverflow.com/questions/22095487/why-is-package-info-java-useful" target="blank">StackOverflow: why-is-package-info-java-useful</a>
* @see <a href="https://stackoverflow.com/questions/624422/how-do-i-document-packages-in-java" target="blank">StackOverflow: how-do-i-document-packages-in-java</a>
*/
package OpenDis4Examples;
package OpenDis7Examples;
import edu.nps.moves.dis7.enumerations.*;
import edu.nps.moves.dis7.pdus.*;
import edu.nps.moves.dis7.utilities.DisTime;
import edu.nps.moves.dis7.utilities.PduFactory;
import java.io.*;
import java.net.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/** Listen to all kinds of PDUs and report them */
public class AllPduReceiver
{
/** Default constructor */
public AllPduReceiver()
{
// default constructor
}
/** default multicast address
* @see <a href="https://en.wikipedia.org/wiki/Multicast_address" target="_blank">https://en.wikipedia.org/wiki/Multicast_address</a> */
public static final String DEFAULT_MULTICAST_ADDRESS = AllPduSender.DEFAULT_MULTICAST_ADDRESS;
/** default multicast port
* @see <a href="https://en.wikipedia.org/wiki/Port_(computer_networking)" target="_blank">https://en.wikipedia.org/wiki/Port_(computer_networking)</a> */
public static final int DEFAULT_MULTICAST_PORT = AllPduSender.DEFAULT_MULTICAST_PORT;
/** TODO whether to use Fast ESPDU */
public static final boolean USE_FAST_ESPDU = false;
/** Output prefix to identify this class */
private final static String TRACE_PREFIX = "[" + AllPduReceiver.class.getName() + "] ";
/**
* Program invocation, execution starts here
* @param args command-line arguments
*/
public static void main(String args[])
{
MulticastSocket multicastSocket;
InetAddress multicastInetAddress;
PduFactory pduFactory = new PduFactory();
DisTime.TimestampStyle timestampStyle = DisTime.TimestampStyle.IEEE_ABSOLUTE;
DisTime.setTimestampStyle(timestampStyle);
System.out.println(TRACE_PREFIX + "started...");
try {
if (args.length == 2)
{
multicastInetAddress = InetAddress.getByName(args[0]);
multicastSocket = new MulticastSocket(Integer.parseInt(args[1]));
}
else
{
System.out.println("Usage: AllPduReceiver <multicast group> <port>");
System.out.println("Default: AllPduReceiver " + DEFAULT_MULTICAST_ADDRESS + " " + DEFAULT_MULTICAST_PORT);
multicastSocket = new MulticastSocket(DEFAULT_MULTICAST_PORT);
multicastInetAddress = InetAddress.getByName(DEFAULT_MULTICAST_ADDRESS);
}
System.out.println("To quit: stop or kill this process");
// multicastSocket.joinGroup(multicastInetAddress); // deprecated
// =======================================================================
// new approach using interface
NetworkInterface networkInterface = NetworkInterface.getByInetAddress(multicastInetAddress);
SocketAddress localMulticastSocketAddress = new InetSocketAddress(multicastInetAddress, DEFAULT_MULTICAST_PORT);
multicastSocket.joinGroup(localMulticastSocketAddress, networkInterface);
// =======================================================================
byte buffer[] = new byte[1500]; // typical MTU size in bytes
while (true) // Loop indefinitely, receiving datagrams
{
Arrays.fill(buffer, (byte)0);
DatagramPacket datagramPacket = new DatagramPacket(buffer, buffer.length); // reset packet each time
multicastSocket.receive(datagramPacket); // process blocks here until receipt of network packet with PDU
// datagramPacket.setLength(buffer.length);
// Pdu pdu = pduFactory.createPdu(packet.getData()); // packet.getData() returns byte[] array data buffer
List<Pdu> pduBundle = pduFactory.getPdusFromBundle(datagramPacket.getData(),datagramPacket.getLength());
if (pduBundle.isEmpty())
System.out.println("Received PDU bundle is empty, packet.getData().length=" + datagramPacket.getData().length + ", error...");
// else if (pduBundle.size() == 1)// common case, typically unremarkable
// System.out.println("Received PDU bundle size is " + pduBundle.size());
else if (pduBundle.size() > 1)
System.out.println("Received PDU bundle size is " + pduBundle.size());
for (Pdu nextPdu : pduBundle) // iterator loop through PDU bundle
{
DisPduType currentPduType = nextPdu.getPduType(); //short currentPduType = nextPdu.getPduType();
String currentPduTypeName = nextPdu.getClass().getSimpleName();
String currentPduFamilyName = nextPdu.getClass().getSuperclass().getSimpleName();
DISProtocolFamily currentProtocolFamilyID = nextPdu.getProtocolFamily(); //short currentProtocolFamilyID = nextPdu.getProtocolFamily();
StringBuilder message = new StringBuilder();
message.append(DisTime.convertToString(nextPdu.getTimestamp())).append(" ");
message.append("received new DIS PDU ");
String currentPduTypePadded = String.format("%-48s", currentPduType); // - indicates right padding of whitespace
message.append(currentPduTypePadded);
// optional, verbose
// String currentPduTypeNamePadded = String.format("%-49s", currentPduTypeName); // - indicates right padding of whitespace
// message.append(" of type ").append(currentPduTypeNamePadded); // package.class name
message.append(" (").append(currentProtocolFamilyID);
// message.append(" ").append(currentPduFamilyName); // class name is also available
message.append(")");
System.out.println(message.toString()); // diagnostic information helps
// additional message information of interest, if any
switch (currentPduType) // using enumeration values from edu.​nps.​moves.​dis7.​enumerations.​DisPduType
{
case COMMENT:
CommentPdu commentPdu = (CommentPdu)nextPdu; // cast to precise type
ArrayList<VariableDatum> payloadList = (ArrayList<VariableDatum>)commentPdu.getVariableDatums();
if (!payloadList.isEmpty())
System.out.print (" messages: ");
for (VariableDatum variableDatum : payloadList)
{
String nextComment = new String(variableDatum.getVariableDatumValue()); // convert byte[] to String
System.out.print (" \"" + nextComment + "\"");
}
System.out.println();
}
}
pduBundle.clear();
}
}
catch (IOException e) {
System.out.println("Problem with OpenDis7Examples.AllPduReceiver, see exception trace:");
System.out.println(e);
}
finally {
System.out.println("OpenDis7Examples.AllPduReceiver complete.");
}
}
}
ant -f C:\\x3d-nps-gitlab\\NetworkedGraphicsMV3500\\examples -Dnb.internal.action.name=run.single -Djavac.includes=OpenDis7Examples/AllPduReceiver.java -Drun.class=OpenDis7Examples.AllPduReceiver run-single
init:
Deleting: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
deps-jar:
Updating property file: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
Compiling 1 source file to C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\classes
warning: [options] system modules path not set in conjunction with -source 17
1 warning
compile-single:
run-single:
[OpenDis7Examples.AllPduReceiver] started...
Usage: AllPduReceiver <multicast group> <port>
Default: AllPduReceiver 239.1.2.3 3000
To quit: stop or kill this process
1969-00-31 16:00:00 received new DIS PDU DisPduType 01 ENTITY_STATE (DISProtocolFamily 1 ENTITY_INFORMATION_INTERACTION)
1969-00-31 16:00:00 received new DIS PDU DisPduType 02 FIRE (DISProtocolFamily 2 WARFARE)
1969-00-31 16:00:00 received new DIS PDU DisPduType 03 DETONATION (DISProtocolFamily 2 WARFARE)
1969-00-31 16:00:00 received new DIS PDU DisPduType 04 COLLISION (DISProtocolFamily 1 ENTITY_INFORMATION_INTERACTION)
1969-00-31 16:00:00 received new DIS PDU DisPduType 05 SERVICE_REQUEST (DISProtocolFamily 3 LOGISTICS)
1969-00-31 16:00:00 received new DIS PDU DisPduType 06 RESUPPLY_OFFER (DISProtocolFamily 3 LOGISTICS)
1969-00-31 16:00:00 received new DIS PDU DisPduType 07 RESUPPLY_RECEIVED (DISProtocolFamily 3 LOGISTICS)
1969-00-31 16:00:00 received new DIS PDU DisPduType 08 RESUPPLY_CANCEL (DISProtocolFamily 3 LOGISTICS)
1969-00-31 16:00:00 received new DIS PDU DisPduType 09 REPAIR_COMPLETE (DISProtocolFamily 3 LOGISTICS)
1969-00-31 16:00:00 received new DIS PDU DisPduType 10 REPAIR_RESPONSE (DISProtocolFamily 3 LOGISTICS)
1969-00-31 16:00:00 received new DIS PDU DisPduType 11 CREATE_ENTITY (DISProtocolFamily 5 SIMULATION_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 12 REMOVE_ENTITY (DISProtocolFamily 5 SIMULATION_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 13 START_RESUME (DISProtocolFamily 5 SIMULATION_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 14 STOP_FREEZE (DISProtocolFamily 5 SIMULATION_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 15 ACKNOWLEDGE (DISProtocolFamily 5 SIMULATION_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 16 ACTION_REQUEST (DISProtocolFamily 5 SIMULATION_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 17 ACTION_RESPONSE (DISProtocolFamily 5 SIMULATION_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 18 DATA_QUERY (DISProtocolFamily 5 SIMULATION_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 19 SET_DATA (DISProtocolFamily 5 SIMULATION_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 20 DATA (DISProtocolFamily 5 SIMULATION_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 21 EVENT_REPORT (DISProtocolFamily 5 SIMULATION_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 22 COMMENT (DISProtocolFamily 5 SIMULATION_MANAGEMENT)
messages: "Hello CommentPDU" "Here is a second line of text in this comment."
1969-00-31 16:00:00 received new DIS PDU DisPduType 23 ELECTROMAGNETIC_EMISSION (DISProtocolFamily 6 DISTRIBUTED_EMISSION_REGENERATION)
1969-00-31 16:00:00 received new DIS PDU DisPduType 24 DESIGNATOR (DISProtocolFamily 6 DISTRIBUTED_EMISSION_REGENERATION)
1969-00-31 16:00:00 received new DIS PDU DisPduType 25 TRANSMITTER (DISProtocolFamily 4 RADIO_COMMUNICATIONS)
1969-00-31 16:00:00 received new DIS PDU DisPduType 26 SIGNAL (DISProtocolFamily 4 RADIO_COMMUNICATIONS)
1969-00-31 16:00:00 received new DIS PDU DisPduType 27 RECEIVER (DISProtocolFamily 4 RADIO_COMMUNICATIONS)
1969-00-31 16:00:00 received new DIS PDU DisPduType 28 IDENTIFICATION_FRIEND_OR_FOE (DISProtocolFamily 6 DISTRIBUTED_EMISSION_REGENERATION)
1969-00-31 16:00:00 received new DIS PDU DisPduType 29 UNDERWATER_ACOUSTIC (DISProtocolFamily 6 DISTRIBUTED_EMISSION_REGENERATION)
1969-00-31 16:00:00 received new DIS PDU DisPduType 30 SUPPLEMENTAL_EMISSION_ENTITY_STATE (DISProtocolFamily 6 DISTRIBUTED_EMISSION_REGENERATION)
1969-00-31 16:00:00 received new DIS PDU DisPduType 31 INTERCOM_SIGNAL (DISProtocolFamily 4 RADIO_COMMUNICATIONS)
1969-00-31 16:00:00 received new DIS PDU DisPduType 32 INTERCOM_CONTROL (DISProtocolFamily 4 RADIO_COMMUNICATIONS)
1969-00-31 16:00:00 received new DIS PDU DisPduType 33 AGGREGATE_STATE (DISProtocolFamily 7 ENTITY_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 34 ISGROUPOF (DISProtocolFamily 7 ENTITY_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 35 TRANSFER_OWNERSHIP (DISProtocolFamily 7 ENTITY_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 36 ISPARTOF (DISProtocolFamily 7 ENTITY_MANAGEMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 37 MINEFIELD_STATE (DISProtocolFamily 8 MINEFIELD)
1969-00-31 16:00:00 received new DIS PDU DisPduType 38 MINEFIELD_QUERY (DISProtocolFamily 8 MINEFIELD)
1969-00-31 16:00:00 received new DIS PDU DisPduType 39 MINEFIELD_DATA (DISProtocolFamily 8 MINEFIELD)
1969-00-31 16:00:00 received new DIS PDU DisPduType 40 MINEFIELD_RESPONSE_NACK (DISProtocolFamily 8 MINEFIELD)
1969-00-31 16:00:00 received new DIS PDU DisPduType 41 ENVIRONMENTAL_PROCESS (DISProtocolFamily 9 SYNTHETIC_ENVIRONMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 42 GRIDDED_DATA (DISProtocolFamily 9 SYNTHETIC_ENVIRONMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 43 POINT_OBJECT_STATE (DISProtocolFamily 9 SYNTHETIC_ENVIRONMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 44 LINEAR_OBJECT_STATE (DISProtocolFamily 9 SYNTHETIC_ENVIRONMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 45 AREAL_OBJECT_STATE (DISProtocolFamily 9 SYNTHETIC_ENVIRONMENT)
1969-00-31 16:00:00 received new DIS PDU DisPduType 46 TIME_SPACE_POSITION_INFORMATION (DISProtocolFamily 11 LIVE_ENTITY_LE_INFORMATION_INTERACTION)
1969-00-31 16:00:00 received new DIS PDU DisPduType 47 APPEARANCE (DISProtocolFamily 11 LIVE_ENTITY_LE_INFORMATION_INTERACTION)
1969-00-31 16:00:00 received new DIS PDU DisPduType 48 ARTICULATED_PARTS (DISProtocolFamily 11 LIVE_ENTITY_LE_INFORMATION_INTERACTION)
1969-00-31 16:00:00 received new DIS PDU DisPduType 49 LIVE_ENTITY_FIRE (DISProtocolFamily 11 LIVE_ENTITY_LE_INFORMATION_INTERACTION)
1969-00-31 16:00:00 received new DIS PDU DisPduType 50 LIVE_ENTITY_DETONATION (DISProtocolFamily 11 LIVE_ENTITY_LE_INFORMATION_INTERACTION)
1969-00-31 16:00:00 received new DIS PDU DisPduType 51 CREATE_ENTITY_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 52 REMOVE_ENTITY_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 53 START_RESUME_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 54 STOP_FREEZE_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 55 ACKNOWLEDGE_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 56 ACTION_REQUEST_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 57 ACTION_RESPONSE_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 58 DATA_QUERY_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 59 SET_DATA_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 60 DATA_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 61 EVENT_REPORT_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 62 COMMENT_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 63 RECORD_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 64 SET_RECORD_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 65 RECORD_QUERY_RELIABLE (DISProtocolFamily 10 SIMULATION_MANAGEMENT_WITH_RELIABILITY)
1969-00-31 16:00:00 received new DIS PDU DisPduType 66 COLLISION_ELASTIC (DISProtocolFamily 1 ENTITY_INFORMATION_INTERACTION)
1969-00-31 16:00:00 received new DIS PDU DisPduType 67 ENTITY_STATE_UPDATE (DISProtocolFamily 1 ENTITY_INFORMATION_INTERACTION)
1969-00-31 16:00:00 received new DIS PDU DisPduType 68 DIRECTED_ENERGY_FIRE (DISProtocolFamily 2 WARFARE)
1969-00-31 16:00:00 received new DIS PDU DisPduType 69 ENTITY_DAMAGE_STATUS (DISProtocolFamily 2 WARFARE)
1969-00-31 16:00:00 received new DIS PDU DisPduType 70 INFORMATION_OPERATIONS_ACTION (DISProtocolFamily 13 INFORMATION_OPERATIONS)
1969-00-31 16:00:00 received new DIS PDU DisPduType 71 INFORMATION_OPERATIONS_REPORT (DISProtocolFamily 13 INFORMATION_OPERATIONS)
1969-00-31 16:00:00 received new DIS PDU DisPduType 72 ATTRIBUTE (DISProtocolFamily 1 ENTITY_INFORMATION_INTERACTION)
This diff is collapsed.
ant -f C:\\x3d-nps-gitlab\\NetworkedGraphicsMV3500\\examples -Dnb.internal.action.name=run.single -Djavac.includes=OpenDis7Examples/AllPduSender.java -Drun.class=OpenDis7Examples.AllPduSender run-single
init:
Deleting: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
deps-jar:
Updating property file: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
Compiling 1 source file to C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\classes
warning: [options] system modules path not set in conjunction with -source 17
1 warning
compile-single:
run-single:
Usage: AllPduSender <multicast group> <port>
Default: AllPduSender 239.1.2.3 3000
OpenDis7Examples.AllPduSender started...
Generate list of all PDU types and note issues, if any...
*** Note: DisPduType.OTHER=0 not supported
Preparing CommentPDU:
"Hello CommentPDU"
"Here is a second line of text in this comment."
Send the 72 PDUs we created...
Sent packet # 1, DisPduType 01 ENTITY_STATE (packet.getLength()=144) of type EntityStatePdu
Sent packet # 2, DisPduType 02 FIRE (packet.getLength()= 96) of type FirePdu
Sent packet # 3, DisPduType 03 DETONATION (packet.getLength()=104) of type DetonationPdu
Sent packet # 4, DisPduType 04 COLLISION (packet.getLength()= 60) of type CollisionPdu
Sent packet # 5, DisPduType 05 SERVICE_REQUEST (packet.getLength()= 28) of type ServiceRequestPdu
Sent packet # 6, DisPduType 06 RESUPPLY_OFFER (packet.getLength()= 28) of type ResupplyOfferPdu
Sent packet # 7, DisPduType 07 RESUPPLY_RECEIVED (packet.getLength()= 28) of type ResupplyReceivedPdu
Sent packet # 8, DisPduType 08 RESUPPLY_CANCEL (packet.getLength()= 24) of type ResupplyCancelPdu
Sent packet # 9, DisPduType 09 REPAIR_COMPLETE (packet.getLength()= 28) of type RepairCompletePdu
Sent packet #10, DisPduType 10 REPAIR_RESPONSE (packet.getLength()= 28) of type RepairResponsePdu
Sent packet #11, DisPduType 11 CREATE_ENTITY (packet.getLength()= 28) of type CreateEntityPdu
Sent packet #12, DisPduType 12 REMOVE_ENTITY (packet.getLength()= 28) of type RemoveEntityPdu
Sent packet #13, DisPduType 13 START_RESUME (packet.getLength()= 44) of type StartResumePdu
Sent packet #14, DisPduType 14 STOP_FREEZE (packet.getLength()= 40) of type StopFreezePdu
Sent packet #15, DisPduType 15 ACKNOWLEDGE (packet.getLength()= 32) of type AcknowledgePdu
Sent packet #16, DisPduType 16 ACTION_REQUEST (packet.getLength()= 40) of type ActionRequestPdu
Sent packet #17, DisPduType 17 ACTION_RESPONSE (packet.getLength()= 40) of type ActionResponsePdu
Sent packet #18, DisPduType 18 DATA_QUERY (packet.getLength()= 40) of type DataQueryPdu
Sent packet #19, DisPduType 19 SET_DATA (packet.getLength()= 40) of type SetDataPdu
Sent packet #20, DisPduType 20 DATA (packet.getLength()= 40) of type DataPdu
Sent packet #21, DisPduType 21 EVENT_REPORT (packet.getLength()= 40) of type EventReportPdu
Sent packet #22, DisPduType 22 COMMENT (packet.getLength()=112) of type CommentPdu
Sent packet #23, DisPduType 23 ELECTROMAGNETIC_EMISSION (packet.getLength()= 28) of type ElectromagneticEmissionPdu
Sent packet #24, DisPduType 24 DESIGNATOR (packet.getLength()= 88) of type DesignatorPdu
Sent packet #25, DisPduType 25 TRANSMITTER (packet.getLength()=104) of type TransmitterPdu
Sent packet #26, DisPduType 26 SIGNAL (packet.getLength()= 36) of type SignalPdu
Sent packet #27, DisPduType 27 RECEIVER (packet.getLength()= 36) of type ReceiverPdu
Sent packet #28, DisPduType 28 IDENTIFICATION_FRIEND_OR_FOE (packet.getLength()= 60) of type IdentificationFriendOrFoePdu
Sent packet #29, DisPduType 29 UNDERWATER_ACOUSTIC (packet.getLength()= 32) of type UnderwaterAcousticPdu
Sent packet #30, DisPduType 30 SUPPLEMENTAL_EMISSION_ENTITY_STATE (packet.getLength()= 28) of type SupplementalEmissionEntityStatePdu
Sent packet #31, DisPduType 31 INTERCOM_SIGNAL (packet.getLength()= 36) of type IntercomSignalPdu
Sent packet #32, DisPduType 32 INTERCOM_CONTROL (packet.getLength()= 40) of type IntercomControlPdu
Sent packet #33, DisPduType 33 AGGREGATE_STATE (packet.getLength()=136) of type AggregateStatePdu
Sent packet #34, DisPduType 34 ISGROUPOF (packet.getLength()= 40) of type IsGroupOfPdu
Sent packet #35, DisPduType 35 TRANSFER_OWNERSHIP (packet.getLength()= 40) of type TransferOwnershipPdu
Sent packet #36, DisPduType 36 ISPARTOF (packet.getLength()= 52) of type IsPartOfPdu
Sent packet #37, DisPduType 37 MINEFIELD_STATE (packet.getLength()= 72) of type MinefieldStatePdu
Sent packet #38, DisPduType 38 MINEFIELD_QUERY (packet.getLength()= 40) of type MinefieldQueryPdu
Sent packet #39, DisPduType 39 MINEFIELD_DATA (packet.getLength()= 44) of type MinefieldDataPdu
Sent packet #40, DisPduType 40 MINEFIELD_RESPONSE_NACK (packet.getLength()= 26) of type MinefieldResponseNACKPdu
Sent packet #41, DisPduType 41 ENVIRONMENTAL_PROCESS (packet.getLength()= 32) of type EnvironmentalProcessPdu
Sent packet #42, DisPduType 42 GRIDDED_DATA (packet.getLength()= 64) of type GriddedDataPdu
Sent packet #43, DisPduType 43 POINT_OBJECT_STATE (packet.getLength()= 91) of type PointObjectStatePdu
Sent packet #44, DisPduType 44 LINEAR_OBJECT_STATE (packet.getLength()= 40) of type LinearObjectStatePdu
Sent packet #45, DisPduType 45 AREAL_OBJECT_STATE (packet.getLength()= 49) of type ArealObjectStatePdu
Sent packet #46, DisPduType 46 TIME_SPACE_POSITION_INFORMATION (packet.getLength()= 54) of type TimeSpacePositionInformationPdu
Sent packet #47, DisPduType 47 APPEARANCE (packet.getLength()= 67) of type AppearancePdu
Sent packet #48, DisPduType 48 ARTICULATED_PARTS (packet.getLength()= 17) of type ArticulatedPartsPdu
Sent packet #49, DisPduType 49 LIVE_ENTITY_FIRE (packet.getLength()= 67) of type LiveEntityFirePdu
Sent packet #50, DisPduType 50 LIVE_ENTITY_DETONATION (packet.getLength()= 79) of type LiveEntityDetonationPdu
Sent packet #51, DisPduType 51 CREATE_ENTITY_RELIABLE (packet.getLength()= 32) of type CreateEntityReliablePdu
Sent packet #52, DisPduType 52 REMOVE_ENTITY_RELIABLE (packet.getLength()= 32) of type RemoveEntityReliablePdu
Sent packet #53, DisPduType 53 START_RESUME_RELIABLE (packet.getLength()= 48) of type StartResumeReliablePdu
Sent packet #54, DisPduType 54 STOP_FREEZE_RELIABLE (packet.getLength()= 40) of type StopFreezeReliablePdu
Sent packet #55, DisPduType 55 ACKNOWLEDGE_RELIABLE (packet.getLength()= 32) of type AcknowledgeReliablePdu
Sent packet #56, DisPduType 56 ACTION_REQUEST_RELIABLE (packet.getLength()= 44) of type ActionRequestReliablePdu
Sent packet #57, DisPduType 57 ACTION_RESPONSE_RELIABLE (packet.getLength()= 40) of type ActionResponseReliablePdu
Sent packet #58, DisPduType 58 DATA_QUERY_RELIABLE (packet.getLength()= 44) of type DataQueryReliablePdu
Sent packet #59, DisPduType 59 SET_DATA_RELIABLE (packet.getLength()= 40) of type SetDataReliablePdu
Sent packet #60, DisPduType 60 DATA_RELIABLE (packet.getLength()= 40) of type DataReliablePdu
Sent packet #61, DisPduType 61 EVENT_REPORT_RELIABLE (packet.getLength()= 40) of type EventReportReliablePdu
Sent packet #62, DisPduType 62 COMMENT_RELIABLE (packet.getLength()= 32) of type CommentReliablePdu
Sent packet #63, DisPduType 63 RECORD_RELIABLE (packet.getLength()= 36) of type RecordReliablePdu
Sent packet #64, DisPduType 64 SET_RECORD_RELIABLE (packet.getLength()= 40) of type SetRecordReliablePdu
Sent packet #65, DisPduType 65 RECORD_QUERY_RELIABLE (packet.getLength()= 40) of type RecordQueryReliablePdu
Sent packet #66, DisPduType 66 COLLISION_ELASTIC (packet.getLength()=100) of type CollisionElasticPdu
Sent packet #67, DisPduType 67 ENTITY_STATE_UPDATE (packet.getLength()= 72) of type EntityStateUpdatePdu
Sent packet #68, DisPduType 68 DIRECTED_ENERGY_FIRE (packet.getLength()= 88) of type DirectedEnergyFirePdu
Sent packet #69, DisPduType 69 ENTITY_DAMAGE_STATUS (packet.getLength()= 24) of type EntityDamageStatusPdu
Sent packet #70, DisPduType 70 INFORMATION_OPERATIONS_ACTION (packet.getLength()= 56) of type InformationOperationsActionPdu
Sent packet #71, DisPduType 71 INFORMATION_OPERATIONS_REPORT (packet.getLength()= 40) of type InformationOperationsReportPdu
Sent packet #72, DisPduType 72 ATTRIBUTE (packet.getLength()= 32) of type AttributePdu
OpenDis7Examples.AllPduSender complete, sent 72 PDUs total.
BUILD SUCCESSFUL (total time: 3 seconds)
assignments/src/src/OpenDis7Examples/AllPduSenderWireshark.png

129 KiB

File added
package OpenDis7Examples;
import edu.nps.moves.dis7.pdus.*;
import edu.nps.moves.dis7.utilities.*;
import java.io.*;
import java.net.*;
import java.util.*;
/**
* Receives PDUs from the network in IEEE DIS format.
* Adapted from OpenDIS library example package edu.nps.moves.examples
*
* @author DMcG
* @version $Id:$
*/
public class EspduReceiver
{
/** Default constructor */
public EspduReceiver()
{
// default constructor
}
/** Max size of a PDU in binary format that we can receive. This is actually
* somewhat outdated--PDUs can be larger--but this is a reasonable starting point.
*/
private static final int MAX_PDU_SIZE = 8192;
/** Default multicast group address we send on.
* @see <a href="https://en.wikipedia.org/wiki/Multicast_address" target="_blank">https://en.wikipedia.org/wiki/Multicast_address</a> */
public static final String DEFAULT_MULTICAST_ADDRESS = EspduSender.DEFAULT_MULTICAST_ADDRESS;
/** Default multicast port used, matches Wireshark DIS capture default
* @see <a href="https://en.wikipedia.org/wiki/Port_(computer_networking)" target="_blank">https://en.wikipedia.org/wiki/Port_(computer_networking)</a> */
public static final int DEFAULT_MULTICAST_PORT = EspduSender.DEFAULT_MULTICAST_PORT;
/** Output prefix to identify this class */
private final static String TRACE_PREFIX = "[" + EspduReceiver.class.getName() + "] ";
/**
* Program invocation, execution starts here
* @param args command-line arguments
*/
public static void main(String args[])
{
MulticastSocket multicastSocket;
InetAddress multicastInetAddress;
DatagramPacket packet;
PduFactory pduFactory = new PduFactory();
DisTime.TimestampStyle timestampStyle = DisTime.TimestampStyle.IEEE_ABSOLUTE;
DisTime.setTimestampStyle(timestampStyle);
int pduCount = 0;
System.out.println(TRACE_PREFIX + "started...");
try {
// Specify the socket to receive data
multicastSocket = new MulticastSocket(DEFAULT_MULTICAST_PORT);
// socket.setBroadcast(true);
multicastInetAddress = InetAddress.getByName(DEFAULT_MULTICAST_ADDRESS);
// socket.joinGroup(address); // deprecated
// =======================================================================
// new approach using interface
NetworkInterface networkInterface = NetworkInterface.getByInetAddress(multicastInetAddress);
SocketAddress localMulticastSocketAddress = new InetSocketAddress(multicastInetAddress, DEFAULT_MULTICAST_PORT);
multicastSocket.joinGroup(localMulticastSocketAddress, networkInterface);
// =======================================================================
System.out.println(TRACE_PREFIX + "listening for PDU packets on " + multicastInetAddress.getHostAddress() + " port " + DEFAULT_MULTICAST_PORT);
System.out.println("To quit: stop or kill this process");
System.out.println("===============");
while (true) // Loop infinitely, receiving datagrams
{
byte buffer[] = new byte[MAX_PDU_SIZE];
packet = new DatagramPacket(buffer, buffer.length); // reset packet each time
multicastSocket.receive(packet); // process blocks here until receipt of network packet with PDU
List<Pdu> pduBundle = pduFactory.getPdusFromBundle(packet.getData(),packet.getLength());
if (pduBundle.size() > 1)
System.out.println("Received PDU bundle size is " + pduBundle.size());
for (Pdu nextPdu : pduBundle) // iterator loop through PDU bundle
{
pduCount++;
String receiptMessage = String.format("%3s", pduCount) // right justify, 3 characters
+ ". received PDU type " + nextPdu.getPduType().getValue() + "=" + nextPdu.getPduType().name() + " " + nextPdu.getClass().getSimpleName();
if (nextPdu instanceof EntityStatePdu)
{
System.out.println(receiptMessage);
EntityID entityID = ((EntityStatePdu)nextPdu).getEntityID();
Vector3Double position = ((EntityStatePdu)nextPdu).getEntityLocation();
System.out.println(" entityID triplet: [" + entityID.getSiteID()+ ", " + entityID.getApplicationID()+ ", " + entityID.getEntityID()+ "] ");
System.out.println(" Location in DIS coordinates: [" + position.getX() + ", " + position.getY() + ", " + position.getZ() + "]");
}
else if (nextPdu instanceof FirePdu)
{
System.out.println(receiptMessage);
Vector3Double position = ((FirePdu)nextPdu).getLocationInWorldCoordinates();
System.out.println(" FirePdu locationInWorldCoordinates: [" + position.getX() + ", " + position.getY() + ", " + position.getZ() + "]");
System.out.println("===============");
}
else
{
System.out.println(receiptMessage);
}
} // end of bundle loop
} // end of while loop
} // end try block
catch (IOException ioe)
{
System.out.println(TRACE_PREFIX + "Problem with input/output, see exception trace:");
System.out.println(ioe);
}
System.out.println(TRACE_PREFIX + "complete.");
} // end main
} // end class
ant -f C:\\x3d-nps-gitlab\\NetworkedGraphicsMV3500\\examples -Dnb.internal.action.name=run.single -Djavac.includes=OpenDis7Examples/EspduReceiver.java -Drun.class=OpenDis7Examples.EspduReceiver run-single
init:
Deleting: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
deps-jar:
Updating property file: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
Compiling 1 source file to C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\classes
warning: [options] system modules path not set in conjunction with -source 17
1 warning
compile-single:
run-single:
[OpenDis7Examples.EspduReceiver] started...
[OpenDis7Examples.EspduReceiver] listening for PDU packets on 239.1.2.3 port 3000
To quit: stop or kill this process
===============
1. received PDU type 1=ENTITY_STATE EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
2. received PDU type 2=FIRE FirePdu
FirePdu locationInWorldCoordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
===============
3. received PDU type 1=ENTITY_STATE EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
4. received PDU type 2=FIRE FirePdu
FirePdu locationInWorldCoordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
===============
5. received PDU type 1=ENTITY_STATE EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
6. received PDU type 2=FIRE FirePdu
FirePdu locationInWorldCoordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
===============
7. received PDU type 1=ENTITY_STATE EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
8. received PDU type 2=FIRE FirePdu
FirePdu locationInWorldCoordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
===============
9. received PDU type 1=ENTITY_STATE EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
10. received PDU type 2=FIRE FirePdu
FirePdu locationInWorldCoordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
===============
11. received PDU type 1=ENTITY_STATE EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
12. received PDU type 2=FIRE FirePdu
FirePdu locationInWorldCoordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
===============
13. received PDU type 1=ENTITY_STATE EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
14. received PDU type 2=FIRE FirePdu
FirePdu locationInWorldCoordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
===============
15. received PDU type 1=ENTITY_STATE EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
16. received PDU type 2=FIRE FirePdu
FirePdu locationInWorldCoordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
===============
17. received PDU type 1=ENTITY_STATE EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
18. received PDU type 2=FIRE FirePdu
FirePdu locationInWorldCoordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
===============
19. received PDU type 1=ENTITY_STATE EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
20. received PDU type 2=FIRE FirePdu
FirePdu locationInWorldCoordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
===============
This diff is collapsed.
ant -f C:\\x3d-nps-gitlab\\NetworkedGraphicsMV3500\\examples -Dnb.internal.action.name=run.single -Djavac.includes=OpenDis7Examples/EspduSender.java -Drun.class=OpenDis7Examples.EspduSender run-single
init:
Deleting: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
deps-jar:
Updating property file: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
Compiling 1 source file to C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\classes
warning: [options] system modules path not set in conjunction with -source 17
1 warning
compile-single:
run-single:
[OpenDis7Examples.EspduSender] started...
[OpenDis7Examples.EspduSender] sending multicast ESPDU packets to 239.1.2.3 port 3000
===============
espdu entityType information:
EntityKind =EntityKind 1 PLATFORM
Country =Country 225 UNITED_STATES_OF_AMERICA_USA
Domain =Land
Category =1
SubCategory=1
Specific =Country 225 UNITED_STATES_OF_AMERICA_USA
[OpenDis7Examples.EspduSender] sending 5 sets of packets:
===============
Create new PDUs
latitude, longitude: [36.595517, -121.87706]
coordinate conversion: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
Espdu #1 entityID=[1,2,3]
FirePdu #1 firePdu=[FireMissionIndex=0, descriptor=MunitionDescriptor munitionType:EntityType entityKind:EntityKind 0 OTHER domain:Other country:Country 0 OTHER category:0 subCategory:0 specific:0 extra:0 warhead:MunitionDescriptorWarhead 0 OTHER fuse:MunitionDescriptorFuse 0 OTHER quantity:0 rate:0]
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 192.168.1.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 192.168.1.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.209.15 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 172.20.209.15 port 3000
===============
Create new PDUs
latitude, longitude: [36.595517, -121.877]
coordinate conversion: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
Espdu #2 entityID=[1,2,3]
FirePdu #2 firePdu=[FireMissionIndex=0, descriptor=MunitionDescriptor munitionType:EntityType entityKind:EntityKind 0 OTHER domain:Other country:Country 0 OTHER category:0 subCategory:0 specific:0 extra:0 warhead:MunitionDescriptorWarhead 0 OTHER fuse:MunitionDescriptorFuse 0 OTHER quantity:0 rate:0]
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 192.168.1.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 192.168.1.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.209.15 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 172.20.209.15 port 3000
===============
Create new PDUs
latitude, longitude: [36.595517, -121.87706]
coordinate conversion: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
Espdu #3 entityID=[1,2,3]
FirePdu #3 firePdu=[FireMissionIndex=0, descriptor=MunitionDescriptor munitionType:EntityType entityKind:EntityKind 0 OTHER domain:Other country:Country 0 OTHER category:0 subCategory:0 specific:0 extra:0 warhead:MunitionDescriptorWarhead 0 OTHER fuse:MunitionDescriptorFuse 0 OTHER quantity:0 rate:0]
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 192.168.1.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 192.168.1.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.209.15 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 172.20.209.15 port 3000
===============
Create new PDUs
latitude, longitude: [36.595517, -121.877]
coordinate conversion: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
Espdu #4 entityID=[1,2,3]
FirePdu #4 firePdu=[FireMissionIndex=0, descriptor=MunitionDescriptor munitionType:EntityType entityKind:EntityKind 0 OTHER domain:Other country:Country 0 OTHER category:0 subCategory:0 specific:0 extra:0 warhead:MunitionDescriptorWarhead 0 OTHER fuse:MunitionDescriptorFuse 0 OTHER quantity:0 rate:0]
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 192.168.1.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 192.168.1.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.209.15 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 172.20.209.15 port 3000
===============
Create new PDUs
latitude, longitude: [36.595517, -121.87706]
coordinate conversion: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
Espdu #5 entityID=[1,2,3]
FirePdu #5 firePdu=[FireMissionIndex=0, descriptor=MunitionDescriptor munitionType:EntityType entityKind:EntityKind 0 OTHER domain:Other country:Country 0 OTHER category:0 subCategory:0 specific:0 extra:0 warhead:MunitionDescriptorWarhead 0 OTHER fuse:MunitionDescriptorFuse 0 OTHER quantity:0 rate:0]
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 192.168.1.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 192.168.1.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.209.15 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 1500, to 172.20.209.15 port 3000
===============
[OpenDis7Examples.EspduSender] complete.
BUILD SUCCESSFUL (total time: 8 seconds)
assignments/src/src/OpenDis7Examples/EspduSenderWireshark.png

105 KiB

File added
Invocation instructions:
1. run/debug EspduReceiver.java (since sender does not block, first be ready to listen)
2. run/debug EspduSender.java
Program responses follow for sender and receiver:
===================================================
ant -f C:\\x-nps-gitlab\\NetworkedGraphicsMV3500\\examples -Dnb.internal.action.name=run.single -Djavac.includes=OpenDis7Examples/EspduSender.java -Drun.class=OpenDis7Examples.EspduSender run-single
init:
Deleting: C:\x-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
deps-jar:
Updating property file: C:\x-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
Compiling 1 source file to C:\x-nps-gitlab\NetworkedGraphicsMV3500\examples\build\classes
compile-single:
run-single:
[OpenDis7Examples.EspduSender] started...
[OpenDis7Examples.EspduSender] sending multicast ESPDU packets to 239.1.2.3 port 3000
===============
espdu entityType information:
EntityKind =DisPduType 1 PLATFORM
Country =Country 225 UNITED_STATES_OF_AMERICA_USA
Domain =Land
Category =1
SubCategory=1
Specific =Country 225 UNITED_STATES_OF_AMERICA_USA
[OpenDis7Examples.EspduSender] sending 5 sets of packets:
===============
Create new PDUs
latitude, longitude: [36.595517, -121.87706]
coordinate conversion: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
Espdu #1 entityID=[1,2,3]
FirePdu #1 firePdu=[FireMissionIndex=0, descriptor=MunitionDescriptor:
munitionType: EntityType:
entityKind: DisPduType 0 OTHER
domain: Other
country: Country 0 OTHER
category: 0
subCategory: 0
specific: 0
extra: 0
warhead: MunitionDescriptorWarhead 0 OTHER
fuse: MunitionDescriptorFuse 0 OTHER
quantity: 0
rate: 0
]
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.28.239.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.28.239.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.16.0.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.16.0.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.209.219 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.20.209.219 port 3000
===============
Create new PDUs
latitude, longitude: [36.595517, -121.877]
coordinate conversion: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
Espdu #2 entityID=[1,2,3]
FirePdu #2 firePdu=[FireMissionIndex=0, descriptor=MunitionDescriptor:
munitionType: EntityType:
entityKind: DisPduType 0 OTHER
domain: Other
country: Country 0 OTHER
category: 0
subCategory: 0
specific: 0
extra: 0
warhead: MunitionDescriptorWarhead 0 OTHER
fuse: MunitionDescriptorFuse 0 OTHER
quantity: 0
rate: 0
]
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.28.239.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.28.239.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.16.0.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.16.0.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.209.219 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.20.209.219 port 3000
===============
Create new PDUs
latitude, longitude: [36.595517, -121.87706]
coordinate conversion: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
Espdu #3 entityID=[1,2,3]
FirePdu #3 firePdu=[FireMissionIndex=0, descriptor=MunitionDescriptor:
munitionType: EntityType:
entityKind: DisPduType 0 OTHER
domain: Other
country: Country 0 OTHER
category: 0
subCategory: 0
specific: 0
extra: 0
warhead: MunitionDescriptorWarhead 0 OTHER
fuse: MunitionDescriptorFuse 0 OTHER
quantity: 0
rate: 0
]
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.28.239.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.28.239.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.16.0.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.16.0.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.209.219 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.20.209.219 port 3000
===============
Create new PDUs
latitude, longitude: [36.595517, -121.877]
coordinate conversion: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
Espdu #4 entityID=[1,2,3]
FirePdu #4 firePdu=[FireMissionIndex=0, descriptor=MunitionDescriptor:
munitionType: EntityType:
entityKind: DisPduType 0 OTHER
domain: Other
country: Country 0 OTHER
category: 0
subCategory: 0
specific: 0
extra: 0
warhead: MunitionDescriptorWarhead 0 OTHER
fuse: MunitionDescriptorFuse 0 OTHER
quantity: 0
rate: 0
]
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.28.239.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.28.239.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.16.0.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.16.0.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.209.219 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.20.209.219 port 3000
===============
Create new PDUs
latitude, longitude: [36.595517, -121.87706]
coordinate conversion: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
Espdu #5 entityID=[1,2,3]
FirePdu #5 firePdu=[FireMissionIndex=0, descriptor=MunitionDescriptor:
munitionType: EntityType:
entityKind: DisPduType 0 OTHER
domain: Other
country: Country 0 OTHER
category: 0
subCategory: 0
specific: 0
extra: 0
warhead: MunitionDescriptorWarhead 0 OTHER
fuse: MunitionDescriptorFuse 0 OTHER
quantity: 0
rate: 0
]
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 127.255.255.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.28.239.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.28.239.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.16.0.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.16.0.255 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.209.219 port 3000
[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE ] packet.getLength()= 96, to 172.20.209.219 port 3000
===============
[OpenDis7Examples.EspduSender] complete.
BUILD SUCCESSFUL (total time: 11 seconds)
===================================================
ant -f C:\\x-nps-gitlab\\NetworkedGraphicsMV3500\\examples -Dnb.internal.action.name=run.single -Djavac.includes=OpenDis7Examples/EspduReceiver.java -Drun.class=OpenDis7Examples.EspduReceiver run-single
init:
Deleting: C:\x-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
deps-jar:
Updating property file: C:\x-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
Compiling 1 source file to C:\x-nps-gitlab\NetworkedGraphicsMV3500\examples\build\classes
compile-single:
run-single:
[OpenDis7Examples.EspduReceiver] started...
[OpenDis7Examples.EspduReceiver] listening for PDU packets on 239.1.2.3 port 3000
To quit: stop or kill this process
===============
1. received PDU type 1=ENTITY_STATE edu.nps.moves.dis7.pdus.EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
2. received PDU type 2=FIRE edu.nps.moves.dis7.pdus.FirePdu
FirePdu locationInWorldCoordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
===============
3. received PDU type 1=ENTITY_STATE edu.nps.moves.dis7.pdus.EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
4. received PDU type 2=FIRE edu.nps.moves.dis7.pdus.FirePdu
FirePdu locationInWorldCoordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
===============
5. received PDU type 1=ENTITY_STATE edu.nps.moves.dis7.pdus.EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
6. received PDU type 2=FIRE edu.nps.moves.dis7.pdus.FirePdu
FirePdu locationInWorldCoordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
===============
7. received PDU type 1=ENTITY_STATE edu.nps.moves.dis7.pdus.EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
8. received PDU type 2=FIRE edu.nps.moves.dis7.pdus.FirePdu
FirePdu locationInWorldCoordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
===============
9. received PDU type 1=ENTITY_STATE edu.nps.moves.dis7.pdus.EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
10. received PDU type 2=FIRE edu.nps.moves.dis7.pdus.FirePdu
FirePdu locationInWorldCoordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
===============
11. received PDU type 1=ENTITY_STATE edu.nps.moves.dis7.pdus.EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
12. received PDU type 2=FIRE edu.nps.moves.dis7.pdus.FirePdu
FirePdu locationInWorldCoordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
===============
13. received PDU type 1=ENTITY_STATE edu.nps.moves.dis7.pdus.EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
14. received PDU type 2=FIRE edu.nps.moves.dis7.pdus.FirePdu
FirePdu locationInWorldCoordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
===============
15. received PDU type 1=ENTITY_STATE edu.nps.moves.dis7.pdus.EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
16. received PDU type 2=FIRE edu.nps.moves.dis7.pdus.FirePdu
FirePdu locationInWorldCoordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
===============
17. received PDU type 1=ENTITY_STATE edu.nps.moves.dis7.pdus.EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
18. received PDU type 2=FIRE edu.nps.moves.dis7.pdus.FirePdu
FirePdu locationInWorldCoordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
===============
19. received PDU type 1=ENTITY_STATE edu.nps.moves.dis7.pdus.EntityStatePdu
entityID triplet: [1, 2, 3]
Location in DIS coordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
20. received PDU type 2=FIRE edu.nps.moves.dis7.pdus.FirePdu
FirePdu locationInWorldCoordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
===============
\ No newline at end of file
This diff is collapsed.
File added
assignments/src/src/OpenDis7Examples/ExampleSimulationProgramFlowDiagram.png

131 KiB

File added
ant -f C:\\x3d-nps-gitlab\\NetworkedGraphicsMV3500\\examples -Dnb.internal.action.name=run.single -Djavac.includes=OpenDis7Examples/ExampleSimulationProgram.java -Drun.class=OpenDis7Examples.ExampleSimulationProgram run-single
init:
Deleting: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
deps-jar:
Updating property file: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
Compiling 1 source file to C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\classes
warning: [options] system modules path not set in conjunction with -source 17
1 warning
compile-single:
run-single:
[DisChannel] thisHostName=IT160907-INFLPP
[DisChannel ExampleSimulationProgram] Beginning pdu save to directory ./pduLog
[PduRecorder ExampleSimulationProgram] Recorder log file open: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\pduLog\PduCaptureLog.dislog
[DisThreadedNetworkInterface] using network interface PANGP Virtual Ethernet Adapter Secure
[DisThreadedNetworkInterface] datagramSocket.joinGroup address=239.1.2.3 port=3000 isConnected()=false createDatagramSocket() complete.
[DisThreadedNetworkInterface] createThreads() sendingThread.isAlive()=true
[DisThreadedNetworkInterface] createThreads() receiveThread.isAlive()=true
[PduRecorder ExampleSimulationProgram] listening to IP address 239.1.2.3 on port 3000
[DisChannel ExampleSimulationProgram] Network confirmation: address=239.1.2.3 port=3000
[DisChannel ExampleSimulationProgram] just checking: disChannel.getNetworkAddress()=239.1.2.3, getNetworkPort()=3000
[DisChannel ExampleSimulationProgram] just checking: hasVerboseSending()=true, hasVerboseReceipt()=true
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 1] DisPduType 11 CREATE_ENTITY, size 28 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 2] DisPduType 11 CREATE_ENTITY, size 28 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 1] DisPduType 11 CREATE_ENTITY, size 28 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 3] DisPduType 22 COMMENT, size 80 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 2] DisPduType 11 CREATE_ENTITY, size 28 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 3] DisPduType 22 COMMENT, size 80 bytes)
[DisChannel ExampleSimulationProgram] *** [CommentPdu APPLICATION_TIMESTEP] [Simulation timestep duration 1.0 seconds]
[DisChannel ExampleSimulationProgram] main() started...
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 4] DisPduType 22 COMMENT, size 112 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 4] DisPduType 22 COMMENT, size 112 bytes)
[DisChannel ExampleSimulationProgram] *** [CommentPdu TIME] [Simulation time 0.0 at LocalDateTime 2023-12-30T22:00:00.559852600]
... My simulation just did something, no really...
... [Pausing for 1.0 seconds]
... sending PDUs of interest for simulation step 1, monitor loopback to confirm sent
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 5] DisPduType 01 ENTITY_STATE Entity #53, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 5] DisPduType 01 ENTITY_STATE Entity #53, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 6] DisPduType 02 FIRE, size 96 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 6] DisPduType 02 FIRE, size 96 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 7] DisPduType 22 COMMENT, size 104 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 7] DisPduType 22 COMMENT, size 104 bytes)
[DisChannel ExampleSimulationProgram] *** [CommentPdu APPLICATION_STATUS] [MV3500 ExampleSimulationProgram, runSimulation() loop 1]
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 8] DisPduType 01 ENTITY_STATE Entity #2, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 8] DisPduType 01 ENTITY_STATE Entity #2, size 144 bytes)
... [PDUs of interest successfully sent for this loop]
... My simulation just did something, no really...
... [Pausing for 1.0 seconds]
... sending PDUs of interest for simulation step 2, monitor loopback to confirm sent
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 9] DisPduType 01 ENTITY_STATE Entity #53, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 9] DisPduType 01 ENTITY_STATE Entity #53, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 10] DisPduType 02 FIRE, size 96 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 10] DisPduType 02 FIRE, size 96 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 11] DisPduType 22 COMMENT, size 104 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 11] DisPduType 22 COMMENT, size 104 bytes)
[DisChannel ExampleSimulationProgram] *** [CommentPdu APPLICATION_STATUS] [MV3500 ExampleSimulationProgram, runSimulation() loop 2]
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 12] DisPduType 01 ENTITY_STATE Entity #2, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 12] DisPduType 01 ENTITY_STATE Entity #2, size 144 bytes)
... [PDUs of interest successfully sent for this loop]
... My simulation just did something, no really...
... [Pausing for 1.0 seconds]
... sending PDUs of interest for simulation step 3, monitor loopback to confirm sent
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 13] DisPduType 01 ENTITY_STATE Entity #53, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 13] DisPduType 01 ENTITY_STATE Entity #53, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 14] DisPduType 02 FIRE, size 96 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 14] DisPduType 02 FIRE, size 96 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 15] DisPduType 22 COMMENT, size 104 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 15] DisPduType 22 COMMENT, size 104 bytes)
[DisChannel ExampleSimulationProgram] *** [CommentPdu APPLICATION_STATUS] [MV3500 ExampleSimulationProgram, runSimulation() loop 3]
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 16] DisPduType 01 ENTITY_STATE Entity #2, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 16] DisPduType 01 ENTITY_STATE Entity #2, size 144 bytes)
... [PDUs of interest successfully sent for this loop]
... My simulation just did something, no really...
... [Pausing for 1.0 seconds]
... sending PDUs of interest for simulation step 4, monitor loopback to confirm sent
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 17] DisPduType 01 ENTITY_STATE Entity #53, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 17] DisPduType 01 ENTITY_STATE Entity #53, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 18] DisPduType 02 FIRE, size 96 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 18] DisPduType 02 FIRE, size 96 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 19] DisPduType 22 COMMENT, size 104 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 19] DisPduType 22 COMMENT, size 104 bytes)
[DisChannel ExampleSimulationProgram] *** [CommentPdu APPLICATION_STATUS] [MV3500 ExampleSimulationProgram, runSimulation() loop 4]
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 20] DisPduType 01 ENTITY_STATE Entity #2, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 20] DisPduType 01 ENTITY_STATE Entity #2, size 144 bytes)
... [PDUs of interest successfully sent for this loop]
... My simulation just did something, no really...
... [Pausing for 1.0 seconds]
... sending PDUs of interest for simulation step 5, monitor loopback to confirm sent
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 21] DisPduType 01 ENTITY_STATE Entity #53, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 21] DisPduType 01 ENTITY_STATE Entity #53, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 22] DisPduType 02 FIRE, size 96 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 22] DisPduType 02 FIRE, size 96 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 23] DisPduType 22 COMMENT, size 104 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 23] DisPduType 22 COMMENT, size 104 bytes)
[DisChannel ExampleSimulationProgram] *** [CommentPdu APPLICATION_STATUS] [MV3500 ExampleSimulationProgram, runSimulation() loop 5]
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 24] DisPduType 01 ENTITY_STATE Entity #2, size 144 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 24] DisPduType 01 ENTITY_STATE Entity #2, size 144 bytes)
... [PDUs of interest successfully sent for this loop]
... [loop termination condition met, simulationComplete=true]
[DisThreadedNetworkInterface ExampleSimulationProgram] [sending 25] DisPduType 22 COMMENT, size 120 bytes)
[DisThreadedNetworkInterface ExampleSimulationProgram] [receipt 25] DisPduType 22 COMMENT, size 120 bytes)
[DisChannel ExampleSimulationProgram] *** [CommentPdu COMPLETE_EVENT_REPORT] [MV3500 ExampleSimulationProgram, runSimulation() completed successfully]
... [final=completion CommentPdu successfully sent for simulation]
*** setKillSentinelAndInterrupts() sentinel killed=true sendingThread.isInterrupted()=true receiveThread.isInterrupted()=true
[DisThreadedNetworkInterface ExampleSimulationProgram] datagramSocket.leaveGroup address=239.1.2.3 port=3000 isClosed()=true close() complete.
*** killThread() status: sendingThread.isAlive()=false sendingThread.isInterrupted()=true
*** killThread() status: receiveThread.isAlive()=false receiveThread.isInterrupted()=true
*** Thread close status: sendingThread.isAlive()=false receiveThread.isAlive()=false
PduRecorder.stop() closing recorder log file:
C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\pduLog\PduCaptureLog.dislog
[DisChannel ExampleSimulationProgram] complete.
BUILD SUCCESSFUL (total time: 13 seconds)
# Start, ENCODING_PLAINTEXT, [PduRecorder] 20220625_204652, DIS capture file, .\pduLog\PduCaptureLog.dislog
# Timestamp(8 bytes),ProtocolVersion,CompatibilityVersion,ExerciseID,PduType,PduStatus,HeaderLength,PduLength,then PDU-specific data
# =============================================
# DisPduType 11 CREATE_ENTITY, Session time 20:46:52.8, session duration 00:00:00.0, Pdu timestamp -939161411 01:49:49.0, simulation stream interval 0 00:00:00.0
0,0,68,10,-73,22,-97,-7,7,4,11,5,-56,5,-120,-67,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
# DisPduType 11 CREATE_ENTITY, Session time 20:46:52.8, session duration 00:00:00.0, Pdu timestamp -939161411 01:49:49.0, simulation stream interval 0 00:00:00.0
0,0,0,0,0,-126,88,92,7,4,11,5,-56,5,-120,-67,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
# DisPduType 22 COMMENT, Session time 20:46:52.8, session duration 00:00:00.0, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,0,0,-126,88,92,7,1,22,5,0,0,0,0,0,32,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,-81,-46,0,0,1,64,83,105,109,117,108,97,116,105,111,110,32,116,105,109,101,115,116,101,112,32,100,117,114,97,116,105,111,110,32,49,46,48,32,115,101,99,111,110,100,115
# DisPduType 22 COMMENT, Session time 20:46:52.9, session duration 00:00:00.1, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,0,6,-115,-34,-60,7,1,22,5,0,0,0,0,0,32,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,-53,32,0,0,2,16,83,105,109,117,108,97,116,105,111,110,32,116,105,109,101,32,48,46,48,32,97,116,32,76,111,99,97,108,68,97,116,101,84,105,109,101,32,50,48,50,50,45,48,54,45,50,53,84,50,48,58,52,54,58,53,50,46,57,49,56,52,54,50,50,48,48,0,0,0,0,0,0
# DisPduType 01 ENTITY_STATE, Session time 20:46:54.0, session duration 00:00:01.2, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,0,72,-50,23,44,7,1,1,1,0,0,0,0,0,-112,40,0,0,1,0,2,0,3,1,0,1,2,0,-31,23,2,1,0,0,0,0,-31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,-16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,69,110,116,105,116,121,32,35,53,51,0,0,0,0
# DisPduType 02 FIRE, Session time 20:46:54.1, session duration 00:00:01.3, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,0,79,64,-127,-48,7,1,2,2,0,0,0,0,0,96,40,0,0,2,0,3,0,0,0,2,0,3,0,0,0,2,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,122,0,0
# DisPduType 22 COMMENT, Session time 20:46:54.2, session duration 00:00:01.4, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,0,85,-47,-118,-68,7,1,22,5,0,0,0,0,0,32,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,3,-87,-72,0,0,0,-8,77,86,51,53,48,48,32,69,120,97,109,112,108,101,83,105,109,117,108,97,116,105,111,110,80,114,111,103,114,97,109,0,0,3,-87,-72,0,0,0,-80,114,117,110,83,105,109,117,108,97,116,105,111,110,40,41,32,108,111,111,112,32,49,0,0
# DisPduType 01 ENTITY_STATE, Session time 20:46:54.3, session duration 00:00:01.5, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,0,92,49,69,0,7,1,1,1,0,0,0,0,0,-112,40,0,0,1,0,2,0,4,2,0,1,3,0,-51,62,2,2,0,0,0,0,-31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,32,69,110,116,105,116,121,32,35,50,0,0,0,0
# DisPduType 01 ENTITY_STATE, Session time 20:46:55.4, session duration 00:00:02.6, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,0,-98,-85,-33,28,7,1,1,1,0,0,0,0,0,-112,40,0,0,1,0,2,0,3,1,0,1,2,0,-31,23,2,1,0,0,0,0,-31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,69,110,116,105,116,121,32,35,53,51,0,0,0,0
# DisPduType 02 FIRE, Session time 20:46:55.5, session duration 00:00:02.7, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,0,-91,11,-57,-36,7,1,2,2,0,0,0,0,0,96,40,0,0,2,0,3,0,0,0,2,0,3,0,0,0,2,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,122,0,0
# DisPduType 22 COMMENT, Session time 20:46:55.6, session duration 00:00:02.8, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,0,-85,-89,-120,-20,7,1,22,5,0,0,0,0,0,32,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,3,-87,-72,0,0,0,-8,77,86,51,53,48,48,32,69,120,97,109,112,108,101,83,105,109,117,108,97,116,105,111,110,80,114,111,103,114,97,109,0,0,3,-87,-72,0,0,0,-80,114,117,110,83,105,109,117,108,97,116,105,111,110,40,41,32,108,111,111,112,32,50,0,0
# DisPduType 01 ENTITY_STATE, Session time 20:46:55.7, session duration 00:00:02.9, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,0,-78,21,-112,32,7,1,1,1,0,0,0,0,0,-112,40,0,0,1,0,2,0,4,2,0,1,3,0,-51,62,2,2,0,0,0,0,-31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,32,69,110,116,105,116,121,32,35,50,0,0,0,0
# DisPduType 01 ENTITY_STATE, Session time 20:46:56.9, session duration 00:00:04.1, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,0,-12,-17,23,4,7,1,1,1,0,0,0,0,0,-112,40,0,0,1,0,2,0,3,1,0,1,2,0,-31,23,2,1,0,0,0,0,-31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,69,110,116,105,116,121,32,35,53,51,0,0,0,0
# DisPduType 02 FIRE, Session time 20:46:57.0, session duration 00:00:04.2, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,0,-5,98,-81,-100,7,1,2,2,0,0,0,0,0,96,40,0,0,2,0,3,0,0,0,2,0,3,0,0,0,2,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,122,0,0
# DisPduType 22 COMMENT, Session time 20:46:57.1, session duration 00:00:04.3, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,1,1,-14,91,-76,7,1,22,5,0,0,0,0,0,32,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,3,-87,-72,0,0,0,-8,77,86,51,53,48,48,32,69,120,97,109,112,108,101,83,105,109,117,108,97,116,105,111,110,80,114,111,103,114,97,109,0,0,3,-87,-72,0,0,0,-80,114,117,110,83,105,109,117,108,97,116,105,111,110,40,41,32,108,111,111,112,32,51,0,0
# DisPduType 01 ENTITY_STATE, Session time 20:46:57.2, session duration 00:00:04.4, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,1,8,89,25,72,7,1,1,1,0,0,0,0,0,-112,40,0,0,1,0,2,0,4,2,0,1,3,0,-51,62,2,2,0,0,0,0,-31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,32,69,110,116,105,116,121,32,35,50,0,0,0,0
# DisPduType 01 ENTITY_STATE, Session time 20:46:58.3, session duration 00:00:05.5, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,1,74,-66,108,-24,7,1,1,1,0,0,0,0,0,-112,40,0,0,1,0,2,0,3,1,0,1,2,0,-31,23,2,1,0,0,0,0,-31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,69,110,116,105,116,121,32,35,53,51,0,0,0,0
# DisPduType 02 FIRE, Session time 20:46:58.4, session duration 00:00:05.6, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,1,81,99,-111,-32,7,1,2,2,0,0,0,0,0,96,40,0,0,2,0,3,0,0,0,2,0,3,0,0,0,2,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,122,0,0
# DisPduType 22 COMMENT, Session time 20:46:58.5, session duration 00:00:05.7, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,1,87,-39,103,32,7,1,22,5,0,0,0,0,0,32,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,3,-87,-72,0,0,0,-8,77,86,51,53,48,48,32,69,120,97,109,112,108,101,83,105,109,117,108,97,116,105,111,110,80,114,111,103,114,97,109,0,0,3,-87,-72,0,0,0,-80,114,117,110,83,105,109,117,108,97,116,105,111,110,40,41,32,108,111,111,112,32,52,0,0
# DisPduType 01 ENTITY_STATE, Session time 20:46:58.6, session duration 00:00:05.8, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,1,94,99,-18,8,7,1,1,1,0,0,0,0,0,-112,40,0,0,1,0,2,0,4,2,0,1,3,0,-51,62,2,2,0,0,0,0,-31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,32,69,110,116,105,116,121,32,35,50,0,0,0,0
# DisPduType 01 ENTITY_STATE, Session time 20:46:59.8, session duration 00:00:07.0, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,1,-95,61,-111,-44,7,1,1,1,0,0,0,0,0,-112,40,0,0,1,0,2,0,3,1,0,1,2,0,-31,23,2,1,0,0,0,0,-31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,69,110,116,105,116,121,32,35,53,51,0,0,0,0
# DisPduType 02 FIRE, Session time 20:46:59.9, session duration 00:00:07.1, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,1,-89,-76,41,56,7,1,2,2,0,0,0,0,0,96,40,0,0,2,0,3,0,0,0,2,0,3,0,0,0,2,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,122,0,0
# DisPduType 22 COMMENT, Session time 20:47:00.0, session duration 00:00:07.2, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,1,-82,82,31,32,7,1,22,5,0,0,0,0,0,32,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,3,-87,-72,0,0,0,-8,77,86,51,53,48,48,32,69,120,97,109,112,108,101,83,105,109,117,108,97,116,105,111,110,80,114,111,103,114,97,109,0,0,3,-87,-72,0,0,0,-80,114,117,110,83,105,109,117,108,97,116,105,111,110,40,41,32,108,111,111,112,32,53,0,0
# DisPduType 01 ENTITY_STATE, Session time 20:47:00.1, session duration 00:00:07.3, Pdu timestamp 0 00:00:00.0, simulation stream interval 939161411 22:10:11.0
0,0,0,1,-76,-71,-33,-80,7,1,1,1,0,0,0,0,0,-112,40,0,0,1,0,2,0,4,2,0,1,3,0,-51,62,2,2,0,0,0,0,-31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,32,69,110,116,105,116,121,32,35,50,0,0,0,0
# DisPduType 22 COMMENT, Session time 20:47:00.2, session duration 00:00:07.4, Pdu timestamp -1559 23:34:01.0, simulation stream interval 939159852 21:44:12.0
0,0,0,1,-69,116,86,20,7,1,22,5,-1,-1,-7,-23,0,32,40,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,9,90,-90,0,0,0,-8,77,86,51,53,48,48,32,69,120,97,109,112,108,101,83,105,109,117,108,97,116,105,111,110,80,114,111,103,114,97,109,0,0,9,90,-90,0,0,1,48,114,117,110,83,105,109,117,108,97,116,105,111,110,40,41,32,99,111,109,112,108,101,116,101,100,32,115,117,99,99,101,115,115,102,117,108,108,121,0,0
# Finish, ENCODING_PLAINTEXT, [PduRecorder] 20220625_204702, DIS capture file, .\pduLog\PduCaptureLog.dislog
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment