Helixis 1.0
Task Programming API
Defines | Enumerations | Functions
includes/hlx/channels.h File Reference

Go to the source code of this file.

Defines

#define HLX_CHAN_WRITE(chan, value, type)   HLX_TASK_YIELD_UNTIL(__hlx_chan_write_##type(chan, (type)value) > 0);
#define HLX_CHAN_READ(chan, var_ptr, type)   HLX_TASK_YIELD_UNTIL(__hlx_chan_read_##type(chan, (type *)var_ptr) > 0);
#define HLX_CHAN_WRITE_PTR(chan, value)   HLX_TASK_YIELD_UNTIL(__hlx_chan_write_ptr(chan, (void *)value) > 0);
#define HLX_CHAN_READ_PTR(chan, var_ptr)   HLX_TASK_YIELD_UNTIL(__hlx_chan_read_ptr(chan, (void **)var_ptr) > 0);

Enumerations

enum  hlx_channel_errors {
  CHAN_ERROR_SUCCESS = 0, CHAN_ERROR_INTERNAL_ERROR = 1, CHAN_ERROR_MEMORY_EXHAUSTED = 2, CHAN_ERROR_ALREADY_EXISTS = 3,
  CHAN_ERROR_UNDEFINED = 4, CHAN_ERROR_NOT_EXISTS = 5
}

Functions

hlx_channel_errors hlx_chan_create (unsigned long id)
int __hlx_chan_write_int (unsigned long id, int value)
int __hlx_chan_read_int (unsigned long id, int *value)
int __hlx_chan_write_char (unsigned long id, char value)
int __hlx_chan_read_char (unsigned long id, char *value)
int __hlx_chan_write_short (unsigned long id, short value)
int __hlx_chan_read_short (unsigned long id, short *value)
int __hlx_chan_write_float (unsigned long id, float value)
int __hlx_chan_read_float (unsigned long id, float *value)
int __hlx_chan_write_ptr (unsigned long id, void *value)
int __hlx_chan_read_ptr (unsigned long id, void **value)

Define Documentation

#define HLX_CHAN_READ (   chan,
  var_ptr,
  type 
)    HLX_TASK_YIELD_UNTIL(__hlx_chan_read_##type(chan, (type *)var_ptr) > 0);

Definition at line 54 of file channels.h.

#define HLX_CHAN_READ_PTR (   chan,
  var_ptr 
)    HLX_TASK_YIELD_UNTIL(__hlx_chan_read_ptr(chan, (void **)var_ptr) > 0);

Definition at line 57 of file channels.h.

#define HLX_CHAN_WRITE (   chan,
  value,
  type 
)    HLX_TASK_YIELD_UNTIL(__hlx_chan_write_##type(chan, (type)value) > 0);

Definition at line 53 of file channels.h.

#define HLX_CHAN_WRITE_PTR (   chan,
  value 
)    HLX_TASK_YIELD_UNTIL(__hlx_chan_write_ptr(chan, (void *)value) > 0);

Definition at line 56 of file channels.h.


Enumeration Type Documentation

Enumerator:
CHAN_ERROR_SUCCESS 
CHAN_ERROR_INTERNAL_ERROR 
CHAN_ERROR_MEMORY_EXHAUSTED 
CHAN_ERROR_ALREADY_EXISTS 
CHAN_ERROR_UNDEFINED 
CHAN_ERROR_NOT_EXISTS 

Definition at line 39 of file channels.h.


Function Documentation

int __hlx_chan_read_char ( unsigned long  id,
char *  value 
)

Definition at line 75 of file parallel_channels.c.

{
int __hlx_chan_read_float ( unsigned long  id,
float *  value 
)

Definition at line 78 of file parallel_channels.c.

{
int __hlx_chan_read_int ( unsigned long  id,
int *  value 
)

Definition at line 72 of file parallel_channels.c.

{
int __hlx_chan_read_ptr ( unsigned long  id,
void **  value 
)

Definition at line 81 of file parallel_channels.c.

{
int __hlx_chan_read_short ( unsigned long  id,
short *  value 
)

Definition at line 69 of file parallel_channels.c.

{
int __hlx_chan_write_char ( unsigned long  id,
char  value 
)

Definition at line 74 of file parallel_channels.c.

{
int __hlx_chan_write_float ( unsigned long  id,
float  value 
)

Definition at line 77 of file parallel_channels.c.

{
int __hlx_chan_write_int ( unsigned long  id,
int  value 
)

Definition at line 71 of file parallel_channels.c.

{
int __hlx_chan_write_ptr ( unsigned long  id,
void *  value 
)

Definition at line 80 of file parallel_channels.c.

{
int __hlx_chan_write_short ( unsigned long  id,
short  value 
)

Definition at line 68 of file parallel_channels.c.

{
hlx_channel_errors hlx_chan_create ( unsigned long  id)
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines