34#ifndef KIM_FUNCTION_TYPES_H_
39#ifndef KIM_LOG_VERBOSITY_DEFINED_
40#define KIM_LOG_VERBOSITY_DEFINED_
49#ifndef KIM_LANGUAGE_NAME_DEFINED_
50#define KIM_LANGUAGE_NAME_DEFINED_
60#ifndef KIM_LOG_DEFINED_
61#define KIM_LOG_DEFINED_
177 char const *
const message,
178 int const lineNumber,
179 char const *
const fileName);
void() KIM_Function(void)
Generic function type.
int KIM_Log_Create(KIM_Log **const log)
Create a new KIM API Log object.
void KIM_Log_PopDefaultVerbosity()
Pop a LogVerbosity from the KIM API global default verbosity stack.
void KIM_Log_PopDefaultPrintFunction()
Pop a log PrintFunction from the KIM API global default log PrintFunction stack.
void KIM_Log_PopVerbosity(KIM_Log *const log)
Pop a LogVerbosity from the Log object's verbosity stack.
struct KIM_Log KIM_Log
Provides the logging interface for the KIM API.
void KIM_Log_Destroy(KIM_Log **const log)
Destroy a previously Log::Create'd object.
void KIM_Log_PushVerbosity(KIM_Log *const log, KIM_LogVerbosity const logVerbosity)
Push a new LogVerbosity onto the Log object's verbosity stack.
void KIM_Log_PushDefaultPrintFunction(KIM_LanguageName const languageName, KIM_Function *const fptr)
Push a new default log PrintFunction onto the KIM API global default log PrintFunction stack.
char const * KIM_Log_GetID(KIM_Log const *const log)
Get the identity of the Log object.
void KIM_Log_PushDefaultVerbosity(KIM_LogVerbosity const logVerbosity)
Push a new default LogVerbosity onto the KIM API global default verbosity stack.
void KIM_Log_LogEntry(KIM_Log const *const log, KIM_LogVerbosity const logVerbosity, char const *const message, int const lineNumber, char const *const fileName)
Write a log entry into the log file.
void KIM_Log_SetID(KIM_Log *const log, char const *const id)
Set the identity of the Log object.
An Extensible Enumeration for the LanguageName's supported by the KIM API.
An Extensible Enumeration for the LogVerbosity's supported by the KIM API.