kim-api  2.1.2+v2.1.2.GNU
An Application Programming Interface (API) for the Knowledgebase of Interatomic Models (KIM).
KIM_SimulatorModel.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-2.1.2 package. */
33 /* */
34 
35 
36 #ifndef KIM_SIMULATOR_MODEL_H_
37 #define KIM_SIMULATOR_MODEL_H_
38 
39 /* Forward declarations */
40 #ifndef KIM_LOG_VERBOSITY_DEFINED_
41 #define KIM_LOG_VERBOSITY_DEFINED_
42 
48 #endif
49 
50 #ifndef KIM_SIMULATOR_MODEL_DEFINED_
51 #define KIM_SIMULATOR_MODEL_DEFINED_
52 
63 #endif
64 
73 int KIM_SimulatorModel_Create(char const * const simulatorModelName,
75 
85 
95  KIM_SimulatorModel const * const simulatorModel,
96  char const ** const simulatorName,
97  char const ** const simulatorVersion);
98 
108  KIM_SimulatorModel const * const simulatorModel,
109  int * const numberOfSupportedSpecies);
110 
120  KIM_SimulatorModel const * const simulatorModel,
121  int const index,
122  char const ** const speciesName);
123 
133  KIM_SimulatorModel const * const simulatorModel);
134 
144  KIM_SimulatorModel const * const simulatorModel);
145 
155  KIM_SimulatorModel const * const simulatorModel,
156  char const * const key,
157  char const * const value);
158 
168  KIM_SimulatorModel const * const simulatorModel);
169 
179  KIM_SimulatorModel const * const simulatorModel,
180  int * const numberOfSimulatorFields);
181 
191  KIM_SimulatorModel const * const simulatorModel,
192  int const fieldIndex,
193  int * const extent,
194  char const ** const fieldName);
195 
205  KIM_SimulatorModel const * const simulatorModel,
206  int const fieldIndex,
207  int const lineIndex,
208  char const ** const lineValue);
209 
219  KIM_SimulatorModel const * const simulatorModel,
220  char const ** const directoryName);
221 
231  KIM_SimulatorModel const * const simulatorModel,
232  char const ** const specificationFileName);
233 
243  KIM_SimulatorModel const * const simulatorModel,
244  int * const numberOfParameterFiles);
245 
255  KIM_SimulatorModel const * const simulatorModel,
256  int const index,
257  char const ** const parameterFileName);
258 
268  KIM_SimulatorModel * const simulatorModel, void * const ptr);
269 
279  KIM_SimulatorModel const * const simulatorModel, void ** const ptr);
280 
288 char const *
290 
300  char const * const logID);
301 
312  KIM_LogVerbosity const logVerbosity);
313 
324 
325 #endif /* KIM_SIMULATOR_MODEL_H_ */
void KIM_SimulatorModel_CloseTemplateMap(KIM_SimulatorModel const *const simulatorModel)
Close the template map and perform template substitutions.
void KIM_SimulatorModel_OpenAndInitializeTemplateMap(KIM_SimulatorModel const *const simulatorModel)
Open and initialize the template map for simulator field line substitutions.
struct KIM_SimulatorModel KIM_SimulatorModel
Provides the primary interface to a KIM API SimulatorModel object and is meant to be used by simulato...
void KIM_SimulatorModel_GetParameterFileDirectoryName(KIM_SimulatorModel const *const simulatorModel, char const **const directoryName)
Get absolute path name of the temporary directory where parameter files provided by the simulator mod...
int KIM_SimulatorModel_GetSimulatorFieldMetadata(KIM_SimulatorModel const *const simulatorModel, int const fieldIndex, int *const extent, char const **const fieldName)
Get the metadata for the simulator field of interest.
void KIM_SimulatorModel_GetNumberOfSimulatorFields(KIM_SimulatorModel const *const simulatorModel, int *const numberOfSimulatorFields)
Get the number of simulator fields provided by the SimulatorModel.
CollectionItemType const simulatorModel
The standard simulatorModel CollectionItemType.
void KIM_SimulatorModel_GetSimulatorNameAndVersion(KIM_SimulatorModel const *const simulatorModel, char const **const simulatorName, char const **const simulatorVersion)
Get the SimulatorModel's simulator name and version.
void KIM_SimulatorModel_GetNumberOfSupportedSpecies(KIM_SimulatorModel const *const simulatorModel, int *const numberOfSupportedSpecies)
Get the number of species supported by the SimulatorModel.
void KIM_SimulatorModel_PopLogVerbosity(KIM_SimulatorModel *const simulatorModel)
Pop a LogVerbosity from the SimulatorModel object's Log object verbosity stack.
void KIM_SimulatorModel_GetSimulatorBufferPointer(KIM_SimulatorModel const *const simulatorModel, void **const ptr)
Get the Simulator's buffer pointer from the SimulatorModel object.
void KIM_SimulatorModel_SetSimulatorBufferPointer(KIM_SimulatorModel *const simulatorModel, void *const ptr)
Set the Simulator's buffer pointer within the SimulatorModel object.
void KIM_SimulatorModel_Destroy(KIM_SimulatorModel **const simulatorModel)
Destroy a previously SimulatorModel::Create'd object.
void KIM_SimulatorModel_GetNumberOfParameterFiles(KIM_SimulatorModel const *const simulatorModel, int *const numberOfParameterFiles)
Get the number of parameter files provided by the SimulatorModel.
void KIM_SimulatorModel_GetSpecificationFileName(KIM_SimulatorModel const *const simulatorModel, char const **const specificationFileName)
Get the SimulatorModel's specification file basename (file name without path). The file is located in...
void KIM_SimulatorModel_PushLogVerbosity(KIM_SimulatorModel *const simulatorModel, KIM_LogVerbosity const logVerbosity)
Push a new LogVerbosity onto the SimulatorModel object's Log object verbosity stack.
An Extensible Enumeration for the LogVerbosity's supported by the KIM API.
int KIM_SimulatorModel_AddTemplateMap(KIM_SimulatorModel const *const simulatorModel, char const *const key, char const *const value)
Add a new key-value entry to the template map.
int KIM_SimulatorModel_Create(char const *const simulatorModelName, KIM_SimulatorModel **const simulatorModel)
Create a new KIM API SimulatorModel object.
char const * KIM_SimulatorModel_ToString(KIM_SimulatorModel const *const simulatorModel)
Get a string representing the internal state of the SimulatorModel object.
int KIM_SimulatorModel_GetSimulatorFieldLine(KIM_SimulatorModel const *const simulatorModel, int const fieldIndex, int const lineIndex, char const **const lineValue)
Get a line for the simulator field of interest with all template substitutions performed (Requires th...
int KIM_SimulatorModel_GetSupportedSpecies(KIM_SimulatorModel const *const simulatorModel, int const index, char const **const speciesName)
Get a species name supported by the SimulatorModel.
int KIM_SimulatorModel_GetParameterFileName(KIM_SimulatorModel const *const simulatorModel, int const index, char const **const parameterFileName)
Get the basename (file name without path) of a particular parameter file. The file is located in the ...
int KIM_SimulatorModel_TemplateMapIsOpen(KIM_SimulatorModel const *const simulatorModel)
Determine if the template map is open.
void KIM_SimulatorModel_SetLogID(KIM_SimulatorModel *const simulatorModel, char const *const logID)
Set the identity of the Log object associated with the SimulatorModel object.