GE-115 Emulator
An Emulator of the General Electrics GE-115 computer
Functions | Variables
log.c File Reference
#include "log.h"
#include <stdarg.h>
#include <stdio.h>
#include <string.h>
#include <ctype.h>

Go to the source code of this file.

Functions

static const char * log_type_name (ge_log_type type)
 
void ge_log_set_active_types (ge_log_type types)
 Set active log types.
 
void ge_log_set_active_types_from_spec (const char *spec)
 Set active log types from a comma-separated name specification.
 
void ge_log (ge_log_type type, const char *format,...)
 Log message.
 
uint8_t ge_log_enabled (ge_log_type type)
 Check if a log type is enabled.
 

Variables

static ge_log_type active_log_types = -1
 

Function Documentation

◆ ge_log()

void ge_log ( ge_log_type  type,
const char *  format,
  ... 
)

Log message.

Specifies which set of logging messages should be displayed.

Parameters
typeThe type of the message
formatThe printf-style format for the log message

Definition at line 122 of file log.c.

◆ ge_log_enabled()

uint8_t ge_log_enabled ( ge_log_type  type)

Check if a log type is enabled.

Parameters
typeThe type to check
Returns
true if the logtype mask is enabled

Definition at line 137 of file log.c.

◆ ge_log_set_active_types()

void ge_log_set_active_types ( ge_log_type  types)

Set active log types.

Specifies which set of logging messages should be displayed.

Parameters
typesA set of log types

Definition at line 42 of file log.c.

◆ ge_log_set_active_types_from_spec()

void ge_log_set_active_types_from_spec ( const char *  spec)

Set active log types from a comma-separated name specification.

Parses spec as a comma-separated list of category names and enables exactly those log types by calling ge_log_set_active_types(). Surrounding whitespace around each name is ignored.

Recognised names: err, debug, regs, states, conds, regs_v, future, cycle, console, peri, reader, cmds, all (enable everything), none (disable all).

If spec is NULL or empty the active types are left unchanged. Unknown names are silently ignored except that a LOG_ERR message is emitted.

Parameters
specComma-separated list of category names, or NULL / empty string

Definition at line 47 of file log.c.

◆ log_type_name()

static const char * log_type_name ( ge_log_type  type)
static

Definition at line 10 of file log.c.

Variable Documentation

◆ active_log_types

ge_log_type active_log_types = -1
static

Definition at line 8 of file log.c.