Esempio n. 1
0
        new public int getMarshalledSize()
        {
            int marshalSize = 0;

            marshalSize = base.getMarshalledSize();
            marshalSize = marshalSize + _radioEntityType.getMarshalledSize();         // _radioEntityType
            marshalSize = marshalSize + 1;                                            // _transmitState
            marshalSize = marshalSize + 1;                                            // _inputSource
            marshalSize = marshalSize + 2;                                            // _padding1
            marshalSize = marshalSize + _antennaLocation.getMarshalledSize();         // _antennaLocation
            marshalSize = marshalSize + _relativeAntennaLocation.getMarshalledSize(); // _relativeAntennaLocation
            marshalSize = marshalSize + 2;                                            // _antennaPatternType
            marshalSize = marshalSize + 2;                                            // _antennaPatternCount
            marshalSize = marshalSize + 8;                                            // _frequency
            marshalSize = marshalSize + 4;                                            // _transmitFrequencyBandwidth
            marshalSize = marshalSize + 4;                                            // _power
            marshalSize = marshalSize + _modulationType.getMarshalledSize();          // _modulationType
            marshalSize = marshalSize + 2;                                            // _cryptoSystem
            marshalSize = marshalSize + 2;                                            // _cryptoKeyId
            marshalSize = marshalSize + 1;                                            // _modulationParameterCount
            marshalSize = marshalSize + 2;                                            // _padding2
            marshalSize = marshalSize + 1;                                            // _padding3
            for (int idx = 0; idx < _modulationParametersList.Count; idx++)
            {
                Vector3Float listElement = (Vector3Float)_modulationParametersList[idx];
                marshalSize = marshalSize + listElement.getMarshalledSize();
            }
            for (int idx = 0; idx < _antennaPatternList.Count; idx++)
            {
                Vector3Float listElement = (Vector3Float)_antennaPatternList[idx];
                marshalSize = marshalSize + listElement.getMarshalledSize();
            }

            return(marshalSize);
        }
Esempio n. 2
0
        new public int getMarshalledSize()
        {
            int marshalSize = 0;

            marshalSize = base.getMarshalledSize();
            marshalSize = marshalSize + _minefieldID.getMarshalledSize();        // _minefieldID
            marshalSize = marshalSize + _requestingEntityID.getMarshalledSize(); // _requestingEntityID
            marshalSize = marshalSize + 2;                                       // _minefieldSequenceNumbeer
            marshalSize = marshalSize + 1;                                       // _requestID
            marshalSize = marshalSize + 1;                                       // _pduSequenceNumber
            marshalSize = marshalSize + 1;                                       // _numberOfPdus
            marshalSize = marshalSize + 1;                                       // _numberOfMinesInThisPdu
            marshalSize = marshalSize + 1;                                       // _numberOfSensorTypes
            marshalSize = marshalSize + 1;                                       // _pad2
            marshalSize = marshalSize + 4;                                       // _dataFilter
            marshalSize = marshalSize + _mineType.getMarshalledSize();           // _mineType
            for (int idx = 0; idx < _sensorTypes.Count; idx++)
            {
                TwoByteChunk listElement = (TwoByteChunk)_sensorTypes[idx];
                marshalSize = marshalSize + listElement.getMarshalledSize();
            }
            marshalSize = marshalSize + 1;  // _pad3
            for (int idx = 0; idx < _mineLocation.Count; idx++)
            {
                Vector3Float listElement = (Vector3Float)_mineLocation[idx];
                marshalSize = marshalSize + listElement.getMarshalledSize();
            }

            return(marshalSize);
        }
Esempio n. 3
0
        /**
         * Compares for reference equality and value equality.
         */
        public bool equals(Vector3Float rhs)
        {
            bool ivarsEqual = true;

            if (rhs.GetType() != this.GetType())
            {
                return(false);
            }


            if (!(_x == rhs._x))
            {
                ivarsEqual = false;
            }
            if (!(_y == rhs._y))
            {
                ivarsEqual = false;
            }
            if (!(_z == rhs._z))
            {
                ivarsEqual = false;
            }

            return(ivarsEqual);
        }
