Singleton that handles the loading of textures. More...
#include <CCTextureCache.h>
Classes | |
struct | AsyncStruct |
Public Member Functions | |
TextureCache () | |
virtual | ~TextureCache () |
virtual std::string | getDescription () const |
Texture2D * | addImage (const std::string &filepath) |
Returns a Texture2D object given an filename. More... | |
local | addImage ( local filepath) |
Returns a Texture2D object given an filename. More... | |
virtual void | addImageAsync (const std::string &filepath, const std::function< void(Texture2D *)> &callback) |
Returns a Texture2D object given a file image. More... | |
local | addImageAsync ( local filepath, local callback) |
Returns a Texture2D object given a file image. More... | |
virtual void | unbindImageAsync (const std::string &filename) |
Unbind a specified bound image asynchronous callback. More... | |
var | unbindImageAsync ( var filename) |
Unbind a specified bound image asynchronous callback. More... | |
local | unbindImageAsync ( local filename) |
Unbind a specified bound image asynchronous callback. More... | |
virtual void | unbindAllImageAsync () |
Unbind all bound image asynchronous load callbacks. More... | |
Texture2D * | addImage (Image *image, const std::string &key) |
Returns a Texture2D object given an Image. More... | |
local | addImage ( local image, local key) |
Returns a Texture2D object given an Image. More... | |
Texture2D * | addUIImage (Image *image, const std::string &key) |
Texture2D * | getTextureForKey (const std::string &key) const |
Returns an already created texture. More... | |
local | getTextureForKey ( local key) |
Returns an already created texture. More... | |
Texture2D * | textureForKey (const std::string &key) const |
bool | reloadTexture (const std::string &fileName) |
Reload texture from the image file. More... | |
void | removeAllTextures () |
Purges the dictionary of loaded textures. More... | |
void | removeUnusedTextures () |
Removes unused textures. More... | |
void | removeTexture (Texture2D *texture) |
Deletes a texture from the cache given a texture. More... | |
void | removeTextureForKey (const std::string &key) |
Deletes a texture from the cache given a its key name. More... | |
var | removeTextureForKey ( var key) |
Deletes a texture from the cache given a its key name. More... | |
local | removeTextureForKey ( local key) |
Deletes a texture from the cache given a its key name. More... | |
std::string | getCachedTextureInfo () const |
Output to CCLOG the current contents of this TextureCache. More... | |
void | waitForQuit () |
Called by director, please do not called outside. More... | |
Public Member Functions inherited from Ref | |
void | retain () |
Retains the ownership. More... | |
void | release () |
Releases the ownership immediately. More... | |
Ref * | autorelease () |
Releases the ownership sometime soon automatically. More... | |
unsigned int | getReferenceCount () const |
Returns the Ref's current reference count. More... | |
virtual | ~Ref () |
Destructor. More... | |
Static Public Member Functions | |
static TextureCache * | getInstance () |
Returns the shared instance of the cache. More... | |
var | getInstance () |
Returns the shared instance of the cache. More... | |
static TextureCache * | sharedTextureCache () |
var | sharedTextureCache () |
local | sharedTextureCache () |
static void | destroyInstance () |
Purges the cache. More... | |
static void | purgeSharedTextureCache () |
local | purgeSharedTextureCache () |
static void | reloadAllTextures () |
Reload all textures. More... | |
Protected Attributes | |
std::thread * | _loadingThread |
std::queue< AsyncStruct * > * | _asyncStructQueue |
var | _asyncStructQueue |
local | _asyncStructQueue |
std::deque< ImageInfo * > * | _imageInfoQueue |
std::mutex | _asyncStructQueueMutex |
std::mutex | _imageInfoMutex |
std::mutex | _sleepMutex |
std::condition_variable | _sleepCondition |
var | _sleepCondition |
local | _sleepCondition |
bool | _needQuit |
int | _asyncRefCount |
std::unordered_map < std::string, Texture2D * > | _textures |
Protected Attributes inherited from Ref | |
unsigned int | _referenceCount |
count of references More... | |
local | _referenceCount |
count of references More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Ref | |
Ref () | |
Constructor. More... | |
Ref () | |
Constructor. More... | |
Singleton that handles the loading of textures.
Once the texture is loaded, the next time it will return. A reference of the previously loaded texture reducing GPU & CPU memory.
TextureCache | ( | ) |
var ctor | ( | ) |
local TextureCache | ( | ) |
|
virtual |
Texture2D* addImage | ( | const std::string & | filepath | ) |
Returns a Texture2D object given an filename.
If the filename was not previously loaded, it will create a new Texture2D. Object and it will return it. It will use the filename as a key. Otherwise it will return a reference of a previously loaded image. Supported image extensions: .png, .bmp, .tiff, .jpeg, .pvr.
filepath | A null terminated string. |
var addImage | ( | var | filepath | ) |
Returns a Texture2D object given an filename.
If the filename was not previously loaded, it will create a new Texture2D. Object and it will return it. It will use the filename as a key. Otherwise it will return a reference of a previously loaded image. Supported image extensions: .png, .bmp, .tiff, .jpeg, .pvr.
filepath | A null terminated string. |
local addImage | ( | local | filepath | ) |
Returns a Texture2D object given an filename.
If the filename was not previously loaded, it will create a new Texture2D. Object and it will return it. It will use the filename as a key. Otherwise it will return a reference of a previously loaded image. Supported image extensions: .png, .bmp, .tiff, .jpeg, .pvr.
filepath | A null terminated string. |
Texture2D* addImage | ( | Image * | image, |
const std::string & | key | ||
) |
Returns a Texture2D object given an Image.
If the image was not previously loaded, it will create a new Texture2D object and it will return it. Otherwise it will return a reference of a previously loaded image.
key | The "key" parameter will be used as the "key" for the cache. If "key" is nil, then a new texture will be created each time. |
var addImage | ( | var | image, |
var | key | ||
) |
Returns a Texture2D object given an Image.
If the image was not previously loaded, it will create a new Texture2D object and it will return it. Otherwise it will return a reference of a previously loaded image.
key | The "key" parameter will be used as the "key" for the cache. If "key" is nil, then a new texture will be created each time. |
local addImage | ( | local | image, |
local | key | ||
) |
Returns a Texture2D object given an Image.
If the image was not previously loaded, it will create a new Texture2D object and it will return it. Otherwise it will return a reference of a previously loaded image.
key | The "key" parameter will be used as the "key" for the cache. If "key" is nil, then a new texture will be created each time. |
|
virtual |
Returns a Texture2D object given a file image.
If the file image was not previously loaded, it will create a new Texture2D object and it will return it. Otherwise it will load a texture in a new thread, and when the image is loaded, the callback will be called with the Texture2D as a parameter. The callback will be called from the main thread, so it is safe to create any cocos2d object from the callback. Supported image extensions: .png, .jpg
filepath | A null terminated string. |
callback | A callback function would be inovked after the image is loaded. |
|
virtual |
Returns a Texture2D object given a file image.
If the file image was not previously loaded, it will create a new Texture2D object and it will return it. Otherwise it will load a texture in a new thread, and when the image is loaded, the callback will be called with the Texture2D as a parameter. The callback will be called from the main thread, so it is safe to create any cocos2d object from the callback. Supported image extensions: .png, .jpg
filepath | A null terminated string. |
callback | A callback function would be inovked after the image is loaded. |
|
virtual |
Returns a Texture2D object given a file image.
If the file image was not previously loaded, it will create a new Texture2D object and it will return it. Otherwise it will load a texture in a new thread, and when the image is loaded, the callback will be called with the Texture2D as a parameter. The callback will be called from the main thread, so it is safe to create any cocos2d object from the callback. Supported image extensions: .png, .jpg
filepath | A null terminated string. |
callback | A callback function would be inovked after the image is loaded. |
|
inline |
|
inline |
|
inline |
|
static |
Purges the cache.
It releases the retained instance.
|
static |
Purges the cache.
It releases the retained instance.
|
static |
Purges the cache.
It releases the retained instance.
std::string getCachedTextureInfo | ( | ) | const |
Output to CCLOG the current contents of this TextureCache.
This will attempt to calculate the size of each texture, and the total texture memory in use.
var getCachedTextureInfo | ( | ) |
Output to CCLOG the current contents of this TextureCache.
This will attempt to calculate the size of each texture, and the total texture memory in use.
local getCachedTextureInfo | ( | ) |
Output to CCLOG the current contents of this TextureCache.
This will attempt to calculate the size of each texture, and the total texture memory in use.
|
virtual |
|
static |
Returns the shared instance of the cache.
|
static |
Returns the shared instance of the cache.
|
static |
Returns the shared instance of the cache.
Texture2D* getTextureForKey | ( | const std::string & | key | ) | const |
Returns an already created texture.
Returns nil if the texture doesn't exist.
key | It's the related/absolute path of the file image. |
var getTextureForKey | ( | var | key | ) |
Returns an already created texture.
Returns nil if the texture doesn't exist.
key | It's the related/absolute path of the file image. |
local getTextureForKey | ( | local | key | ) |
Returns an already created texture.
Returns nil if the texture doesn't exist.
key | It's the related/absolute path of the file image. |
|
static |
|
static |
|
static |
|
static |
Reload all textures.
Should not call it, called by frame work. Now the function do nothing, use VolatileTextureMgr::reloadAllTextures.
|
static |
Reload all textures.
Should not call it, called by frame work. Now the function do nothing, use VolatileTextureMgr::reloadAllTextures.
|
static |
Reload all textures.
Should not call it, called by frame work. Now the function do nothing, use VolatileTextureMgr::reloadAllTextures.
bool reloadTexture | ( | const std::string & | fileName | ) |
Reload texture from the image file.
If the file image hasn't loaded before, load it. Otherwise the texture will be reloaded from the file image.
fileName | It's the related/absolute path of the file image. |
var reloadTexture | ( | var | fileName | ) |
Reload texture from the image file.
If the file image hasn't loaded before, load it. Otherwise the texture will be reloaded from the file image.
fileName | It's the related/absolute path of the file image. |
local reloadTexture | ( | local | fileName | ) |
Reload texture from the image file.
If the file image hasn't loaded before, load it. Otherwise the texture will be reloaded from the file image.
fileName | It's the related/absolute path of the file image. |
void removeAllTextures | ( | ) |
Purges the dictionary of loaded textures.
Call this method if you receive the "Memory Warning". In the short term: it will free some resources preventing your app from being killed. In the medium term: it will allocate more resources. In the long term: it will be the same.
var removeAllTextures | ( | ) |
Purges the dictionary of loaded textures.
Call this method if you receive the "Memory Warning". In the short term: it will free some resources preventing your app from being killed. In the medium term: it will allocate more resources. In the long term: it will be the same.
local removeAllTextures | ( | ) |
Purges the dictionary of loaded textures.
Call this method if you receive the "Memory Warning". In the short term: it will free some resources preventing your app from being killed. In the medium term: it will allocate more resources. In the long term: it will be the same.
void removeTexture | ( | Texture2D * | texture | ) |
Deletes a texture from the cache given a texture.
var removeTexture | ( | var | texture | ) |
Deletes a texture from the cache given a texture.
local removeTexture | ( | local | texture | ) |
Deletes a texture from the cache given a texture.
void removeTextureForKey | ( | const std::string & | key | ) |
Deletes a texture from the cache given a its key name.
key | It's the related/absolute path of the file image. |
var removeTextureForKey | ( | var | key | ) |
Deletes a texture from the cache given a its key name.
key | It's the related/absolute path of the file image. |
local removeTextureForKey | ( | local | key | ) |
Deletes a texture from the cache given a its key name.
key | It's the related/absolute path of the file image. |
void removeUnusedTextures | ( | ) |
Removes unused textures.
Textures that have a retain count of 1 will be deleted. It is convenient to call this method after when starting a new Scene.
var removeUnusedTextures | ( | ) |
Removes unused textures.
Textures that have a retain count of 1 will be deleted. It is convenient to call this method after when starting a new Scene.
local removeUnusedTextures | ( | ) |
Removes unused textures.
Textures that have a retain count of 1 will be deleted. It is convenient to call this method after when starting a new Scene.
|
static |
|
static |
|
static |
|
inline |
|
inline |
|
inline |
|
virtual |
Unbind all bound image asynchronous load callbacks.
|
virtual |
Unbind all bound image asynchronous load callbacks.
|
virtual |
Unbind all bound image asynchronous load callbacks.
|
virtual |
Unbind a specified bound image asynchronous callback.
In the case an object who was bound to an image asynchronous callback was destroyed before the callback is invoked, the object always need to unbind this callback manually.
filename | It's the related/absolute path of the file image. |
|
virtual |
Unbind a specified bound image asynchronous callback.
In the case an object who was bound to an image asynchronous callback was destroyed before the callback is invoked, the object always need to unbind this callback manually.
filename | It's the related/absolute path of the file image. |
|
virtual |
Unbind a specified bound image asynchronous callback.
In the case an object who was bound to an image asynchronous callback was destroyed before the callback is invoked, the object always need to unbind this callback manually.
filename | It's the related/absolute path of the file image. |
void waitForQuit | ( | ) |
Called by director, please do not called outside.
var waitForQuit | ( | ) |
Called by director, please do not called outside.
local waitForQuit | ( | ) |
Called by director, please do not called outside.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |