[openrtm-commit:03090] r3175 - trunk/OpenRTM-aist/src/lib/rtm
openrtm @ openrtm.org
openrtm @ openrtm.org
2018年 1月 21日 (日) 14:39:30 JST
Author: miyamoto
Date: 2018-01-21 14:39:30 +0900 (Sun, 21 Jan 2018)
New Revision: 3175
Modified:
trunk/OpenRTM-aist/src/lib/rtm/ManagerServant.cpp
Log:
[compat, bugfix, TAO] fixed bug.
Modified: trunk/OpenRTM-aist/src/lib/rtm/ManagerServant.cpp
===================================================================
--- trunk/OpenRTM-aist/src/lib/rtm/ManagerServant.cpp 2018-01-19 09:18:53 UTC (rev 3174)
+++ trunk/OpenRTM-aist/src/lib/rtm/ManagerServant.cpp 2018-01-21 05:39:30 UTC (rev 3175)
@@ -862,12 +862,9 @@
{
//Ppreparing INS POA
CORBA::Object_var obj;
+#ifndef ORB_IS_TAO
#ifndef ORB_IS_RTORB
-#ifndef ORB_IS_TAO
- obj = m_mgr.theORB()->resolve_initial_references("omniINSPOA");
-#else
- obj = m_mgr.theORB()->resolve_initial_references("RootPOA");
-#endif
+ obj = m_mgr.theORB()->resolve_initial_references("omniINSPOA");
#else // ROB_IS_RTORB
obj = m_mgr.theORB()->resolve_initial_references((char*)"omniINSPOA");
#endif // ORB_IS_RTORB
@@ -900,6 +897,30 @@
std::string iorstr((const char*)ior);
RTC_DEBUG(("Manager's IOR information:\n %s",
CORBA_IORUtil::formatIORinfo(iorstr.c_str()).c_str()));
+#else
+ obj = m_mgr.theORB()->resolve_initial_references("IORTable");
+ IORTable::Table_var adapter = IORTable::Table::_narrow(obj.in());
+
+ // Create readable object ID
+ coil::Properties config(m_mgr.getConfig());
+
+ RTC_DEBUG(("Creating named manager: %s",
+ config["manager.name"].c_str()));
+
+
+ // Object activation
+ RTC_DEBUG(("Activating manager with id(%s)", config["manager.name"].c_str()));
+ CORBA::String_var ior = m_mgr.theORB()->object_to_string(_this());
+ adapter->bind("udpprovider", ior.in());
+
+ // Set m_objref
+ m_objref = _this();
+
+
+ std::string iorstr((const char*)ior);
+ RTC_DEBUG(("Manager's IOR information:\n %s",
+ CORBA_IORUtil::formatIORinfo(iorstr.c_str()).c_str()));
+#endif
}
catch (...)
{
More information about the openrtm-commit
mailing list