48#include "fc_feature_defs.inc"
49MODULE xt_xmap_dist_dir_bucket_gen
50 USE iso_c_binding,
ONLY: c_ptr, c_null_ptr, c_associated
58 TYPE(c_ptr) :: cptr = c_null_ptr
65 bind(c, name=
'xt_xmdd_bucket_gen_f2c') result(p)
68 TYPE(xt_xmdd_bucket_gen),
INTENT(in) :: gen
77 MODULE PROCEDURE xt_xmdd_bucket_gen_is_null
78 END INTERFACE xt_is_null
84 TYPE(xt_xmdd_bucket_gen) :: gen
86 FUNCTION xt_xmdd_bucket_gen_new_c()
RESULT(gen) &
87 bind(c, name=
'xt_xmdd_bucket_gen_new')
91 END FUNCTION xt_xmdd_bucket_gen_new_c
93 gen%cptr = xt_xmdd_bucket_gen_new_c()
97 TYPE(xt_xmdd_bucket_gen),
INTENT(in) :: gen
99 SUBROUTINE xt_xmdd_bucket_gen_delete_c(gen) &
100 bind(c, name=
'xt_xmdd_bucket_gen_delete')
103 TYPE(c_ptr),
VALUE,
INTENT(in) :: gen
104 END SUBROUTINE xt_xmdd_bucket_gen_delete_c
106 CALL xt_xmdd_bucket_gen_delete_c(gen%cptr)
109 FUNCTION xt_xmdd_bucket_gen_c2f(gen)
RESULT(p)
110 TYPE(c_ptr),
INTENT(in) :: gen
111 TYPE(xt_xmdd_bucket_gen) :: p
113 END FUNCTION xt_xmdd_bucket_gen_c2f
115 FUNCTION xt_xmdd_bucket_gen_is_null(bucket_gen)
RESULT(p)
116 TYPE(xt_xmdd_bucket_gen),
INTENT(in) :: bucket_gen
118 p = .NOT. c_associated(bucket_gen%cptr)
119 END FUNCTION xt_xmdd_bucket_gen_is_null
121END MODULE xt_xmap_dist_dir_bucket_gen
Xt_xmdd_bucket_gen xt_xmdd_bucket_gen_new(void)
void xt_xmdd_bucket_gen_delete(Xt_xmdd_bucket_gen gen)
Xt_xmdd_bucket_gen xt_xmdd_bucket_gen_f2c(struct xt_xmdd_bucket_gen_f *p)