c-library functions should be always present, documented, and lowercase

This commit is contained in:
Axel Kohlmeyer
2022-09-24 03:07:24 -04:00
parent 8ad478697e
commit 49a3be17cb
4 changed files with 33 additions and 8 deletions

View File

@ -19,6 +19,7 @@ functions. They do not directly call the LAMMPS library.
- :cpp:func:`lammps_force_timeout` - :cpp:func:`lammps_force_timeout`
- :cpp:func:`lammps_has_error` - :cpp:func:`lammps_has_error`
- :cpp:func:`lammps_get_last_error_message` - :cpp:func:`lammps_get_last_error_message`
- :cpp:func:`lammps_python_api_version`
The :cpp:func:`lammps_free` function is a clean-up function to free The :cpp:func:`lammps_free` function is a clean-up function to free
memory that the library had allocated previously via other function memory that the library had allocated previously via other function
@ -100,3 +101,9 @@ where such memory buffers were allocated that require the use of
.. doxygenfunction:: lammps_get_last_error_message .. doxygenfunction:: lammps_get_last_error_message
:project: progguide :project: progguide
-----------------------
.. doxygenfunction:: lammps_python_api_version
:project: progguide

View File

@ -58,7 +58,7 @@ def activate_mliappy(lmp):
try: try:
library = lmp.lib library = lmp.lib
module_names = ["mliap_model_python_couple", "mliap_unified_couple"] module_names = ["mliap_model_python_couple", "mliap_unified_couple"]
api_version = library.lammps_PYTHON_API_VERSION() api_version = library.lammps_python_api_version()
for module_name in module_names: for module_name in module_names:
# Make Machinery # Make Machinery

View File

@ -57,6 +57,10 @@
#include "exceptions.h" #include "exceptions.h"
#endif #endif
#if defined(LMP_PYTHON)
#include <Python.h>
#endif
using namespace LAMMPS_NS; using namespace LAMMPS_NS;
// for printing the non-null pointer argument warning only once // for printing the non-null pointer argument warning only once
@ -5571,12 +5575,28 @@ int lammps_get_last_error_message(void *handle, char *buffer, int buf_size) {
return 0; return 0;
} }
#ifdef LMP_PYTHON /* ---------------------------------------------------------------------- */
#include <Python.h>
int lammps_PYTHON_API_VERSION(){ /** Return API version of embedded Python interpreter
\verbatim embed:rst
This function is used by the ML-IAP python code (mliappy) to verify
the API version of the embedded python interpreter of the PYTHON
package. It returns -1 if the PYTHON package is not enabled.
.. versionadded:: TBD
\endverbatim
*
* \return PYTHON_API_VERSION constant of the python interpreter or -1 */
int lammps_python_api_version() {
#if defined(LMP_PYTHON)
return PYTHON_API_VERSION; return PYTHON_API_VERSION;
} #else
return -1;
#endif #endif
}
// Local Variables: // Local Variables:
// fill-column: 72 // fill-column: 72

View File

@ -256,9 +256,7 @@ void lammps_force_timeout(void *handle);
int lammps_has_error(void *handle); int lammps_has_error(void *handle);
int lammps_get_last_error_message(void *handle, char *buffer, int buf_size); int lammps_get_last_error_message(void *handle, char *buffer, int buf_size);
#ifdef LMP_PYTHON int lammps_python_api_version();
int lammps_PYTHON_API_VERSION();
#endif
#ifdef __cplusplus #ifdef __cplusplus
} }