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--2020, 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-2.2.1 package. */ 33 /* */ 34 35 36 #ifndef KIM_NUMBERING_H_ 37 #define KIM_NUMBERING_H_ 38 39 /** 40 ** \brief \copybrief KIM::Numbering 41 ** 42 ** \sa KIM::Numbering, kim_numbering_module::kim_numbering_type 43 ** 44 ** \since 2.0 45 **/ 46 struct KIM_Numbering 47 { 48 /** 49 ** \brief \copybrief KIM::Numbering::numberingID 50 ** 51 ** \sa KIM::Numbering::numberingID, 52 ** kim_numbering_module::kim_numbering_type::numbering_id 53 ** 54 ** \since 2.0 55 **/ 56 int numberingID; 57 }; 58 #ifndef KIM_NUMBERING_DEFINED_ 59 #define KIM_NUMBERING_DEFINED_ 60 /** 61 ** \brief Forward declaration. 62 ** 63 ** \since 2.0 64 **/ 65 typedef struct KIM_Numbering KIM_Numbering; 66 #endif 67 68 /** 69 ** \brief \copybrief KIM::Numbering::Numbering(std::string const &) 70 ** 71 ** \sa KIM::Numbering::Numbering(std::string const &), 72 ** kim_numbering_module::kim_from_string 73 ** 74 ** \since 2.0 75 **/ 76 KIM_Numbering KIM_Numbering_FromString(char const * const str); 77 78 /** 79 ** \brief \copybrief KIM::Numbering::Known 80 ** 81 ** \sa KIM::Numbering::Known, kim_numbering_module::kim_known 82 ** 83 ** \since 2.0 84 **/ 85 int KIM_Numbering_Known(KIM_Numbering const numbering); 86 87 /** 88 ** \brief \copybrief KIM::Numbering::operator==() 89 ** 90 ** \sa KIM::Numbering::operator==(), kim_numbering_module::operator(.eq.) 91 ** 92 ** \since 2.0 93 **/ 94 int KIM_Numbering_Equal(KIM_Numbering const lhs, KIM_Numbering const rhs); 95 96 /** 97 ** \brief \copybrief KIM::Numbering::operator!=() 98 ** 99 ** \sa KIM::Numbering::operator!=(), kim_numbering_module::operator(.ne.) 100 ** 101 ** \since 2.0 102 **/ 103 int KIM_Numbering_NotEqual(KIM_Numbering const lhs, KIM_Numbering const rhs); 104 105 /** 106 ** \brief \copybrief KIM::Numbering::ToString 107 ** 108 ** \sa KIM::Numbering::ToString, kim_numbering_module::kim_to_string 109 ** 110 ** \since 2.0 111 **/ 112 char const * KIM_Numbering_ToString(KIM_Numbering const numbering); 113 114 /** 115 ** \brief \copybrief KIM::NUMBERING::zeroBased 116 ** 117 ** \sa KIM::NUMBERING::zeroBased, 118 ** kim_numbering_module::kim_numbering_zero_based 119 ** 120 ** \since 2.0 121 **/ 122 extern KIM_Numbering const KIM_NUMBERING_zeroBased; 123 124 /** 125 ** \brief \copybrief KIM::NUMBERING::oneBased 126 ** 127 ** \sa KIM::NUMBERING::oneBased, kim_numbering_module::kim_numbering_one_based 128 ** 129 ** \since 2.0 130 **/ 131 extern KIM_Numbering const KIM_NUMBERING_oneBased; 132 133 /** 134 ** \brief \copybrief KIM::NUMBERING::GetNumberOfNumberings 135 ** 136 ** \sa KIM::NUMBERING::GetNumberOfNumberings, 137 ** kim_numbering_module::kim_get_number_of_numberings 138 ** 139 ** \since 2.0 140 **/ 141 void KIM_NUMBERING_GetNumberOfNumberings(int * const numberOfNumberings); 142 143 /** 144 ** \brief \copybrief KIM::NUMBERING::GetNumbering 145 ** 146 ** \sa KIM::NUMBERING::GetNumbering, kim_numbering_module::kim_get_numbering 147 ** 148 ** \since 2.0 149 **/ 150 int KIM_NUMBERING_GetNumbering(int const index, 151 KIM_Numbering * const numbering); 152 153 #endif /* KIM_NUMBERING_H_ */ 154