libjaylink  0.2.0
Library to access J-Link devices
Functions
log.c File Reference

Logging functions. More...

#include <stdio.h>
#include <stdarg.h>
#include "libjaylink.h"
#include "libjaylink-internal.h"

Functions

int jaylink_log_set_level (struct jaylink_context *ctx, enum jaylink_log_level level)
 Set the libjaylink log level. More...
 
int jaylink_log_get_level (const struct jaylink_context *ctx, enum jaylink_log_level *level)
 Get the libjaylink log level. More...
 
int jaylink_log_set_callback (struct jaylink_context *ctx, jaylink_log_callback callback, void *user_data)
 Set the libjaylink log callback function. More...
 
int jaylink_log_set_domain (struct jaylink_context *ctx, const char *domain)
 Set the libjaylink log domain. More...
 
const char * jaylink_log_get_domain (const struct jaylink_context *ctx)
 Get the libjaylink log domain. More...
 

Detailed Description

Logging functions.

Function Documentation

const char* jaylink_log_get_domain ( const struct jaylink_context ctx)

Get the libjaylink log domain.

Parameters
[in]ctxlibjaylink context.
Returns
A string which contains the current log domain on success, or NULL on failure. The string is null-terminated and must not be free'd by the caller.
Since
0.1.0
int jaylink_log_get_level ( const struct jaylink_context ctx,
enum jaylink_log_level level 
)

Get the libjaylink log level.

Parameters
[in]ctxlibjaylink context.
[out]levelLog level on success, and undefined on failure.
Return values
JAYLINK_OKSuccess.
JAYLINK_ERR_ARGInvalid arguments.
Since
0.1.0
int jaylink_log_set_callback ( struct jaylink_context ctx,
jaylink_log_callback  callback,
void *  user_data 
)

Set the libjaylink log callback function.

Parameters
[in,out]ctxlibjaylink context.
[in]callbackCallback function to use, or NULL to use the default log function.
[in]user_dataUser data to be passed to the callback function.
Return values
JAYLINK_OKSuccess.
JAYLINK_ERR_ARGInvalid arguments.
Since
0.1.0
int jaylink_log_set_domain ( struct jaylink_context ctx,
const char *  domain 
)

Set the libjaylink log domain.

The log domain is a string which is used as prefix for all log messages to differentiate them from messages of other libraries.

The maximum length of the log domain is JAYLINK_LOG_DOMAIN_MAX_LENGTH bytes, excluding the trailing null-terminator. A log domain which exceeds this length will be silently truncated.

Parameters
[in,out]ctxlibjaylink context.
[in]domainLog domain to use. To set the default log domain, use JAYLINK_LOG_DOMAIN_DEFAULT.
Return values
JAYLINK_OKSuccess.
JAYLINK_ERR_ARGInvalid arguments.
JAYLINK_ERROther error conditions.
Since
0.1.0
int jaylink_log_set_level ( struct jaylink_context ctx,
enum jaylink_log_level  level 
)

Set the libjaylink log level.

Parameters
[in,out]ctxlibjaylink context.
[in]levelLog level to set.
Return values
JAYLINK_OKSuccess.
JAYLINK_ERR_ARGInvalid arguments.
Since
0.1.0