Esempio n. 4
0
        } // end of unmarshal method

        ///<summary>
        ///This allows for a quick display of PDU data.  The current format is unacceptable and only used for debugging.
        ///This will be modified in the future to provide a better display.  Usage:
        ///pdu.GetType().InvokeMember("reflection", System.Reflection.BindingFlags.InvokeMethod, null, pdu, new object[] { sb });
        ///where pdu is an object representing a single pdu and sb is a StringBuilder.
        ///Note: The supplied Utilities folder contains a method called 'DecodePDU' in the PDUProcessor Class that provides this functionality
        ///</summary>
        new public void reflection(StringBuilder sb)
        {
            sb.Append("<TransmitterPdu>" + System.Environment.NewLine);
            base.reflection(sb);
            try
            {
                sb.Append("<radioEntityType>" + System.Environment.NewLine);
                _radioEntityType.reflection(sb);
                sb.Append("</radioEntityType>" + System.Environment.NewLine);
                sb.Append("<transmitState type=\"byte\">" + _transmitState.ToString() + "</transmitState> " + System.Environment.NewLine);
                sb.Append("<inputSource type=\"byte\">" + _inputSource.ToString() + "</inputSource> " + System.Environment.NewLine);
                sb.Append("<padding1 type=\"ushort\">" + _padding1.ToString() + "</padding1> " + System.Environment.NewLine);
                sb.Append("<antennaLocation>" + System.Environment.NewLine);
                _antennaLocation.reflection(sb);
                sb.Append("</antennaLocation>" + System.Environment.NewLine);
                sb.Append("<relativeAntennaLocation>" + System.Environment.NewLine);
                _relativeAntennaLocation.reflection(sb);
                sb.Append("</relativeAntennaLocation>" + System.Environment.NewLine);
                sb.Append("<antennaPatternType type=\"ushort\">" + _antennaPatternType.ToString() + "</antennaPatternType> " + System.Environment.NewLine);
                sb.Append("<antennaPatternList type=\"ushort\">" + _antennaPatternList.Count.ToString() + "</antennaPatternList> " + System.Environment.NewLine);
                sb.Append("<frequency type=\"ulong\">" + _frequency.ToString() + "</frequency> " + System.Environment.NewLine);
                sb.Append("<transmitFrequencyBandwidth type=\"float\">" + _transmitFrequencyBandwidth.ToString() + "</transmitFrequencyBandwidth> " + System.Environment.NewLine);
                sb.Append("<power type=\"float\">" + _power.ToString() + "</power> " + System.Environment.NewLine);
                sb.Append("<modulationType>" + System.Environment.NewLine);
                _modulationType.reflection(sb);
                sb.Append("</modulationType>" + System.Environment.NewLine);
                sb.Append("<cryptoSystem type=\"ushort\">" + _cryptoSystem.ToString() + "</cryptoSystem> " + System.Environment.NewLine);
                sb.Append("<cryptoKeyId type=\"ushort\">" + _cryptoKeyId.ToString() + "</cryptoKeyId> " + System.Environment.NewLine);
                sb.Append("<modulationParametersList type=\"byte\">" + _modulationParametersList.Count.ToString() + "</modulationParametersList> " + System.Environment.NewLine);
                sb.Append("<padding2 type=\"ushort\">" + _padding2.ToString() + "</padding2> " + System.Environment.NewLine);
                sb.Append("<padding3 type=\"byte\">" + _padding3.ToString() + "</padding3> " + System.Environment.NewLine);

                for (int idx = 0; idx < _modulationParametersList.Count; idx++)
                {
                    sb.Append("<modulationParametersList" + idx.ToString() + " type=\"Vector3Float\">" + System.Environment.NewLine);
                    Vector3Float aVector3Float = (Vector3Float)_modulationParametersList[idx];
                    aVector3Float.reflection(sb);
                    sb.Append("</modulationParametersList" + idx.ToString() + ">" + System.Environment.NewLine);
                } // end of list marshalling


                for (int idx = 0; idx < _antennaPatternList.Count; idx++)
                {
                    sb.Append("<antennaPatternList" + idx.ToString() + " type=\"Vector3Float\">" + System.Environment.NewLine);
                    Vector3Float aVector3Float = (Vector3Float)_antennaPatternList[idx];
                    aVector3Float.reflection(sb);
                    sb.Append("</antennaPatternList" + idx.ToString() + ">" + System.Environment.NewLine);
                } // end of list marshalling

                sb.Append("</TransmitterPdu>" + System.Environment.NewLine);
            } // end try
            catch (Exception e)
            {
                Trace.WriteLine(e);
                Trace.Flush();
            }
        } // end of marshal method
