new dfbapi
[physik/ising.git] / dfbapi.h
index 8dfd215..985d983 100644 (file)
--- a/dfbapi.h
+++ b/dfbapi.h
@@ -5,6 +5,9 @@
  *
  */
 
+#ifndef DFBAPI_H
+#define DFBAPI_H
+
 #include <directfb.h>
 
 /* two dimensional lattice */
@@ -22,6 +25,8 @@ typedef struct __d2_lattice
  int info_w,info_h;
  int font_h;
  unsigned char *status; /* status&1 -> red, else blue */
+ int *extra; /* store extra values */
+ void *v_ptr; /* void ptr, for any use */
  IDirectFB *dfb;
  IDirectFBSurface *p_surface;
  IDirectFBFont *font;
@@ -29,9 +34,34 @@ typedef struct __d2_lattice
  IDirectFBEventBuffer *k_buffer;
 } d2_lattice;
 
+typedef struct __d3_lattice
+{
+ int max_x,max_y,max_z;
+ int s_height,s_width;
+ int fakt_x,fakt_y;
+ int info_x,info_y;
+ int info_w,info_h;
+ int font_h;
+ unsigned char *status; /* status&1 -> red, else blue */
+ int *extra; /* store extra values */
+ void *v_ptr; /* void ptr, for any use */
+ IDirectFB *dfb;
+ IDirectFBSurface *p_surface;
+ IDirectFBFont *font;
+ IDirectFBInputDevice *keyboard;
+ IDirectFBEventBuffer *k_buffer;
+} d3_lattice;
+
 /* function prototypes */
 int d2_lattice_init(int *argc,char **argv,d2_lattice *d2_l,int x,int y);
 int d2_lattice_release(d2_lattice *d2_l);
-int d2_lattice_get_color(unsigned char *status,unsigned char *r,unsigned char *g,unsigned char *b);
 int d2_lattice_draw(d2_lattice *d2_l,int x,int y,int arg_c,char **arg_v);
+int d3_lattice_init(int *argc,char **argv,d3_lattice *d3_l,int x,int y,int z);
+int d3_lattice_release(d3_lattice *d3_l);
+int d3_lattice_draw(d3_lattice *d3_l,int x,int y,int z,int arg_c,char **arg_v);
+int d2_event_init(d2_lattice *d2_l);
+int d3_event_init(d3_lattice *d3_l);
+int scan_event(d3_lattice *d3_l,int *x,int *y,int *z,int *q,int *esc);
+int dx_lattice_get_color(unsigned char *status,unsigned char *r,unsigned char *g,unsigned char *b);
 
+#endif /* DFBAPI_H */