NetworkAddress.cpp File Reference

#include "DCPS/DdsDcps_pch.h"
#include "NetworkAddress.h"
#include "ace/OS_NS_netdb.h"
#include "ace/Sock_Connect.h"
#include "ace/OS_NS_sys_socket.h"
#include "NetworkAddress.inl"

Include dependency graph for NetworkAddress.cpp:

Go to the source code of this file.

Namespaces

namespace  OpenDDS
namespace  OpenDDS::DCPS

Defines

#define TTL   ttl

Functions

ACE_BEGIN_VERSIONED_NAMESPACE_DECL
ACE_CDR::Boolean 
operator<< (ACE_OutputCDR &outCdr, OpenDDS::DCPS::NetworkAddress &value)
 Marshal into a buffer.
ACE_CDR::Boolean operator>> (ACE_InputCDR &inCdr, OpenDDS::DCPS::NetworkAddress &value)
 Demarshal from a buffer.
OPENDDS_STRING OpenDDS::DCPS::get_fully_qualified_hostname (ACE_INET_Addr *addr)
void OpenDDS::DCPS::get_interface_addrs (OPENDDS_VECTOR(ACE_INET_Addr)&addrs)
bool OpenDDS::DCPS::set_socket_multicast_ttl (const ACE_SOCK_Dgram &socket, const unsigned char &ttl)
bool OpenDDS::DCPS::open_appropriate_socket_type (ACE_SOCK_Dgram &socket, const ACE_INET_Addr &local_address)


Define Documentation

#define TTL   ttl

Referenced by OpenDDS::DCPS::set_socket_multicast_ttl().


Function Documentation

ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_CDR::Boolean operator<< ( ACE_OutputCDR &  outCdr,
OpenDDS::DCPS::NetworkAddress value 
)

Marshal into a buffer.

Definition at line 21 of file NetworkAddress.cpp.

00022 {
00023   outCdr << ACE_OutputCDR::from_boolean(ACE_CDR_BYTE_ORDER);
00024 
00025   outCdr << ACE_OutputCDR::from_octet(value.reserved_);
00026   outCdr << value.addr_.c_str();
00027 
00028   return outCdr.good_bit();
00029 }

ACE_CDR::Boolean operator>> ( ACE_InputCDR &  inCdr,
OpenDDS::DCPS::NetworkAddress value 
)

Demarshal from a buffer.

Definition at line 32 of file NetworkAddress.cpp.

00033 {
00034   CORBA::Boolean byte_order;
00035 
00036   if ((inCdr >> ACE_InputCDR::to_boolean(byte_order)) == 0)
00037     return 0;
00038 
00039   inCdr.reset_byte_order(byte_order);
00040 
00041   if ((inCdr >> ACE_InputCDR::to_octet(value.reserved_)) == 0)
00042     return 0;
00043 
00044   char* buf = 0;
00045 
00046   if ((inCdr >> buf) == 0)
00047     return 0;
00048 
00049   value.addr_ = buf;
00050 
00051   delete[] buf;
00052 
00053   return inCdr.good_bit();
00054 }


Generated on Fri Feb 12 20:05:38 2016 for OpenDDS by  doxygen 1.4.7