view include/TaskManager/ListData.h @ 134:92fcce4330f3

CreateSpan で、三角形を二つに割る時、 元々x軸に水平な辺を持っていると、辺に対して half_triangle をかけてしまい 暴走するので、その応急処置。詳しくは CreateSpan::half_triangle
author gongo@gendarme.cr.ie.u-ryukyu.ac.jp
date Thu, 27 Nov 2008 16:10:55 +0900
parents 5c194c71eca8
children bcb81858aa62
line wrap: on
line source

#ifndef INCLUDED_LIST_DATA
#define INCLUDED_LIST_DATA

#ifndef INCLUDED_BASE_H_
#  include "base.h"
#endif

#define MAX_LIST_DMA_SIZE 8

class ListElement {
public:
    BASE_NEW_DELETE(ListElement);

    int size;
    unsigned int addr;
};

typedef ListElement* ListElementPtr;

class ListData {
public:
    BASE_NEW_DELETE(ListData);

    int length; // The number of data (4)
    int size;   // Total size of data (4)
    int a[2]; // for alignment
    int bound[MAX_LIST_DMA_SIZE]; // (4 * MAX_LIST_DMA_SIZE)
    ListElement element[MAX_LIST_DMA_SIZE]; // (8 * MAX_LIST_DMA_SIZE)

    void clear(void) {
	length = 0;
	size = 0;
    }
};

typedef ListData* ListDataPtr;

#endif