1 #ifndef __GNUC__ 2 #pragma once 3 #endif 4 #ifndef __XR_SCENE_SOUND_ENVS_H__ 5 #define __XR_SCENE_SOUND_ENVS_H__ 6 7 #include "xr_scene_shapes.h" 8 9 namespace xray_re { 10 11 // ESoundEnvironment 12 const uint16_t SOUNDENV_VERSION = 0x12; 13 14 enum { 15 SOUNDENV_CHUNK_VERSION = 0x1001, 16 SOUNDENV_CHUNK_ENV_REFS = 0x1003, 17 }; 18 19 class xr_sound_env_object: public xr_shape_object { 20 public: 21 xr_sound_env_object(xr_scene& scene); 22 virtual ~xr_sound_env_object(); 23 virtual void load(xr_reader& r); 24 virtual void save(xr_writer& w) const; 25 26 virtual void save_v12(xr_ini_writer* w) const; 27 28 std::string& inner(); 29 std::string& outer(); 30 31 private: 32 std::string m_inner; 33 std::string m_outer; 34 }; 35 inner()36inline std::string& xr_sound_env_object::inner() { return m_inner; } outer()37inline std::string& xr_sound_env_object::outer() { return m_outer; } 38 39 40 // ESceneSoundEnvTools 41 class xr_scene_sound_envs: public xr_scene_objects { 42 public: 43 xr_scene_sound_envs(xr_scene& scene); 44 virtual ~xr_scene_sound_envs(); 45 virtual void load(xr_reader& r); 46 virtual void save(xr_writer& w) const; 47 48 virtual void save_v12(xr_ini_writer* w) const; 49 }; 50 51 } // end of namespace xray_re 52 53 #endif 54