OpenDDS::DCPS::MulticastLoader Class Reference

#include <MulticastLoader.h>

Inheritance diagram for OpenDDS::DCPS::MulticastLoader:
Inheritance graph
[legend]
Collaboration diagram for OpenDDS::DCPS::MulticastLoader:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual int init (int argc, ACE_TCHAR *argv[])

Detailed Description

Definition at line 23 of file MulticastLoader.h.


Member Function Documentation

int OpenDDS::DCPS::MulticastLoader::init ( int  argc,
ACE_TCHAR argv[] 
) [virtual]

Reimplemented from ACE_Shared_Object.

Definition at line 34 of file MulticastLoader.cpp.

References ACE_TEXT(), OpenDDS::DCPS::TransportRegistry::create_inst(), OpenDDS::DCPS::TransportRegistry::DEFAULT_CONFIG_NAME, OpenDDS::DCPS::TransportRegistry::DEFAULT_INST_PREFIX, OpenDDS::DCPS::TransportRegistry::get_config(), OpenDDS::DCPS::RcHandle< T >::in(), LM_ERROR, OpenDDS::DCPS::TransportRegistry::register_type(), and TheTransportRegistry.

00035 {
00036   static bool initialized(false);
00037 
00038   if (initialized) return 0;  // already initialized
00039 
00040   TransportRegistry* registry = TheTransportRegistry;
00041   registry->register_type(make_rch<MulticastType>());
00042   TransportConfig_rch cfg =
00043     registry->get_config(TransportRegistry::DEFAULT_CONFIG_NAME);
00044 
00045   TransportInst_rch default_unrel =
00046     registry->create_inst(TransportRegistry::DEFAULT_INST_PREFIX
00047                           + std::string("0410_MCAST_UNRELIABLE"),
00048                           MULTICAST_NAME);
00049   MulticastInst* mi = dynamic_cast<MulticastInst*>(default_unrel.in());
00050   if (!mi) {
00051     ACE_ERROR_RETURN((LM_ERROR, ACE_TEXT("(%P|%t) MulticastLoader::init:")
00052       ACE_TEXT(" failed to obtain MulticastInst.\n")), -1);
00053   }
00054   mi->reliable_ = false;
00055   cfg->sorted_insert(default_unrel);
00056 
00057   TransportInst_rch default_rel =
00058     registry->create_inst(TransportRegistry::DEFAULT_INST_PREFIX
00059                           + std::string("0420_MCAST_RELIABLE"), MULTICAST_NAME);
00060   cfg->sorted_insert(default_rel);
00061 
00062   initialized = true;
00063 
00064   return 0;
00065 }

Here is the call graph for this function:


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 10 Aug 2018 for OpenDDS by  doxygen 1.6.1