[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 メーリングリストの案内