4 * default parameters and program defines
12 #define NOT_SPECIFIED 0
14 #define DEFAULT_X_SEG 50
15 #define DEFAULT_Y_SEG 50
16 #define DEFAULT_Z_SEG 100
18 #define DEFAULT_SLOPE_NEL 1
19 #define DEFAULT_START_NEL 0
21 #define DEFAULT_A_P_RANGE 3
22 #define DEFAULT_A_P_FAKTOR 0.2
23 #define DEFAULT_A_P_P0 0.2
25 #define DEFAULT_C_DIST_START_CONC 0
26 #define DEFAULT_C_DIST_SLOPE 1
27 #define DEFAULT_C_C0 5000
29 #define DEFAULT_STEPS 5000
31 #define RAND_BUF_SIZE 1048576 /* 1 MB */
33 /* program defines, dont touch ;) */
35 #define URAND_MAX 0xffffffff
36 #define URAND_2BYTE_MAX 0xffff
38 typedef unsigned int u32;
39 typedef long long unsigned int u64;
41 typedef struct __cell {
42 unsigned char status; /* amorph or cryst status */
43 u32 conc; /* c concentration */
52 #define printfd(fmt,args...) if(DEBUG_IT) printf(fmt,##args);
55 typedef struct __display {
56 u32 max_x,max_y,max_z; /* dimensions */
57 cell *cell_p; /* pointer to cell data */
59 IDirectFB *dfb; /* pointer to dfb main construct */
60 IDirectFBSurface *primary_surface; /* pointer to dfb primary surface */
61 IDirectFBFont *font; /* the font */
62 IDirectFBInputDevice *keyboard; /* for keyboard input */
63 IDirectFBEventBuffer *keyboard_buffer; /* event buffer */
65 int screen_height,screen_width; /* screen dimensions */
68 #define DEFAULT_DISPLAY_REF_RATE 100
70 #define DISPLAY_X_FREE 15
71 #define DISPLAY_Y_FREE 15
73 #define DISPLAY_FONT "/usr/share/DFBSee/decker.ttf"
76 /* masks for u32 cell */
81 #define C_CONC_MASK 0xffffffff