35 use,
intrinsic :: iso_c_binding
40 kim_log_verbosity_type, &
41 kim_log_verbosity_from_string, &
48 kim_log_verbosity_string, &
57 kim_log_verbosity_get_number_of_log_verbosities, &
58 kim_log_verbosity_get_log_verbosity, &
64 type, bind(c) :: kim_log_verbosity_type
65 integer(c_int) :: log_verbosity_id
66 end type kim_log_verbosity_type
68 type(kim_log_verbosity_type),
protected, &
69 bind(c, name=
"KIM_LOG_VERBOSITY_silent") &
71 type(kim_log_verbosity_type),
protected, &
72 bind(c, name=
"KIM_LOG_VERBOSITY_fatal") &
74 type(kim_log_verbosity_type),
protected, &
75 bind(c, name=
"KIM_LOG_VERBOSITY_error") &
77 type(kim_log_verbosity_type),
protected, &
78 bind(c, name=
"KIM_LOG_VERBOSITY_warning") &
80 type(kim_log_verbosity_type),
protected, &
81 bind(c, name=
"KIM_LOG_VERBOSITY_information") &
83 type(kim_log_verbosity_type),
protected, &
84 bind(c, name=
"KIM_LOG_VERBOSITY_debug") &
87 interface operator (.lt.)
88 logical function kim_log_verbosity_less_than(left, right)
89 use,
intrinsic :: iso_c_binding
90 import kim_log_verbosity_type
92 type(kim_log_verbosity_type),
intent(in) :: left
93 type(kim_log_verbosity_type),
intent(in) :: right
94 end function kim_log_verbosity_less_than
95 end interface operator (.lt.)
97 interface operator (.gt.)
98 logical function kim_log_verbosity_greater_than(left, right)
99 use,
intrinsic :: iso_c_binding
100 import kim_log_verbosity_type
102 type(kim_log_verbosity_type),
intent(in) :: left
103 type(kim_log_verbosity_type),
intent(in) :: right
104 end function kim_log_verbosity_greater_than
105 end interface operator (.gt.)
107 interface operator (.le.)
108 logical function kim_log_verbosity_less_than_equal(left, right)
109 use,
intrinsic :: iso_c_binding
110 import kim_log_verbosity_type
112 type(kim_log_verbosity_type),
intent(in) :: left
113 type(kim_log_verbosity_type),
intent(in) :: right
114 end function kim_log_verbosity_less_than_equal
115 end interface operator (.le.)
117 interface operator (.ge.)
118 logical function kim_log_verbosity_greater_than_equal(left, right)
119 use,
intrinsic :: iso_c_binding
120 import kim_log_verbosity_type
122 type(kim_log_verbosity_type),
intent(in) :: left
123 type(kim_log_verbosity_type),
intent(in) :: right
124 end function kim_log_verbosity_greater_than_equal
125 end interface operator (.ge.)
127 interface operator (.eq.)
128 logical function kim_log_verbosity_equal(left, right)
129 use,
intrinsic :: iso_c_binding
130 import kim_log_verbosity_type
132 type(kim_log_verbosity_type),
intent(in) :: left
133 type(kim_log_verbosity_type),
intent(in) :: right
134 end function kim_log_verbosity_equal
135 end interface operator (.eq.)
137 interface operator (.ne.)
138 logical function kim_log_verbosity_not_equal(left, right)
139 use,
intrinsic :: iso_c_binding
140 import kim_log_verbosity_type
142 type(kim_log_verbosity_type),
intent(in) :: left
143 type(kim_log_verbosity_type),
intent(in) :: right
144 end function kim_log_verbosity_not_equal
145 end interface operator (.ne.)
148 subroutine kim_log_verbosity_from_string(string, log_verbosity)
149 use,
intrinsic :: iso_c_binding
150 import kim_log_verbosity_type
152 character(len=*, kind=c_char),
intent(in) :: string
153 type(kim_log_verbosity_type),
intent(out) :: log_verbosity
154 end subroutine kim_log_verbosity_from_string
156 subroutine kim_log_verbosity_string(log_verbosity, string)
157 use,
intrinsic :: iso_c_binding
158 import kim_log_verbosity_type
160 type(kim_log_verbosity_type),
intent(in),
value :: log_verbosity
161 character(len=*, kind=c_char),
intent(out) :: string
162 end subroutine kim_log_verbosity_string
164 subroutine kim_log_verbosity_get_number_of_log_verbosities( &
165 number_of_log_verbosities)
166 use,
intrinsic :: iso_c_binding
168 integer(c_int),
intent(out) :: number_of_log_verbosities
169 end subroutine kim_log_verbosity_get_number_of_log_verbosities
171 subroutine kim_log_verbosity_get_log_verbosity(index, log_verbosity, ierr)
172 use,
intrinsic :: iso_c_binding
173 import kim_log_verbosity_type
175 integer(c_int),
intent(in),
value :: index
176 type(kim_log_verbosity_type),
intent(out) :: log_verbosity
177 integer(c_int),
intent(out) :: ierr
178 end subroutine kim_log_verbosity_get_log_verbosity
type(kim_log_verbosity_type), public, protected kim_log_verbosity_information
type(kim_log_verbosity_type), public, protected kim_log_verbosity_debug
type(kim_log_verbosity_type), public, protected kim_log_verbosity_warning
type(kim_log_verbosity_type), public, protected kim_log_verbosity_error
character(len=65536, kind=c_char), public kim_log_message
type(kim_log_verbosity_type), public, protected kim_log_verbosity_silent
type(kim_log_verbosity_type), public, protected kim_log_verbosity_fatal
character(len=4096, kind=c_char), public kim_log_file