VSF Documented
vsf_trace.h File Reference
#include "service/vsf_service_cfg.h"
#include "utilities/vsf_utilities.h"
#include "utilities/ooc_class.h"
#include <stdarg.h>

Go to the source code of this file.

Data Structures

class  vsf_bgtrace_t
 
struct  vsf_trace_vplt_t
 

Macros

#define VSF_TRACE_CFG_LINEEND   "\r\n"
 
#define VSF_TRACE_CFG_DEFAULT_LEVEL   VSF_TRACE_INFO
 
#define VSF_TRACE_DF_DS(n)
 
#define VSF_TRACE_DF_DPL(n)
 
#define VSF_TRACE_DF_ADDR   (1UL << 16)
 
#define VSF_TRACE_DF_CHAR   (1UL << 17)
 
#define VSF_TRACE_DF_NEWLINE   (1UL << 18)
 
#define VSF_TRACE_DF_U8_16   (VSF_TRACE_DF_DS(1) | VSF_TRACE_DF_DPL(16))
 
#define VSF_TRACE_DF_U8_16_A   (VSF_TRACE_DF_U8_16 | VSF_TRACE_DF_ADDR)
 
#define VSF_TRACE_DF_U8_16_AC   (VSF_TRACE_DF_U8_16_A | VSF_TRACE_DF_CHAR)
 
#define VSF_TRACE_DF_U8_16_ACN   (VSF_TRACE_DF_U8_16_AC | VSF_TRACE_DF_NEWLINE)
 
#define VSF_TRACE_DF_U8_16_AN   (VSF_TRACE_DF_U8_16_A | VSF_TRACE_DF_NEWLINE)
 
#define VSF_TRACE_DF_U8_16_N   (VSF_TRACE_DF_U8_16 | VSF_TRACE_DF_NEWLINE)
 
#define VSF_TRACE_DF_DEFAULT   VSF_TRACE_DF_U8_16_ACN
 
#define VSF_TRACE_POINTER_HEX   "%p"
 
#define vsf_trace_print_mem   vsf_trace_buffer
 
#define vsf_trace_init(__stream)
 
#define vsf_trace_info(...)
 
#define vsf_trace_warning(...)
 
#define vsf_trace_error(...)
 
#define vsf_trace_debug(...)
 
#define __vsf_bgtrace_type(__name)
 
#define vsf_bgtrace_type(__name)
 
#define __vsf_bgtrace_etype(__name)
 
#define vsf_bgtrace_etype(__name)
 
#define __declare_bgtrace(__name)
 
#define __define_bgtrace(__name, __ele_num, ...)
 
#define declare_bgtrace(__name)
 
#define dcl_bgtrace(__name)
 
#define define_bgtrace(__name, __ele_num, ...)
 
#define def_bgtrace(__name, __ele_num, ...)
 
#define __describe_bgtrace(__name, __ele_num, __print_element, ...)
 
#define describe_bgtrace(__name, __ele_num, __print_element, ...)
 
#define __vsf_trace_buffer3(__level, __buffer, __len)
 
#define __vsf_trace_buffer4(__level, __buffer, __len, __flag)
 
#define vsf_trace_buffer(__level, __buffer, __len, ...)
 

Typedefs

typedef struct vsf_stream_t vsf_stream_t
 
typedef enum vsf_trace_level_t vsf_trace_level_t
 
typedef struct vsf_trace_vplt_t vsf_trace_vplt_t
 

Enumerations

enum  vsf_trace_level_t {
  VSF_TRACE_NONE ,
  VSF_TRACE_ERROR ,
  VSF_TRACE_WARNING ,
  VSF_TRACE_INFO ,
  VSF_TRACE_DEBUG ,
  VSF_TRACE_LEVEL_NUM
}
 

Functions

void __vsf_trace_init (vsf_stream_t *stream)
 
void vsf_trace_fini (void)
 
void __vsf_trace_buffer (vsf_trace_level_t level, void *buffer, uint_fast16_t len, uint_fast32_t flag)
 
void vsf_trace_string (vsf_trace_level_t level, const char *str)
 
void vsf_trace_arg (vsf_trace_level_t level, const char *format, va_list arg)
 
void vsf_trace (vsf_trace_level_t level, const char *format,...)
 
uint_fast32_t __vsf_trace_output (const char *buff, uint_fast32_t size)
 
void vsf_trace_assert (const char *expr, const char *file, int line, const char *func)
 
void vsf_trace_dump_stack (void)
 
void vsf_bgtrace_clear (vsf_bgtrace_t *bgtrace)
 
uint32_t vsf_bgtrace_total (vsf_bgtrace_t *bgtrace)
 
void vsf_bgtrace_append (vsf_bgtrace_t *bgtrace, void *element)
 
void vsf_bgtrace_print (vsf_bgtrace_t *bgtrace, int cnt)
 

Variables

__VSF_VPLT_DECORATOR__ vsf_trace_vplt_t vsf_trace_vplt
 

Macro Definition Documentation

◆ VSF_TRACE_CFG_LINEEND

#define VSF_TRACE_CFG_LINEEND   "\r\n"

◆ VSF_TRACE_CFG_DEFAULT_LEVEL

#define VSF_TRACE_CFG_DEFAULT_LEVEL   VSF_TRACE_INFO

◆ VSF_TRACE_DF_DS

#define VSF_TRACE_DF_DS ( n)
Value:
(((n) & 0xFF) << 0)

◆ VSF_TRACE_DF_DPL

#define VSF_TRACE_DF_DPL ( n)
Value:
(((n) & 0xFF) << 8)

◆ VSF_TRACE_DF_ADDR

#define VSF_TRACE_DF_ADDR   (1UL << 16)

◆ VSF_TRACE_DF_CHAR

#define VSF_TRACE_DF_CHAR   (1UL << 17)

◆ VSF_TRACE_DF_NEWLINE

#define VSF_TRACE_DF_NEWLINE   (1UL << 18)

◆ VSF_TRACE_DF_U8_16

#define VSF_TRACE_DF_U8_16   (VSF_TRACE_DF_DS(1) | VSF_TRACE_DF_DPL(16))

◆ VSF_TRACE_DF_U8_16_A

#define VSF_TRACE_DF_U8_16_A   (VSF_TRACE_DF_U8_16 | VSF_TRACE_DF_ADDR)

◆ VSF_TRACE_DF_U8_16_AC

#define VSF_TRACE_DF_U8_16_AC   (VSF_TRACE_DF_U8_16_A | VSF_TRACE_DF_CHAR)

◆ VSF_TRACE_DF_U8_16_ACN

#define VSF_TRACE_DF_U8_16_ACN   (VSF_TRACE_DF_U8_16_AC | VSF_TRACE_DF_NEWLINE)

◆ VSF_TRACE_DF_U8_16_AN

#define VSF_TRACE_DF_U8_16_AN   (VSF_TRACE_DF_U8_16_A | VSF_TRACE_DF_NEWLINE)

◆ VSF_TRACE_DF_U8_16_N

#define VSF_TRACE_DF_U8_16_N   (VSF_TRACE_DF_U8_16 | VSF_TRACE_DF_NEWLINE)

◆ VSF_TRACE_DF_DEFAULT

#define VSF_TRACE_DF_DEFAULT   VSF_TRACE_DF_U8_16_ACN

◆ VSF_TRACE_POINTER_HEX

#define VSF_TRACE_POINTER_HEX   "%p"

◆ vsf_trace_print_mem

#define vsf_trace_print_mem   vsf_trace_buffer

◆ vsf_trace_init

#define vsf_trace_init ( __stream)
Value:
Definition vsf_simple_stream.h:254
void __vsf_trace_init(vsf_stream_t *stream)
Definition vsf_trace.c:118

◆ vsf_trace_info

#define vsf_trace_info ( ...)
Value:
void vsf_trace(vsf_trace_level_t level, const char *format,...)
Definition vsf_trace.c:349
@ VSF_TRACE_INFO
Definition vsf_trace.h:140

◆ vsf_trace_warning

#define vsf_trace_warning ( ...)
Value:
@ VSF_TRACE_WARNING
Definition vsf_trace.h:139

◆ vsf_trace_error

#define vsf_trace_error ( ...)
Value:
@ VSF_TRACE_ERROR
Definition vsf_trace.h:138

◆ vsf_trace_debug

#define vsf_trace_debug ( ...)
Value:
@ VSF_TRACE_DEBUG
Definition vsf_trace.h:141

◆ __vsf_bgtrace_type

#define __vsf_bgtrace_type ( __name)
Value:
__name##_bgtrace_t
#define __name
Definition hci_transport_aic8800.c:555

◆ vsf_bgtrace_type

#define vsf_bgtrace_type ( __name)
Value:
#define __vsf_bgtrace_type(__name)
Definition vsf_trace.h:96

◆ __vsf_bgtrace_etype

#define __vsf_bgtrace_etype ( __name)
Value:
__name##_bgtrace_ele_t

◆ vsf_bgtrace_etype

#define vsf_bgtrace_etype ( __name)
Value:
#define __vsf_bgtrace_etype(__name)
Definition vsf_trace.h:98

◆ __declare_bgtrace

#define __declare_bgtrace ( __name)
Value:
#define vsf_dcl_class
Definition ooc_class.h:50
#define vsf_bgtrace_type(__name)
Definition vsf_trace.h:97

◆ __define_bgtrace

#define __define_bgtrace ( __name,
__ele_num,
... )
Value:
typedef struct vsf_bgtrace_etype(__name) { \
__VA_ARGS__ \
vsf_class(vsf_bgtrace_type(__name)) { \
public_member( \
implement(vsf_bgtrace_t) \
vsf_bgtrace_etype(__name) __elements[__ele_num]; \
) \
};
Definition vsf_trace.h:145
#define vsf_bgtrace_etype(__name)
Definition vsf_trace.h:99

◆ declare_bgtrace

#define declare_bgtrace ( __name)
Value:
#define __declare_bgtrace(__name)
Definition vsf_trace.h:101

◆ dcl_bgtrace

#define dcl_bgtrace ( __name)
Value:
#define declare_bgtrace(__name)
Definition vsf_trace.h:113

◆ define_bgtrace

#define define_bgtrace ( __name,
__ele_num,
... )
Value:
__define_bgtrace(__name, (__ele_num), __VA_ARGS__)
#define __define_bgtrace(__name, __ele_num,...)
Definition vsf_trace.h:102

◆ def_bgtrace

#define def_bgtrace ( __name,
__ele_num,
... )
Value:
define_bgtrace(__name, (__ele_num), __VA_ARGS__)
#define define_bgtrace(__name, __ele_num,...)
Definition vsf_trace.h:116

◆ __describe_bgtrace

#define __describe_bgtrace ( __name,
__ele_num,
__print_element,
... )
Value:
define_bgtrace(__name, (__ele_num), __VA_ARGS__) \
vsf_bgtrace_type(__name) __name = { \
.ele_num = (__ele_num), \
.ele_size = sizeof(vsf_bgtrace_etype(__name)), \
.elements = (void *)__name.__elements, \
.print_element = (void (*)(uint16_t pos, void *element))(__print_element),\
};
unsigned short uint16_t
Definition stdint.h:7

◆ describe_bgtrace

#define describe_bgtrace ( __name,
__ele_num,
__print_element,
... )
Value:
__describe_bgtrace(__name, (__ele_num), (__print_element), __VA_ARGS__)
#define __describe_bgtrace(__name, __ele_num, __print_element,...)
Definition vsf_trace.h:121

◆ __vsf_trace_buffer3

#define __vsf_trace_buffer3 ( __level,
__buffer,
__len )
Value:
__vsf_trace_buffer((__level), (__buffer), (__len), VSF_TRACE_DF_DEFAULT)
void __vsf_trace_buffer(vsf_trace_level_t level, void *buffer, uint_fast16_t len, uint_fast32_t flag)
Definition vsf_trace.c:250
#define VSF_TRACE_DF_DEFAULT
Definition vsf_trace.h:69

◆ __vsf_trace_buffer4

#define __vsf_trace_buffer4 ( __level,
__buffer,
__len,
__flag )
Value:
__vsf_trace_buffer((__level), (__buffer), (__len), (__flag))

◆ vsf_trace_buffer

#define vsf_trace_buffer ( __level,
__buffer,
__len,
... )
Value:
__PLOOC_EVAL(__vsf_trace_buffer, (__level), (__buffer), (__len), ##__VA_ARGS__)\
((__level), (__buffer), (__len), ##__VA_ARGS__)

Typedef Documentation

◆ vsf_stream_t

typedef struct vsf_stream_t vsf_stream_t

◆ vsf_trace_level_t

◆ vsf_trace_vplt_t

typedef struct vsf_trace_vplt_t vsf_trace_vplt_t

Enumeration Type Documentation

◆ vsf_trace_level_t

Enumerator
VSF_TRACE_NONE 
VSF_TRACE_ERROR 
VSF_TRACE_WARNING 
VSF_TRACE_INFO 
VSF_TRACE_DEBUG 
VSF_TRACE_LEVEL_NUM 

Function Documentation

◆ __vsf_trace_init()

void __vsf_trace_init ( vsf_stream_t * stream)
extern

◆ vsf_trace_fini()

void vsf_trace_fini ( void )
extern

◆ __vsf_trace_buffer()

void __vsf_trace_buffer ( vsf_trace_level_t level,
void * buffer,
uint_fast16_t len,
uint_fast32_t flag )
extern

◆ vsf_trace_string()

void vsf_trace_string ( vsf_trace_level_t level,
const char * str )
extern

◆ vsf_trace_arg()

void vsf_trace_arg ( vsf_trace_level_t level,
const char * format,
va_list arg )
extern

◆ vsf_trace()

void vsf_trace ( vsf_trace_level_t level,
const char * format,
... )
extern

◆ __vsf_trace_output()

uint_fast32_t __vsf_trace_output ( const char * buff,
uint_fast32_t size )
extern

◆ vsf_trace_assert()

void vsf_trace_assert ( const char * expr,
const char * file,
int line,
const char * func )
extern

◆ vsf_trace_dump_stack()

void vsf_trace_dump_stack ( void )
extern

◆ vsf_bgtrace_clear()

void vsf_bgtrace_clear ( vsf_bgtrace_t * bgtrace)
extern

◆ vsf_bgtrace_total()

uint32_t vsf_bgtrace_total ( vsf_bgtrace_t * bgtrace)
extern

◆ vsf_bgtrace_append()

void vsf_bgtrace_append ( vsf_bgtrace_t * bgtrace,
void * element )
extern

◆ vsf_bgtrace_print()

void vsf_bgtrace_print ( vsf_bgtrace_t * bgtrace,
int cnt )
extern

Variable Documentation

◆ vsf_trace_vplt

Generated from commit: vsfteam/vsf@ceb53fd