35 use,
intrinsic :: iso_c_binding
40 kim_support_status_type, &
41 kim_support_status_from_string, &
44 kim_support_status_string, &
51 kim_support_status_get_number_of_support_statuses, &
52 kim_support_status_get_support_status
55 type, bind(c) :: kim_support_status_type
56 integer(c_int) :: support_status_id
57 end type kim_support_status_type
59 type(kim_support_status_type),
protected, &
60 bind(c, name=
"KIM_SUPPORT_STATUS_requiredByAPI") &
62 type(kim_support_status_type),
protected, &
63 bind(c, name=
"KIM_SUPPORT_STATUS_notSupported") &
65 type(kim_support_status_type),
protected, &
66 bind(c, name=
"KIM_SUPPORT_STATUS_required") &
68 type(kim_support_status_type),
protected, &
69 bind(c, name=
"KIM_SUPPORT_STATUS_optional") &
72 interface operator (.eq.)
73 logical function kim_support_status_equal(left, right)
74 use,
intrinsic :: iso_c_binding
75 import kim_support_status_type
77 type(kim_support_status_type),
intent(in) :: left
78 type(kim_support_status_type),
intent(in) :: right
79 end function kim_support_status_equal
80 end interface operator (.eq.)
82 interface operator (.ne.)
83 logical function kim_support_status_not_equal(left, right)
84 use,
intrinsic :: iso_c_binding
85 import kim_support_status_type
87 type(kim_support_status_type),
intent(in) :: left
88 type(kim_support_status_type),
intent(in) :: right
89 end function kim_support_status_not_equal
90 end interface operator (.ne.)
93 subroutine kim_support_status_from_string(string, support_status)
94 use,
intrinsic :: iso_c_binding
95 import kim_support_status_type
97 character(len=*, kind=c_char),
intent(in) :: string
98 type(kim_support_status_type),
intent(out) :: support_status
99 end subroutine kim_support_status_from_string
101 subroutine kim_support_status_string(support_status, string)
102 use,
intrinsic :: iso_c_binding
103 import kim_support_status_type
105 type(kim_support_status_type),
intent(in),
value :: support_status
106 character(len=*, kind=c_char),
intent(out) :: string
107 end subroutine kim_support_status_string
109 subroutine kim_support_status_get_number_of_support_statuses( &
110 number_of_support_statuses)
111 use,
intrinsic :: iso_c_binding
113 integer(c_int),
intent(out) :: number_of_support_statuses
114 end subroutine kim_support_status_get_number_of_support_statuses
116 subroutine kim_support_status_get_support_status(index, support_status, &
118 use,
intrinsic :: iso_c_binding
119 import kim_support_status_type
121 integer(c_int),
intent(in),
value :: index
122 type(kim_support_status_type),
intent(out) :: support_status
123 integer(c_int),
intent(out) :: ierr
124 end subroutine kim_support_status_get_support_status
type(kim_support_status_type), public, protected kim_support_status_optional
type(kim_support_status_type), public, protected kim_support_status_required
type(kim_support_status_type), public, protected kim_support_status_required_by_api
type(kim_support_status_type), public, protected kim_support_status_not_supported