From eb29e7a3f86fccf8534dc1facb42bfae971f9061 Mon Sep 17 00:00:00 2001
From: brutzman <brutzman@nps.edu>
Date: Sun, 10 Dec 2023 09:20:53 -0800
Subject: [PATCH] opendis7-java multiple tuneups for threading, test rebuild

---
 .../OpenDis7Examples/AllPduReceiverLog.txt    | 10 ++--
 .../src/OpenDis7Examples/AllPduSenderLog.txt  |  2 +-
 .../src/OpenDis7Examples/EspduReceiverLog.txt | 48 +++++++++++++++----
 .../src/OpenDis7Examples/EspduSenderLog.txt   | 42 +++++++---------
 .../ExampleSimulationProgram.java             | 13 +++--
 .../ExampleSimulationProgramLog.txt           | 30 +++++-------
 .../ExampleTrackInterpolationLog.txt          | 40 +++++++++-------
 7 files changed, 106 insertions(+), 79 deletions(-)

diff --git a/examples/src/OpenDis7Examples/AllPduReceiverLog.txt b/examples/src/OpenDis7Examples/AllPduReceiverLog.txt
index 678fecdeb5..b8e3703196 100644
--- a/examples/src/OpenDis7Examples/AllPduReceiverLog.txt
+++ b/examples/src/OpenDis7Examples/AllPduReceiverLog.txt
@@ -1,9 +1,11 @@
-ant -f C:\\x-nps-gitlab\\NetworkedGraphicsMV3500\\examples -Dnb.internal.action.name=run.single -Djavac.includes=OpenDis7Examples/AllPduReceiver.java -Drun.class=OpenDis7Examples.AllPduReceiver run-single
+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:\x-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
+Deleting: C:\x3d-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
+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...
diff --git a/examples/src/OpenDis7Examples/AllPduSenderLog.txt b/examples/src/OpenDis7Examples/AllPduSenderLog.txt
index 2d064757fa..69fefbea7e 100644
--- a/examples/src/OpenDis7Examples/AllPduSenderLog.txt
+++ b/examples/src/OpenDis7Examples/AllPduSenderLog.txt
@@ -90,4 +90,4 @@ Sent packet #70, DisPduType 70 INFORMATION_OPERATIONS_ACTION      (packet.getLen
 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: 2 seconds)
+BUILD SUCCESSFUL (total time: 3 seconds)
diff --git a/examples/src/OpenDis7Examples/EspduReceiverLog.txt b/examples/src/OpenDis7Examples/EspduReceiverLog.txt
index 5886e8800d..f1c451e9b5 100644
--- a/examples/src/OpenDis7Examples/EspduReceiverLog.txt
+++ b/examples/src/OpenDis7Examples/EspduReceiverLog.txt
@@ -1,9 +1,11 @@
-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
+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:\x-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
+Deleting: C:\x3d-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
+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...
@@ -18,15 +20,15 @@ To quit: stop or kill this process
 ===============
   3. received PDU type 1=ENTITY_STATE EntityStatePdu
      entityID triplet: [1, 2, 3] 
-     Location in DIS coordinates:        [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
+     Location in DIS coordinates:        [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
   4. received PDU type 2=FIRE FirePdu
-     FirePdu locationInWorldCoordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
+     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:        [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
+     Location in DIS coordinates:        [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
   6. received PDU type 2=FIRE FirePdu
-     FirePdu locationInWorldCoordinates: [-2707497.4860692197, -4353661.0646844525, 3781450.3202754413]
+     FirePdu locationInWorldCoordinates: [-2707492.9269245286, -4353663.899966802, 3781450.3202754413]
 ===============
   7. received PDU type 1=ENTITY_STATE EntityStatePdu
      entityID triplet: [1, 2, 3] 
@@ -40,3 +42,33 @@ To quit: stop or kill this process
  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]
+===============
diff --git a/examples/src/OpenDis7Examples/EspduSenderLog.txt b/examples/src/OpenDis7Examples/EspduSenderLog.txt
index 8627c002d4..d2961bad35 100644
--- a/examples/src/OpenDis7Examples/EspduSenderLog.txt
+++ b/examples/src/OpenDis7Examples/EspduSenderLog.txt
@@ -1,9 +1,11 @@
-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
+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:\x-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
+Deleting: C:\x3d-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
+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...
@@ -25,10 +27,8 @@ 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()= 96, to 127.255.255.255 port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.211.29   port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE        ] packet.getLength()= 96, to 172.20.211.29   port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 10.0.0.255      port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE        ] packet.getLength()= 96, to 10.0.0.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()= 96, to 192.168.1.255   port 3000
 ===============
 Create new PDUs
   latitude, longitude:   [36.595517, -121.877]
@@ -37,10 +37,8 @@ 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()= 96, to 127.255.255.255 port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.211.29   port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE        ] packet.getLength()= 96, to 172.20.211.29   port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 10.0.0.255      port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE        ] packet.getLength()= 96, to 10.0.0.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()= 96, to 192.168.1.255   port 3000
 ===============
 Create new PDUs
   latitude, longitude:   [36.595517, -121.87706]
