kim-api-v2  2.0.0+912e79a.GNU
An Application Programming Interface (API) for the Knowledgebase of Interatomic Models (KIM).
KIM_ComputeArguments.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_COMPUTE_ARGUMENTS_H_
37 #define KIM_COMPUTE_ARGUMENTS_H_
38 
39 #ifndef KIM_FUNCTION_TYPES_H_
40 #include "KIM_FunctionTypes.h"
41 #endif
42 
43 /* Forward declarations */
44 #ifndef KIM_LOG_VERBOSITY_DEFINED_
45 #define KIM_LOG_VERBOSITY_DEFINED_
46 
52 #endif
53 
54 #ifndef KIM_LANGUAGE_NAME_DEFINED_
55 #define KIM_LANGUAGE_NAME_DEFINED_
56 
62 #endif
63 
64 #ifndef KIM_COMPUTE_ARGUMENT_NAME_DEFINED_
65 #define KIM_COMPUTE_ARGUMENT_NAME_DEFINED_
66 
72 #endif
73 
74 #ifndef KIM_COMPUTE_CALLBACK_NAME_DEFINED_
75 #define KIM_COMPUTE_CALLBACK_NAME_DEFINED_
76 
82 #endif
83 
84 #ifndef KIM_SUPPORT_STATUS_DEFINED_
85 #define KIM_SUPPORT_STATUS_DEFINED_
86 
92 #endif
93 
94 
95 #ifndef KIM_COMPUTE_ARGUMENTS_DEFINED_
96 #define KIM_COMPUTE_ARGUMENTS_DEFINED_
97 
106 #endif
107 
117  KIM_ComputeArguments const * const computeArguments,
118  KIM_ComputeArgumentName const computeArgumentName,
119  KIM_SupportStatus * const supportStatus);
120 
130  KIM_ComputeArguments const * const computeArguments,
131  KIM_ComputeCallbackName const computeCallbackName,
132  KIM_SupportStatus * const supportStatus);
133 
143  KIM_ComputeArguments * const computeArguments,
144  KIM_ComputeArgumentName const computeArgumentName,
145  int const * const ptr);
146 
156  KIM_ComputeArguments * const computeArguments,
157  KIM_ComputeArgumentName const computeArgumentName,
158  double const * const ptr);
159 
169  KIM_ComputeArguments * const computeArguments,
170  KIM_ComputeCallbackName const computeCallbackName,
171  KIM_LanguageName const languageName,
172  KIM_Function * const fptr,
173  void * const dataObject);
174 
185  KIM_ComputeArguments const * const computeArguments, int * const result);
186 
196  KIM_ComputeArguments * const computeArguments, void * const ptr);
197 
207  KIM_ComputeArguments const * const computeArguments, void ** const ptr);
208 
217 char const * KIM_ComputeArguments_ToString(
218  KIM_ComputeArguments const * const computeArguments);
219 
229  KIM_ComputeArguments * const computeArguments, char const * const logID);
230 
240  KIM_ComputeArguments * const computeArguments,
241  KIM_LogVerbosity const logVerbosity);
242 
252  KIM_ComputeArguments * const computeArguments);
253 
254 #endif /* KIM_COMPUTE_ARGUMENTS_H_ */
An Extensible Enumeration for the LogVerbosity's supported by the KIM API.
int KIM_ComputeArguments_GetArgumentSupportStatus(KIM_ComputeArguments const *const computeArguments, KIM_ComputeArgumentName const computeArgumentName, KIM_SupportStatus *const supportStatus)
Get the SupportStatus of a ComputeArgumentName.
void KIM_ComputeArguments_PopLogVerbosity(KIM_ComputeArguments *const computeArguments)
Pop a LogVerbosity from the ComputeArguments object's Log object verbosity stack. ...
int KIM_ComputeArguments_SetArgumentPointerDouble(KIM_ComputeArguments *const computeArguments, KIM_ComputeArgumentName const computeArgumentName, double const *const ptr)
Set the data pointer for a ComputeArgumentName.
void KIM_ComputeArguments_SetLogID(KIM_ComputeArguments *const computeArguments, char const *const logID)
Set the identity of the Log object associated with the ComputeArguments object.
int KIM_ComputeArguments_SetCallbackPointer(KIM_ComputeArguments *const computeArguments, KIM_ComputeCallbackName const computeCallbackName, KIM_LanguageName const languageName, KIM_Function *const fptr, void *const dataObject)
Set the function pointer for a ComputeCallbackName.
An Extensible Enumeration for the LanguageName's supported by the KIM API.
void KIM_ComputeArguments_GetSimulatorBufferPointer(KIM_ComputeArguments const *const computeArguments, void **const ptr)
Get the Simulator's buffer pointer from the ComputeArguments object.
void() KIM_Function(void)
Generic function type.
struct KIM_ComputeArguments KIM_ComputeArguments
Provides the primary interface to a KIM API ComputeArguments object and is meant to be used by simula...
An Extensible Enumeration for the ComputeCallbackName's supported by the KIM API. ...
An Extensible Enumeration for the ComputeArgumentName's supported by the KIM API. ...
char const * KIM_ComputeArguments_ToString(KIM_ComputeArguments const *const computeArguments)
Get a string representing the internal state of the ComputeArguments object.
int KIM_ComputeArguments_GetCallbackSupportStatus(KIM_ComputeArguments const *const computeArguments, KIM_ComputeCallbackName const computeCallbackName, KIM_SupportStatus *const supportStatus)
Get the SupportStatus of a ComputeCallbackName.
An Extensible Enumeration for the SupportStatus's supported by the KIM API.
int KIM_ComputeArguments_SetArgumentPointerInteger(KIM_ComputeArguments *const computeArguments, KIM_ComputeArgumentName const computeArgumentName, int const *const ptr)
Set the data pointer for a ComputeArgumentName.
void KIM_ComputeArguments_PushLogVerbosity(KIM_ComputeArguments *const computeArguments, KIM_LogVerbosity const logVerbosity)
Push a new LogVerbosity onto the ComputeArguments object's Log object verbosity stack.
void KIM_ComputeArguments_AreAllRequiredArgumentsAndCallbacksPresent(KIM_ComputeArguments const *const computeArguments, int *const result)
Determine if non-NULL pointers have been set for all ComputeArgumentName's and ComputeCallbackName's ...
void KIM_ComputeArguments_SetSimulatorBufferPointer(KIM_ComputeArguments *const computeArguments, void *const ptr)
Set the Simulator's buffer pointer within the ComputeArguments object.