Motion editor/Dynamics simulator
Integrated Development Platform
AIST RTC collection
RT-Components collection by AIST
Tokyo Opensource Robotics Association
Middleware for DAQ (Data Aquisition) by KEK
About _ptr_type, _var_type
When creating a template class, it is sometimes necessary to specify the object type, the _ptr type, and the _ var type.
If you define an interface such as Hello, Hello_ptr, Hello_var on the client side, since the _ptr, _ var type is not just a Hello pointer, declaration of a template class that uses all of them,
You have to write like. However, in fact, in omniORB etc., _ptr type and _ var type are typedef in _ Hello class, _ptr_type, _ var_type, respectively, and this is used. A part of the code of the stub generated by omniORB,
This is defined. Therefore, the above template is multiplied as follows,
However, as far as CORBA's specification is concerned, it seems that _ptr_type and _var_type are not defined as standards, so this method is not a portable way. At least with omniORB 4 it seems to work reliably, but in other implementations, I do not know how it is defined. If the definitions are different, you can use it if you give _prr type or _ var type to the second and third arguments of template respectively. . .
How to define in other ORB
As described above, _ptr_type and _var_type can be used.
In TAO, the same method can be used. Below is a snippet of TAO's stub.
Similarly for MICO, since _ptr_type and _var_type are typedefed, the same method can be used.
However, although HAVE_TYPEDEF_OVERLOAD seems to need to be defined, it seems that there is no problem because it seems that you can access _ptr_type, _var_type by default.
Since there is no development environment at hand, I searched by google CodeSearch,
There was such a code, so the situation seems to be the same.
I found such a code. with google CodeSearch. It seems to be a stub of CosNaming's BindingIterator, but _ptr_type, _var_type is It is defined.