Esempio n. 5
0
        } // end of unmarshal method

        ///<summary>
        ///This allows for a quick display of PDU data.  The current format is unacceptable and only used for debugging.
        ///This will be modified in the future to provide a better display.  Usage:
        ///pdu.GetType().InvokeMember("reflection", System.Reflection.BindingFlags.InvokeMethod, null, pdu, new object[] { sb });
        ///where pdu is an object representing a single pdu and sb is a StringBuilder.
        ///Note: The supplied Utilities folder contains a method called 'DecodePDU' in the PDUProcessor Class that provides this functionality
        ///</summary>
        new public void reflection(StringBuilder sb)
        {
            sb.Append("<MinefieldDataPdu>" + System.Environment.NewLine);
            base.reflection(sb);
            try
            {
                sb.Append("<minefieldID>" + System.Environment.NewLine);
                _minefieldID.reflection(sb);
                sb.Append("</minefieldID>" + System.Environment.NewLine);
                sb.Append("<requestingEntityID>" + System.Environment.NewLine);
                _requestingEntityID.reflection(sb);
                sb.Append("</requestingEntityID>" + System.Environment.NewLine);
                sb.Append("<minefieldSequenceNumbeer type=\"ushort\">" + _minefieldSequenceNumbeer.ToString() + "</minefieldSequenceNumbeer> " + System.Environment.NewLine);
                sb.Append("<requestID type=\"byte\">" + _requestID.ToString() + "</requestID> " + System.Environment.NewLine);
                sb.Append("<pduSequenceNumber type=\"byte\">" + _pduSequenceNumber.ToString() + "</pduSequenceNumber> " + System.Environment.NewLine);
                sb.Append("<numberOfPdus type=\"byte\">" + _numberOfPdus.ToString() + "</numberOfPdus> " + System.Environment.NewLine);
                sb.Append("<mineLocation type=\"byte\">" + _mineLocation.Count.ToString() + "</mineLocation> " + System.Environment.NewLine);
                sb.Append("<sensorTypes type=\"byte\">" + _sensorTypes.Count.ToString() + "</sensorTypes> " + System.Environment.NewLine);
                sb.Append("<pad2 type=\"byte\">" + _pad2.ToString() + "</pad2> " + System.Environment.NewLine);
                sb.Append("<dataFilter type=\"uint\">" + _dataFilter.ToString() + "</dataFilter> " + System.Environment.NewLine);
                sb.Append("<mineType>" + System.Environment.NewLine);
                _mineType.reflection(sb);
                sb.Append("</mineType>" + System.Environment.NewLine);

                for (int idx = 0; idx < _sensorTypes.Count; idx++)
                {
                    sb.Append("<sensorTypes" + idx.ToString() + " type=\"TwoByteChunk\">" + System.Environment.NewLine);
                    TwoByteChunk aTwoByteChunk = (TwoByteChunk)_sensorTypes[idx];
                    aTwoByteChunk.reflection(sb);
                    sb.Append("</sensorTypes" + idx.ToString() + ">" + System.Environment.NewLine);
                } // end of list marshalling

                sb.Append("<pad3 type=\"byte\">" + _pad3.ToString() + "</pad3> " + System.Environment.NewLine);

                for (int idx = 0; idx < _mineLocation.Count; idx++)
                {
                    sb.Append("<mineLocation" + idx.ToString() + " type=\"Vector3Float\">" + System.Environment.NewLine);
                    Vector3Float aVector3Float = (Vector3Float)_mineLocation[idx];
                    aVector3Float.reflection(sb);
                    sb.Append("</mineLocation" + idx.ToString() + ">" + System.Environment.NewLine);
                } // end of list marshalling

                sb.Append("</MinefieldDataPdu>" + System.Environment.NewLine);
            } // end try
            catch (Exception e)
            {
                Trace.WriteLine(e);
                Trace.Flush();
            }
        } // end of reflection method
