blob: 08c806c3b5399f295633b143dea1b14f0478020b [file] [log] [blame] [edit]
/*
* Copyright 2017, Data61, CSIRO (ABN 41 687 119 230)
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#include <camkes.h>
#include <stdio.h>
#include <camkes/dataport.h>
#include "payload.h"
dataport_ptr_t a_calculate(dataport_ptr_t ptr)
{
struct payload *p1, *p2;
p1 = (struct payload *)dataport_unwrap_ptr(ptr);
p2 = (struct payload *)((void *)d + 2048);
const char *name = get_instance_name();
p2->result = 0;
for (int i = 0; i < p1->sz; i++) {
printf("%s: Adding %d\n", name, p1->operands[i]);
p2->result += p1->operands[i];
}
return dataport_wrap_ptr((void *)p2);
}