1 #include "xr_level_fog_vol.h"
2 #include "xr_reader.h"
3 #include "xr_writer.h"
4 #include "xr_utils.h"
5 
6 using namespace xray_re;
7 
~xr_level_fog_vol()8 xr_level_fog_vol::~xr_level_fog_vol()
9 {
10 	delete_elements(m_fog_vols);
11 }
12 
operator ()read_fog_vol13 struct read_fog_vol { void operator()(fog_vol_data*& _fog_vol, xr_reader& r) const {
14 	fog_vol_data* fog_vol = new fog_vol_data;
15 	_fog_vol = fog_vol;
16 	r.r_s(fog_vol->ltx);
17 	r.r(fog_vol->xform);
18 	if ((fog_vol->num_particles = r.r_u32())) {
19 		fog_vol->particles = new fmatrix[fog_vol->num_particles];
20 		r.r_cseq(fog_vol->num_particles, fog_vol->particles);
21 	}
22 }};
23 
load(xr_reader & r)24 void xr_level_fog_vol::load(xr_reader& r)
25 {
26 	m_version = r.r_u16();
27 	xr_assert(m_version == FOG_VOL_VERSION_2 || m_version == FOG_VOL_VERSION_3);
28 	r.r_seq(r.r_u32(), m_fog_vols, read_fog_vol());
29 }
30 
save(xr_writer & w) const31 void xr_level_fog_vol::save(xr_writer& w) const
32 {
33 }
34