@@ -218,4 +218,30 @@ subroutine f_aero_mode_get_type(ptr_c, type) bind(C)
218218
219219 end subroutine
220220
221+ subroutine f_aero_mode_set_name (ptr_c , name_data , name_size ) bind(C)
222+ type (c_ptr), intent (inout ) :: ptr_c
223+ type (aero_mode_t), pointer :: aero_mode = > null ()
224+ character (kind= c_char), dimension (* ), intent (in ) :: name_data
225+ integer (c_int), intent (in ) :: name_size
226+ integer :: i
227+
228+ call c_f_pointer(ptr_c, aero_mode)
229+ do i= 1 , name_size
230+ aero_mode% name (i:i) = name_data(i)
231+ end do
232+ do i= name_size+1 , len (aero_mode% name)
233+ aero_mode% name (i:i) = " "
234+ end do
235+ end subroutine
236+
237+ subroutine f_aero_mode_get_name (ptr_c , name_data , name_size ) bind(C)
238+ type (c_ptr), intent (inout ) :: ptr_c
239+ type (aero_mode_t), pointer :: aero_mode = > null ()
240+ type (c_ptr), intent (out ) :: name_data
241+ integer (c_int), intent (out ) :: name_size
242+
243+ call c_f_pointer(ptr_c, aero_mode)
244+ name_data = c_loc(aero_mode% name)
245+ name_size = len_trim (aero_mode% name)
246+ end subroutine
221247end module
0 commit comments