35 use,
intrinsic :: iso_c_binding
40 kim_compute_argument_name_type, &
41 kim_compute_argument_name_from_string, &
44 kim_compute_argument_name_string, &
56 kim_compute_argument_name_get_number_of_compute_argument_names, &
57 kim_compute_argument_name_get_compute_argument_name, &
58 kim_compute_argument_name_get_compute_argument_data_type
61 type, bind(c) :: kim_compute_argument_name_type
62 integer(c_int) compute_argument_name_id
63 end type kim_compute_argument_name_type
65 type(kim_compute_argument_name_type),
protected, &
66 bind(c, name=
"KIM_COMPUTE_ARGUMENT_NAME_numberOfParticles") &
68 type(kim_compute_argument_name_type),
protected, &
69 bind(c, name=
"KIM_COMPUTE_ARGUMENT_NAME_particleSpeciesCodes") &
71 type(kim_compute_argument_name_type),
protected, &
72 bind(c, name=
"KIM_COMPUTE_ARGUMENT_NAME_particleContributing") &
74 type(kim_compute_argument_name_type),
protected, &
75 bind(c, name=
"KIM_COMPUTE_ARGUMENT_NAME_coordinates") &
77 type(kim_compute_argument_name_type),
protected, &
78 bind(c, name=
"KIM_COMPUTE_ARGUMENT_NAME_partialEnergy") &
80 type(kim_compute_argument_name_type),
protected, &
81 bind(c, name=
"KIM_COMPUTE_ARGUMENT_NAME_partialForces") &
83 type(kim_compute_argument_name_type),
protected, &
84 bind(c, name=
"KIM_COMPUTE_ARGUMENT_NAME_partialParticleEnergy") &
86 type(kim_compute_argument_name_type),
protected, &
87 bind(c, name=
"KIM_COMPUTE_ARGUMENT_NAME_partialVirial") &
89 type(kim_compute_argument_name_type),
protected, &
90 bind(c, name=
"KIM_COMPUTE_ARGUMENT_NAME_partialParticleVirial") &
93 interface operator (.eq.)
94 logical function kim_compute_argument_name_equal(left, right)
95 use,
intrinsic :: iso_c_binding
96 import kim_compute_argument_name_type
98 type(kim_compute_argument_name_type),
intent(in) :: left
99 type(kim_compute_argument_name_type),
intent(in) :: right
100 end function kim_compute_argument_name_equal
101 end interface operator (.eq.)
103 interface operator (.ne.)
104 logical function kim_compute_argument_name_not_equal(left, right)
105 use,
intrinsic :: iso_c_binding
106 import kim_compute_argument_name_type
108 type(kim_compute_argument_name_type),
intent(in) :: left
109 type(kim_compute_argument_name_type),
intent(in) :: right
110 end function kim_compute_argument_name_not_equal
111 end interface operator (.ne.)
114 subroutine kim_compute_argument_name_from_string(string, &
115 compute_argument_name)
116 use,
intrinsic :: iso_c_binding
117 import kim_compute_argument_name_type
119 character(len=*, kind=c_char),
intent(in) :: string
120 type(kim_compute_argument_name_type),
intent(out) :: compute_argument_name
121 end subroutine kim_compute_argument_name_from_string
123 subroutine kim_compute_argument_name_string(compute_argument_name, string)
124 use,
intrinsic :: iso_c_binding
125 import kim_compute_argument_name_type
127 type(kim_compute_argument_name_type),
intent(in),
value :: &
128 compute_argument_name
129 character(len=*, kind=c_char),
intent(out) :: string
130 end subroutine kim_compute_argument_name_string
132 subroutine kim_compute_argument_name_get_number_of_compute_argument_names( &
133 number_of_compute_argument_names)
134 use,
intrinsic :: iso_c_binding
136 integer(c_int),
intent(out) :: number_of_compute_argument_names
138 kim_compute_argument_name_get_number_of_compute_argument_names
140 subroutine kim_compute_argument_name_get_compute_argument_name(index, &
141 compute_argument_name, ierr)
142 use,
intrinsic :: iso_c_binding
143 import kim_compute_argument_name_type
145 integer(c_int),
intent(in),
value :: index
146 type(kim_compute_argument_name_type),
intent(out) :: compute_argument_name
147 integer(c_int),
intent(out) :: ierr
148 end subroutine kim_compute_argument_name_get_compute_argument_name
150 subroutine kim_compute_argument_name_get_compute_argument_data_type( &
151 compute_argument_name, data_type, ierr)
152 use,
intrinsic :: iso_c_binding
154 import kim_compute_argument_name_type
156 type(kim_compute_argument_name_type),
intent(in),
value :: &
157 compute_argument_name
158 type(kim_data_type_type),
intent(out) :: data_type
159 integer(c_int),
intent(out) :: ierr
160 end subroutine kim_compute_argument_name_get_compute_argument_data_type
type(kim_compute_argument_name_type), public, protected kim_compute_argument_name_coordinates
type(kim_compute_argument_name_type), public, protected kim_compute_argument_name_partial_particle_virial
type(kim_compute_argument_name_type), public, protected kim_compute_argument_name_partial_virial
type(kim_compute_argument_name_type), public, protected kim_compute_argument_name_partial_particle_energy
type(kim_compute_argument_name_type), public, protected kim_compute_argument_name_particle_contributing
type(kim_compute_argument_name_type), public, protected kim_compute_argument_name_particle_species_codes
type(kim_compute_argument_name_type), public, protected kim_compute_argument_name_number_of_particles
type(kim_compute_argument_name_type), public, protected kim_compute_argument_name_partial_forces
type(kim_compute_argument_name_type), public, protected kim_compute_argument_name_partial_energy