summaryrefslogtreecommitdiff
path: root/src/simulation/Air.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/simulation/Air.h')
-rw-r--r--src/simulation/Air.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/src/simulation/Air.h b/src/simulation/Air.h
new file mode 100644
index 0000000..936f54b
--- /dev/null
+++ b/src/simulation/Air.h
@@ -0,0 +1,37 @@
+#ifndef AIR_H
+#define AIR_H
+#include "Config.h"
+
+class Simulation;
+
+class Air
+{
+public:
+ Simulation & sim;
+ int airMode;
+ //Arrays from the simulation
+ unsigned char (*bmap)[XRES/CELL];
+ unsigned char (*emap)[XRES/CELL];
+ float (*fvx)[XRES/CELL];
+ float (*fvy)[XRES/CELL];
+ //
+ float vx[YRES/CELL][XRES/CELL];
+ float ovx[YRES/CELL][XRES/CELL];
+ float vy[YRES/CELL][XRES/CELL];
+ float ovy[YRES/CELL][XRES/CELL];
+ float pv[YRES/CELL][XRES/CELL];
+ float opv[YRES/CELL][XRES/CELL];
+ float hv[YRES/CELL][XRES/CELL];
+ float ohv[YRES/CELL][XRES/CELL]; // Ambient Heat
+ unsigned char bmap_blockair[YRES/CELL][XRES/CELL];
+ unsigned char bmap_blockairh[YRES/CELL][XRES/CELL];
+ float kernel[9];
+ void make_kernel(void);
+ void update_airh(void);
+ void update_air(void);
+ void Clear();
+ void Invert();
+ Air(Simulation & sim);
+};
+
+#endif