8 #include "CityThemes.h"
9 #include "IAsyncTexture.h"
14 #define LOG_ENVIRONMENT_TEXTURES_DEBUG_MESSAGES
16 #if defined (LOG_ENVIRONMENT_TEXTURES_DEBUG_MESSAGES)
17 #define DEBUG_LOG Eegeo_TTY
19 #define DEBUG_LOG if (1) {} else Eegeo_TTY
30 typedef std::vector<IEnvironmentTexturesObserver*> TObservers;
32 typedef std::map<std::string, AsyncTexturing::IAsyncTexture*> TEnvironmentTextures;
33 typedef std::map<std::string, EnvironmentStateTextures*> TEnvironmentStates;
34 typedef std::map<std::string, AsyncTexturing::IAsyncTexture*> TEnvironmentAsyncTextures;
36 TEnvironmentAsyncTextures m_urlToEnvironmentAsyncTexture;
37 TEnvironmentStates m_currentEnvironmentStates;
38 TEnvironmentTextures m_urlToEnvironmentTexture;
39 TObservers m_observers;
44 bool HasEnvironmentTexture(
const std::string& textureUrl);
46 void ReleaseTexturesForAllStates();
47 void ReleaseTexturesForState(std::string& stateName);
48 void FreeUnusedTextures();
51 bool HasAsyncTexture(
const std::string& textureUrl);