Esempio n. 6
0
        } // end of marshal method

        new public void unmarshal(DataInputStream dis)
        {
            base.unmarshal(dis);

            try
            {
                _radioEntityType.unmarshal(dis);
                _transmitState = dis.readByte();
                _inputSource   = dis.readByte();
                _padding1      = dis.readUshort();
                _antennaLocation.unmarshal(dis);
                _relativeAntennaLocation.unmarshal(dis);
                _antennaPatternType         = dis.readUshort();
                _antennaPatternCount        = dis.readUshort();
                _frequency                  = dis.readUlong();
                _transmitFrequencyBandwidth = dis.readFloat();
                _power = dis.readFloat();
                _modulationType.unmarshal(dis);
                _cryptoSystem             = dis.readUshort();
                _cryptoKeyId              = dis.readUshort();
                _modulationParameterCount = dis.readByte();
                _padding2 = dis.readUshort();
                _padding3 = dis.readByte();
                for (int idx = 0; idx < _modulationParameterCount; idx++)
                {
                    Vector3Float anX = new Vector3Float();
                    anX.unmarshal(dis);
                    _modulationParametersList.Add(anX);
                }
                ;

                for (int idx = 0; idx < _antennaPatternCount; idx++)
                {
                    Vector3Float anX = new Vector3Float();
                    anX.unmarshal(dis);
                    _antennaPatternList.Add(anX);
                }
                ;
            } // end try
            catch (Exception e)
            {
                Trace.WriteLine(e);
                Trace.Flush();
            }
        } // end of unmarshal method
Esempio n. 7
0
///<summary>
///Marshal the data to the DataOutputStream.  Note: Length needs to be set before calling this method
///</summary>
        new public void marshal(DataOutputStream dos)
        {
            base.marshal(dos);
            try
            {
                _radioEntityType.marshal(dos);
                dos.writeByte((byte)_transmitState);
                dos.writeByte((byte)_inputSource);
                dos.writeUshort((ushort)_padding1);
                _antennaLocation.marshal(dos);
                _relativeAntennaLocation.marshal(dos);
                dos.writeUshort((ushort)_antennaPatternType);
                dos.writeUshort((ushort)_antennaPatternList.Count);
                dos.writeUlong((ulong)_frequency);
                dos.writeFloat((float)_transmitFrequencyBandwidth);
                dos.writeFloat((float)_power);
                _modulationType.marshal(dos);
                dos.writeUshort((ushort)_cryptoSystem);
                dos.writeUshort((ushort)_cryptoKeyId);
                dos.writeByte((byte)_modulationParametersList.Count);
                dos.writeUshort((ushort)_padding2);
                dos.writeByte((byte)_padding3);

                for (int idx = 0; idx < _modulationParametersList.Count; idx++)
                {
                    Vector3Float aVector3Float = (Vector3Float)_modulationParametersList[idx];
                    aVector3Float.marshal(dos);
                } // end of list marshalling


                for (int idx = 0; idx < _antennaPatternList.Count; idx++)
                {
                    Vector3Float aVector3Float = (Vector3Float)_antennaPatternList[idx];
                    aVector3Float.marshal(dos);
                } // end of list marshalling
            }     // end try
            catch (Exception e)
            {
                Trace.WriteLine(e);
                Trace.Flush();
            }
        } // end of marshal method
Esempio n. 8
0
        } // end of marshal method

        new public void unmarshal(DataInputStream dis)
        {
            base.unmarshal(dis);

            try
            {
                _minefieldID.unmarshal(dis);
                _requestingEntityID.unmarshal(dis);
                _minefieldSequenceNumbeer = dis.readUshort();
                _requestID              = dis.readByte();
                _pduSequenceNumber      = dis.readByte();
                _numberOfPdus           = dis.readByte();
                _numberOfMinesInThisPdu = dis.readByte();
                _numberOfSensorTypes    = dis.readByte();
                _pad2       = dis.readByte();
                _dataFilter = dis.readUint();
                _mineType.unmarshal(dis);
                for (int idx = 0; idx < _numberOfSensorTypes; idx++)
                {
                    TwoByteChunk anX = new TwoByteChunk();
                    anX.unmarshal(dis);
                    _sensorTypes.Add(anX);
                }
                ;

                _pad3 = dis.readByte();
                for (int idx = 0; idx < _numberOfMinesInThisPdu; idx++)
                {
                    Vector3Float anX = new Vector3Float();
                    anX.unmarshal(dis);
                    _mineLocation.Add(anX);
                }
                ;
            } // end try
            catch (Exception e)
            {
                Trace.WriteLine(e);
                Trace.Flush();
            }
        } // end of unmarshal method
Esempio n. 9
0
        ///<summary>
        ///Marshal the data to the DataOutputStream.  Note: Length needs to be set before calling this method
        ///</summary>
        new public void marshal(DataOutputStream dos)
        {
            base.marshal(dos);
            try
            {
                _minefieldID.marshal(dos);
                _requestingEntityID.marshal(dos);
                dos.writeUshort((ushort)_minefieldSequenceNumbeer);
                dos.writeByte((byte)_requestID);
                dos.writeByte((byte)_pduSequenceNumber);
                dos.writeByte((byte)_numberOfPdus);
                dos.writeByte((byte)_mineLocation.Count);
                dos.writeByte((byte)_sensorTypes.Count);
                dos.writeByte((byte)_pad2);
                dos.writeUint((uint)_dataFilter);
                _mineType.marshal(dos);

                for (int idx = 0; idx < _sensorTypes.Count; idx++)
                {
                    TwoByteChunk aTwoByteChunk = (TwoByteChunk)_sensorTypes[idx];
                    aTwoByteChunk.marshal(dos);
                } // end of list marshalling

                dos.writeByte((byte)_pad3);

                for (int idx = 0; idx < _mineLocation.Count; idx++)
                {
                    Vector3Float aVector3Float = (Vector3Float)_mineLocation[idx];
                    aVector3Float.marshal(dos);
                } // end of list marshalling
            }     // end try
            catch (Exception e)
            {
                Trace.WriteLine(e);
                Trace.Flush();
            }
        } // end of marshal method
Esempio n. 10
0
 ///<summary>
 ///location of part; centroid of part in host's coordinate system. x=range, y=bearing, z=0
 ///</summary>
 public void setPartLocation(Vector3Float pPartLocation)
 {
     _partLocation = pPartLocation;
 }
Esempio n. 11
0
 ///<summary>
 ///Linear acceleration of the entity
 ///</summary>
 public void setEntityLinearAcceleration(Vector3Float pEntityLinearAcceleration)
 {
     _entityLinearAcceleration = pEntityLinearAcceleration;
 }
 ///<summary>
 ///velocity at collision
 ///</summary>
 public void setContactVelocity(Vector3Float pContactVelocity)
 {
     _contactVelocity = pContactVelocity;
 }
Esempio n. 13
0
        /**
         * The equals method doesn't always work--mostly on on classes that consist only of primitives. Be careful.
         */
        public bool equals(MinefieldDataPdu rhs)
        {
            bool ivarsEqual = true;

            if (rhs.GetType() != this.GetType())
            {
                return(false);
            }

            if (!(_minefieldID.Equals(rhs._minefieldID)))
            {
                ivarsEqual = false;
            }
            if (!(_requestingEntityID.Equals(rhs._requestingEntityID)))
            {
                ivarsEqual = false;
            }
            if (!(_minefieldSequenceNumbeer == rhs._minefieldSequenceNumbeer))
            {
                ivarsEqual = false;
            }
            if (!(_requestID == rhs._requestID))
            {
                ivarsEqual = false;
            }
            if (!(_pduSequenceNumber == rhs._pduSequenceNumber))
            {
                ivarsEqual = false;
            }
            if (!(_numberOfPdus == rhs._numberOfPdus))
            {
                ivarsEqual = false;
            }
            if (!(_numberOfMinesInThisPdu == rhs._numberOfMinesInThisPdu))
            {
                ivarsEqual = false;
            }
            if (!(_numberOfSensorTypes == rhs._numberOfSensorTypes))
            {
                ivarsEqual = false;
            }
            if (!(_pad2 == rhs._pad2))
            {
                ivarsEqual = false;
            }
            if (!(_dataFilter == rhs._dataFilter))
            {
                ivarsEqual = false;
            }
            if (!(_mineType.Equals(rhs._mineType)))
            {
                ivarsEqual = false;
            }

            for (int idx = 0; idx < _sensorTypes.Count; idx++)
            {
                TwoByteChunk x = (TwoByteChunk)_sensorTypes[idx];
                if (!(_sensorTypes[idx].Equals(rhs._sensorTypes[idx])))
                {
                    ivarsEqual = false;
                }
            }

            if (!(_pad3 == rhs._pad3))
            {
                ivarsEqual = false;
            }

            for (int idx = 0; idx < _mineLocation.Count; idx++)
            {
                Vector3Float x = (Vector3Float)_mineLocation[idx];
                if (!(_mineLocation[idx].Equals(rhs._mineLocation[idx])))
                {
                    ivarsEqual = false;
                }
            }


            return(ivarsEqual);
        }
