#include "system/task_add.h" #include "system/data_channel.h" #include "system/float_word.h" int task_add_run( void * task ) { add_config * config = ( add_config * ) task; for ( uint32_t i = 0; i < DATA_CHANNEL_DEPTH; i++ ) { float a; float b; data_channel_read( config-> sources[ 0 ], (uint32_t * ) & a); data_channel_read( config-> sources[ 1 ], (uint32_t * ) & b); float_word c; c.value = a+b; data_channel_write( config->sink, c.word ); } return 0; }