00001 #include "headers.h" 00002 00013 00014 00017 DiscoveryPacket::DiscoveryPacket() : NpPacket() { 00018 m_controlType = NpPacket::Discovery; 00019 m_id = m_randomNumberGenerator.IRandom(0, MAXINT); 00020 m_headerLength = DP_HEADER_LENGTH; 00021 } // ctor 00022 00023 00027 DiscoveryPacket::DiscoveryPacket(unsigned char* rawData) : NpPacket(rawData) { 00028 memcpy(&m_id, &rawData[IdOffset], S_UINT); 00029 m_id = ntohl(m_id); 00030 m_headerLength = DP_HEADER_LENGTH; 00031 } // ctor 00032 00033 00038 unsigned char* 00039 DiscoveryPacket::getRawData() { 00040 unsigned int tmpUint; 00041 unsigned char* buf = NpPacket::getRawData(); 00042 tmpUint = htonl(m_id); 00043 memcpy(&buf[IdOffset], &tmpUint, S_UINT); 00044 return buf; 00045 } // fn getRawData 00046 00047 00048 unsigned int 00049 DiscoveryPacket::getId() { 00050 return m_id; 00051 } // fn getId 00052 00053 00054 void 00055 DiscoveryPacket::setId(unsigned int id) { 00056 m_id = id; 00057 } // fn setId 00058 00059 00060 void 00061 DiscoveryPacket::toStream(std::ostream& out) { 00062 NpPacket::toStream(out); 00063 out << "ID = " << m_id << "\n"; 00064 } // fn toStream 00065 00066