Esempio n. 14
0
        /**
          * The equals method doesn't always work--mostly on on classes that consist only of primitives. Be careful.
          */
        public bool equals(Vector3Float rhs)
        {
            bool ivarsEqual = true;

            if(rhs.GetType() != this.GetType())
            return false;

             if( ! (_x == rhs._x)) ivarsEqual = false;
             if( ! (_y == rhs._y)) ivarsEqual = false;
             if( ! (_z == rhs._z)) ivarsEqual = false;

            return ivarsEqual;
        }
Esempio n. 15
0
 ///<summary>
 ///Describes the speed of the entity in the world
 ///</summary>
 public void setEntityLinearVelocity(Vector3Float pEntityLinearVelocity)
 {
     _entityLinearVelocity = pEntityLinearVelocity;
 }
Esempio n. 16
0
 ///<summary>
 ///velocity of aggregation
 ///</summary>
 public void setVelocity(Vector3Float pVelocity)
 {
     _velocity = pVelocity;
 }
Esempio n. 17
0
 ///<summary>
 ///location of part; centroid of part in host's coordinate system. x=range, y=bearing, z=0
 ///</summary>
 public void setPartLocation(Vector3Float pPartLocation)
 {
     _partLocation = pPartLocation;
 }
 ///<summary>
 ///Location with respect to the entity
 ///</summary>
 public void setLocation(Vector3Float pLocation)
 {
     _location = pLocation;
 }
        public new void unmarshal(DataInputStream dis)
        {
            base.unmarshal(dis);

            try
            {
                _minefieldID.unmarshal(dis);
                _requestingEntityID.unmarshal(dis);
                _minefieldSequenceNumbeer = dis.readUshort();
                _requestID = dis.readByte();
                _pduSequenceNumber = dis.readByte();
                _numberOfPdus = dis.readByte();
                _numberOfMinesInThisPdu = dis.readByte();
                _numberOfSensorTypes = dis.readByte();
                _pad2 = dis.readByte();
                _dataFilter = dis.readUint();
                _mineType.unmarshal(dis);
                for(int idx = 0; idx < _numberOfSensorTypes; idx++)
                {
                    TwoByteChunk anX = new TwoByteChunk();
                    anX.unmarshal(dis);
                    _sensorTypes.Add(anX);
                };

                _pad3 = dis.readByte();
                for(int idx = 0; idx < _numberOfMinesInThisPdu; idx++)
                {
                    Vector3Float anX = new Vector3Float();
                    anX.unmarshal(dis);
                    _mineLocation.Add(anX);
                };

            } // end try
            catch(Exception e)
            {
                Trace.WriteLine(e);
                Trace.Flush();
            }
        }
 ///<summary>
 ///This record shall represent the normal vector to the surface at the point of collision detection. The surface normal shall be represented in world coordinates.
 ///</summary>
 public void setUnitSurfaceNormal(Vector3Float pUnitSurfaceNormal)
 {
     _unitSurfaceNormal = pUnitSurfaceNormal;
 }
 ///<summary>
 ///velocity at collision
 ///</summary>
 public void setContactVelocity(Vector3Float pContactVelocity)
 {
     _contactVelocity = pContactVelocity;
 }
Esempio n. 22
0
 ///<summary>
 ///linear accelleration of entity
 ///</summary>
 public void setEntityLinearAcceleration(Vector3Float pEntityLinearAcceleration)
 {
     _entityLinearAcceleration = pEntityLinearAcceleration;
 }
