Otclient
14/8/2020
texturemanager.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2010-2020 OTClient <https://github.com/edubart/otclient>
3
*
4
* Permission is hereby granted, free of charge, to any person obtaining a copy
5
* of this software and associated documentation files (the "Software"), to deal
6
* in the Software without restriction, including without limitation the rights
7
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
* copies of the Software, and to permit persons to whom the Software is
9
* furnished to do so, subject to the following conditions:
10
*
11
* The above copyright notice and this permission notice shall be included in
12
* all copies or substantial portions of the Software.
13
*
14
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20
* THE SOFTWARE.
21
*/
22
23
#ifndef TEXTUREMANAGER_H
24
#define TEXTUREMANAGER_H
25
26
#include "
texture.h
"
27
#include <
framework/core/declarations.h
>
28
29
class
TextureManager
30
{
31
public
:
32
void
init
();
33
void
terminate
();
34
void
poll
();
35
36
void
clearCache
();
37
void
liveReload
();
38
39
void
preload
(
const
std::string& fileName) {
getTexture
(fileName); }
40
TexturePtr
getTexture
(
const
std::string& fileName);
41
const
TexturePtr
&
getEmptyTexture
() {
return
m_emptyTexture; }
42
43
private
:
44
TexturePtr
loadTexture(std::stringstream& file);
45
46
std::unordered_map<std::string, TexturePtr> m_textures;
47
std::vector<AnimatedTexturePtr> m_animatedTextures;
48
TexturePtr
m_emptyTexture;
49
ScheduledEventPtr
m_liveReloadEvent;
50
};
51
52
extern
TextureManager
g_textures
;
53
54
#endif
TextureManager::init
void init()
Definition:
texturemanager.cpp:35
TextureManager::getEmptyTexture
const TexturePtr & getEmptyTexture()
Definition:
texturemanager.h:41
g_textures
TextureManager g_textures
Definition:
texturemanager.cpp:33
declarations.h
TextureManager::clearCache
void clearCache()
Definition:
texturemanager.cpp:64
TextureManager::preload
void preload(const std::string &fileName)
Definition:
texturemanager.h:39
TextureManager::getTexture
TexturePtr getTexture(const std::string &fileName)
Definition:
texturemanager.cpp:90
TextureManager
Definition:
texturemanager.h:29
texture.h
stdext::shared_object_ptr< Texture >
TextureManager::liveReload
void liveReload()
Definition:
texturemanager.cpp:70
TextureManager::poll
void poll()
Definition:
texturemanager.cpp:51
TextureManager::terminate
void terminate()
Definition:
texturemanager.cpp:40
src
framework
graphics
texturemanager.h
Generated by
1.8.17
For more information visit
https://forum.opentibia.dev/