11@ # Included from rosidl_generator_java/resource/idl.cpp.em
2+ // generated from rosidl_generator_java/ resource/ msg .cpp .em
3+ // with input from @ (package_name): @ (interface_path)
4+ // generated code does not contain a copyright notice
25@ {
36from collections import defaultdict
47
@@ -95,10 +98,12 @@ elif message_c_include_prefix.endswith('__send_goal'):
9598 message_c_include_prefix = message_c_include_prefix[: - 11 ]
9699elif message_c_include_prefix .endswith (' __get_result' ):
97100 message_c_include_prefix = message_c_include_prefix[: - 12 ]
101+ member_includes .add (f' {message_c_include_prefix}.h' )
98102}@
99-
103+ @
100104# include <jni.h>
101105
106+ # include <algorithm>
102107# include <cassert>
103108# include <cstdint>
104109# include <string>
@@ -112,8 +117,6 @@ elif message_c_include_prefix.endswith('__get_result'):
112117# include "@(include)"
113118@ [end for ]@
114119
115- # include "@(message_c_include_prefix).h"
116-
117120// Ensure that a jlong is big enough to store raw pointers
118121static_assert (sizeof (jlong) >= sizeof (std :: intptr_t ), " jlong must be able to store pointers" );
119122
@@ -265,7 +268,7 @@ jni_signature = get_jni_signature(base_type)
265268 auto _dest_@ (member .name ) = ros_message-> @ (member .name );
266269@ [ end if ]@
267270@ [ if isinstance (member .type .value_type , BasicType)]@
268- j@ (get_java_name) * _jarray_@ (member .name )_ptr = env-> Get@ (get_method_name)ArrayElements (_jarray_@ (member .name )_obj, nullptr);
271+ j@ (get_java_name) * _jarray_@ (member .name )_ptr = env-> Get@ (get_method_name)ArrayElements (_jarray_@ (member .name )_obj, nullptr);
269272 std :: copy (_jarray_@ (member .name )_ptr, _jarray_@ (member .name )_ptr + _jarray_@ (member .name )_size, _dest_@ (member .name ));
270273 env-> Release@ (get_method_name)ArrayElements (_jarray_@ (member .name )_obj, _jarray_@ (member .name )_ptr, 0 );
271274@ [ else ]@
@@ -378,12 +381,12 @@ jni_signature = get_jni_signature(base_type)
378381@ [ if isinstance (member .type .value_type , BasicType)]@
379382@ [ if isinstance (member .type , Array )]@
380383 j@ (get_java_name)Array _jarray_@ (member .name )_obj = env-> New@ (get_method_name)Array (@ (member .type .size ));
381- j @ (get_java_name) * _j@ (get_java_name)_@ (member .name )_buf = ( j@ (get_java_name) * ) malloc (sizeof (j@ (get_java_name)) * @ (member .type .size ));
384+ auto * _j@ (get_java_name)_@ (member .name )_buf = static_cast< j @(get_java_name) *>( malloc (sizeof (j@ (get_java_name)) * @ (member .type .size ) ));
382385 std :: copy (_ros_message-> @ (member .name ), _ros_message-> @ (member .name ) + @ (member .type .size ), _j@ (get_java_name)_@ (member .name )_buf);
383386 env-> Set @ (get_method_name)ArrayRegion (_jarray_@ (member .name )_obj, 0 , @ (member .type .size ), (const j@ (get_java_name) * )_j@ (get_java_name)_@ (member .name )_buf);
384387@ [ else ]@
385388 j@ (get_java_name)Array _jarray_@ (member .name )_obj = env-> New@ (get_method_name)Array (_ros_message-> @ (member .name ).size );
386- j @ (get_java_name) * _j@ (get_java_name)_@ (member .name )_buf = ( j@ (get_java_name) * ) malloc (sizeof (j@ (get_java_name)) * _ros_message-> @ (member .name ).size );
389+ auto * _j@ (get_java_name)_@ (member .name )_buf = static_cast< j @(get_java_name) *>( malloc (sizeof (j@ (get_java_name)) * _ros_message-> @ (member .name ).size ) );
387390 std :: copy (_ros_message-> @ (member .name ).data , _ros_message-> @ (member .name ).data + _ros_message-> @ (member .name ).size , _j@ (get_java_name)_@ (member .name )_buf);
388391 env-> Set @ (get_method_name)ArrayRegion (_jarray_@ (member .name )_obj, 0 , _ros_message-> @ (member .name ).size , (const j@ (get_java_name) * )_j@ (get_java_name)_@ (member .name )_buf);
389392@ [ end if ]@
@@ -563,7 +566,7 @@ JNIEXPORT jlong JNICALL Java_@(underscore_separated_jni_type_name)_getToJavaConv
563566
564567JNIEXPORT jlong JNICALL Java_@ (underscore_separated_jni_type_name)_getTypeSupport (JNIEnv * , jclass)
565568{
566- jlong ptr = reinterpret_cast<jlong >(ROSIDL_GET_MSG_TYPE_SUPPORT (@ (' ,' .join (message .structure .namespaced_type .namespaced_name ()))));
569+ jlong ptr = reinterpret_cast<jlong >(ROSIDL_GET_MSG_TYPE_SUPPORT (@ (' , ' .join (message .structure .namespaced_type .namespaced_name ()))));
567570 return ptr;
568571}
569572
0 commit comments