@@ -49,10 +47,8 @@ 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()= 96, to 127.255.255.255 port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.211.29   port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE        ] packet.getLength()= 96, to 172.20.211.29   port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 10.0.0.255      port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE        ] packet.getLength()= 96, to 10.0.0.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()= 96, to 192.168.1.255   port 3000
 ===============
 Create new PDUs
   latitude, longitude:   [36.595517, -121.877]
@@ -61,10 +57,8 @@ 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()= 96, to 127.255.255.255 port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.211.29   port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE        ] packet.getLength()= 96, to 172.20.211.29   port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 10.0.0.255      port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE        ] packet.getLength()= 96, to 10.0.0.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()= 96, to 192.168.1.255   port 3000
 ===============
 Create new PDUs
   latitude, longitude:   [36.595517, -121.87706]
@@ -73,10 +67,8 @@ 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()= 96, to 127.255.255.255 port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 172.20.211.29   port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE        ] packet.getLength()= 96, to 172.20.211.29   port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 01 ENTITY_STATE] packet.getLength()=144, to 10.0.0.255      port 3000
-[OpenDis7Examples.EspduSender] sending datagram packet [DisPduType 02 FIRE        ] packet.getLength()= 96, to 10.0.0.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()= 96, to 192.168.1.255   port 3000
 ===============
 [OpenDis7Examples.EspduSender] complete.
-BUILD SUCCESSFUL (total time: 7 seconds)
+BUILD SUCCESSFUL (total time: 8 seconds)
diff --git a/examples/src/OpenDis7Examples/ExampleSimulationProgram.java b/examples/src/OpenDis7Examples/ExampleSimulationProgram.java
index 2b4afde0f2..85b07cbf9a 100644
--- a/examples/src/OpenDis7Examples/ExampleSimulationProgram.java
+++ b/examples/src/OpenDis7Examples/ExampleSimulationProgram.java
@@ -94,10 +94,10 @@ public class ExampleSimulationProgram
     {
         disChannel.setNetworkAddress            (address);
         disChannel.setNetworkPort               (port);
-        disChannel.setVerboseComments           (false);      // TODO rename library method to disambiguate CommentPDU
+        disChannel.setVerboseComments           (true);       // TODO rename library method to disambiguate CommentPDU
                                                                             // TODO still seems really chatty... add silent mode?
-        disChannel.setVerboseDisNetworkInterface(false); // Default false
-        disChannel.setVerbosePduRecorder        (false);      // default false
+        disChannel.setVerboseDisNetworkInterface(true);  // Default false
+        disChannel.setVerbosePduRecorder        (true);       // default false
         initialize();
     }
     
@@ -132,11 +132,14 @@ public class ExampleSimulationProgram
         disChannel.setUpNetworkInterface();
         disChannel.printlnTRACE ("just checking: disChannel.getNetworkAddress()=" + disChannel.getNetworkAddress() +
                                                          ", getNetworkPort()="    + disChannel.getNetworkPort());
-
+        disChannel.getDisNetworkInterface().setVerbose(true); // sending and receipt
+        disChannel.printlnTRACE ("just checking: hasVerboseSending()=" + disChannel.getDisNetworkInterface().hasVerboseSending() +
+                                              ", hasVerboseReceipt()=" + disChannel.getDisNetworkInterface().hasVerboseReceipt());
         disChannel.getPduRecorder().setVerbose(true);
+
         // TODO confirm whether recorder is explicitly started by programmer (or not)
         
