00001 #ifndef _CELLSPACE_H_NOU_
00002 #define _CELLSPACE_H_NOU_
00003
00004 #include <CL/cl.h>
00005 #include <iostream>
00006
00007 using namespace std;
00008
00009 class Model;
00010
00011 class CellSpace
00012 {
00013 private:
00014 cl_mem space;
00015 int width,height;
00016 int which;
00017 Model *parent;
00018 public:
00019 CellSpace(Model *parent, int w, int h);
00020 ~CellSpace();
00021 void run(int iteration = 1);
00022 Model* getParent(){ return parent; }
00023 cl_mem* getSpace(){ return &space; }
00024 int getWidth(){ return width; }
00025 int getHeight(){ return height; }
00026 unsigned char* renderToTexture();
00027 protected:
00028 };
00029
00030 #endif // _CELLSPACE_H_NOU_