view Paper/src/context1.c @ 3:845b7c1fb066

fix
author mir3636
date Fri, 24 Nov 2017 21:23:05 +0900
parents e9b59ddf626d
children
line wrap: on
line source

enum Code {
    C_cs1,
    C_cs2,
};
enum DataType {
    D_Meta,
    D_TaskManager,
    ...
};
struct Context {
    enum Code next;
    struct Worker* worker;
    struct TaskManager* taskManager;
    int codeNum;
    __code (**code) (struct Context*);
    void* heapStart;
    void* heap;
    long heapLimit;
    int dataNum;
    int idgCount;
    int idg;
    int maxIdg;
    int odg;
    int maxOdg;
    int workerId;
    int gpu;
    struct Context* task;
    struct Queue* tasks;
    union Data **data;
};
union Data {
    struct Meta {
        enum DataType type;
        long size;
        struct Queue* wait;
    } meta;
    struct Task {
        enum Code code;
        struct Queue* dataGears;
        int idsCount;
    } Task;
    ...
};