#include <oversim_mapset.h>#include <omnetpp.h>#include <IPvXAddress.h>Go to the source code of this file.
Classes | |
| class | TransportAddress |
| This class implements a common transport address. More... | |
| class | TransportAddress::hashFcn |
| defines a hash function for TransportAddress More... | |
Typedefs | |
| typedef std::vector < TransportAddress > | TransportAddressVector |
Functions | |
| void | doPacking (cCommBuffer *buf, TransportAddress &addr) |
| netPack for TransportAddress | |
| void | doUnpacking (cCommBuffer *buf, TransportAddress &addr) |
| netUnpack for TransportAddress | |
Definition in file TransportAddress.h.
| typedef std::vector<TransportAddress> TransportAddressVector |
Definition at line 35 of file TransportAddress.h.
| void doPacking | ( | cCommBuffer * | buf, | |
| TransportAddress & | addr | |||
| ) | [inline] |
netPack for TransportAddress
| buf | the buffer | |
| addr | the TransportAddress to serialise |
Definition at line 321 of file TransportAddress.h.
{
doPacking(buf, addr.getIp());
doPacking(buf, addr.getPort());
doPacking(buf, static_cast<uint8_t>(addr.getNatType()));
doPacking(buf, static_cast<uint8_t>(addr.getSourceRouteSize()));
for (size_t i = 0; i < addr.getSourceRouteSize(); i++) {
// TODO: ugly const_cast should be avoided
doPacking(buf, const_cast<TransportAddress&>(addr.getSourceRoute()[i]));
}
}
| void doUnpacking | ( | cCommBuffer * | buf, | |
| TransportAddress & | addr | |||
| ) | [inline] |
netUnpack for TransportAddress
| buf | the buffer | |
| addr | the TransportAddress to unserialise |
Definition at line 339 of file TransportAddress.h.
{
IPvXAddress ip;
int port;
uint8_t natType = 0;
doUnpacking(buf, ip);
doUnpacking(buf, port);
doUnpacking(buf, natType);
addr.setIp(ip, port, static_cast<TransportAddress::NatType>(natType));
uint8_t sourceRouteSize;
TransportAddress sourceRouteEntry;
doUnpacking(buf, sourceRouteSize);
for (size_t i = 0; i < sourceRouteSize; i++) {
doUnpacking(buf, sourceRouteEntry);
addr.appendSourceRoute(sourceRouteEntry);
}
}
1.7.1