diff options
| author | jacksonmj <mj-pt@jacksonmj.co.uk> | 2011-12-10 15:23:33 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2011-12-18 14:04:47 (GMT) |
| commit | 934d1da66eb5aec49769feaf00d0949f805fd3d5 (patch) | |
| tree | 28ee674d06060d9940e1c235d2dba39f8a5c74f5 /includes/gravity.h | |
| parent | 20dd54f36e971e9b9f8762309caa49ed07bea031 (diff) | |
| download | powder-934d1da66eb5aec49769feaf00d0949f805fd3d5.zip powder-934d1da66eb5aec49769feaf00d0949f805fd3d5.tar.gz | |
Move Newtonian gravity into a new file
Diffstat (limited to 'includes/gravity.h')
| -rw-r--r-- | includes/gravity.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/includes/gravity.h b/includes/gravity.h new file mode 100644 index 0000000..05e244c --- /dev/null +++ b/includes/gravity.h @@ -0,0 +1,44 @@ +#ifndef GRAVITY_H +#define GRAVITY_H + +#include "defines.h" + +extern int ngrav_enable; //Newtonian gravity +extern int gravwl_timeout; +extern int gravityMode; + +extern float gravmap[YRES/CELL][XRES/CELL]; //Maps to be used by the main thread +extern float gravx[YRES/CELL][XRES/CELL]; +extern float gravy[YRES/CELL][XRES/CELL]; +extern float gravp[YRES/CELL][XRES/CELL]; +extern float *gravpf; +extern float *gravxf; +extern float *gravyf; +extern unsigned gravmask[YRES/CELL][XRES/CELL]; + +extern float th_ogravmap[YRES/CELL][XRES/CELL]; // Maps to be processed by the gravity thread +extern float th_gravmap[YRES/CELL][XRES/CELL]; +extern float th_gravx[YRES/CELL][XRES/CELL]; +extern float th_gravy[YRES/CELL][XRES/CELL]; +extern float *th_gravpf; +extern float *th_gravxf; +extern float *th_gravyf; +extern float th_gravp[YRES/CELL][XRES/CELL]; + +void gravity_init(); +void gravity_cleanup(); +void gravity_update_async(); + +void start_grav_async(); +void stop_grav_async(); +void update_grav(); +void gravity_mask(); + +void bilinear_interpolation(float *src, float *dst, int sw, int sh, int rw, int rh); + +#ifdef GRAVFFT +void grav_fft_init(); +void grav_fft_cleanup(); +#endif + +#endif |
