} // 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("<ElectronicEmissionsPdu>" + System.Environment.NewLine); base.reflection(sb); try { sb.Append("<emittingEntityID>" + System.Environment.NewLine); _emittingEntityID.reflection(sb); sb.Append("</emittingEntityID>" + System.Environment.NewLine); sb.Append("<eventID>" + System.Environment.NewLine); _eventID.reflection(sb); sb.Append("</eventID>" + System.Environment.NewLine); sb.Append("<stateUpdateIndicator type=\"byte\">" + _stateUpdateIndicator.ToString() + "</stateUpdateIndicator> " + System.Environment.NewLine); sb.Append("<systems type=\"byte\">" + _systems.Count.ToString() + "</systems> " + System.Environment.NewLine); sb.Append("<paddingForEmissionsPdu type=\"ushort\">" + _paddingForEmissionsPdu.ToString() + "</paddingForEmissionsPdu> " + System.Environment.NewLine); for (int idx = 0; idx < _systems.Count; idx++) { sb.Append("<systems" + idx.ToString() + " type=\"ElectronicEmissionSystemData\">" + System.Environment.NewLine); ElectronicEmissionSystemData aElectronicEmissionSystemData = (ElectronicEmissionSystemData)_systems[idx]; aElectronicEmissionSystemData.reflection(sb); sb.Append("</systems" + idx.ToString() + ">" + System.Environment.NewLine); } // end of list marshalling sb.Append("</ElectronicEmissionsPdu>" + System.Environment.NewLine); } // end try catch (Exception e) { Trace.WriteLine(e); Trace.Flush(); } } // end of marshal method
} // end of marshal method new public void unmarshal(DataInputStream dis) { base.unmarshal(dis); try { _emittingEntityID.unmarshal(dis); _eventID.unmarshal(dis); _stateUpdateIndicator = dis.readByte(); _numberOfSystems = dis.readByte(); _paddingForEmissionsPdu = dis.readUshort(); for (int idx = 0; idx < _numberOfSystems; idx++) { ElectronicEmissionSystemData anX = new ElectronicEmissionSystemData(); anX.unmarshal(dis); _systems.Add(anX); } ; } // end try catch (Exception e) { Trace.WriteLine(e); Trace.Flush(); } } // end of unmarshal method
/** * Compares for reference equality and value equality. */ public bool equals(ElectronicEmissionSystemData rhs) { bool ivarsEqual = true; if (rhs.GetType() != this.GetType()) { return(false); } if (!(_systemDataLength == rhs._systemDataLength)) { ivarsEqual = false; } if (!(_numberOfBeams == rhs._numberOfBeams)) { ivarsEqual = false; } if (!(_emissionsPadding2 == rhs._emissionsPadding2)) { ivarsEqual = false; } if (!(_emitterSystem.Equals(rhs._emitterSystem))) { ivarsEqual = false; } if (!(_location.Equals(rhs._location))) { ivarsEqual = false; } if (!(_beamDataRecords.Count == rhs._beamDataRecords.Count)) { ivarsEqual = false; } if (ivarsEqual) { for (int idx = 0; idx < _beamDataRecords.Count; idx++) { if (!(_beamDataRecords[idx].Equals(rhs._beamDataRecords[idx]))) { ivarsEqual = false; } } } return(ivarsEqual); }
new public int getMarshalledSize() { int marshalSize = 0; marshalSize = base.getMarshalledSize(); marshalSize = marshalSize + _emittingEntityID.getMarshalledSize(); // _emittingEntityID marshalSize = marshalSize + _eventID.getMarshalledSize(); // _eventID marshalSize = marshalSize + 1; // _stateUpdateIndicator marshalSize = marshalSize + 1; // _numberOfSystems marshalSize = marshalSize + 2; // _paddingForEmissionsPdu for (int idx = 0; idx < _systems.Count; idx++) { ElectronicEmissionSystemData listElement = (ElectronicEmissionSystemData)_systems[idx]; marshalSize = marshalSize + listElement.getMarshalledSize(); } return(marshalSize); }
/** * The equals method doesn't always work--mostly on on classes that consist only of primitives. Be careful. */ public bool equals(ElectronicEmissionsPdu rhs) { bool ivarsEqual = true; if (rhs.GetType() != this.GetType()) { return(false); } if (!(_emittingEntityID.Equals(rhs._emittingEntityID))) { ivarsEqual = false; } if (!(_eventID.Equals(rhs._eventID))) { ivarsEqual = false; } if (!(_stateUpdateIndicator == rhs._stateUpdateIndicator)) { ivarsEqual = false; } if (!(_numberOfSystems == rhs._numberOfSystems)) { ivarsEqual = false; } if (!(_paddingForEmissionsPdu == rhs._paddingForEmissionsPdu)) { ivarsEqual = false; } for (int idx = 0; idx < _systems.Count; idx++) { ElectronicEmissionSystemData x = (ElectronicEmissionSystemData)_systems[idx]; if (!(_systems[idx].Equals(rhs._systems[idx]))) { ivarsEqual = false; } } return(ivarsEqual); }
///<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 { _emittingEntityID.marshal(dos); _eventID.marshal(dos); dos.writeByte((byte)_stateUpdateIndicator); dos.writeByte((byte)_systems.Count); dos.writeUshort((ushort)_paddingForEmissionsPdu); for (int idx = 0; idx < _systems.Count; idx++) { ElectronicEmissionSystemData aElectronicEmissionSystemData = (ElectronicEmissionSystemData)_systems[idx]; aElectronicEmissionSystemData.marshal(dos); } // end of list marshalling } // end try catch (Exception e) { Trace.WriteLine(e); Trace.Flush(); } } // end of marshal method
/** * Compares for reference equality and value equality. */ public bool equals(ElectronicEmissionSystemData rhs) { bool ivarsEqual = true; if(rhs.GetType() != this.GetType()) return false; if( ! (_systemDataLength == rhs._systemDataLength)) ivarsEqual = false; if( ! (_numberOfBeams == rhs._numberOfBeams)) ivarsEqual = false; if( ! (_emissionsPadding2 == rhs._emissionsPadding2)) ivarsEqual = false; if( ! (_emitterSystem.Equals( rhs._emitterSystem) )) ivarsEqual = false; if( ! (_location.Equals( rhs._location) )) ivarsEqual = false; if( ! (_beamDataRecords.Count == rhs._beamDataRecords.Count)) ivarsEqual = false; if(ivarsEqual) { for(int idx = 0; idx < _beamDataRecords.Count; idx++) { if( ! ( _beamDataRecords[idx].Equals(rhs._beamDataRecords[idx]))) ivarsEqual = false; } } return ivarsEqual; }
public new void unmarshal(DataInputStream dis) { base.unmarshal(dis); try { _emittingEntityID.unmarshal(dis); _eventID.unmarshal(dis); _stateUpdateIndicator = dis.readByte(); _numberOfSystems = dis.readByte(); _paddingForEmissionsPdu = dis.readUshort(); for(int idx = 0; idx < _numberOfSystems; idx++) { ElectronicEmissionSystemData anX = new ElectronicEmissionSystemData(); anX.unmarshal(dis); _systems.Add(anX); }; } // end try catch(Exception e) { Trace.WriteLine(e); Trace.Flush(); } }