This repository has been archived on 2025-03-20. You can view files and clone it, but cannot push or open issues or pull requests.
The-Powder-Toy/src/simulation/Air.h
Tamás Bálint Misius 4f0c365e05
Preprocessor purge round 19: Split and minimize usage of Config.h
Also mostly banish it from other headers, and shuffle standard header includes to minimize cross-contamination between headers.
2023-01-27 09:27:32 +01:00

38 lines
814 B
C++

#pragma once
#include "SimulationConfig.h"
class Simulation;
class Air
{
public:
Simulation & sim;
int airMode;
float ambientAirTemp;
//Arrays from the simulation
unsigned char (*bmap)[XCELLS];
unsigned char (*emap)[XCELLS];
float (*fvx)[XCELLS];
float (*fvy)[XCELLS];
//
float vx[YCELLS][XCELLS];
float ovx[YCELLS][XCELLS];
float vy[YCELLS][XCELLS];
float ovy[YCELLS][XCELLS];
float pv[YCELLS][XCELLS];
float opv[YCELLS][XCELLS];
float hv[YCELLS][XCELLS];
float ohv[YCELLS][XCELLS]; // Ambient Heat
unsigned char bmap_blockair[YCELLS][XCELLS];
unsigned char bmap_blockairh[YCELLS][XCELLS];
float kernel[9];
void make_kernel(void);
void update_airh(void);
void update_air(void);
void Clear();
void ClearAirH();
void Invert();
void RecalculateBlockAirMaps();
Air(Simulation & sim);
};