kim-api  2.1.3+v2.1.3.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.3 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 
60 #endif
61 
70 int KIM_SimulatorModel_Create(char const * const simulatorModelName,
72 
82 
92  KIM_SimulatorModel const * const simulatorModel,
93  char const ** const simulatorName,
94  char const ** const simulatorVersion);
95 
105  KIM_SimulatorModel const * const simulatorModel,
106  int * const numberOfSupportedSpecies);
107 
117  KIM_SimulatorModel const * const simulatorModel,
118  int const index,
119  char const ** const speciesName);
120 
130  KIM_SimulatorModel const * const simulatorModel);
131 
141  KIM_SimulatorModel const * const simulatorModel);
142 
152  KIM_SimulatorModel const * const simulatorModel,
153  char const * const key,
154  char const * const value);
155 
165  KIM_SimulatorModel const * const simulatorModel);
166 
176  KIM_SimulatorModel const * const simulatorModel,
177  int * const numberOfSimulatorFields);
178 
188  KIM_SimulatorModel const * const simulatorModel,
189  int const fieldIndex,
190  int * const extent,
191  char const ** const fieldName);
192 
202  KIM_SimulatorModel const * const simulatorModel,
203  int const fieldIndex,
204  int const lineIndex,
205  char const ** const lineValue);
206 
216  KIM_SimulatorModel const * const simulatorModel,
217  char const ** const directoryName);
218 
228  KIM_SimulatorModel const * const simulatorModel,
229  char const ** const specificationFileName);
230 
240  KIM_SimulatorModel const * const simulatorModel,
241  int * const numberOfParameterFiles);
242 
252  KIM_SimulatorModel const * const simulatorModel,
253  int const index,
254  char const ** const parameterFileName);
255 
265  KIM_SimulatorModel * const simulatorModel, void * const ptr);
266 
276  KIM_SimulatorModel const * const simulatorModel, void ** const ptr);
277 
285 char const *
287 
297  char const * const logID);
298 
309  KIM_LogVerbosity const logVerbosity);
310 
321 
322 #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.