set_trm_file_path_c Subroutine

public subroutine set_trm_file_path_c(ipointer, aep8_dir, n) bind(C, name="set_trm_file_path_c")

C interface for setting the trm data file path

Arguments

Type IntentOptional Attributes Name
integer(kind=c_intptr_t), intent(in) :: ipointer
character(kind=c_char, len=1), intent(in), dimension(n) :: aep8_dir
integer(kind=c_int), intent(in) :: n

size of aep8_dir


Calls

proc~~set_trm_file_path_c~~CallsGraph proc~set_trm_file_path_c radbelt_c_module::set_trm_file_path_c proc~c2f_str radbelt_c_module::c2f_str proc~set_trm_file_path_c->proc~c2f_str proc~int_pointer_to_f_pointer radbelt_c_module::int_pointer_to_f_pointer proc~set_trm_file_path_c->proc~int_pointer_to_f_pointer proc~set_trm_file_path radbelt_module::radbelt_type%set_trm_file_path proc~set_trm_file_path_c->proc~set_trm_file_path proc~set_data_file_dir~2 trmfun_module::trm_type%set_data_file_dir proc~set_trm_file_path->proc~set_data_file_dir~2

Source Code

    subroutine set_trm_file_path_c(ipointer, aep8_dir, n) bind(C, name="set_trm_file_path_c")

        integer(c_intptr_t), intent(in) :: ipointer
        integer(c_int), intent(in) :: n !! size of `aep8_dir`
        character(kind=c_char, len=1), dimension(n), intent(in) :: aep8_dir

        character(len=:), allocatable :: aep8_dir_
        type(radbelt_type), pointer :: p

        call int_pointer_to_f_pointer(ipointer, p)

        if (associated(p)) then
            aep8_dir_ = c2f_str(aep8_dir)
            call p%set_trm_file_path(aep8_dir_)
        else
            error stop 'error in set_trm_file_path_c: class is not associated'
        end if

    end subroutine set_trm_file_path_c