Esempio n. 23
0
 ///<summary>
 ///designtor spot wrt the designated entity
 ///</summary>
 public void setDesignatorSpotWrtDesignated(Vector3Float pDesignatorSpotWrtDesignated)
 {
     _designatorSpotWrtDesignated = pDesignatorSpotWrtDesignated;
 }
Esempio n. 24
0
 ///<summary>
 ///location of the detonation or impact in the target entity's coordinate system. This information should be used for damage assessment.
 ///</summary>
 public void setLocationInEntityCoordinates(Vector3Float pLocationInEntityCoordinates)
 {
     _locationInEntityCoordinates = pLocationInEntityCoordinates;
 }
Esempio n. 25
0
 ///<summary>
 ///dimensions of bounding box for the aggregated entities, origin at the center of mass
 ///</summary>
 public void setDimensions(Vector3Float pDimensions)
 {
     _dimensions = pDimensions;
 }
Esempio n. 26
0
 ///<summary>
 ///location of the detonation or impact in the target entity's coordinate system. This information should be used for damage assessment.
 ///</summary>
 public void setLocationInEntityCoordinates(Vector3Float pLocationInEntityCoordinates)
 {
     _locationInEntityCoordinates = pLocationInEntityCoordinates;
 }
Esempio n. 27
0
 ///<summary>
 ///velocity at collision
 ///</summary>
 public void setVelocity(Vector3Float pVelocity)
 {
     _velocity = pVelocity;
 }
 ///<summary>
 ///Location with respect to the entity
 ///</summary>
 public void setLocation(Vector3Float pLocation)
 {
     _location = pLocation;
 }
 ///<summary>
 ///Location of the radiating portion of the antenna     in entity coordinates
 ///</summary>
 public void setRelativeAntennaLocation(Vector3Float pRelativeAntennaLocation)
 {
     _relativeAntennaLocation = pRelativeAntennaLocation;
 }
 ///<summary>
 ///dimensions of bounding box for the aggregated entities, origin at the center of mass
 ///</summary>
 public void setDimensions(Vector3Float pDimensions)
 {
     _dimensions = pDimensions;
 }
Esempio n. 31
0
 ///<summary>
 ///relative location of antenna
 ///</summary>
 public void setRelativeAntennaLocation(Vector3Float pRelativeAntennaLocation)
 {
     _relativeAntennaLocation = pRelativeAntennaLocation;
 }
Esempio n. 32
0
        public new void unmarshal(DataInputStream dis)
        {
            base.unmarshal(dis);

            try
            {
                _radioEntityType.unmarshal(dis);
                _transmitState = dis.readByte();
                _inputSource = dis.readByte();
                _padding1 = dis.readUshort();
                _antennaLocation.unmarshal(dis);
                _relativeAntennaLocation.unmarshal(dis);
                _antennaPatternType = dis.readUshort();
                _antennaPatternCount = dis.readUshort();
                _frequency = dis.readUlong();
                _transmitFrequencyBandwidth = dis.readFloat();
                _power = dis.readFloat();
                _modulationType.unmarshal(dis);
                _cryptoSystem = dis.readUshort();
                _cryptoKeyId = dis.readUshort();
                _modulationParameterCount = dis.readByte();
                _padding2 = dis.readUshort();
                _padding3 = dis.readByte();
                for(int idx = 0; idx < _modulationParameterCount; idx++)
                {
                    Vector3Float anX = new Vector3Float();
                    anX.unmarshal(dis);
                    _modulationParametersList.Add(anX);
                };

                for(int idx = 0; idx < _antennaPatternCount; idx++)
                {
                    Vector3Float anX = new Vector3Float();
                    anX.unmarshal(dis);
                    _antennaPatternList.Add(anX);
                };

            } // end try
            catch(Exception e)
            {
                Trace.WriteLine(e);
                Trace.Flush();
            }
        }
 ///<summary>
 ///This record shall represent the normal vector to the surface at the point of collision detection. The surface normal shall be represented in world coordinates.
 ///</summary>
 public void setUnitSurfaceNormal(Vector3Float pUnitSurfaceNormal)
 {
     _unitSurfaceNormal = pUnitSurfaceNormal;
 }
 ///<summary>
 ///Represents the location wrt the entity
 ///</summary>
 public void setEmitterLocation(Vector3Float pEmitterLocation)
 {
     _emitterLocation = pEmitterLocation;
 }
