kim-api  2.1.4-git+v2.1.3-git-3-g4c859c7f.GNU
An Application Programming Interface (API) for the Knowledgebase of Interatomic Models (KIM).
Public Member Functions | List of all members
KIM::ModelRefresh Class Reference

Provides the interface to a KIM API Model object for use by models within their MODEL_ROUTINE_NAME::Refresh routine. More...

#include <KIM_ModelRefresh.hpp>

Public Member Functions

void SetInfluenceDistancePointer (double const *const influenceDistance)
 Set the Model's influence distance data pointer. More...
 
void SetNeighborListPointers (int const numberOfNeighborLists, double const *const cutoffs, int const *const modelWillNotRequestNeighborsOfNoncontributingParticles)
 Set the Model's neighbor list data pointers. More...
 
void GetModelBufferPointer (void **const ptr) const
 Get the Model's buffer pointer within the Model object. More...
 
void LogEntry (LogVerbosity const logVerbosity, std::string const &message, int const lineNumber, std::string const &fileName) const
 Write a log entry into the log file. More...
 
void LogEntry (LogVerbosity const logVerbosity, std::stringstream const &message, int const lineNumber, std::string const &fileName) const
 
std::string const & ToString () const
 Get a string representing the internal state of the Model object. More...
 

Detailed Description

Provides the interface to a KIM API Model object for use by models within their MODEL_ROUTINE_NAME::Refresh routine.

See also
KIM_ModelRefresh, kim_model_refresh_module::kim_model_refresh_handle_type
Since
2.0

Definition at line 54 of file KIM_ModelRefresh.hpp.

Member Function Documentation

◆ GetModelBufferPointer()

void KIM::ModelRefresh::GetModelBufferPointer ( void **const  ptr) const

Get the Model's buffer pointer within the Model object.

The model buffer pointer may be used by the Model to associate a memory buffer with the Model object.

Parameters
[out]ptrThe model buffer data pointer.
Note
ptr == NULL if the model has not previously called ModelCreate::SetModelBufferPointer or ModelDriverCreate::SetModelBufferPointer.
See also
KIM_ModelRefresh_GetModelBufferPointer, kim_model_refresh_module::kim_get_model_buffer_pointer
Since
2.0

◆ LogEntry() [1/2]

void KIM::ModelRefresh::LogEntry ( LogVerbosity const  logVerbosity,
std::string const &  message,
int const  lineNumber,
std::string const &  fileName 
) const

Write a log entry into the log file.

This results in a no-op if logVerbosity is LOG_VERBOSITY::silent or if logVerbosity is greater-than the Log object's top LogVerbosity on its stack.

Parameters
[in]logVerbosityThe LogVerbosity level for the entry.
[in]messageThe body text of the log entry.
[in]lineNumberThe source code file line number.
[in]fileNameThe source code file name.
See also
KIM_ModelRefresh_LogEntry, kim_model_refresh_module::kim_log_entry
Since
2.0

◆ LogEntry() [2/2]

void KIM::ModelRefresh::LogEntry ( LogVerbosity const  logVerbosity,
std::stringstream const &  message,
int const  lineNumber,
std::string const &  fileName 
) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

◆ SetInfluenceDistancePointer()

void KIM::ModelRefresh::SetInfluenceDistancePointer ( double const *const  influenceDistance)

Set the Model's influence distance data pointer.

Todo:
Add more detailed description of influenceDistance (or link to docs elsewhere?)
Parameters
[in]influenceDistancePointer to Model's influence distance.
Note
The model is responsible for allocating the memory associated with the influence distance data. The model must use the Model's buffer pointer to retain access to this memory location and avoid a memory leak.
See also
KIM_ModelRefresh_SetInfluenceDistancePointer, kim_model_refresh_module::kim_set_influence_distance_pointer
Since
2.0

◆ SetNeighborListPointers()

void KIM::ModelRefresh::SetNeighborListPointers ( int const  numberOfNeighborLists,
double const *const  cutoffs,
int const *const  modelWillNotRequestNeighborsOfNoncontributingParticles 
)

Set the Model's neighbor list data pointers.

Todo:
Add more detailed description
Parameters
[in]numberOfNeighborListsThe number of neighbor lists required by the Model.
[in]cutoffsArray of cutoff values for each of the required neighbor lists.
[in]modelWillNotRequestNeighborsOfNoncontributingParticlesArray of integers; true or false for each neighbor list required by the Model.
Note
The model is responsible for allocating the memory associated with the neighbor list cutoffs and modelWillNotRequestNeighborsOfNoncontributingParticles data. The model must use the Model's buffer pointer to retain access to this memory location and avoid a memory leak.
See also
KIM_ModelRefresh_SetNeighborListPointers, kim_model_refresh_module::kim_set_neighbor_list_pointers
Since
2.0

◆ ToString()

std::string const& KIM::ModelRefresh::ToString ( ) const

Get a string representing the internal state of the Model object.

This string is primarily meant for use as a debugging tool. The string may be quite long. It begins and ends with lines consisting only of ='s.

See also
KIM_ModelRefresh_ToString, kim_model_refresh_module::kim_to_string
Since
2.0

The documentation for this class was generated from the following file: