VSF Documented
Macros | Functions | Variables
vsf_queue.h File Reference
#include "utilities/ooc_class.h"

Go to the source code of this file.

Macros

#define __PLOOC_CLASS_USE_STRICT_TEMPLATE__
 
#define __declare_vsf_rng_buf(__name)
 
#define declare_vsf_rng_buf(__name)   __declare_vsf_rng_buf(__name)
 
#define NO_RNG_BUF_PROTECT(__CODE)   __CODE
 
#define no_rng_buf_protect(__code)   __code
 
#define __def_vsf_rng_buf(__name, __type)
 
#define def_vsf_rng_buf(__name, __type)    __def_vsf_rng_buf(__name, __type)
 
#define __implement_vsf_rng_buf(__name, __type, __queue_protect)
 
#define implement_vsf_rng_buf(__name, __type, __queue_protect)    __implement_vsf_rng_buf(__name, __type, __queue_protect)
 
#define __vsf_rng_buf_init(__name, __type, __qaddr, __item_count)
 
#define vsf_rng_buf_init(__name, __type, __qaddr, __item_count)    __vsf_rng_buf_init(__name, __type, (__qaddr), (__item_count))
 
#define __vsf_rng_buf_prepare(__name, __qaddr, __buffer, __size)
 
#define vsf_rng_buf_prepare(__name, __qaddr, __buffer, __size)    __vsf_rng_buf_prepare(__name, (__qaddr), (__buffer), (__size))
 
#define __vsf_rng_buf_send_1(__name, __qaddr, __item)    __name##_send_one((__qaddr), __item)
 
#define __vsf_rng_buf_send_2(__name, __qaddr, __buffer, __size)    __name##_send_multiple((__qaddr), (__buffer), (__size))
 
#define __vsf_rng_buf_get_1(__name, __qaddr, __item)    __name##_get_one((__qaddr), __item)
 
#define __vsf_rng_buf_get_2(__name, __qaddr, __buffer, __size)    __name##_get_multiple((__qaddr), (__buffer), (__size))
 
#define __vsf_rng_buf_peek_1(__name, __qaddr, __item)    __name##_peek_one((__qaddr), __item)
 
#define __vsf_rng_buf_peek_2(__name, __qaddr, __buffer, __size)    __name##_peek_multiple((__qaddr), (__buffer), (__size))
 
#define vsf_rng_buf_send_one(__name, __qaddr, __item)    __vsf_rng_buf_send_1(__name, (__qaddr), (__item))
 
#define vsf_rng_buf_send_buf(__name, __qaddr, __buffer, __size)    __vsf_rng_buf_send_2(__name, (__qaddr), (__buffer), (__size))
 
#define vsf_rng_buf_get_one(__name, __qaddr, __item)    __vsf_rng_buf_get_1(__name, (__qaddr), (__item))
 
#define vsf_rng_buf_get_buf(__name, __qaddr, __buffer, __size)    __vsf_rng_buf_get_2(__name, (__qaddr), (__buffer), (__size))
 
#define __vsf_rng_buf_count(__name, __qaddr)    __name##_item_count((__qaddr))
 
#define vsf_rng_buf_count(__name, __qaddr)    __vsf_rng_buf_count(__name, __qaddr)
 
#define ____vsf_rng_buf_reset_peek(__name, __qaddr)    __name##_reset_peek((__qaddr))
 
#define vsf_rng_buf_reset_peek(__name, __qaddr)    ____vsf_rng_buf_reset_peek(__name, __qaddr)
 
#define ____vsf_rng_buf_get_all_peeked(__name, __qaddr)    __name##_get_all_peeked((__qaddr))
 
#define vsf_rng_buf_get_all_peeked(__name, __qaddr)    ____vsf_rng_buf_get_all_peeked(__name, __qaddr)
 
#define __vsf_rng_buf_peekable_count(__name, __qaddr)    __name##_item_count_peekable((__qaddr))
 
#define vsf_rng_buf_peekable_count(__name, __qaddr)    __vsf_rng_buf_peekable_count(__name, __qaddr)
 

Functions

 declare_class (vsf_rng_buf_t) def_class(vsf_rng_buf_t
 
 end_def_class (vsf_rng_buf_t) extern void __vsf_rng_buf_init_ex(vsf_rng_buf_t *obj_ptr
 
int32_t __vsf_rng_buf_send_one (vsf_rng_buf_t *obj_ptr)
 
int32_t __vsf_rng_buf_get_one (vsf_rng_buf_t *obj_ptr)
 
int32_t __vsf_rng_buf_send_multiple (vsf_rng_buf_t *obj_ptr, uint16_t *item_cnt_ptr)
 
int32_t __vsf_rng_buf_get_multiple (vsf_rng_buf_t *obj_ptr, uint16_t *item_cnt_ptr)
 
uint_fast16_t __vsf_rng_buf_item_count (vsf_rng_buf_t *obj_ptr)
 
int32_t __vsf_rng_buf_peek_one (vsf_rng_buf_t *obj_ptr)
 
void __vsf_rng_buf_get_all_peeked (vsf_rng_buf_t *obj_ptr)
 
void __vsf_rng_buf_reset_peek (vsf_rng_buf_t *obj_ptr)
 
uint_fast16_t __vsf_rng_buf_item_count_peekable (vsf_rng_buf_t *obj_ptr)
 
int32_t __vsf_rng_buf_peek_multiple (vsf_rng_buf_t *obj_ptr, uint16_t *item_cnt_ptr)
 

Variables

uint16_t buffer_item_cnt
 
uint16_t tail
 
uint16_t length
 
uint16_t head
 
uint16_t peek_cnt
 
uint16_t peek
 
uint_fast16_t bool is_init_as_full
 

Macro Definition Documentation

◆ __PLOOC_CLASS_USE_STRICT_TEMPLATE__

#define __PLOOC_CLASS_USE_STRICT_TEMPLATE__

\NOTE: Make sure #include "utilities/ooc_class.h" is close to the class ! definition and there is NO ANY OTHER module-interface-header file ! included in this file

◆ __declare_vsf_rng_buf

#define __declare_vsf_rng_buf (   __name)
Value:
typedef struct __name __name; \
typedef struct __name##_cfg_t __name##_cfg_t;
#define __name
Definition hci_transport_aic8800.c:552

◆ declare_vsf_rng_buf

#define declare_vsf_rng_buf (   __name)    __declare_vsf_rng_buf(__name)

◆ NO_RNG_BUF_PROTECT

#define NO_RNG_BUF_PROTECT (   __CODE)    __CODE

◆ no_rng_buf_protect

#define no_rng_buf_protect (   __code)    __code

◆ __def_vsf_rng_buf

#define __def_vsf_rng_buf (   __name,
  __type 
)

◆ def_vsf_rng_buf

#define def_vsf_rng_buf (   __name,
  __type 
)     __def_vsf_rng_buf(__name, __type)

◆ __implement_vsf_rng_buf

#define __implement_vsf_rng_buf (   __name,
  __type,
  __queue_protect 
)

◆ implement_vsf_rng_buf

#define implement_vsf_rng_buf (   __name,
  __type,
  __queue_protect 
)     __implement_vsf_rng_buf(__name, __type, __queue_protect)

◆ __vsf_rng_buf_init

#define __vsf_rng_buf_init (   __name,
  __type,
  __qaddr,
  __item_count 
)
Value:
do { \
VSF_CAL_NO_INIT static uint16_t __buffer[(__item_count)]; \
__name##_cfg_t cfg = { \
__buffer, \
sizeof(__buffer), \
}; \
__name##_init((__qaddr), & cfg); \
} while(0)
void _init()
Definition init.c:12
unsigned short uint16_t
Definition stdint.h:7

◆ vsf_rng_buf_init

#define vsf_rng_buf_init (   __name,
  __type,
  __qaddr,
  __item_count 
)     __vsf_rng_buf_init(__name, __type, (__qaddr), (__item_count))

◆ __vsf_rng_buf_prepare

#define __vsf_rng_buf_prepare (   __name,
  __qaddr,
  __buffer,
  __size 
)
Value:
do { \
__name##_cfg_t cfg = {0}; \
cfg.buffer_ptr = (__buffer); \
cfg.size = (__size); \
__name##_init((__qaddr), & cfg); \
} while(0)

◆ vsf_rng_buf_prepare

#define vsf_rng_buf_prepare (   __name,
  __qaddr,
  __buffer,
  __size 
)     __vsf_rng_buf_prepare(__name, (__qaddr), (__buffer), (__size))

◆ __vsf_rng_buf_send_1

#define __vsf_rng_buf_send_1 (   __name,
  __qaddr,
  __item 
)     __name##_send_one((__qaddr), __item)

◆ __vsf_rng_buf_send_2

#define __vsf_rng_buf_send_2 (   __name,
  __qaddr,
  __buffer,
  __size 
)     __name##_send_multiple((__qaddr), (__buffer), (__size))

◆ __vsf_rng_buf_get_1

#define __vsf_rng_buf_get_1 (   __name,
  __qaddr,
  __item 
)     __name##_get_one((__qaddr), __item)

◆ __vsf_rng_buf_get_2

#define __vsf_rng_buf_get_2 (   __name,
  __qaddr,
  __buffer,
  __size 
)     __name##_get_multiple((__qaddr), (__buffer), (__size))

◆ __vsf_rng_buf_peek_1

#define __vsf_rng_buf_peek_1 (   __name,
  __qaddr,
  __item 
)     __name##_peek_one((__qaddr), __item)

◆ __vsf_rng_buf_peek_2

#define __vsf_rng_buf_peek_2 (   __name,
  __qaddr,
  __buffer,
  __size 
)     __name##_peek_multiple((__qaddr), (__buffer), (__size))

◆ vsf_rng_buf_send_one

#define vsf_rng_buf_send_one (   __name,
  __qaddr,
  __item 
)     __vsf_rng_buf_send_1(__name, (__qaddr), (__item))

◆ vsf_rng_buf_send_buf

#define vsf_rng_buf_send_buf (   __name,
  __qaddr,
  __buffer,
  __size 
)     __vsf_rng_buf_send_2(__name, (__qaddr), (__buffer), (__size))

◆ vsf_rng_buf_get_one

#define vsf_rng_buf_get_one (   __name,
  __qaddr,
  __item 
)     __vsf_rng_buf_get_1(__name, (__qaddr), (__item))

◆ vsf_rng_buf_get_buf

#define vsf_rng_buf_get_buf (   __name,
  __qaddr,
  __buffer,
  __size 
)     __vsf_rng_buf_get_2(__name, (__qaddr), (__buffer), (__size))

◆ __vsf_rng_buf_count

#define __vsf_rng_buf_count (   __name,
  __qaddr 
)     __name##_item_count((__qaddr))

◆ vsf_rng_buf_count

#define vsf_rng_buf_count (   __name,
  __qaddr 
)     __vsf_rng_buf_count(__name, __qaddr)

◆ ____vsf_rng_buf_reset_peek

#define ____vsf_rng_buf_reset_peek (   __name,
  __qaddr 
)     __name##_reset_peek((__qaddr))

◆ vsf_rng_buf_reset_peek

#define vsf_rng_buf_reset_peek (   __name,
  __qaddr 
)     ____vsf_rng_buf_reset_peek(__name, __qaddr)

◆ ____vsf_rng_buf_get_all_peeked

#define ____vsf_rng_buf_get_all_peeked (   __name,
  __qaddr 
)     __name##_get_all_peeked((__qaddr))

◆ vsf_rng_buf_get_all_peeked

#define vsf_rng_buf_get_all_peeked (   __name,
  __qaddr 
)     ____vsf_rng_buf_get_all_peeked(__name, __qaddr)

◆ __vsf_rng_buf_peekable_count

#define __vsf_rng_buf_peekable_count (   __name,
  __qaddr 
)     __name##_item_count_peekable((__qaddr))

◆ vsf_rng_buf_peekable_count

#define vsf_rng_buf_peekable_count (   __name,
  __qaddr 
)     __vsf_rng_buf_peekable_count(__name, __qaddr)

Function Documentation

◆ declare_class()

declare_class ( vsf_rng_buf_t  )

◆ end_def_class()

end_def_class ( vsf_rng_buf_t  )

◆ __vsf_rng_buf_send_one()

int32_t __vsf_rng_buf_send_one ( vsf_rng_buf_t *  obj_ptr)
extern

this queue is full

◆ __vsf_rng_buf_get_one()

int32_t __vsf_rng_buf_get_one ( vsf_rng_buf_t *  obj_ptr)
extern

this queue is empty

◆ __vsf_rng_buf_send_multiple()

int32_t __vsf_rng_buf_send_multiple ( vsf_rng_buf_t *  obj_ptr,
uint16_t item_cnt_ptr 
)
extern

this queue is full

< update actual written number

◆ __vsf_rng_buf_get_multiple()

int32_t __vsf_rng_buf_get_multiple ( vsf_rng_buf_t *  obj_ptr,
uint16_t item_cnt_ptr 
)
extern

this queue is empty

< update actual written number

◆ __vsf_rng_buf_item_count()

uint_fast16_t __vsf_rng_buf_item_count ( vsf_rng_buf_t *  obj_ptr)
extern

◆ __vsf_rng_buf_peek_one()

int32_t __vsf_rng_buf_peek_one ( vsf_rng_buf_t *  obj_ptr)
extern

all items have been peeked

◆ __vsf_rng_buf_get_all_peeked()

void __vsf_rng_buf_get_all_peeked ( vsf_rng_buf_t *  obj_ptr)
extern

◆ __vsf_rng_buf_reset_peek()

void __vsf_rng_buf_reset_peek ( vsf_rng_buf_t *  obj_ptr)
extern

◆ __vsf_rng_buf_item_count_peekable()

uint_fast16_t __vsf_rng_buf_item_count_peekable ( vsf_rng_buf_t *  obj_ptr)
extern

◆ __vsf_rng_buf_peek_multiple()

int32_t __vsf_rng_buf_peek_multiple ( vsf_rng_buf_t *  obj_ptr,
uint16_t item_cnt_ptr 
)
extern

this queue is empty

< update actual written number

Variable Documentation

◆ buffer_item_cnt

uint_fast16_t buffer_item_cnt

◆ tail

uint16_t tail

◆ length

uint16_t length

◆ head

uint16_t head

◆ peek_cnt

uint16_t peek_cnt

◆ peek

uint16_t peek

◆ is_init_as_full

uint_fast16_t bool is_init_as_full