view example/ResizeWritebuf/spe/Resize.cc @ 1983:c3b4083c4467 draft

fix CudaScheduler
author Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
date Sat, 15 Mar 2014 17:46:13 +0900
parents de43f312b51f
children
line wrap: on
line source

#include <stdio.h>
#include "SchedTask.h"
#include "../Container.h"
#include "Resize.h"
#include "Func.h"

/* これは必須 */
SchedDefineTask1(Resize,resize);

static int
resize(SchedTask *smanager, void *rbuf, void *wbuf)
{
    long length = (long)smanager->get_param(0);

    smanager->set_outputSize(0, sizeof(Container)+sizeof(int)*(length-1));
    smanager->setup_outputData();

    ContainerPtr wcontainer = (ContainerPtr)smanager->get_output(wbuf, 0);
    
    for (int i =0; i < length;i++){
	wcontainer->data[i] = i;
    }

    wcontainer->length = length;
    return 0;
}