kim-api-v2  2.0.0+912e79a.GNU
An Application Programming Interface (API) for the Knowledgebase of Interatomic Models (KIM).
KIM_ChargeUnit.h
Go to the documentation of this file.
1 /* */
2 /* CDDL HEADER START */
3 /* */
4 /* The contents of this file are subject to the terms of the Common */
5 /* Development and Distribution License Version 1.0 (the "License"). */
6 /* */
7 /* You can obtain a copy of the license at */
8 /* http://www.opensource.org/licenses/CDDL-1.0. See the License for the */
9 /* specific language governing permissions and limitations under the License. */
10 /* */
11 /* When distributing Covered Code, include this CDDL HEADER in each file and */
12 /* include the License file in a prominent location with the name */
13 /* LICENSE.CDDL. */
14 /* If applicable, add the following below this CDDL HEADER, with the fields */
15 /* enclosed by brackets "[]" replaced with your own identifying information: */
16 /* */
17 /* Portions Copyright (c) [yyyy] [name of copyright owner]. */
18 /* All rights reserved. */
19 /* */
20 /* CDDL HEADER END */
21 /* */
22 
23 /* */
24 /* Copyright (c) 2016--2019, Regents of the University of Minnesota. */
25 /* All rights reserved. */
26 /* */
27 /* Contributors: */
28 /* Ryan S. Elliott */
29 /* */
30 
31 /* */
32 /* Release: This file is part of the kim-api-v2-2.0.0 package. */
33 /* */
34 
35 
36 #ifndef KIM_CHARGE_UNIT_H_
37 #define KIM_CHARGE_UNIT_H_
38 
47 {
57 };
58 #ifndef KIM_CHARGE_UNIT_DEFINED_
59 #define KIM_CHARGE_UNIT_DEFINED_
60 
66 #endif
67 
76 KIM_ChargeUnit KIM_ChargeUnit_FromString(char const * const str);
77 
85 int KIM_ChargeUnit_Known(KIM_ChargeUnit const chargeUnit);
86 
94 int KIM_ChargeUnit_Equal(KIM_ChargeUnit const lhs, KIM_ChargeUnit const rhs);
95 
103 int KIM_ChargeUnit_NotEqual(KIM_ChargeUnit const lhs, KIM_ChargeUnit const rhs);
104 
112 char const * KIM_ChargeUnit_ToString(KIM_ChargeUnit const chargeUnit);
113 
123 
131 extern KIM_ChargeUnit const KIM_CHARGE_UNIT_C;
132 
140 extern KIM_ChargeUnit const KIM_CHARGE_UNIT_e;
141 
150 
159 void KIM_CHARGE_UNIT_GetNumberOfChargeUnits(int * const numberOfChargeUnits);
160 
169 int KIM_CHARGE_UNIT_GetChargeUnit(int const index,
170  KIM_ChargeUnit * const chargeUnit);
171 
172 #endif /* KIM_CHARGE_UNIT_H_ */
int KIM_CHARGE_UNIT_GetChargeUnit(int const index, KIM_ChargeUnit *const chargeUnit)
Get the identity of each defined standard ChargeUnit.
KIM_ChargeUnit const KIM_CHARGE_UNIT_e
The standard electron unit of charge.
char const * KIM_ChargeUnit_ToString(KIM_ChargeUnit const chargeUnit)
Converts the object to a string.
KIM_ChargeUnit const KIM_CHARGE_UNIT_statC
The standard statcoulomb unit of charge.
int KIM_ChargeUnit_Equal(KIM_ChargeUnit const lhs, KIM_ChargeUnit const rhs)
Compares ChargeUnit objects for equality.
KIM_ChargeUnit const KIM_CHARGE_UNIT_unused
Indicates that a ChargeUnit is not used.
int KIM_ChargeUnit_Known(KIM_ChargeUnit const chargeUnit)
Determines if the object is a quantity known to the KIM API.
KIM_ChargeUnit const KIM_CHARGE_UNIT_C
The standard Coulomb unit of charge.
KIM_ChargeUnit KIM_ChargeUnit_FromString(char const *const str)
Create a ChargeUnit object corresponding to the provided string. If the string does not match one of ...
int KIM_ChargeUnit_NotEqual(KIM_ChargeUnit const lhs, KIM_ChargeUnit const rhs)
Compares ChargeUnit objects for inequality.
void KIM_CHARGE_UNIT_GetNumberOfChargeUnits(int *const numberOfChargeUnits)
Get the number of standard ChargeUnit's defined by the KIM API.
An Extensible Enumeration for the ChargeUnit's supported by the KIM API.
int chargeUnitID
Integer identifying the specific ChargeUnit represented.