Esempio n. 35
0
        /**
         * The equals method doesn't always work--mostly on on classes that consist only of primitives. Be careful.
         */
        public bool equals(TransmitterPdu rhs)
        {
            bool ivarsEqual = true;

            if (rhs.GetType() != this.GetType())
            {
                return(false);
            }

            if (!(_radioEntityType.Equals(rhs._radioEntityType)))
            {
                ivarsEqual = false;
            }
            if (!(_transmitState == rhs._transmitState))
            {
                ivarsEqual = false;
            }
            if (!(_inputSource == rhs._inputSource))
            {
                ivarsEqual = false;
            }
            if (!(_padding1 == rhs._padding1))
            {
                ivarsEqual = false;
            }
            if (!(_antennaLocation.Equals(rhs._antennaLocation)))
            {
                ivarsEqual = false;
            }
            if (!(_relativeAntennaLocation.Equals(rhs._relativeAntennaLocation)))
            {
                ivarsEqual = false;
            }
            if (!(_antennaPatternType == rhs._antennaPatternType))
            {
                ivarsEqual = false;
            }
            if (!(_antennaPatternCount == rhs._antennaPatternCount))
            {
                ivarsEqual = false;
            }
            if (!(_frequency == rhs._frequency))
            {
                ivarsEqual = false;
            }
            if (!(_transmitFrequencyBandwidth == rhs._transmitFrequencyBandwidth))
            {
                ivarsEqual = false;
            }
            if (!(_power == rhs._power))
            {
                ivarsEqual = false;
            }
            if (!(_modulationType.Equals(rhs._modulationType)))
            {
                ivarsEqual = false;
            }
            if (!(_cryptoSystem == rhs._cryptoSystem))
            {
                ivarsEqual = false;
            }
            if (!(_cryptoKeyId == rhs._cryptoKeyId))
            {
                ivarsEqual = false;
            }
            if (!(_modulationParameterCount == rhs._modulationParameterCount))
            {
                ivarsEqual = false;
            }
            if (!(_padding2 == rhs._padding2))
            {
                ivarsEqual = false;
            }
            if (!(_padding3 == rhs._padding3))
            {
                ivarsEqual = false;
            }

            for (int idx = 0; idx < _modulationParametersList.Count; idx++)
            {
                Vector3Float x = (Vector3Float)_modulationParametersList[idx];
                if (!(_modulationParametersList[idx].Equals(rhs._modulationParametersList[idx])))
                {
                    ivarsEqual = false;
                }
            }


            for (int idx = 0; idx < _antennaPatternList.Count; idx++)
            {
                Vector3Float x = (Vector3Float)_antennaPatternList[idx];
                if (!(_antennaPatternList[idx].Equals(rhs._antennaPatternList[idx])))
                {
                    ivarsEqual = false;
                }
            }


            return(ivarsEqual);
        }
Esempio n. 36
0
 ///<summary>
 ///designtor spot wrt the designated entity
 ///</summary>
 public void setDesignatorSpotWrtDesignated(Vector3Float pDesignatorSpotWrtDesignated)
 {
     _designatorSpotWrtDesignated = pDesignatorSpotWrtDesignated;
 }
Esempio n. 37
0
 ///<summary>
 ///angular velocity of the entity
 ///</summary>
 public void setEntityAngularVelocity(Vector3Float pEntityAngularVelocity)
 {
     _entityAngularVelocity = pEntityAngularVelocity;
 }
 ///<summary>
 ///Represents the location wrt the entity
 ///</summary>
 public void setEmitterLocation(Vector3Float pEmitterLocation)
 {
     _emitterLocation = pEmitterLocation;
 }
Esempio n. 39
0
 ///<summary>
 ///Describes the speed of the entity in the world
 ///</summary>
 public void setEntityLinearVelocity(Vector3Float pEntityLinearVelocity)
 {
     _entityLinearVelocity = pEntityLinearVelocity;
 }
 ///<summary>
 ///angular velocity of the entity
 ///</summary>
 public void setEntityAngularVelocity(Vector3Float pEntityAngularVelocity)
 {
     _entityAngularVelocity = pEntityAngularVelocity;
 }