kim-api 2.3.0+AppleClang.AppleClang.GNU
An Application Programming Interface (API) for the Knowledgebase of Interatomic Models (KIM).
Loading...
Searching...
No Matches
KIM_ComputeArguments.h
Go to the documentation of this file.
1/* */
2/* KIM-API: An API for interatomic models */
3/* Copyright (c) 2013--2022, Regents of the University of Minnesota. */
4/* All rights reserved. */
5/* */
6/* Contributors: */
7/* Ryan S. Elliott */
8/* */
9/* SPDX-License-Identifier: LGPL-2.1-or-later */
10/* */
11/* This library is free software; you can redistribute it and/or */
12/* modify it under the terms of the GNU Lesser General Public */
13/* License as published by the Free Software Foundation; either */
14/* version 2.1 of the License, or (at your option) any later version. */
15/* */
16/* This library is distributed in the hope that it will be useful, */
17/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
18/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU */
19/* Lesser General Public License for more details. */
20/* */
21/* You should have received a copy of the GNU Lesser General Public License */
22/* along with this library; if not, write to the Free Software Foundation, */
23/* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */
24/* */
25
26/* */
27/* Release: This file is part of the kim-api-2.3.0 package. */
28/* */
29
30
31#ifndef KIM_COMPUTE_ARGUMENTS_H_
32#define KIM_COMPUTE_ARGUMENTS_H_
33
34#ifndef KIM_FUNCTION_TYPES_H_
35#include "KIM_FunctionTypes.h" /* IWYU pragma: export */
36#endif
37
38/* Forward declarations */
39#ifndef KIM_LOG_VERBOSITY_DEFINED_
40#define KIM_LOG_VERBOSITY_DEFINED_
47#endif
48
49#ifndef KIM_LANGUAGE_NAME_DEFINED_
50#define KIM_LANGUAGE_NAME_DEFINED_
57#endif
58
59#ifndef KIM_COMPUTE_ARGUMENT_NAME_DEFINED_
60#define KIM_COMPUTE_ARGUMENT_NAME_DEFINED_
67#endif
68
69#ifndef KIM_COMPUTE_CALLBACK_NAME_DEFINED_
70#define KIM_COMPUTE_CALLBACK_NAME_DEFINED_
77#endif
78
79#ifndef KIM_SUPPORT_STATUS_DEFINED_
80#define KIM_SUPPORT_STATUS_DEFINED_
87#endif
88
89
90#ifndef KIM_COMPUTE_ARGUMENTS_DEFINED_
91#define KIM_COMPUTE_ARGUMENTS_DEFINED_
101#endif
102
112 KIM_ComputeArguments const * const computeArguments,
113 KIM_ComputeArgumentName const computeArgumentName,
114 KIM_SupportStatus * const supportStatus);
115
125 KIM_ComputeArguments const * const computeArguments,
126 KIM_ComputeCallbackName const computeCallbackName,
127 KIM_SupportStatus * const supportStatus);
128
138 KIM_ComputeArguments * const computeArguments,
139 KIM_ComputeArgumentName const computeArgumentName,
140 int const * const ptr);
141
151 KIM_ComputeArguments * const computeArguments,
152 KIM_ComputeArgumentName const computeArgumentName,
153 double const * const ptr);
154
164 KIM_ComputeArguments * const computeArguments,
165 KIM_ComputeCallbackName const computeCallbackName,
166 KIM_LanguageName const languageName,
167 KIM_Function * const fptr,
168 void * const dataObject);
169
180 KIM_ComputeArguments const * const computeArguments, int * const result);
181
191 KIM_ComputeArguments * const computeArguments, void * const ptr);
192
202 KIM_ComputeArguments const * const computeArguments, void ** const ptr);
203
213 KIM_ComputeArguments const * const computeArguments);
214
224 KIM_ComputeArguments * const computeArguments, char const * const logID);
225
235 KIM_ComputeArguments * const computeArguments,
236 KIM_LogVerbosity const logVerbosity);
237
247 KIM_ComputeArguments * const computeArguments);
248
249#endif /* KIM_COMPUTE_ARGUMENTS_H_ */
void KIM_ComputeArguments_SetLogID(KIM_ComputeArguments *const computeArguments, char const *const logID)
Set the identity of the Log object associated with the ComputeArguments object.
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_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_AreAllRequiredArgumentsAndCallbacksPresent(KIM_ComputeArguments const *const computeArguments, int *const result)
KIM::ComputeArguments::AreAllRequiredArgumentsAndCallbacksPresent
char const * KIM_ComputeArguments_ToString(KIM_ComputeArguments const *const computeArguments)
Get a string representing the internal state of 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.
struct KIM_ComputeArguments KIM_ComputeArguments
Provides the primary interface to a KIM API ComputeArguments object and is meant to be used by simula...
int KIM_ComputeArguments_GetArgumentSupportStatus(KIM_ComputeArguments const *const computeArguments, KIM_ComputeArgumentName const computeArgumentName, KIM_SupportStatus *const supportStatus)
Get the SupportStatus of a ComputeArgumentName.
int KIM_ComputeArguments_GetCallbackSupportStatus(KIM_ComputeArguments const *const computeArguments, KIM_ComputeCallbackName const computeCallbackName, KIM_SupportStatus *const supportStatus)
Get the SupportStatus of a ComputeCallbackName.
void KIM_ComputeArguments_GetSimulatorBufferPointer(KIM_ComputeArguments const *const computeArguments, void **const ptr)
Get the Simulator's buffer pointer from the ComputeArguments object.
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_SetSimulatorBufferPointer(KIM_ComputeArguments *const computeArguments, void *const ptr)
Set the Simulator's buffer pointer within the ComputeArguments object.
void() KIM_Function(void)
Generic function type.
An Extensible Enumeration for the ComputeArgumentName's supported by the KIM API.
An Extensible Enumeration for the ComputeCallbackName's supported by the KIM API.
An Extensible Enumeration for the LanguageName's supported by the KIM API.
An Extensible Enumeration for the LogVerbosity's supported by the KIM API.
An Extensible Enumeration for the SupportStatus's supported by the KIM API.