package mil.navy.nps.testing; import java.text.*; // for class DecimalFormat import java.util.*; // for class Vector import mil.navy.nps.dis.*; // for class EntityStatePdu import mil.navy.nps.util.*; import mil.navy.nps.disEnumerations.*; import mil.navy.nps.relate.*; import java.io.*; //==================================================================== // read me // // please run the PduTestListener in seperate console window so it can // receive the PDU from the TransmitterPduSender or any other PDU Tester // // usage c:> java demo.helicopter.TransmitterPduSender //==================================================================== public class TransmitterPduSender { private BehaviorStreamBufferUDP behaviorStreamBufferUDP; // tie in to the network private String ipAddress; private int portNumber; private short idNum; private static int timeToLive = 15; // default ttl convention is local campus private String marking = null; // private String marking = null; private boolean rtpHeaderEnabled = false; private static TransmitterPdu transmitter; //==================================================================== public TransmitterPduSender( ) { // instantiate a BehaviorStreamBufferUDP to handle the network interface, instantiate with // the multicast IP address and port ipAddress = "224.2.181.145"; portNumber = 62040; behaviorStreamBufferUDP = new BehaviorStreamBufferUDP(ipAddress, portNumber); behaviorStreamBufferUDP.setTimeToLive (timeToLive); short[] entityID = new short[3];// create entity id triplet for espdu & fire pdu entityID[0] = 14; //siteNum entityID[1] = 17; //appNum entityID[2] = 9; //id marking = new String("transmitterMarking"); transmitter = new TransmitterPdu(); // transmitter.setMarking( marking ); transmitter.setRtpHeaderEnabled(rtpHeaderEnabled); transmitter.setEntityID(new EntityID(entityID[0], entityID[1], entityID[2])); transmitter.setTransmitState(new UnsignedByte(3)); transmitter.setInputSource(new UnsignedByte(2)); transmitter.setAntennaLocation(new WorldCoordinate(3,4,5)); transmitter.setRelativeAntennaLocation(new EntityCoordinate(6,7,8)); transmitter.setAntennaPatternType(new UnsignedShort(44)); transmitter.setAntennaPatternLength(new UnsignedShort(10)); transmitter.setFrequency(new UnsignedLong(100.00)); transmitter.setTransmitFrequencyBandwidth(new UnsignedInt(330)); transmitter.setPower(new UnsignedInt(555)); //problem // transmitter.setModulationType(45,67,55,88); // this has a problem or may be seting wrong transmitter.setCryptoSytem(new UnsignedShort(30)); transmitter.setCryptoKeyId(new UnsignedShort(40)); transmitter.setLengthOfModulationParameters(new UnsignedByte(12)); } //==================================================================== public void send() { System.out.println(" "); System.out.println(" Sending the Transmitter PDU"); System.out.println(" "); behaviorStreamBufferUDP.sendPdu(transmitter, ipAddress, portNumber); // send pdu } //============================================================================================= // Main //============================================================================================= public static void main(String[] args) { TransmitterPduSender test = new TransmitterPduSender( ); test.send(); } // end main }// end TransmitterPduSender.java