31#ifndef KIM_FUNCTION_TYPES_H_
32#define KIM_FUNCTION_TYPES_H_
35#ifndef KIM_LENGTH_UNIT_DEFINED_
36#define KIM_LENGTH_UNIT_DEFINED_
45#ifndef KIM_ENERGY_UNIT_DEFINED_
46#define KIM_ENERGY_UNIT_DEFINED_
55#ifndef KIM_CHARGE_UNIT_DEFINED_
56#define KIM_CHARGE_UNIT_DEFINED_
65#ifndef KIM_TEMPERATURE_UNIT_DEFINED_
66#define KIM_TEMPERATURE_UNIT_DEFINED_
75#ifndef KIM_TIME_UNIT_DEFINED_
76#define KIM_TIME_UNIT_DEFINED_
85#ifndef KIM_MODEL_CREATE_DEFINED_
86#define KIM_MODEL_CREATE_DEFINED_
95#ifndef KIM_MODEL_DRIVER_CREATE_DEFINED_
96#define KIM_MODEL_DRIVER_CREATE_DEFINED_
105#ifndef KIM_MODEL_COMPUTE_DEFINED_
106#define KIM_MODEL_COMPUTE_DEFINED_
115#ifndef KIM_MODEL_EXTENSION_DEFINED_
116#define KIM_MODEL_EXTENSION_DEFINED_
125#ifndef KIM_MODEL_COMPUTE_ARGUMENTS_CREATE_DEFINED_
126#define KIM_MODEL_COMPUTE_ARGUMENTS_CREATE_DEFINED_
135#ifndef KIM_MODEL_COMPUTE_ARGUMENTS_DEFINED_
136#define KIM_MODEL_COMPUTE_ARGUMENTS_DEFINED_
145#ifndef KIM_MODEL_REFRESH_DEFINED_
146#define KIM_MODEL_REFRESH_DEFINED_
155#ifndef KIM_MODEL_WRITE_PARAMETERIZED_MODEL_DEFINED_
156#define KIM_MODEL_WRITE_PARAMETERIZED_MODEL_DEFINED_
166#ifndef KIM_MODEL_COMPUTE_ARGUMENTS_DESTROY_DEFINED_
167#define KIM_MODEL_COMPUTE_ARGUMENTS_DESTROY_DEFINED_
177#ifndef KIM_MODEL_DESTROY_DEFINED_
178#define KIM_MODEL_DESTROY_DEFINED_
259 int const numberOfNeighborLists,
260 double const *
const cutoffs,
261 int const neighborListIndex,
262 int const particleNumber,
263 int *
const numberOfNeighbors,
264 int const **
const neighborsOfParticle);
277 double const *
const dx,
292 double const *
const r,
293 double const *
const dx,
295 int const *
const j);
306 void *
const extensionStructure);
328 modelWriteParameterizedModel);
int KIM_ModelComputeArgumentsCreateFunction(KIM_ModelCompute const *const modelCompute, KIM_ModelComputeArgumentsCreate *const modelComputeArgumentsCreate)
Prototype for MODEL_ROUTINE_NAME::ComputeArgumentsCreate routine.
int KIM_ProcessDEDrTermFunction(void *const dataObject, double const de, double const r, double const *const dx, int const i, int const j)
Prototype for COMPUTE_CALLBACK_NAME::ProcessDEDrTerm routine.
struct KIM_ModelWriteParameterizedModel KIM_ModelWriteParameterizedModel
Forward declaration.
int KIM_ModelDestroyFunction(KIM_ModelDestroy *const modelDestroy)
Prototype for MODEL_ROUTINE_NAME::Destroy routine.
int KIM_GetNeighborListFunction(void *const dataObject, int const numberOfNeighborLists, double const *const cutoffs, int const neighborListIndex, int const particleNumber, int *const numberOfNeighbors, int const **const neighborsOfParticle)
Prototype for COMPUTE_CALLBACK_NAME::GetNeighborList routine.
struct KIM_ModelComputeArgumentsCreate KIM_ModelComputeArgumentsCreate
Forward declaration.
struct KIM_ModelComputeArgumentsDestroy KIM_ModelComputeArgumentsDestroy
Forward declaration.
struct KIM_ModelCreate KIM_ModelCreate
Forward declaration.
struct KIM_ModelDestroy KIM_ModelDestroy
Forward declaration.
int KIM_ModelWriteParameterizedModelFunction(KIM_ModelWriteParameterizedModel const *const modelWriteParameterizedModel)
Prototype for MODEL_ROUTINE_NAME::WriteParameterizedModel routine.
struct KIM_ModelCompute KIM_ModelCompute
Forward declaration.
int KIM_ModelExtensionFunction(KIM_ModelExtension *const modelExtension, void *const extensionStructure)
Prototype for MODEL_ROUTINE_NAME::Extension routine.
struct KIM_ModelComputeArguments KIM_ModelComputeArguments
Forward declaration.
int KIM_ProcessD2EDr2TermFunction(void *const dataObject, double const de, double const *const r, double const *const dx, int const *const i, int const *const j)
Prototype for COMPUTE_CALLBACK_NAME::ProcessD2EDr2Term routine.
void() KIM_Function(void)
Generic function type.
struct KIM_ModelDriverCreate KIM_ModelDriverCreate
Forward declaration.
int KIM_ModelDriverCreateFunction(KIM_ModelDriverCreate *const modelDriverCreate, KIM_LengthUnit const requestedLengthUnit, KIM_EnergyUnit const requestedEnergyUnit, KIM_ChargeUnit const requestedChargeUnit, KIM_TemperatureUnit const requestedTemperatureUnit, KIM_TimeUnit const requestedTimeUnit)
Prototype for MODEL_ROUTINE_NAME::Create routine.
int KIM_ModelRefreshFunction(KIM_ModelRefresh *const modelRefresh)
Prototype for MODEL_ROUTINE_NAME::Refresh routine.
int KIM_LogPrintFunction(char const *const entryString)
Prototype for Log PrintFunction routine.
struct KIM_ModelExtension KIM_ModelExtension
Forward declaration.
int KIM_ModelCreateFunction(KIM_ModelCreate *const modelCreate, KIM_LengthUnit const requestedLengthUnit, KIM_EnergyUnit const requestedEnergyUnit, KIM_ChargeUnit const requestedChargeUnit, KIM_TemperatureUnit const requestedTemperatureUnit, KIM_TimeUnit const requestedTimeUnit)
Prototype for MODEL_ROUTINE_NAME::Create routine.
int KIM_ModelComputeArgumentsDestroyFunction(KIM_ModelCompute const *const modelCompute, KIM_ModelComputeArgumentsDestroy *const modelComputeArgumentsDestroy)
Prototype for MODEL_ROUTINE_NAME::ComputeArgumentsDestroy routine.
int KIM_ModelComputeFunction(KIM_ModelCompute const *const modelCompute, KIM_ModelComputeArguments const *const modelComputeArguments)
Prototype for MODEL_ROUTINE_NAME::Compute routine.
struct KIM_ModelRefresh KIM_ModelRefresh
Forward declaration.
An Extensible Enumeration for the ChargeUnit's supported by the KIM API.
An Extensible Enumeration for the EnergyUnit's supported by the KIM API.
An Extensible Enumeration for the LengthUnit's supported by the KIM API.
An Extensible Enumeration for the TemperatureUnit's supported by the KIM API.
An Extensible Enumeration for the TimeUnit's supported by the KIM API.