-//      disChannel.sendCommentPdu(VariableRecordType.OTHER, "ArrivalProcessOpenDis7 initialized"); // hello channel, debug
+//      disChannel.sendCommentPdu(VariableRecordType.OTHER, "DisThreadedNetworkInterface.initializeDisChannel() complete"); // hello channel, debug
     }
     
     /** Get ready, get set... initialize simulation entities.  Who's who in the zoo?
diff --git a/examples/src/OpenDis7Examples/ExampleSimulationProgramLog.txt b/examples/src/OpenDis7Examples/ExampleSimulationProgramLog.txt
index 7c1746e4ea..6886e65130 100644
--- a/examples/src/OpenDis7Examples/ExampleSimulationProgramLog.txt
+++ b/examples/src/OpenDis7Examples/ExampleSimulationProgramLog.txt
@@ -1,4 +1,4 @@
-ant -f C:\\x3d-nps-gitlab\\NetworkedGraphicsMV3500\\examples -Dnb.internal.action.name=run run
+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:
@@ -6,23 +6,23 @@ Updating property file: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build
 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
-Copying 1 file to C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\build\classes
-compile:
-run:
+compile-single:
+run-single:
 [DisChannel] thisHostName=IT160907-INFLPP
 [DisThreadedNetworkInterface] using network interface Intel(R) Wi-Fi 6E AX210 160MHz
 [DisThreadedNetworkInterface] datagramSocket.joinGroup  address=239.1.2.3 port=3000 isConnected()=false createDatagramSocket() complete.
-[DisThreadedNetworkInterface] createThreads() receiveThread.isAlive()=true
 [DisThreadedNetworkInterface] createThreads() sendingThread.isAlive()=true
+[DisThreadedNetworkInterface] createThreads() receiveThread.isAlive()=true
 [DisChannel ExampleSimulationProgram] Network confirmation: address=239.1.2.3 port=3000
 [DisChannel ExampleSimulationProgram] Beginning pdu save to directory ./pduLog
-[PduRecorder] Recorder log file open: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\pduLog\PduCaptureLog28.dislog
+[PduRecorder] Recorder log file open: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\pduLog\PduCaptureLog.dislog
 [DisThreadedNetworkInterface] using network interface Intel(R) Wi-Fi 6E AX210 160MHz
 [DisThreadedNetworkInterface] datagramSocket.joinGroup  address=239.1.2.3 port=3000 isConnected()=false createDatagramSocket() complete.
-[DisThreadedNetworkInterface] createThreads() receiveThread.isAlive()=true
 [DisThreadedNetworkInterface] createThreads() sendingThread.isAlive()=true
+[DisThreadedNetworkInterface] createThreads() receiveThread.isAlive()=true
 [PduRecorder PduRecorder] listening to IP address 239.1.2.3 on port 3000
 [DisChannel ExampleSimulationProgram] just checking: disChannel.getNetworkAddress()=239.1.2.3, getNetworkPort()=3000
+[DisChannel ExampleSimulationProgram] just checking: hasVerboseSending()=true, hasVerboseReceipt()=true
 [DisThreadedNetworkInterface ExampleSimulationProgram] [receipt  1] DisPduType 11 CREATE_ENTITY, size 28 bytes)
 [DisThreadedNetworkInterface ExampleSimulationProgram] [sending  1] DisPduType 11 CREATE_ENTITY, size 28 bytes)
 [DisThreadedNetworkInterface ExampleSimulationProgram] [sending  2] DisPduType 11 CREATE_ENTITY, size 28 bytes)
@@ -37,7 +37,7 @@ run:
 [DisThreadedNetworkInterface ExampleSimulationProgram] [sending  4] DisPduType 22 COMMENT, size 112 bytes)
 [DisThreadedNetworkInterface ExampleSimulationProgram] [receipt  4] DisPduType 22 COMMENT, size 112 bytes)
 [DisThreadedNetworkInterface PduRecorder] [receipt  4] DisPduType 22 COMMENT, size 112 bytes)
-[DisChannel ExampleSimulationProgram] *** [CommentPdu TIME] [Simulation time 0.0 at LocalDateTime 2023-05-15T12:17:06.454742800]
+[DisChannel ExampleSimulationProgram] *** [CommentPdu TIME] [Simulation time 0.0 at LocalDateTime 2023-12-10T09:18:23.296036600]
 ... 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
@@ -129,19 +129,13 @@ run:
 [DisThreadedNetworkInterface PduRecorder] [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() killed=true sendingThread.isInterrupted()=true receiveThread.isInterrupted()=true
-[DisThreadedNetworkInterface PduRecorder] close(): pdus2send.size()=0 baos.size()=0 dos.size()=0
+*** setKillSentinelAndInterrupts() sentinel killed=true sendingThread.isInterrupted()=true receiveThread.isInterrupted()=true
 [DisThreadedNetworkInterface PduRecorder] 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\PduCaptureLog28.dislog
-*** setKillSentinelAndInterrupts() killed=true sendingThread.isInterrupted()=true receiveThread.isInterrupted()=true
-[DisThreadedNetworkInterface ExampleSimulationProgram] close(): pdus2send.size()=0 baos.size()=0 dos.size()=2808
-[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: 14 seconds)
+BUILD SUCCESSFUL (total time: 13 seconds)
diff --git a/examples/src/OpenDis7Examples/ExampleTrackInterpolationLog.txt b/examples/src/OpenDis7Examples/ExampleTrackInterpolationLog.txt
index 07aa6abe04..fe1af98b20 100644
--- a/examples/src/OpenDis7Examples/ExampleTrackInterpolationLog.txt
+++ b/examples/src/OpenDis7Examples/ExampleTrackInterpolationLog.txt
@@ -1,35 +1,38 @@
-ant -f C:\\x-nps-gitlab\\NetworkedGraphicsMV3500\\examples -Dnb.internal.action.name=run.single -Djavac.includes=OpenDis7Examples/ExampleTrackInterpolation.java -Drun.class=OpenDis7Examples.ExampleTrackInterpolation run-single
+ant -f C:\\x3d-nps-gitlab\\NetworkedGraphicsMV3500\\examples -Dnb.internal.action.name=run.single -Djavac.includes=OpenDis7Examples/ExampleTrackInterpolation.java -Drun.class=OpenDis7Examples.ExampleTrackInterpolation run-single
 init:
-Deleting: C:\x-nps-gitlab\NetworkedGraphicsMV3500\examples\build\built-jar.properties
+Deleting: C:\x3d-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
+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-UWALPP
-[DisThreadedNetworkInterface] using network interface PANGP Virtual Ethernet Adapter
+[DisChannel] thisHostName=IT160907-INFLPP
+[DisThreadedNetworkInterface] using network interface Intel(R) Wi-Fi 6E AX210 160MHz
 [DisThreadedNetworkInterface] datagramSocket.joinGroup  address=239.1.2.3 port=3000 isConnected()=false createDatagramSocket() complete.
-[DisThreadedNetworkInterface] createThreads() receiveThread.isAlive()=true
 [DisThreadedNetworkInterface] createThreads() sendingThread.isAlive()=true
+[DisThreadedNetworkInterface] createThreads() receiveThread.isAlive()=true
 [DisChannel ExampleTrackInterpolation] Network confirmation: address=239.1.2.3 port=3000
 [DisChannel ExampleTrackInterpolation] Beginning pdu save to directory ./pduLog
-[PduRecorder] Recorder log file open: C:\x-nps-gitlab\NetworkedGraphicsMV3500\examples\pduLog\PduCaptureLog.dislog
-[DisThreadedNetworkInterface] using network interface PANGP Virtual Ethernet Adapter
+[PduRecorder] Recorder log file open: C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\pduLog\PduCaptureLog.dislog
+[DisThreadedNetworkInterface] using network interface Intel(R) Wi-Fi 6E AX210 160MHz
 [DisThreadedNetworkInterface] datagramSocket.joinGroup  address=239.1.2.3 port=3000 isConnected()=false createDatagramSocket() complete.
-[DisThreadedNetworkInterface] createThreads() receiveThread.isAlive()=true
 [DisThreadedNetworkInterface] createThreads() sendingThread.isAlive()=true
+[DisThreadedNetworkInterface] createThreads() receiveThread.isAlive()=true
 [PduRecorder PduRecorder] listening to IP address 239.1.2.3 on port 3000
 [DisChannel ExampleTrackInterpolation] just checking: disChannel.getNetworkAddress()=239.1.2.3, getNetworkPort()=3000
+[DisChannel ExampleTrackInterpolation] just checking: hasVerboseSending()=true, hasVerboseReceipt()=true
+[DisThreadedNetworkInterface ExampleTrackInterpolation] [receipt  1] DisPduType 11 CREATE_ENTITY, size 28 bytes)
 [DisThreadedNetworkInterface ExampleTrackInterpolation] [sending  1] DisPduType 11 CREATE_ENTITY, size 28 bytes)
 [DisThreadedNetworkInterface ExampleTrackInterpolation] [sending  2] DisPduType 11 CREATE_ENTITY, size 28 bytes)
-[DisThreadedNetworkInterface ExampleTrackInterpolation] [receipt  1] DisPduType 11 CREATE_ENTITY, size 28 bytes)
 [DisThreadedNetworkInterface ExampleTrackInterpolation] [receipt  2] DisPduType 11 CREATE_ENTITY, size 28 bytes)
-[DisThreadedNetworkInterface ExampleTrackInterpolation] [sending  3] DisPduType 22 COMMENT, size 72 bytes)
-[DisThreadedNetworkInterface ExampleTrackInterpolation] [receipt  3] DisPduType 22 COMMENT, size 72 bytes)
+[DisThreadedNetworkInterface ExampleTrackInterpolation] [sending  3] DisPduType 22 COMMENT, size 80 bytes)
+[DisThreadedNetworkInterface ExampleTrackInterpolation] [receipt  3] DisPduType 22 COMMENT, size 80 bytes)
 [DisThreadedNetworkInterface PduRecorder] [receipt  1] DisPduType 11 CREATE_ENTITY, size 28 bytes)
 [DisThreadedNetworkInterface PduRecorder] [receipt  2] DisPduType 11 CREATE_ENTITY, size 28 bytes)
-[DisThreadedNetworkInterface PduRecorder] [receipt  3] DisPduType 22 COMMENT, size 72 bytes)
-[DisChannel ExampleTrackInterpolation] *** [CommentPdu APPLICATION_TIMESTEP] [Simulation timestep 1.0 seconds]
+[DisThreadedNetworkInterface PduRecorder] [receipt  3] DisPduType 22 COMMENT, size 80 bytes)
+[DisChannel ExampleTrackInterpolation] *** [CommentPdu APPLICATION_TIMESTEP] [Simulation timestep duration 1.0 seconds]
 [DisChannel ExampleTrackInterpolation] main() started...
  0 Entity location=( 0.0,  0.0,  0.0) NORTH
 [DisChannel ExampleTrackInterpolation] *** [CommentPdu APPLICATION_TIMESTEP] [MV3500 TrackSimulationProgram, runSimulation() loop 1 at time 0.0]
@@ -127,7 +130,7 @@ pduTrack_1 duration = 42.0 seconds = 0 ticks
     <meta content='ExampleTrackInterpolation.x3d' name='title'/>
     <meta content='Conversion of ESPDU track into X3D animation interpolators and LineSet.' name='description'/>
     <meta content='1 January 2022' name='created'/>
-    <meta content='20 June 2022' name='modified'/>
+    <meta content='10 December 2023' name='modified'/>
     <meta content='Don Brutzman' name='creator'/>
     <meta content='https://gitlab.nps.edu/Savage/NetworkedGraphicsMV3500/-/blob/master/examples/src/OpenDis7Examples/ExampleTrackInterpolation.x3d' name='identifier'/>
     <meta content='PduTrack utility, opendis7-java Library https://github.com/open-dis/opendis7-java' name='generator'/>
@@ -295,6 +298,7 @@ pduTrack_1 duration = 42.0 seconds = 0 ticks
 =================================
 [DisChannel ExampleTrackInterpolation] *** [CommentPdu COMPLETE_EVENT_REPORT] [MV3500 TrackSimulationProgram, runSimulation() completed successfully]
 
-PduRecorder.stop() closing recorder log file: C:\x-nps-gitlab\NetworkedGraphicsMV3500\examples\pduLog\PduCaptureLog.dislog
+PduRecorder.stop() closing recorder log file:
+   C:\x3d-nps-gitlab\NetworkedGraphicsMV3500\examples\pduLog\PduCaptureLog.dislog
 [DisChannel ExampleTrackInterpolation] complete.
-BUILD SUCCESSFUL (total time: 13 seconds)
+BUILD SUCCESSFUL (total time: 15 seconds)
-- 
GitLab