[openrtm-commit:03296] r3262 - trunk/OpenRTM-aist/src/lib/rtm
openrtm @ openrtm.org
openrtm @ openrtm.org
2018年 3月 28日 (水) 11:40:53 JST
Author: miyamoto
Date: 2018-03-28 11:40:53 +0900 (Wed, 28 Mar 2018)
New Revision: 3262
Modified:
trunk/OpenRTM-aist/src/lib/rtm/Makefile.am
trunk/OpenRTM-aist/src/lib/rtm/Manager.cpp
Log:
[merge] r3163-3165 have been merged from RELENG_1_2.
Modified: trunk/OpenRTM-aist/src/lib/rtm/Makefile.am
===================================================================
--- trunk/OpenRTM-aist/src/lib/rtm/Makefile.am 2018-03-28 02:37:08 UTC (rev 3261)
+++ trunk/OpenRTM-aist/src/lib/rtm/Makefile.am 2018-03-28 02:40:53 UTC (rev 3262)
@@ -66,6 +66,8 @@
ModuleManager.cpp \
NamingManager.cpp \
NumberingPolicy.cpp \
+ NodeNumberingPolicy.cpp \
+ NamingServiceNumberingPolicy.cpp \
ManagerServant.cpp \
SystemLogger.cpp \
LogstreamFile.cpp \
@@ -165,7 +167,9 @@
EventPort.h \
InPort.h \
InPortConsumer.h \
- NumberingPolicyBase.h \
+ NumberingPolicyBase.h \
+ NamingServiceNumberingPolicy.h \
+ NodeNumberingPolicy.h \
ObjectManager.h \
OutPort.h \
OutPortConsumer.h \
@@ -179,7 +183,7 @@
StateMachine.h \
StaticFSM.h \
Typename.h \
- Timestamp.h \
+ Timestamp.h \
LocalServiceBase.h \
LogstreamBase.h \
ListenerHolder.h \
Modified: trunk/OpenRTM-aist/src/lib/rtm/Manager.cpp
===================================================================
--- trunk/OpenRTM-aist/src/lib/rtm/Manager.cpp 2018-03-28 02:37:08 UTC (rev 3261)
+++ trunk/OpenRTM-aist/src/lib/rtm/Manager.cpp 2018-03-28 02:40:53 UTC (rev 3262)
@@ -779,6 +779,11 @@
"naming.enable",
"naming.type",
"naming.formats",
+ "sdo.service.provider.available_services",
+ "sdo.service.consumer.available_services",
+ "sdo.service.provider.enabled_services",
+ "sdo.service.consumer.enabled_services",
+ "manager.instance_name",
""
};
@@ -867,6 +872,30 @@
}
m_listeners.naming_.postBind(comp, names);
+
+ try
+ {
+ CORBA::Object_ptr obj = theORB()->resolve_initial_references("omniINSPOA");
+ PortableServer::POA_ptr poa = PortableServer::POA::_narrow(obj);
+ poa->the_POAManager()->activate();
+
+ std::string id_str = comp->getCategory();
+ id_str = id_str + "/" + comp->getInstanceName();
+
+ PortableServer::ObjectId_var id;
+#ifndef ORB_IS_RTORB
+ id = PortableServer::string_to_ObjectId(id_str.c_str());
+#else // ORB_IS_RTORB
+ id = PortableServer::
+ string_to_ObjectId((char *)id_str.c_str());
+#endif // ORB_IS_RTORB
+
+ poa->activate_object_with_id(id.in(), comp);
+ }
+ catch (...)
+ {
+ }
+
return true;
}
openrtm-commit メーリングリストの案内