Merge branch 'develop' of https://github.com/cocos2d/cocos2d-x into iss2770_fix_warnings

This commit is contained in:
boyu0 2013-11-12 10:07:26 +08:00
commit dbafd9af2b
138 changed files with 2610 additions and 4789 deletions

View File

@ -643,6 +643,12 @@ Developers:
Fixed a bug that EventListeners can't be removed sometimes.
Fixed a bug that the data size has to be specified when parsing XML using TinyXML.
Luis Parravicini (luisparravicini)
Fixed typos in create_project.py.
xhcnb
Device::setAccelerometerEnabled needs to be invoked before adding ACC listener.
Retired Core Developers:
WenSheng Yang
Author of windows port, CCTextField,

View File

@ -19,6 +19,7 @@ cocos2d-x-3.0alpha1 @??? 2013
[NEW] Point: Adds ANCHOR_XXX constants like ANCHOR_MIDDLE, ANCHOR_TOP_RIGHT, etc.
[NEW] Sprite: Override setScale(float scaleX, float scaleY)
[NEW] External: added | operator for Control::EventType
[NEW] Android & iOS screen size change support
[Android]
[FIX] Added EGL_RENDERABLE_TYPE to OpenGL attributes
[FIX] Fixed application will crash when pause and resume.

View File

@ -97,11 +97,15 @@ $ open samples.xcodeproj
* For Linux
```
$ cd cocos2d-x
$ cmake CMakeLists.txt
$ cd cocos2d-x/build
$ ./install-deps-linux.sh
$ cmake ..
$ make
```
You may meet building errors when building libGLFW.so. It is because libGL.so directs to an error target, you should make it to direct to a correct one.
`install-deps-linux.sh` only has to be run onece.
* For Windows
Open the `cocos2d-x/build/cocos2d-win32.vc2012.sln`

View File

@ -1,91 +0,0 @@
PLATFORM ?= linux
all:
chipmunk:
$(MAKE) -C ../external/chipmunk/proj.$(PLATFORM)
chipmunk-clean:
$(MAKE) -C ../external/chipmunk/proj.$(PLATFORM) clean
box2d:
$(MAKE) -C ../external/Box2D/proj.$(PLATFORM)
box2d-clean:
$(MAKE) -C ../external/Box2D/proj.$(PLATFORM) clean
cocos2dx: chipmunk
$(MAKE) -C ../cocos/2d
cocos2dx-clean:
$(MAKE) -C ../cocos/2d clean
audio: cocos2dx
$(MAKE) -C ../cocos/audio/proj.$(PLATFORM)
audio-clean:
$(MAKE) -C ../cocos/audio/proj.$(PLATFORM) clean
gui:
$(MAKE) -C ../cocos/gui
gui-clean:
$(MAKE) -C ../cocos/gui clean
network: cocos2dx
$(MAKE) -C ../cocos/network
network-clean:
$(MAKE) -C ../cocos/network clean
cocosbuilder:
$(MAKE) -C ../cocos/editor-support/cocosbuilder
cocosbuilder-clean:
$(MAKE) -C ../cocos/editor-support/cocosbuilder clean
spine:
$(MAKE) -C ../cocos/editor-support/spine
spine-clean:
$(MAKE) -C ../cocos/editor-support/spine clean
cocostudio:
$(MAKE) -C ../cocos/editor-support/cocostudio
cocostudio-clean:
$(MAKE) -C ../cocos/editor-support/cocostudio clean
extensions: chipmunk audio box2d
$(MAKE) -C ../extensions/proj.$(PLATFORM)
extensions-clean:
$(MAKE) -C ../extensions/proj.$(PLATFORM) clean
lua: extensions cocosbuilder cocostudio
$(MAKE) -C ../cocos/scripting/lua/bindings
lua-clean:
$(MAKE) -C ../cocos/scripting/lua/bindings clean
hellocpp: cocos2dx
$(MAKE) -C ../samples/Cpp/HelloCpp/proj.$(PLATFORM)
hellocpp-clean:
$(MAKE) -C ../samples/Cpp/HelloCpp/proj.$(PLATFORM) clean
testcpp: cocos2dx audio extensions cocostudio gui cocosbuilder spine network
$(MAKE) -C ../samples/Cpp/TestCpp/proj.$(PLATFORM)
testcpp-clean:
$(MAKE) -C ../samples/Cpp/TestCpp/proj.$(PLATFORM) clean
simplegame: cocos2dx audio
$(MAKE) -C ../samples/Cpp/SimpleGame/proj.$(PLATFORM)
simplegame-clean:
$(MAKE) -C ../samples/Cpp/SimpleGame/proj.$(PLATFORM) clean
all: chipmunk audio extensions cocos2dx lua hellocpp testcpp simplegame
clean: cocos2dx-clean box2d-clean chipmunk-clean audio-clean extensions-clean lua-clean hellocpp-clean testcpp-clean simplegame-clean
hellolua: cocos2dx lua
$(MAKE) -C ../samples/Lua/HelloLua/proj.$(PLATFORM)
hellolua-clean:
$(MAKE) -C ../samples/Lua/HelloLua/proj.$(PLATFORM) clean
testlua: cocos2dx lua
$(MAKE) -C ../samples/Lua/TestLua/proj.$(PLATFORM)
testlua-clean:
$(MAKE) -C ../samples/Lua/TestLua/proj.$(PLATFORM) clean
all: hellolua testlua
clean: hellolua-clean testlua-clean
.PHONY: all clean

View File

@ -95,7 +95,8 @@ def do_build(cocos_root, ndk_root, app_android_root, ndk_build_param):
command = '%s -C %s %s' % (ndk_path, app_android_root, ndk_module_path)
else:
command = '%s -C %s %s %s' % (ndk_path, app_android_root, ndk_build_param, ndk_module_path)
os.system(command)
if os.system(command) != 0:
raise Exception("Build project [ " + app_android_root + " ] fails!")
def copy_files(src, dst):
@ -205,4 +206,8 @@ if __name__ == '__main__':
if len(args) == 0:
usage()
else:
build_samples(args, opts.ndk_build_param)
try:
build_samples(args, opts.ndk_build_param)
except Exception as e:
print e
sys.exit(1)

View File

@ -1 +1 @@
30ca6c02884f9bc20405b3e657b444c0153bead7
a70914e0a87ee8ced4d662bd6038fc955e77f6ca

View File

@ -1,24 +0,0 @@
#!/bin/bash
# This script will perform a clean linux build of all targets in both
# debug and release configurations. It will also ensure that all the required
# packages are installed. For day-to-day work on the linux port it is
# faster/better to simply use 'make' either at the top level or in the subpject
# you are working on.
# Exit of first error.
set -e
# Change directory to the location of this script
cd $(dirname ${BASH_SOURCE[0]})
[ -z "$COCOS2DX_USEAPT" ] && COCOS2DX_USEAPT=true
if $COCOS2DX_USEAPT; then
./install-deps-linux.sh
fi
mkdir -p linux-build
cd linux-build
cmake ../..
make -j10

View File

@ -203,7 +203,7 @@ Sequence* Sequence::create(Array* arrayOfActions)
Sequence* pRet = NULL;
do
{
unsigned int count = arrayOfActions->count();
long count = arrayOfActions->count();
CC_BREAK_IF(count == 0);
FiniteTimeAction* prev = static_cast<FiniteTimeAction*>(arrayOfActions->getObjectAtIndex(0));
@ -576,7 +576,7 @@ Spawn* Spawn::create(Array *arrayOfActions)
Spawn* pRet = NULL;
do
{
unsigned int count = arrayOfActions->count();
long count = arrayOfActions->count();
CC_BREAK_IF(count == 0);
FiniteTimeAction* prev = static_cast<FiniteTimeAction*>(arrayOfActions->getObjectAtIndex(0));
if (count > 1)
@ -2100,7 +2100,7 @@ void Animate::update(float t)
}
Array* frames = _animation->getFrames();
int numberOfFrames = frames->count();
long numberOfFrames = frames->count();
SpriteFrame *frameToDisplay = NULL;
for( int i=_nextFrame; i < numberOfFrames; i++ ) {

View File

@ -123,7 +123,7 @@ void ActionManager::removeActionAtIndex(long index, tHashElement *element)
void ActionManager::pauseTarget(Object *target)
{
tHashElement *element = NULL;
HASH_FIND_INT(_targets, &target, element);
HASH_FIND_PTR(_targets, &target, element);
if (element)
{
element->paused = true;
@ -133,7 +133,7 @@ void ActionManager::pauseTarget(Object *target)
void ActionManager::resumeTarget(Object *target)
{
tHashElement *element = NULL;
HASH_FIND_INT(_targets, &target, element);
HASH_FIND_PTR(_targets, &target, element);
if (element)
{
element->paused = false;
@ -176,14 +176,14 @@ void ActionManager::addAction(Action *action, Node *target, bool paused)
tHashElement *element = NULL;
// we should convert it to Object*, because we save it as Object*
Object *tmp = target;
HASH_FIND_INT(_targets, &tmp, element);
HASH_FIND_PTR(_targets, &tmp, element);
if (! element)
{
element = (tHashElement*)calloc(sizeof(*element), 1);
element->paused = paused;
target->retain();
element->target = target;
HASH_ADD_INT(_targets, target, element);
HASH_ADD_PTR(_targets, target, element);
}
actionAllocWithHashElement(element);
@ -215,7 +215,7 @@ void ActionManager::removeAllActionsFromTarget(Object *target)
}
tHashElement *element = NULL;
HASH_FIND_INT(_targets, &target, element);
HASH_FIND_PTR(_targets, &target, element);
if (element)
{
if (ccArrayContainsObject(element->actions, element->currentAction) && (! element->currentActionSalvaged))
@ -250,7 +250,7 @@ void ActionManager::removeAction(Action *action)
tHashElement *element = NULL;
Object *target = action->getOriginalTarget();
HASH_FIND_INT(_targets, &target, element);
HASH_FIND_PTR(_targets, &target, element);
if (element)
{
long i = ccArrayGetIndexOfObject(element->actions, action);
@ -271,7 +271,7 @@ void ActionManager::removeActionByTag(int tag, Object *target)
CCASSERT(target != NULL, "");
tHashElement *element = NULL;
HASH_FIND_INT(_targets, &target, element);
HASH_FIND_PTR(_targets, &target, element);
if (element)
{
@ -298,7 +298,7 @@ Action* ActionManager::getActionByTag(int tag, const Object *target) const
CCASSERT(tag != Action::INVALID_TAG, "");
tHashElement *element = NULL;
HASH_FIND_INT(_targets, &target, element);
HASH_FIND_PTR(_targets, &target, element);
if (element)
{
@ -327,10 +327,10 @@ Action* ActionManager::getActionByTag(int tag, const Object *target) const
// XXX: Passing "const O *" instead of "const O&" because HASH_FIND_IT requries the address of a pointer
// and, it is not possible to get the address of a reference
unsigned int ActionManager::getNumberOfRunningActionsInTarget(const Object *target) const
long ActionManager::getNumberOfRunningActionsInTarget(const Object *target) const
{
tHashElement *element = NULL;
HASH_FIND_INT(_targets, &target, element);
HASH_FIND_PTR(_targets, &target, element);
if (element)
{
return element->actions ? element->actions->num : 0;

View File

@ -102,7 +102,7 @@ public:
* - If you are running 1 Sequence of 7 actions, it will return 1.
* - If you are running 7 Sequences of 2 actions, it will return 7.
*/
unsigned int getNumberOfRunningActionsInTarget(const Object *target) const;
long getNumberOfRunningActionsInTarget(const Object *target) const;
/** @deprecated use getNumberOfRunningActionsInTarget() instead */
CC_DEPRECATED_ATTRIBUTE inline unsigned int numberOfRunningActionsInTarget(Object *target) const { return getNumberOfRunningActionsInTarget(target); }

View File

@ -28,6 +28,7 @@ THE SOFTWARE.
#include "CCTexture2D.h"
#include "ccMacros.h"
#include "CCSpriteFrame.h"
#include "CCDirector.h"
NS_CC_BEGIN
@ -176,7 +177,7 @@ void Animation::addSpriteFrame(SpriteFrame *pFrame)
void Animation::addSpriteFrameWithFile(const char *filename)
{
Texture2D *texture = TextureCache::getInstance()->addImage(filename);
Texture2D *texture = Director::getInstance()->getTextureCache()->addImage(filename);
Rect rect = Rect::ZERO;
rect.size = texture->getContentSize();
SpriteFrame *pFrame = SpriteFrame::createWithTexture(texture, rect);

View File

@ -76,7 +76,7 @@ AtlasNode * AtlasNode::create(const std::string& tile, long tileWidth, long tile
bool AtlasNode::initWithTileFile(const std::string& tile, long tileWidth, long tileHeight, long itemsToRender)
{
CCASSERT(tile.size() > 0, "file size should not be empty");
Texture2D *texture = TextureCache::getInstance()->addImage(tile);
Texture2D *texture = Director::getInstance()->getTextureCache()->addImage(tile);
return initWithTexture(texture, tileWidth, tileHeight, itemsToRender);
}
@ -245,12 +245,12 @@ TextureAtlas * AtlasNode::getTextureAtlas() const
return _textureAtlas;
}
unsigned int AtlasNode::getQuadsToDraw() const
long AtlasNode::getQuadsToDraw() const
{
return _quadsToDraw;
}
void AtlasNode::setQuadsToDraw(unsigned int uQuadsToDraw)
void AtlasNode::setQuadsToDraw(long uQuadsToDraw)
{
_quadsToDraw = uQuadsToDraw;
}

View File

@ -77,8 +77,8 @@ public:
void setTextureAtlas(TextureAtlas* textureAtlas);
TextureAtlas* getTextureAtlas() const;
void setQuadsToDraw(unsigned int quadsToDraw);
unsigned int getQuadsToDraw() const;
void setQuadsToDraw(long quadsToDraw);
long getQuadsToDraw() const;
// Overrides

View File

@ -145,6 +145,8 @@ bool Director::init(void)
_scheduler->scheduleUpdateForTarget(_actionManager, Scheduler::PRIORITY_SYSTEM, false);
_eventDispatcher = new EventDispatcher();
//init TextureCache
initTextureCache();
// create autorelease pool
PoolManager::sharedPoolManager()->push();
@ -359,6 +361,29 @@ void Director::setOpenGLView(EGLView *pobOpenGLView)
}
}
TextureCache* Director::getTextureCache() const
{
return _textureCache;
}
void Director::initTextureCache()
{
#ifdef EMSCRIPTEN
_textureCache = new TextureCacheEmscripten();
#else
_textureCache = new TextureCache();
#endif // EMSCRIPTEN
}
void Director::destroyTextureCache()
{
if (_textureCache)
{
_textureCache->waitForQuit();
CC_SAFE_RELEASE_NULL(_textureCache);
}
}
void Director::setViewport()
{
if (_openGLView)
@ -437,7 +462,7 @@ void Director::purgeCachedData(void)
if (s_SharedDirector->getOpenGLView())
{
SpriteFrameCache::getInstance()->removeUnusedSpriteFrames();
TextureCache::getInstance()->removeUnusedTextures();
_textureCache->removeUnusedTextures();
}
FileUtils::getInstance()->purgeCachedEntries();
}
@ -693,7 +718,6 @@ void Director::purgeDirector()
DrawPrimitives::free();
AnimationCache::destroyInstance();
SpriteFrameCache::destroyInstance();
TextureCache::destroyInstance();
ShaderCache::destroyInstance();
FileUtils::destroyInstance();
Configuration::destroyInstance();
@ -704,6 +728,8 @@ void Director::purgeDirector()
GL::invalidateStateCache();
destroyTextureCache();
CHECK_GL_ERROR_DEBUG();
// OpenGL view
@ -841,14 +867,13 @@ void Director::getFPSImageData(unsigned char** datapointer, long* length)
void Director::createStatsLabel()
{
Texture2D *texture = nullptr;
TextureCache *textureCache = TextureCache::getInstance();
if (_FPSLabel && _SPFLabel)
{
CC_SAFE_RELEASE_NULL(_FPSLabel);
CC_SAFE_RELEASE_NULL(_SPFLabel);
CC_SAFE_RELEASE_NULL(_drawsLabel);
textureCache->removeTextureForKey("/cc_fps_images");
_textureCache->removeTextureForKey("/cc_fps_images");
FileUtils::getInstance()->purgeCachedEntries();
}
@ -865,7 +890,7 @@ void Director::createStatsLabel()
return;
}
texture = textureCache->addImage(image, "/cc_fps_images");
texture = _textureCache->addImage(image, "/cc_fps_images");
CC_SAFE_RELEASE(image);
/*

View File

@ -54,6 +54,7 @@ class Node;
class Scheduler;
class ActionManager;
class EventDispatcher;
class TextureCache;
/**
@brief Class that creates and handles the main Window and manages how
@ -137,6 +138,8 @@ public:
inline EGLView* getOpenGLView() { return _openGLView; }
void setOpenGLView(EGLView *pobOpenGLView);
TextureCache* getTextureCache() const;
inline bool isNextDeltaTimeZero() { return _nextDeltaTimeZero; }
void setNextDeltaTimeZero(bool nextDeltaTimeZero);
@ -381,6 +384,10 @@ protected:
/** calculates delta time since last time it was called */
void calculateDeltaTime();
//textureCache creation or release
void initTextureCache();
void destroyTextureCache();
protected:
/** Scheduler associated with this director
@since v2.0
@ -403,6 +410,9 @@ protected:
/* The EGLView, where everything is rendered */
EGLView *_openGLView;
//texture cache belongs to this director
TextureCache *_textureCache;
double _animationInterval;
double _oldAnimationInterval;

View File

@ -75,10 +75,9 @@ EventListenerTouchOneByOne* EventListenerTouchOneByOne::create()
bool EventListenerTouchOneByOne::checkAvailable()
{
if (onTouchBegan == nullptr && onTouchMoved == nullptr
&& onTouchEnded == nullptr && onTouchCancelled == nullptr)
if (onTouchBegan == nullptr)
{
CCASSERT(false, "Invalid TouchEventListener.");
CCASSERT(false, "Invalid EventListenerTouchOneByOne!");
return false;
}
@ -150,7 +149,7 @@ bool EventListenerTouchAllAtOnce::checkAvailable()
if (onTouchesBegan == nullptr && onTouchesMoved == nullptr
&& onTouchesEnded == nullptr && onTouchesCancelled == nullptr)
{
CCASSERT(false, "Invalid TouchEventListener.");
CCASSERT(false, "Invalid EventListenerTouchAllAtOnce!");
return false;
}

View File

@ -34,7 +34,7 @@ FontFNT * FontFNT::create(const std::string& fntFilePath)
return nullptr;
// add the texture
Texture2D *tempTexture = TextureCache::getInstance()->addImage(newConf->getAtlasName());
Texture2D *tempTexture = Director::getInstance()->getTextureCache()->addImage(newConf->getAtlasName());
if (!tempTexture)
{
delete newConf;
@ -198,7 +198,7 @@ FontAtlas * FontFNT::createFontAtlas()
// add the texture (only one texture for now)
Texture2D *tempTexture = TextureCache::getInstance()->addImage(_configuration->getAtlasName());
Texture2D *tempTexture = Director::getInstance()->getTextureCache()->addImage(_configuration->getAtlasName());
if (!tempTexture)
return 0;

View File

@ -56,7 +56,7 @@ LabelAtlas* LabelAtlas::create(const std::string& string, const std::string& cha
bool LabelAtlas::initWithString(const std::string& string, const std::string& charMapFile, long itemWidth, long itemHeight, long startCharMap)
{
Texture2D *texture = TextureCache::getInstance()->addImage(charMapFile);
Texture2D *texture = Director::getInstance()->getTextureCache()->addImage(charMapFile);
return initWithString(string, texture, itemWidth, itemHeight, startCharMap);
}

View File

@ -486,7 +486,7 @@ bool LabelBMFont::initWithString(const std::string& theString, const std::string
_fntFile = fntFile;
texture = TextureCache::getInstance()->addImage(_configuration->getAtlasName());
texture = Director::getInstance()->getTextureCache()->addImage(_configuration->getAtlasName());
}
else
{
@ -1213,7 +1213,7 @@ void LabelBMFont::setFntFile(const char* fntFile)
CC_SAFE_RELEASE(_configuration);
_configuration = newConf;
this->setTexture(TextureCache::getInstance()->addImage(_configuration->getAtlasName()));
this->setTexture(Director::getInstance()->getTextureCache()->addImage(_configuration->getAtlasName()));
this->createFontChars();
}
}

View File

@ -28,7 +28,7 @@ THE SOFTWARE.
#include "CCGLProgram.h"
#include "CCShaderCache.h"
#include "ccMacros.h"
#include "CCDirector.h"
#include "CCVertex.h"
NS_CC_BEGIN
@ -93,7 +93,7 @@ bool MotionStreak::initWithFade(float fade, float minSeg, float stroke, const Co
{
CCASSERT(path != NULL, "Invalid filename");
Texture2D *texture = TextureCache::getInstance()->addImage(path);
Texture2D *texture = Director::getInstance()->getTextureCache()->addImage(path);
return initWithFade(fade, minSeg, stroke, color, texture);
}

View File

@ -111,7 +111,7 @@ bool ParticleBatchNode::initWithTexture(Texture2D *tex, unsigned int capacity)
*/
bool ParticleBatchNode::initWithFile(const char* fileImage, unsigned int capacity)
{
Texture2D *tex = TextureCache::getInstance()->addImage(fileImage);
Texture2D *tex = Director::getInstance()->getTextureCache()->addImage(fileImage);
return initWithTexture(tex, capacity);
}

View File

@ -42,7 +42,7 @@ static Texture2D* getDefaultTexture()
{
bool bRet = false;
const char* key = "/__firePngData";
texture = TextureCache::getInstance()->getTextureForKey(key);
texture = Director::getInstance()->getTextureCache()->getTextureForKey(key);
CC_BREAK_IF(texture != NULL);
pImage = new Image();
@ -50,7 +50,7 @@ static Texture2D* getDefaultTexture()
bRet = pImage->initWithImageData(__firePngData, sizeof(__firePngData));
CC_BREAK_IF(!bRet);
texture = TextureCache::getInstance()->addImage(pImage, key);
texture = Director::getInstance()->getTextureCache()->addImage(pImage, key);
} while (0);
CC_SAFE_RELEASE(pImage);

View File

@ -374,7 +374,7 @@ bool ParticleSystem::initWithDictionary(Dictionary *dictionary, const std::strin
// set not pop-up message box when load image failed
bool bNotify = FileUtils::getInstance()->isPopupNotify();
FileUtils::getInstance()->setPopupNotify(false);
tex = TextureCache::getInstance()->addImage(textureName.c_str());
tex = Director::getInstance()->getTextureCache()->addImage(textureName.c_str());
// reset the value of UIImage notify
FileUtils::getInstance()->setPopupNotify(bNotify);
}
@ -400,13 +400,13 @@ bool ParticleSystem::initWithDictionary(Dictionary *dictionary, const std::strin
CCASSERT( deflated != NULL, "CCParticleSystem: error ungzipping textureImageData");
CC_BREAK_IF(!deflated);
// For android, we should retain it in VolatileTexture::addImage which invoked in TextureCache::getInstance()->addUIImage()
// For android, we should retain it in VolatileTexture::addImage which invoked in Director::getInstance()->getTextureCache()->addUIImage()
image = new Image();
bool isOK = image->initWithImageData(deflated, deflatedLen);
CCASSERT(isOK, "CCParticleSystem: error init image with Data");
CC_BREAK_IF(!isOK);
setTexture(TextureCache::getInstance()->addImage(image, textureName.c_str()));
setTexture(Director::getInstance()->getTextureCache()->addImage(image, textureName.c_str()));
image->release();
}

View File

@ -102,11 +102,11 @@ void RenderTexture::listenToBackground(cocos2d::Object *obj)
if (_UITextureImage)
{
const Size& s = _texture->getContentSizeInPixels();
VolatileTexture::addDataTexture(_texture, _UITextureImage->getData(), s.width * s.height * 4, Texture2D::PixelFormat::RGBA8888, s);
VolatileTextureMgr::addDataTexture(_texture, _UITextureImage->getData(), s.width * s.height * 4, Texture2D::PixelFormat::RGBA8888, s);
if ( _textureCopy )
{
VolatileTexture::addDataTexture(_textureCopy, _UITextureImage->getData(), s.width * s.height * 4, Texture2D::PixelFormat::RGBA8888, s);
VolatileTextureMgr::addDataTexture(_textureCopy, _UITextureImage->getData(), s.width * s.height * 4, Texture2D::PixelFormat::RGBA8888, s);
}
}
else

View File

@ -294,7 +294,7 @@ void Scheduler::scheduleSelector(SEL_SCHEDULE selector, Object *target, float in
CCASSERT(target, "Argument target must be non-NULL");
tHashTimerEntry *element = NULL;
HASH_FIND_INT(_hashForTimers, &target, element);
HASH_FIND_PTR(_hashForTimers, &target, element);
if (! element)
{
@ -304,7 +304,7 @@ void Scheduler::scheduleSelector(SEL_SCHEDULE selector, Object *target, float in
{
target->retain();
}
HASH_ADD_INT(_hashForTimers, target, element);
HASH_ADD_PTR(_hashForTimers, target, element);
// Is this the 1st element ? Then set the pause level to all the selectors of this target
element->paused = paused;
@ -352,7 +352,7 @@ void Scheduler::unscheduleSelector(SEL_SCHEDULE selector, Object *target)
//CCASSERT(selector);
tHashTimerEntry *element = NULL;
HASH_FIND_INT(_hashForTimers, &target, element);
HASH_FIND_PTR(_hashForTimers, &target, element);
if (element)
{
@ -448,7 +448,7 @@ void Scheduler::priorityIn(tListEntry **list, Object *target, int priority, bool
target->retain();
pHashElement->list = list;
pHashElement->entry = listElement;
HASH_ADD_INT(_hashForUpdates, target, pHashElement);
HASH_ADD_PTR(_hashForUpdates, target, pHashElement);
}
void Scheduler::appendIn(_listEntry **list, Object *target, bool paused)
@ -467,14 +467,14 @@ void Scheduler::appendIn(_listEntry **list, Object *target, bool paused)
target->retain();
pHashElement->list = list;
pHashElement->entry = listElement;
HASH_ADD_INT(_hashForUpdates, target, pHashElement);
HASH_ADD_PTR(_hashForUpdates, target, pHashElement);
}
void Scheduler::scheduleUpdateForTarget(Object *target, int priority, bool paused)
{
tHashUpdateEntry *pHashElement = NULL;
HASH_FIND_INT(_hashForUpdates, &target, pHashElement);
HASH_FIND_PTR(_hashForUpdates, &target, pHashElement);
if (pHashElement)
{
#if COCOS2D_DEBUG >= 1
@ -509,7 +509,7 @@ bool Scheduler::isScheduledForTarget(SEL_SCHEDULE selector, Object *target)
CCASSERT(target, "Argument target must be non-NULL");
tHashTimerEntry *element = NULL;
HASH_FIND_INT(_hashForTimers, &target, element);
HASH_FIND_PTR(_hashForTimers, &target, element);
if (!element)
{
@ -541,7 +541,7 @@ void Scheduler::removeUpdateFromHash(struct _listEntry *entry)
{
tHashUpdateEntry *element = NULL;
HASH_FIND_INT(_hashForUpdates, &entry->target, element);
HASH_FIND_PTR(_hashForUpdates, &entry->target, element);
if (element)
{
// list entry
@ -567,7 +567,7 @@ void Scheduler::unscheduleUpdateForTarget(const Object *target)
}
tHashUpdateEntry *element = NULL;
HASH_FIND_INT(_hashForUpdates, &target, element);
HASH_FIND_PTR(_hashForUpdates, &target, element);
if (element)
{
if (_updateHashLocked)
@ -645,7 +645,7 @@ void Scheduler::unscheduleAllForTarget(Object *target)
// Custom Selectors
tHashTimerEntry *element = NULL;
HASH_FIND_INT(_hashForTimers, &target, element);
HASH_FIND_PTR(_hashForTimers, &target, element);
if (element)
{
@ -702,7 +702,7 @@ void Scheduler::resumeTarget(Object *target)
// custom selectors
tHashTimerEntry *element = NULL;
HASH_FIND_INT(_hashForTimers, &target, element);
HASH_FIND_PTR(_hashForTimers, &target, element);
if (element)
{
element->paused = false;
@ -710,7 +710,7 @@ void Scheduler::resumeTarget(Object *target)
// update selector
tHashUpdateEntry *elementUpdate = NULL;
HASH_FIND_INT(_hashForUpdates, &target, elementUpdate);
HASH_FIND_PTR(_hashForUpdates, &target, elementUpdate);
if (elementUpdate)
{
CCASSERT(elementUpdate->entry != NULL, "");
@ -724,7 +724,7 @@ void Scheduler::pauseTarget(Object *target)
// custom selectors
tHashTimerEntry *element = NULL;
HASH_FIND_INT(_hashForTimers, &target, element);
HASH_FIND_PTR(_hashForTimers, &target, element);
if (element)
{
element->paused = true;
@ -732,7 +732,7 @@ void Scheduler::pauseTarget(Object *target)
// update selector
tHashUpdateEntry *elementUpdate = NULL;
HASH_FIND_INT(_hashForUpdates, &target, elementUpdate);
HASH_FIND_PTR(_hashForUpdates, &target, elementUpdate);
if (elementUpdate)
{
CCASSERT(elementUpdate->entry != NULL, "");
@ -746,7 +746,7 @@ bool Scheduler::isTargetPaused(Object *target)
// Custom selectors
tHashTimerEntry *element = NULL;
HASH_FIND_INT(_hashForTimers, &target, element);
HASH_FIND_PTR(_hashForTimers, &target, element);
if( element )
{
return element->paused;
@ -754,7 +754,7 @@ bool Scheduler::isTargetPaused(Object *target)
// We should check update selectors if target does not have custom selectors
tHashUpdateEntry *elementUpdate = NULL;
HASH_FIND_INT(_hashForUpdates, &target, elementUpdate);
HASH_FIND_PTR(_hashForUpdates, &target, elementUpdate);
if ( elementUpdate )
{
return elementUpdate->entry->paused;

View File

@ -219,7 +219,7 @@ bool Sprite::initWithFile(const std::string& filename)
{
CCASSERT(filename.size()>0, "Invalid filename for sprite");
Texture2D *texture = TextureCache::getInstance()->addImage(filename);
Texture2D *texture = Director::getInstance()->getTextureCache()->addImage(filename);
if (texture)
{
Rect rect = Rect::ZERO;
@ -237,7 +237,7 @@ bool Sprite::initWithFile(const std::string &filename, const Rect& rect)
{
CCASSERT(filename.size()>0, "Invalid filename");
Texture2D *texture = TextureCache::getInstance()->addImage(filename);
Texture2D *texture = Director::getInstance()->getTextureCache()->addImage(filename);
if (texture)
{
return initWithTexture(texture, rect);
@ -284,7 +284,7 @@ Sprite* Sprite::initWithCGImage(CGImageRef pImage, const char *pszKey)
CCASSERT(pImage != NULL);
// XXX: possible bug. See issue #349. New API should be added
Texture2D *texture = TextureCache::getInstance()->addCGImage(pImage, pszKey);
Texture2D *texture = Director::getInstance()->getTextureCache()->addCGImage(pImage, pszKey);
const Size& size = texture->getContentSize();
Rect rect = Rect(0 ,0, size.width, size.height);
@ -1113,7 +1113,7 @@ void Sprite::setTexture(Texture2D *texture)
if (NULL == texture)
{
// Gets the texture by key firstly.
texture = TextureCache::getInstance()->getTextureForKey(CC_2x2_WHITE_IMAGE_KEY);
texture = Director::getInstance()->getTextureCache()->getTextureForKey(CC_2x2_WHITE_IMAGE_KEY);
// If texture wasn't in cache, create it from RAW data.
if (NULL == texture)
@ -1122,7 +1122,7 @@ void Sprite::setTexture(Texture2D *texture)
bool isOK = image->initWithRawData(cc_2x2_white_image, sizeof(cc_2x2_white_image), 2, 2, 8);
CCASSERT(isOK, "The 2x2 empty texture was created unsuccessfully.");
texture = TextureCache::getInstance()->addImage(image, CC_2x2_WHITE_IMAGE_KEY);
texture = Director::getInstance()->getTextureCache()->addImage(image, CC_2x2_WHITE_IMAGE_KEY);
CC_SAFE_RELEASE(image);
}
}

View File

@ -24,8 +24,8 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
****************************************************************************/
#ifndef __SPITE_NODE_CCSPRITE_H__
#define __SPITE_NODE_CCSPRITE_H__
#ifndef __SPRITE_NODE_CCSPRITE_H__
#define __SPRITE_NODE_CCSPRITE_H__
#include "CCNode.h"
#include "CCProtocols.h"
@ -54,7 +54,7 @@ struct transformValues_;
* @{
*/
/**
/**
* Sprite is a 2d image ( http://en.wikipedia.org/wiki/Sprite_(computer_graphics) )
*
* Sprite can be created with an image, or with a sub-rectangle of an image.
@ -88,14 +88,14 @@ public:
/// @{
/// @name Creators
/**
* Creates an empty sprite without texture. You can call setTexture method subsequently.
*
* @return An empty sprite object that is marked as autoreleased.
*/
static Sprite* create();
/**
* Creates a sprite with an image filename.
*
@ -106,7 +106,7 @@ public:
* @return A valid sprite object that is marked as autoreleased.
*/
static Sprite* create(const std::string& filename);
/**
* Creates a sprite with an image filename and a rect.
*
@ -115,7 +115,7 @@ public:
* @return A valid sprite object that is marked as autoreleased.
*/
static Sprite* create(const std::string& filename, const Rect& rect);
/**
* Creates a sprite with an exsiting texture contained in a Texture2D object
* After creation, the rect will be the size of the texture, and the offset will be (0,0).
@ -124,7 +124,7 @@ public:
* @return A valid sprite object that is marked as autoreleased.
*/
static Sprite* createWithTexture(Texture2D *texture);
/**
* Creates a sprite with a texture and a rect.
*
@ -136,7 +136,7 @@ public:
* @return A valid sprite object that is marked as autoreleased.
*/
static Sprite* createWithTexture(Texture2D *texture, const Rect& rect);
/**
* Creates a sprite with an sprite frame.
*
@ -144,7 +144,7 @@ public:
* @return A valid sprite object that is marked as autoreleased.
*/
static Sprite* createWithSpriteFrame(SpriteFrame *pSpriteFrame);
/**
* Creates a sprite with an sprite frame name.
*
@ -155,31 +155,31 @@ public:
* @return A valid sprite object that is marked as autoreleased.
*/
static Sprite* createWithSpriteFrameName(const std::string& spriteFrameName);
/// @} end of creators group
/// @{
/// @name Initializers
/**
* Default constructor
* @js ctor
*/
Sprite(void);
/**
* Default destructor
* @js NA
* @lua NA
*/
virtual ~Sprite(void);
/**
* Initializes an empty sprite with nothing init.
*/
virtual bool init(void);
/**
* Initializes a sprite with a texture.
*
@ -190,7 +190,7 @@ public:
* @return true if the sprite is initialized properly, false otherwise.
*/
virtual bool initWithTexture(Texture2D *texture);
/**
* Initializes a sprite with a texture and a rect.
*
@ -202,7 +202,7 @@ public:
* @return true if the sprite is initialized properly, false otherwise.
*/
virtual bool initWithTexture(Texture2D *texture, const Rect& rect);
/**
* Initializes a sprite with a texture and a rect in points, optionally rotated.
*
@ -215,7 +215,7 @@ public:
* @return true if the sprite is initialized properly, false otherwise.
*/
virtual bool initWithTexture(Texture2D *texture, const Rect& rect, bool rotated);
/**
* Initializes a sprite with an SpriteFrame. The texture and rect in SpriteFrame will be applied on this sprite
*
@ -223,7 +223,7 @@ public:
* @return true if the sprite is initialized properly, false otherwise.
*/
virtual bool initWithSpriteFrame(SpriteFrame *pSpriteFrame);
/**
* Initializes a sprite with an sprite frame name.
*
@ -234,7 +234,7 @@ public:
* @return true if the sprite is initialized properly, false otherwise.
*/
virtual bool initWithSpriteFrameName(const std::string& spriteFrameName);
/**
* Initializes a sprite with an image filename.
*
@ -248,7 +248,7 @@ public:
* @lua init
*/
virtual bool initWithFile(const std::string& filename);
/**
* Initializes a sprite with an image filename, and a rect.
*
@ -263,17 +263,17 @@ public:
* @lua init
*/
virtual bool initWithFile(const std::string& filename, const Rect& rect);
/// @} end of initializers
/// @{
/// @name BatchNode methods
/**
* Updates the quad according the rotation, position, scale values.
* Updates the quad according the rotation, position, scale values.
*/
virtual void updateTransform(void);
/**
* Returns the batch node object if this sprite is rendered by SpriteBatchNode
*
@ -292,26 +292,26 @@ public:
* @endcode
*/
virtual void setBatchNode(SpriteBatchNode *spriteBatchNode);
/// @} end of BatchNode methods
/// @{
/// @name Texture methods
/**
* Updates the texture rect of the Sprite in points.
* It will call setTextureRect(const Rect& rect, bool rotated, const Size& untrimmedSize) with \p rotated = false, and \p utrimmedSize = rect.size.
*/
virtual void setTextureRect(const Rect& rect);
/**
* Sets the texture rect, rectRotated and untrimmed size of the Sprite in points.
* It will update the texture coordinates and the vertex rectangle.
*/
virtual void setTextureRect(const Rect& rect, bool rotated, const Size& untrimmedSize);
/**
* Sets the vertex rect.
* It will be called internally by setTextureRect.
@ -319,34 +319,34 @@ public:
* Do not call it manually. Use setTextureRect instead.
*/
virtual void setVertexRect(const Rect& rect);
/// @} end of texture methods
/// @} end of texture methods
/// @{
/// @name Frames methods
/**
* Sets a new display frame to the Sprite.
*/
virtual void setDisplayFrame(SpriteFrame *pNewFrame);
/**
* Returns whether or not a SpriteFrame is being displayed
*/
virtual bool isFrameDisplayed(SpriteFrame *pFrame) const;
/** @deprecated Use getDisplayFrame() instead */
CC_DEPRECATED_ATTRIBUTE virtual SpriteFrame* displayFrame() { return getDisplayFrame(); };
/**
* Returns the current displayed frame.
*/
virtual SpriteFrame* getDisplayFrame();
/// @} End of frames methods
/// @{
/// @name Animation methods
@ -356,23 +356,23 @@ public:
*/
virtual void setDisplayFrameWithAnimationName(const std::string& animationName, int frameIndex);
/// @}
/// @{
/// @name Sprite Properties' setter/getters
/**
/**
* Whether or not the Sprite needs to be updated in the Atlas.
*
* @return true if the sprite needs to be updated in the Atlas, false otherwise.
*/
virtual bool isDirty(void) const { return _dirty; }
/**
/**
* Makes the Sprite to be updated in the Atlas.
*/
virtual void setDirty(bool bDirty) { _dirty = bDirty; }
/**
* Returns the quad (tex coords, vertex coords and color) information.
* @js NA
@ -380,24 +380,24 @@ public:
*/
inline V3F_C4B_T2F_Quad getQuad(void) const { return _quad; }
/**
/**
* Returns whether or not the texture rectangle is rotated.
*/
inline bool isTextureRectRotated(void) const { return _rectRotated; }
/**
* Returns the index used on the TextureAtlas.
/**
* Returns the index used on the TextureAtlas.
*/
inline int getAtlasIndex(void) const { return _atlasIndex; }
/**
/**
* Sets the index used on the TextureAtlas.
* @warning Don't modify this value unless you know what you are doing
*/
inline void setAtlasIndex(int atlasIndex) { _atlasIndex = atlasIndex; }
/**
* Returns the rect of the Sprite in points
/**
* Returns the rect of the Sprite in points
*/
inline const Rect& getTextureRect(void) { return _rect; }
@ -405,19 +405,19 @@ public:
* Gets the weak reference of the TextureAtlas when the sprite is rendered using via SpriteBatchNode
*/
inline TextureAtlas* getTextureAtlas(void) { return _textureAtlas; }
/**
* Sets the weak reference of the TextureAtlas when the sprite is rendered using via SpriteBatchNode
*/
inline void setTextureAtlas(TextureAtlas *pobTextureAtlas) { _textureAtlas = pobTextureAtlas; }
/**
/**
* Gets the offset position of the sprite. Calculated automatically by editors like Zwoptex.
*/
inline const Point& getOffsetPosition(void) const { return _offsetPosition; }
/**
/**
* Returns the flag which indicates whether the sprite is flipped horizontally or not.
*
* It only flips the texture of the sprite, and not the texture of the sprite's children.
@ -425,48 +425,48 @@ public:
* If you want to flip the anchorPoint too, and/or to flip the children too use:
* sprite->setScaleX(sprite->getScaleX() * -1);
*
* @return true if the sprite is flipped horizaontally, false otherwise.
* @return true if the sprite is flipped horizontally, false otherwise.
*/
bool isFlippedX(void) const;
/**
* Sets whether the sprite should be flipped horizontally or not.
*
* @param bFlipX true if the sprite should be flipped horizaontally, false otherwise.
* @param flippedX true if the sprite should be flipped horizontally, false otherwise.
*/
void setFlippedX(bool flippedX);
/** @deprecated Use isFlippedX() instead
/** @deprecated Use isFlippedX() instead
* @js NA
* @lua NA
*/
CC_DEPRECATED_ATTRIBUTE bool isFlipX() { return isFlippedX(); };
/** @deprecated Use setFlippedX() instead */
CC_DEPRECATED_ATTRIBUTE void setFlipX(bool flippedX) { setFlippedX(flippedX); };
/**
CC_DEPRECATED_ATTRIBUTE void setFlipX(bool flippedX) { setFlippedX(flippedX); };
/**
* Return the flag which indicates whether the sprite is flipped vertically or not.
*
*
* It only flips the texture of the sprite, and not the texture of the sprite's children.
* Also, flipping the texture doesn't alter the anchorPoint.
* If you want to flip the anchorPoint too, and/or to flip the children too use:
* sprite->setScaleY(sprite->getScaleY() * -1);
*
* @return true if the sprite is flipped vertically, flase otherwise.
*
* @return true if the sprite is flipped vertically, false otherwise.
*/
bool isFlippedY(void) const;
/**
* Sets whether the sprite should be flipped vertically or not.
*
* @param bFlipY true if the sprite should be flipped vertically, flase otherwise.
* @param flippedY true if the sprite should be flipped vertically, false otherwise.
*/
void setFlippedY(bool flippedY);
/// @} End of Sprite properties getter/setters
/** @deprecated Use isFlippedY() instead */
CC_DEPRECATED_ATTRIBUTE bool isFlipY() { return isFlippedY(); };
/** @deprecated Use setFlippedY() instead */
CC_DEPRECATED_ATTRIBUTE void setFlipY(bool flippedY) { setFlippedY(flippedY); };
CC_DEPRECATED_ATTRIBUTE void setFlipY(bool flippedY) { setFlippedY(flippedY); };
//
// Overrides
@ -543,13 +543,13 @@ protected:
TextureAtlas* _textureAtlas; /// SpriteBatchNode texture atlas (weak reference)
int _atlasIndex; /// Absolute (real) Index on the SpriteSheet
SpriteBatchNode* _batchNode; /// Used batch node (weak reference)
bool _dirty; /// Whether the sprite needs to be updated
bool _recursiveDirty; /// Whether all of the sprite's children needs to be updated
bool _hasChildren; /// Whether the sprite contains children
bool _shouldBeHidden; /// should not be drawn because one of the ancestors is not visible
AffineTransform _transformToBatch;
//
// Data used when the sprite is self-rendered
//
@ -575,8 +575,8 @@ protected:
bool _opacityModifyRGB;
// image is flipped
bool _flippedX; /// Whether the sprite is flipped horizaontally or not.
bool _flippedY; /// Whether the sprite is flipped vertically or not.
bool _flippedX; /// Whether the sprite is flipped horizontally or not
bool _flippedY; /// Whether the sprite is flipped vertically or not
};
@ -585,4 +585,4 @@ protected:
NS_CC_END
#endif // __SPITE_NODE_CCSPRITE_H__
#endif // __SPRITE_NODE_CCSPRITE_H__

View File

@ -114,7 +114,7 @@ bool SpriteBatchNode::init()
*/
bool SpriteBatchNode::initWithFile(const char* fileImage, long capacity)
{
Texture2D *texture2D = TextureCache::getInstance()->addImage(fileImage);
Texture2D *texture2D = Director::getInstance()->getTextureCache()->addImage(fileImage);
return initWithTexture(texture2D, capacity);
}

View File

@ -180,7 +180,7 @@ Texture2D* SpriteFrame::getTexture(void)
}
if( _textureFilename.length() > 0 ) {
return TextureCache::getInstance()->addImage(_textureFilename.c_str());
return Director::getInstance()->getTextureCache()->addImage(_textureFilename.c_str());
}
// no texture or texture filename
return NULL;

View File

@ -37,6 +37,7 @@ THE SOFTWARE.
#include "CCString.h"
#include "CCArray.h"
#include "CCDictionary.h"
#include "CCDirector.h"
#include <vector>
using namespace std;
@ -215,7 +216,7 @@ void SpriteFrameCache::addSpriteFramesWithFile(const std::string& pszPlist, Text
void SpriteFrameCache::addSpriteFramesWithFile(const std::string& plist, const std::string& textureFileName)
{
CCASSERT(textureFileName.size()>0, "texture name should not be null");
Texture2D *texture = TextureCache::getInstance()->addImage(textureFileName);
Texture2D *texture = Director::getInstance()->getTextureCache()->addImage(textureFileName);
if (texture)
{
@ -265,7 +266,7 @@ void SpriteFrameCache::addSpriteFramesWithFile(const std::string& pszPlist)
CCLOG("cocos2d: SpriteFrameCache: Trying to use file %s as texture", texturePath.c_str());
}
Texture2D *texture = TextureCache::getInstance()->addImage(texturePath.c_str());
Texture2D *texture = Director::getInstance()->getTextureCache()->addImage(texturePath.c_str());
if (texture)
{

View File

@ -58,7 +58,7 @@ bool TMXLayer::initWithTilesetInfo(TMXTilesetInfo *tilesetInfo, TMXLayerInfo *la
Texture2D *texture = NULL;
if( tilesetInfo )
{
texture = TextureCache::getInstance()->addImage(tilesetInfo->_sourceImage.c_str());
texture = Director::getInstance()->getTextureCache()->addImage(tilesetInfo->_sourceImage.c_str());
}
if (SpriteBatchNode::initWithTexture(texture, (unsigned int)capacity))

View File

@ -434,7 +434,7 @@ Texture2D::Texture2D()
Texture2D::~Texture2D()
{
#if CC_ENABLE_CACHE_TEXTURE_DATA
VolatileTexture::removeTexture(this);
VolatileTextureMgr::removeTexture(this);
#endif
CCLOGINFO("deallocing Texture2D: %p - id=%u", this, _name);
@ -1041,7 +1041,7 @@ bool Texture2D::initWithString(const char *text, const FontDefinition& textDefin
{
#if CC_ENABLE_CACHE_TEXTURE_DATA
// cache the texture data
VolatileTexture::addStringTexture(this, text, textDefinition);
VolatileTextureMgr::addStringTexture(this, text, textDefinition);
#endif
bool bRet = false;
@ -1267,7 +1267,7 @@ void Texture2D::setTexParameters(const TexParams &texParams)
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, texParams.wrapT );
#if CC_ENABLE_CACHE_TEXTURE_DATA
VolatileTexture::setTexParameters(this, texParams);
VolatileTextureMgr::setTexParameters(this, texParams);
#endif
}
@ -1287,7 +1287,7 @@ void Texture2D::setAliasTexParameters()
glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST );
#if CC_ENABLE_CACHE_TEXTURE_DATA
TexParams texParams = {(GLuint)(_hasMipmaps?GL_NEAREST_MIPMAP_NEAREST:GL_NEAREST),GL_NEAREST,GL_NONE,GL_NONE};
VolatileTexture::setTexParameters(this, texParams);
VolatileTextureMgr::setTexParameters(this, texParams);
#endif
}
@ -1307,7 +1307,7 @@ void Texture2D::setAntiAliasTexParameters()
glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR );
#if CC_ENABLE_CACHE_TEXTURE_DATA
TexParams texParams = {(GLuint)(_hasMipmaps?GL_LINEAR_MIPMAP_NEAREST:GL_LINEAR),GL_LINEAR,GL_NONE,GL_NONE};
VolatileTexture::setTexParameters(this, texParams);
VolatileTextureMgr::setTexParameters(this, texParams);
#endif
}

View File

@ -32,6 +32,7 @@ THE SOFTWARE.
#include "ccGLStateCache.h"
#include "CCNotificationCenter.h"
#include "CCEventType.h"
#include "CCDirector.h"
#include "CCGL.h"
// support
#include "CCTexture2D.h"
@ -71,12 +72,12 @@ TextureAtlas::~TextureAtlas()
#endif
}
int TextureAtlas::getTotalQuads() const
long TextureAtlas::getTotalQuads() const
{
return _totalQuads;
}
int TextureAtlas::getCapacity() const
long TextureAtlas::getCapacity() const
{
return _capacity;
}
@ -134,7 +135,7 @@ TextureAtlas * TextureAtlas::createWithTexture(Texture2D *texture, long capacity
bool TextureAtlas::initWithFile(const char * file, long capacity)
{
// retained in property
Texture2D *texture = TextureCache::getInstance()->addImage(file);
Texture2D *texture = Director::getInstance()->getTextureCache()->addImage(file);
if (texture)
{
@ -215,7 +216,7 @@ void TextureAtlas::listenBackToForeground(Object *obj)
const char* TextureAtlas::description() const
{
return String::createWithFormat("<TextureAtlas | totalQuads = %u>", _totalQuads)->getCString();
return String::createWithFormat("<TextureAtlas | totalQuads = %ld>", _totalQuads)->getCString();
}
@ -356,7 +357,7 @@ void TextureAtlas::insertQuads(V3F_C4B_T2F_Quad* quads, long index, long amount)
CCASSERT( _totalQuads <= _capacity, "invalid totalQuads");
// issue #575. index can be > totalQuads
int remaining = (_totalQuads-1) - index - amount;
long remaining = (_totalQuads-1) - index - amount;
// last object doesn't need to be moved
if( remaining > 0)
@ -366,9 +367,9 @@ void TextureAtlas::insertQuads(V3F_C4B_T2F_Quad* quads, long index, long amount)
}
int max = index + amount;
long max = index + amount;
int j = 0;
for (int i = index; i < max ; i++)
for (long i = index; i < max ; i++)
{
_quads[index] = quads[j];
index++;
@ -389,9 +390,9 @@ void TextureAtlas::insertQuadFromIndex(long oldIndex, long newIndex)
}
// because it is ambiguous in iphone, so we implement abs ourselves
// unsigned int howMany = abs( oldIndex - newIndex);
int howMany = (oldIndex - newIndex) > 0 ? (oldIndex - newIndex) : (newIndex - oldIndex);
int dst = oldIndex;
int src = oldIndex + 1;
long howMany = (oldIndex - newIndex) > 0 ? (oldIndex - newIndex) : (newIndex - oldIndex);
long dst = oldIndex;
long src = oldIndex + 1;
if( oldIndex > newIndex)
{
dst = newIndex+1;
@ -411,7 +412,7 @@ void TextureAtlas::removeQuadAtIndex(long index)
{
CCASSERT( index>=0 && index<_totalQuads, "removeQuadAtIndex: Invalid index");
int remaining = (_totalQuads-1) - index;
long remaining = (_totalQuads-1) - index;
// last object doesn't need to be moved
if( remaining )
@ -430,7 +431,7 @@ void TextureAtlas::removeQuadsAtIndex(long index, long amount)
{
CCASSERT(index>=0 && amount>=0 && index+amount<=_totalQuads, "removeQuadAtIndex: index + amount out of bounds");
int remaining = (_totalQuads) - (index + amount);
long remaining = (_totalQuads) - (index + amount);
_totalQuads -= amount;
@ -455,7 +456,7 @@ bool TextureAtlas::resizeCapacity(long newCapacity)
{
return true;
}
int oldCapactiy = _capacity;
long oldCapactiy = _capacity;
// update capacity and totolQuads
_totalQuads = MIN(_totalQuads, newCapacity);
_capacity = newCapacity;
@ -574,8 +575,8 @@ void TextureAtlas::fillWithEmptyQuadsFromIndex(long index, long amount)
V3F_C4B_T2F_Quad quad;
memset(&quad, 0, sizeof(quad));
int to = index + amount;
for (int i = index ; i < to ; i++)
long to = index + amount;
for (long i = index ; i < to ; i++)
{
_quads[i] = quad;
}

View File

@ -197,10 +197,10 @@ public:
const char* description() const;
/** Gets the quantity of quads that are going to be drawn */
int getTotalQuads() const;
long getTotalQuads() const;
/** Gets the quantity of quads that can be stored with the current texture atlas size */
int getCapacity() const;
long getCapacity() const;
/** Gets the texture of the texture atlas */
Texture2D* getTexture() const;
@ -231,9 +231,9 @@ protected:
GLuint _buffersVBO[2]; //0: vertex 1: indices
bool _dirty; //indicates whether or not the array buffer of the VBO needs to be updated
/** quantity of quads that are going to be drawn */
int _totalQuads;
long _totalQuads;
/** quantity of quads that can be stored with the current texture atlas size */
int _capacity;
long _capacity;
/** Texture of the texture atlas */
Texture2D* _texture;
/** Quads that are going to be rendered */

View File

@ -51,19 +51,9 @@ NS_CC_BEGIN
// implementation TextureCache
TextureCache* TextureCache::_sharedTextureCache = nullptr;
TextureCache * TextureCache::getInstance()
{
if (!_sharedTextureCache)
{
#ifdef EMSCRIPTEN
_sharedTextureCache = new TextureCacheEmscripten();
#else
_sharedTextureCache = new TextureCache();
#endif // EMSCRIPTEN
}
return _sharedTextureCache;
return Director::getInstance()->getTextureCache();
}
TextureCache::TextureCache()
@ -73,7 +63,6 @@ TextureCache::TextureCache()
, _needQuit(false)
, _asyncRefCount(0)
{
CCASSERT(_sharedTextureCache == nullptr, "Attempted to allocate a second instance of a singleton.");
}
TextureCache::~TextureCache()
@ -84,20 +73,19 @@ TextureCache::~TextureCache()
(it->second)->release();
CC_SAFE_DELETE(_loadingThread);
_sharedTextureCache = nullptr;
}
void TextureCache::destroyInstance()
{
if (_sharedTextureCache)
{
// notify sub thread to quick
_sharedTextureCache->_needQuit = true;
_sharedTextureCache->_sleepCondition.notify_one();
if (_sharedTextureCache->_loadingThread) _sharedTextureCache->_loadingThread->join();
CC_SAFE_RELEASE_NULL(_sharedTextureCache);
}
}
TextureCache * TextureCache::sharedTextureCache()
{
return Director::getInstance()->getTextureCache();
}
void TextureCache::purgeSharedTextureCache()
{
}
const char* TextureCache::description() const
@ -260,7 +248,7 @@ void TextureCache::addImageAsyncCallBack(float dt)
#if CC_ENABLE_CACHE_TEXTURE_DATA
// cache the texture file name
VolatileTexture::addImageTexture(texture, filename);
VolatileTextureMgr::addImageTexture(texture, filename);
#endif
// cache the texture. retain it, since it is added in the map
_textures.insert( std::make_pair(filename, texture) );
@ -320,7 +308,7 @@ Texture2D * TextureCache::addImage(const std::string &path)
{
#if CC_ENABLE_CACHE_TEXTURE_DATA
// cache the texture file name
VolatileTexture::addImageTexture(texture, fullpath.c_str());
VolatileTextureMgr::addImageTexture(texture, fullpath.c_str());
#endif
// texture already retained, no need to re-retain it
_textures.insert( std::make_pair(fullpath, texture) );
@ -370,7 +358,7 @@ Texture2D* TextureCache::addImage(Image *image, const std::string &key)
} while (0);
#if CC_ENABLE_CACHE_TEXTURE_DATA
VolatileTexture::addImage(texture, image);
VolatileTextureMgr::addImage(texture, image);
#endif
return texture;
@ -438,9 +426,18 @@ Texture2D* TextureCache::getTextureForKey(const std::string &key) const
void TextureCache::reloadAllTextures()
{
#if CC_ENABLE_CACHE_TEXTURE_DATA
VolatileTexture::reloadAllTextures();
#endif
//will do nothing
// #if CC_ENABLE_CACHE_TEXTURE_DATA
// VolatileTextureMgr::reloadAllTextures();
// #endif
}
void TextureCache::waitForQuit()
{
// notify sub thread to quick
_needQuit = true;
_sleepCondition.notify_one();
if (_loadingThread) _loadingThread->join();
}
void TextureCache::dumpCachedTextureInfo() const
@ -453,7 +450,7 @@ void TextureCache::dumpCachedTextureInfo() const
Texture2D* tex = it->second;
unsigned int bpp = tex->getBitsPerPixelForFormat();
// Each texture takes up width * height * bytesPerPixel bytes.
unsigned int bytes = tex->getPixelsWide() * tex->getPixelsHigh() * bpp / 8;
long bytes = tex->getPixelsWide() * tex->getPixelsHigh() * bpp / 8;
totalBytes += bytes;
count++;
log("cocos2d: \"%s\" rc=%lu id=%lu %lu x %lu @ %ld bpp => %lu KB",
@ -471,8 +468,8 @@ void TextureCache::dumpCachedTextureInfo() const
#if CC_ENABLE_CACHE_TEXTURE_DATA
std::list<VolatileTexture*> VolatileTexture::_textures;
bool VolatileTexture::_isReloading = false;
std::list<VolatileTexture*> VolatileTextureMgr::_textures;
bool VolatileTextureMgr::_isReloading = false;
VolatileTexture::VolatileTexture(Texture2D *t)
: _texture(t)
@ -487,16 +484,14 @@ VolatileTexture::VolatileTexture(Texture2D *t)
_texParams.magFilter = GL_LINEAR;
_texParams.wrapS = GL_CLAMP_TO_EDGE;
_texParams.wrapT = GL_CLAMP_TO_EDGE;
_textures.push_back(this);
}
VolatileTexture::~VolatileTexture()
{
_textures.remove(this);
CC_SAFE_RELEASE(_uiImage);
}
void VolatileTexture::addImageTexture(Texture2D *tt, const char* imageFileName)
void VolatileTextureMgr::addImageTexture(Texture2D *tt, const char* imageFileName)
{
if (_isReloading)
{
@ -505,20 +500,20 @@ void VolatileTexture::addImageTexture(Texture2D *tt, const char* imageFileName)
VolatileTexture *vt = findVolotileTexture(tt);
vt->_cashedImageType = kImageFile;
vt->_cashedImageType = VolatileTexture::kImageFile;
vt->_fileName = imageFileName;
vt->_pixelFormat = tt->getPixelFormat();
}
void VolatileTexture::addImage(Texture2D *tt, Image *image)
void VolatileTextureMgr::addImage(Texture2D *tt, Image *image)
{
VolatileTexture *vt = findVolotileTexture(tt);
image->retain();
vt->_uiImage = image;
vt->_cashedImageType = kImage;
vt->_cashedImageType = VolatileTexture::kImage;
}
VolatileTexture* VolatileTexture::findVolotileTexture(Texture2D *tt)
VolatileTexture* VolatileTextureMgr::findVolotileTexture(Texture2D *tt)
{
VolatileTexture *vt = 0;
auto i = _textures.begin();
@ -535,12 +530,13 @@ VolatileTexture* VolatileTexture::findVolotileTexture(Texture2D *tt)
if (! vt)
{
vt = new VolatileTexture(tt);
_textures.push_back(vt);
}
return vt;
}
void VolatileTexture::addDataTexture(Texture2D *tt, void* data, int dataLen, Texture2D::PixelFormat pixelFormat, const Size& contentSize)
void VolatileTextureMgr::addDataTexture(Texture2D *tt, void* data, int dataLen, Texture2D::PixelFormat pixelFormat, const Size& contentSize)
{
if (_isReloading)
{
@ -549,14 +545,14 @@ void VolatileTexture::addDataTexture(Texture2D *tt, void* data, int dataLen, Tex
VolatileTexture *vt = findVolotileTexture(tt);
vt->_cashedImageType = kImageData;
vt->_cashedImageType = VolatileTexture::kImageData;
vt->_textureData = data;
vt->_dataLen = dataLen;
vt->_pixelFormat = pixelFormat;
vt->_textureSize = contentSize;
}
void VolatileTexture::addStringTexture(Texture2D *tt, const char* text, const FontDefinition& fontDefinition)
void VolatileTextureMgr::addStringTexture(Texture2D *tt, const char* text, const FontDefinition& fontDefinition)
{
if (_isReloading)
{
@ -565,12 +561,12 @@ void VolatileTexture::addStringTexture(Texture2D *tt, const char* text, const Fo
VolatileTexture *vt = findVolotileTexture(tt);
vt->_cashedImageType = kString;
vt->_cashedImageType = VolatileTexture::kString;
vt->_text = text;
vt->_fontDefinition = fontDefinition;
}
void VolatileTexture::setTexParameters(Texture2D *t, const Texture2D::TexParams &texParams)
void VolatileTextureMgr::setTexParameters(Texture2D *t, const Texture2D::TexParams &texParams)
{
VolatileTexture *vt = findVolotileTexture(t);
@ -584,7 +580,7 @@ void VolatileTexture::setTexParameters(Texture2D *t, const Texture2D::TexParams
vt->_texParams.wrapT = texParams.wrapT;
}
void VolatileTexture::removeTexture(Texture2D *t)
void VolatileTextureMgr::removeTexture(Texture2D *t)
{
auto i = _textures.begin();
while (i != _textures.end())
@ -592,13 +588,14 @@ void VolatileTexture::removeTexture(Texture2D *t)
VolatileTexture *vt = *i++;
if (vt->_texture == t)
{
_textures.remove(vt);
delete vt;
break;
}
}
}
void VolatileTexture::reloadAllTextures()
void VolatileTextureMgr::reloadAllTextures()
{
_isReloading = true;
@ -611,7 +608,7 @@ void VolatileTexture::reloadAllTextures()
switch (vt->_cashedImageType)
{
case kImageFile:
case VolatileTexture::kImageFile:
{
Image* image = new Image();
long size = 0;
@ -629,7 +626,7 @@ void VolatileTexture::reloadAllTextures()
CC_SAFE_RELEASE(image);
}
break;
case kImageData:
case VolatileTexture::kImageData:
{
vt->_texture->initWithData(vt->_textureData,
vt->_dataLen,
@ -639,12 +636,12 @@ void VolatileTexture::reloadAllTextures()
vt->_textureSize);
}
break;
case kString:
case VolatileTexture::kString:
{
vt->_texture->initWithString(vt->_text.c_str(), vt->_fontDefinition);
}
break;
case kImage:
case VolatileTexture::kImage:
{
vt->_texture->initWithImage(vt->_uiImage);
}

View File

@ -50,6 +50,10 @@ NS_CC_BEGIN
* @addtogroup textures
* @{
*/
/*
* from version 3.0, TextureCache will never to treated as a singleton, it will be owned by director.
* all call by TextureCache::getInstance() should be replaced by Director::getInstance()->getTextureCache()
*/
/** @brief Singleton that handles the loading of textures
* Once the texture is loaded, the next time it will return
@ -59,23 +63,24 @@ class CC_DLL TextureCache : public Object
{
public:
/** Returns the shared instance of the cache */
static TextureCache * getInstance();
CC_DEPRECATED_ATTRIBUTE static TextureCache * getInstance();
/** @deprecated Use getInstance() instead */
CC_DEPRECATED_ATTRIBUTE static TextureCache * sharedTextureCache() { return TextureCache::getInstance(); }
CC_DEPRECATED_ATTRIBUTE static TextureCache * sharedTextureCache();
/** purges the cache. It releases the retained instance.
@since v0.99.0
*/
static void destroyInstance();
CC_DEPRECATED_ATTRIBUTE static void destroyInstance();
/** @deprecated Use destroyInstance() instead */
CC_DEPRECATED_ATTRIBUTE static void purgeSharedTextureCache() { return TextureCache::destroyInstance(); }
CC_DEPRECATED_ATTRIBUTE static void purgeSharedTextureCache();
/** Reload all textures
It's only useful when the value of CC_ENABLE_CACHE_TEXTURE_DATA is 1
should not call it, called by frame work
now the function do nothing, use VolatileTextureMgr::reloadAllTextures
*/
static void reloadAllTextures();
CC_DEPRECATED_ATTRIBUTE static void reloadAllTextures();
public:
/**
@ -158,6 +163,10 @@ public:
*/
void dumpCachedTextureInfo() const;
//wait for texture cahe to quit befor destroy instance
//called by director, please do not called outside
void waitForQuit();
private:
void addImageAsyncCallBack(float dt);
void loadImage();
@ -196,8 +205,6 @@ protected:
int _asyncRefCount;
std::unordered_map<std::string, Texture2D*> _textures;
static TextureCache *_sharedTextureCache;
};
#if CC_ENABLE_CACHE_TEXTURE_DATA
@ -212,7 +219,7 @@ class VolatileTexture
kImage,
}ccCachedImageType;
public:
private:
VolatileTexture(Texture2D *t);
/**
* @js NA
@ -220,25 +227,8 @@ public:
*/
~VolatileTexture();
static void addImageTexture(Texture2D *tt, const char* imageFileName);
static void addStringTexture(Texture2D *tt, const char* text, const FontDefinition& fontDefinition);
static void addDataTexture(Texture2D *tt, void* data, int dataLen, Texture2D::PixelFormat pixelFormat, const Size& contentSize);
static void addImage(Texture2D *tt, Image *image);
static void setTexParameters(Texture2D *t, const Texture2D::TexParams &texParams);
static void removeTexture(Texture2D *t);
static void reloadAllTextures();
public:
static std::list<VolatileTexture*> _textures;
static bool _isReloading;
private:
// find VolatileTexture by Texture2D*
// if not found, create a new one
static VolatileTexture* findVolotileTexture(Texture2D *tt);
protected:
friend class VolatileTextureMgr;
Texture2D *_texture;
Image *_uiImage;
@ -257,6 +247,26 @@ protected:
FontDefinition _fontDefinition;
};
class VolatileTextureMgr
{
public:
static void addImageTexture(Texture2D *tt, const char* imageFileName);
static void addStringTexture(Texture2D *tt, const char* text, const FontDefinition& fontDefinition);
static void addDataTexture(Texture2D *tt, void* data, int dataLen, Texture2D::PixelFormat pixelFormat, const Size& contentSize);
static void addImage(Texture2D *tt, Image *image);
static void setTexParameters(Texture2D *t, const Texture2D::TexParams &texParams);
static void removeTexture(Texture2D *t);
static void reloadAllTextures();
public:
static std::list<VolatileTexture*> _textures;
static bool _isReloading;
private:
// find VolatileTexture by Texture2D*
// if not found, create a new one
static VolatileTexture* findVolotileTexture(Texture2D *tt);
};
#endif
// end of textures group

View File

@ -1,204 +0,0 @@
TARGET = libcocos2d.so
INCLUDES =
SOURCES = \
CCAction.cpp \
CCActionCamera.cpp \
CCActionEase.cpp \
CCActionGrid.cpp \
CCActionGrid3D.cpp \
CCActionInstant.cpp \
CCActionInterval.cpp \
CCActionManager.cpp \
CCActionPageTurn3D.cpp \
CCActionProgressTimer.cpp \
CCActionTiledGrid.cpp \
CCActionCatmullRom.cpp \
CCActionTween.cpp \
CCAtlasNode.cpp \
CCNode.cpp \
../base/CCAffineTransform.cpp \
../base/CCAutoreleasePool.cpp \
../base/CCGeometry.cpp \
../base/CCNS.cpp \
../base/CCObject.cpp \
../base/CCSet.cpp \
../base/CCArray.cpp \
../base/CCDictionary.cpp \
../base/CCString.cpp \
../base/CCDataVisitor.cpp \
../base/CCData.cpp \
CCEventAcceleration.cpp \
CCEventListenerAcceleration.cpp \
CCEvent.cpp \
CCEventDispatcher.cpp \
CCEventListener.cpp \
CCEventKeyboard.cpp \
CCEventListenerKeyboard.cpp \
CCEventMouse.cpp \
CCEventListenerMouse.cpp \
CCTouch.cpp \
CCEventTouch.cpp \
CCEventListenerTouch.cpp \
CCEventCustom.cpp \
CCEventListenerCustom.cpp \
CCDrawingPrimitives.cpp \
CCDrawNode.cpp \
CCGrabber.cpp \
CCGrid.cpp \
CCFont.cpp \
CCFontAtlas.cpp \
CCFontAtlasCache.cpp \
CCFontAtlasFactory.cpp \
CCFontDefinition.cpp \
CCFontFNT.cpp \
CCFontFreeType.cpp \
CCLabel.cpp \
CCLabelAtlas.cpp \
CCLabelBMFont.cpp \
CCLabelTTF.cpp \
CCLabelTextFormatter.cpp \
CCTextImage.cpp \
CCLayer.cpp \
CCScene.cpp \
CCTransition.cpp \
CCTransitionPageTurn.cpp \
CCTransitionProgress.cpp \
CCMenu.cpp \
CCMenuItem.cpp \
CCMotionStreak.cpp \
CCProgressTimer.cpp \
CCClippingNode.cpp \
CCRenderTexture.cpp \
CCParticleExamples.cpp \
CCParticleSystem.cpp \
CCParticleSystemQuad.cpp \
CCParticleBatchNode.cpp \
../physics/box2d/CCPhysicsContactInfo_box2d.cpp \
../physics/box2d/CCPhysicsJointInfo_box2d.cpp \
../physics/box2d/CCPhysicsShapeInfo_box2d.cpp \
../physics/box2d/CCPhysicsBodyInfo_box2d.cpp \
../physics/box2d/CCPhysicsWorldInfo_box2d.cpp \
../physics/chipmunk/CCPhysicsContactInfo_chipmunk.cpp \
../physics/chipmunk/CCPhysicsJointInfo_chipmunk.cpp \
../physics/chipmunk/CCPhysicsShapeInfo_chipmunk.cpp \
../physics/chipmunk/CCPhysicsBodyInfo_chipmunk.cpp \
../physics/chipmunk/CCPhysicsWorldInfo_chipmunk.cpp \
../physics/CCPhysicsBody.cpp \
../physics/CCPhysicsContact.cpp \
../physics/CCPhysicsShape.cpp \
../physics/CCPhysicsJoint.cpp \
../physics/CCPhysicsWorld.cpp \
../platform/CCSAXParser.cpp \
../platform/CCThread.cpp \
../platform/CCEGLViewProtocol.cpp \
../platform/CCFileUtils.cpp \
../platform/linux/CCStdC.cpp \
../platform/linux/CCFileUtilsLinux.cpp \
../platform/linux/CCCommon.cpp \
../platform/linux/CCApplication.cpp \
../platform/linux/CCEGLView.cpp \
../platform/linux/CCImage.cpp \
../platform/linux/CCDevice.cpp \
../base/etc1.cpp \
../base/s3tc.cpp \
../base/atitc.cpp \
CCScriptSupport.cpp \
CCAnimation.cpp \
CCAnimationCache.cpp \
CCSprite.cpp \
CCSpriteBatchNode.cpp \
CCSpriteFrame.cpp \
CCSpriteFrameCache.cpp \
ccUTF8.cpp \
CCProfiling.cpp \
CCUserDefault.cpp \
TransformUtils.cpp \
base64.cpp \
ccUtils.cpp \
CCVertex.cpp \
CCNotificationCenter.cpp \
TGAlib.cpp \
../../external/tinyxml2/tinyxml2.cpp \
ZipUtils.cpp \
../../external/unzip/ioapi.cpp \
../../external/unzip/unzip.cpp \
ccCArray.cpp \
CCComponent.cpp \
CCComponentContainer.cpp \
CCIMEDispatcher.cpp \
CCTextFieldTTF.cpp \
CCTexture2D.cpp \
CCTextureAtlas.cpp \
CCTextureCache.cpp \
CCParallaxNode.cpp \
CCTMXLayer.cpp \
CCTMXObjectGroup.cpp \
CCTMXTiledMap.cpp \
CCTMXXMLParser.cpp \
CCTileMapAtlas.cpp \
CCGLProgram.cpp \
ccGLStateCache.cpp \
CCShaderCache.cpp \
ccShaders.cpp \
../math/kazmath/src/aabb.c \
../math/kazmath/src/plane.c \
../math/kazmath/src/vec2.c \
../math/kazmath/src/mat3.c \
../math/kazmath/src/quaternion.c \
../math/kazmath/src/vec3.c \
../math/kazmath/src/mat4.c \
../math/kazmath/src/ray2.c \
../math/kazmath/src/vec4.c \
../math/kazmath/src/neon_matrix_impl.c \
../math/kazmath/src/utility.c \
../math/kazmath/src/GL/mat4stack.c \
../math/kazmath/src/GL/matrix.c \
CCCamera.cpp \
CCConfiguration.cpp \
CCDirector.cpp \
CCScheduler.cpp \
ccFPSImages.c \
ccTypes.cpp \
cocos2d.cpp \
CCDeprecated.cpp
COCOS_ROOT = ../..
include cocos2dx.mk
CXXFLAGS += -Wno-sequence-point
CCFLAGS += -Wno-sequence-point
STATICLIBS += $(LIB_DIR)/libchipmunk.a
TARGET := $(LIB_DIR)/$(TARGET)
all: $(TARGET)
$(TARGET): $(OBJECTS) $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_LINK)$(CXX) $(CXXFLAGS) $(OBJECTS) -shared -o $@ $(SHAREDLIBS) $(STATICLIBS) $(LIBS)
$(OBJ_DIR)/%.o: %.cpp $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@
$(OBJ_DIR)/%.o: ../%.cpp $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@
$(OBJ_DIR)/%.o: ../../%.cpp $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@
$(OBJ_DIR)/%.o: %.c $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CC)$(CC) $(CCFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@
$(OBJ_DIR)/%.o: ../%.c $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CC)$(CC) $(CCFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@

View File

@ -128,4 +128,8 @@ Application::Platform Application::getTargetPlatform()
return Platform::OS_ANDROID;
}
void Application::applicationScreenSizeChanged(int newWidth, int newHeight) {
}
NS_CC_END

View File

@ -50,6 +50,13 @@ public:
*/
virtual Platform getTargetPlatform();
/**
@brief This function will be called when the application screen size is changed.
@param new width
@param new height
*/
virtual void applicationScreenSizeChanged(int newWidth, int newHeight);
protected:
static Application * sm_pSharedApplication;
};

View File

View File

@ -12,6 +12,7 @@
#include <android/configuration.h>
#include <pthread.h>
#include <chrono>
#include "CCDirector.h"
#include "CCApplication.h"
@ -69,6 +70,9 @@ struct engine {
struct saved_state state;
};
static bool isContentRectChanged = false;
static std::chrono::steady_clock::time_point timeRectChanged;
static struct engine engine;
static char* editboxText = NULL;
@ -127,7 +131,7 @@ static void cocos_init(cocos_dimensions d, struct android_app* app) {
cocos2d::GL::invalidateStateCache();
cocos2d::ShaderCache::getInstance()->reloadDefaultShaders();
cocos2d::DrawPrimitives::init();
cocos2d::TextureCache::reloadAllTextures();
cocos2d::VolatileTextureMgr::reloadAllTextures();
cocos2d::NotificationCenter::getInstance()->postNotification(EVNET_COME_TO_FOREGROUND, NULL);
cocos2d::Director::getInstance()->setGLDefaultValues();
}
@ -558,6 +562,11 @@ static void engine_handle_cmd(struct android_app* app, int32_t cmd) {
}
}
static void onContentRectChanged(ANativeActivity* activity, const ARect* rect) {
timeRectChanged = std::chrono::steady_clock::now();
isContentRectChanged = true;
}
/**
* This is the main entry point of a native application that is using
* android_native_app_glue. It runs in its own thread, with its own
@ -586,6 +595,9 @@ void android_main(struct android_app* state) {
engine.state = *(struct saved_state*)state->savedState;
}
// Screen size change support
state->activity->callbacks->onContentRectChanged = onContentRectChanged;
// loop waiting for stuff to do.
while (1) {
@ -673,5 +685,20 @@ void android_main(struct android_app* state) {
} else {
LOG_RENDER_DEBUG("android_main : !engine.animating");
}
// Check if screen size changed
if (isContentRectChanged) {
std::chrono::duration<int, std::milli> duration(
std::chrono::duration_cast<std::chrono::duration<int, std::milli>>(std::chrono::steady_clock::now() - timeRectChanged));
// Wait about 30 ms to get new width and height. Without waiting we can get old values sometime
if (duration.count() > 30) {
isContentRectChanged = false;
int32_t newWidth = ANativeWindow_getWidth(engine.app->window);
int32_t newHeight = ANativeWindow_getHeight(engine.app->window);
cocos2d::Application::getInstance()->applicationScreenSizeChanged(newWidth, newHeight);
}
}
}
}

View File

@ -76,6 +76,13 @@ public:
*/
virtual Platform getTargetPlatform();
/**
@brief This function will be called when the application screen size is changed.
@param new width
@param new height
*/
virtual void applicationScreenSizeChanged(int newWidth, int newHeight);
protected:
static Application * sm_pSharedApplication;
};

View File

@ -146,4 +146,8 @@ Application::Platform Application::getTargetPlatform()
}
}
void Application::applicationScreenSizeChanged(int newWidth, int newHeight) {
}
NS_CC_END

0
cocos/2d/platform/ios/EAGLView.h Executable file → Normal file
View File

0
cocos/2d/platform/ios/OpenGL_Internal.h Executable file → Normal file
View File

0
cocos/2d/platform/mac/EAGLView.h Executable file → Normal file
View File

View File

@ -3,6 +3,17 @@ set(AUDIO_SRC
linux/FmodAudioPlayer.cpp
)
# architecture
if ( CMAKE_SIZEOF_VOID_P EQUAL 8 )
set(ARCH_DIR "64-bit")
else()
set(ARCH_DIR "32-bit")
endif()
include_directories(
../../external/linux-specific/fmod/include/${ARCH_DIR}
)
add_library(audio STATIC
${AUDIO_SRC}
)

0
cocos/audio/mac/CDXMacOSXSupport.h Executable file → Normal file
View File

0
cocos/audio/mac/CDXMacOSXSupport.mm Executable file → Normal file
View File

View File

@ -1,378 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="cdt.managedbuild.config.gnu.exe.debug.1982681102">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.debug.1982681102" moduleId="org.eclipse.cdt.core.settings" name="Debug">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/libCocosDenshion"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/libCocosDenshion/Debug"/>
<entry flags="RESOLVED" kind="libraryFile" name="cocosdenshion" srcPrefixMapping="" srcRootPath=""/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="so" artifactName="cocosdenshion" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.sharedLib" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.sharedLib" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.exe.debug.1982681102" name="Debug" parent="cdt.managedbuild.config.gnu.exe.debug" postannouncebuildStep="" postbuildStep="">
<folderInfo id="cdt.managedbuild.config.gnu.exe.debug.1982681102." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.exe.debug.1290289406" name="Linux GCC" superClass="cdt.managedbuild.toolchain.gnu.exe.debug">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.exe.debug.1343594495" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.exe.debug"/>
<builder buildPath="${workspace_loc:/libCocosDenshion/Debug}" id="cdt.managedbuild.target.gnu.builder.exe.debug.2041927999" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.exe.debug"/>
<tool id="cdt.managedbuild.tool.gnu.archiver.base.1293331295" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.base"/>
<tool command="g++" commandLinePattern="${COMMAND} ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT} ${INPUTS}" id="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug.2092876171" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug">
<option id="gnu.cpp.compiler.exe.debug.option.optimization.level.2020537008" name="Optimization Level" superClass="gnu.cpp.compiler.exe.debug.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.exe.debug.option.debugging.level.886209200" name="Debug Level" superClass="gnu.cpp.compiler.exe.debug.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.1002280254" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../../include"/>
<listOptionValue builtIn="false" value="../../third_party/fmod/api/inc"/>
<listOptionValue builtIn="false" value="../../../cocos2dx"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/kazmath/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/linux"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux"/>
</option>
<option id="gnu.cpp.compiler.option.preprocessor.def.865815406" name="Defined symbols (-D)" superClass="gnu.cpp.compiler.option.preprocessor.def" valueType="definedSymbols">
<listOptionValue builtIn="false" value="LINUX"/>
</option>
<option id="gnu.cpp.compiler.option.other.other.839117113" superClass="gnu.cpp.compiler.option.other.other" value="-c -fmessage-length=0 -std=c++0x" valueType="string"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1604049990" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.exe.debug.1178240227" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.exe.debug">
<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.exe.debug.option.optimization.level.206236808" name="Optimization Level" superClass="gnu.c.compiler.exe.debug.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.exe.debug.option.debugging.level.828037565" name="Debug Level" superClass="gnu.c.compiler.exe.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
<option id="gnu.c.compiler.option.include.paths.985313341" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.370598124" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.linker.exe.debug.1145844969" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.exe.debug">
<option defaultValue="true" id="gnu.c.link.option.shared.1822605485" name="Shared (-shared)" superClass="gnu.c.link.option.shared" valueType="boolean"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.cpp.linker.exe.debug.1767253018" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.exe.debug">
<option id="gnu.cpp.link.option.libs.956474372" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs">
<listOptionValue builtIn="false" value="fmodex"/>
</option>
<option defaultValue="true" id="gnu.cpp.link.option.shared.430688089" name="Shared (-shared)" superClass="gnu.cpp.link.option.shared" valueType="boolean"/>
<option id="gnu.cpp.link.option.paths.1630974641" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
<listOptionValue builtIn="false" value="../../third_party/fmod/api/lib"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.1207468004" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.exe.debug.1192863353" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.exe.debug">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.2047527740" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
</toolChain>
</folderInfo>
<sourceEntries>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="include"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="linux"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="third_party"/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
</cconfiguration>
<cconfiguration id="cdt.managedbuild.config.gnu.exe.debug.1982681102.2081582318">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.debug.1982681102.2081582318" moduleId="org.eclipse.cdt.core.settings" name="Debug64">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/libCocosDenshion"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/libCocosDenshion/Debug64"/>
<entry flags="RESOLVED" kind="libraryFile" name="cocosdenshion" srcPrefixMapping="" srcRootPath=""/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="so" artifactName="cocosdenshion" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.sharedLib" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.sharedLib" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.exe.debug.1982681102.2081582318" name="Debug64" parent="cdt.managedbuild.config.gnu.exe.debug" postannouncebuildStep="" postbuildStep="">
<folderInfo id="cdt.managedbuild.config.gnu.exe.debug.1982681102.2081582318." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.exe.debug.1251965262" name="Linux GCC" resourceTypeBasedDiscovery="false" superClass="cdt.managedbuild.toolchain.gnu.exe.debug">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.exe.debug.211842" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.exe.debug"/>
<builder buildPath="${workspace_loc:/libCocosDenshion/Debug}" id="cdt.managedbuild.target.gnu.builder.exe.debug.320790206" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.exe.debug"/>
<tool id="cdt.managedbuild.tool.gnu.archiver.base.1969425105" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.base"/>
<tool command="g++" commandLinePattern="${COMMAND} ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT} ${INPUTS}" id="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug.672235223" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug">
<option id="gnu.cpp.compiler.exe.debug.option.optimization.level.903351554" name="Optimization Level" superClass="gnu.cpp.compiler.exe.debug.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.exe.debug.option.debugging.level.1967729847" name="Debug Level" superClass="gnu.cpp.compiler.exe.debug.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.2029142422" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../../include"/>
<listOptionValue builtIn="false" value="../../third_party/fmod/lib64/api/inc"/>
<listOptionValue builtIn="false" value="../../../cocos2dx"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/kazmath/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/linux"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux"/>
</option>
<option id="gnu.cpp.compiler.option.other.pic.2083020950" name="Position Independent Code (-fPIC)" superClass="gnu.cpp.compiler.option.other.pic" value="true" valueType="boolean"/>
<option id="gnu.cpp.compiler.option.preprocessor.def.1494127435" name="Defined symbols (-D)" superClass="gnu.cpp.compiler.option.preprocessor.def" valueType="definedSymbols">
<listOptionValue builtIn="false" value="LINUX"/>
</option>
<option id="gnu.cpp.compiler.option.other.other.2109978312" superClass="gnu.cpp.compiler.option.other.other" value="-c -fmessage-length=0 -std=c++0x" valueType="string"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1392083650" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.exe.debug.1363971045" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.exe.debug">
<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.exe.debug.option.optimization.level.1819118208" name="Optimization Level" superClass="gnu.c.compiler.exe.debug.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.exe.debug.option.debugging.level.899323922" name="Debug Level" superClass="gnu.c.compiler.exe.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
<option id="gnu.c.compiler.option.include.paths.418636795" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.519362348" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.linker.exe.debug.92652741" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.exe.debug">
<option defaultValue="true" id="gnu.c.link.option.shared.1744079703" name="Shared (-shared)" superClass="gnu.c.link.option.shared" valueType="boolean"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.cpp.linker.exe.debug.295915722" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.exe.debug">
<option id="gnu.cpp.link.option.libs.540157938" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs">
<listOptionValue builtIn="false" value="fmodex64"/>
</option>
<option defaultValue="true" id="gnu.cpp.link.option.shared.1948419879" name="Shared (-shared)" superClass="gnu.cpp.link.option.shared" valueType="boolean"/>
<option id="gnu.cpp.link.option.paths.1944745188" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
<listOptionValue builtIn="false" value="../../third_party/fmod/lib64/api/lib"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.1586199085" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.exe.debug.1645649559" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.exe.debug">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.210703151" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
</toolChain>
</folderInfo>
<sourceEntries>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="include"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="linux"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="third_party"/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
</cconfiguration>
<cconfiguration id="cdt.managedbuild.config.gnu.exe.debug.1982681102.187750332">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.debug.1982681102.187750332" moduleId="org.eclipse.cdt.core.settings" name="Release64">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/libCocosDenshion"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/libCocosDenshion/Release64"/>
<entry flags="RESOLVED" kind="libraryFile" name="cocosdenshion" srcPrefixMapping="" srcRootPath=""/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="so" artifactName="cocosdenshion" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.sharedLib" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.sharedLib" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.exe.debug.1982681102.187750332" name="Release64" parent="cdt.managedbuild.config.gnu.exe.debug" postannouncebuildStep="" postbuildStep="">
<folderInfo id="cdt.managedbuild.config.gnu.exe.debug.1982681102.187750332." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.exe.debug.1938658621" name="Linux GCC" superClass="cdt.managedbuild.toolchain.gnu.exe.debug">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.exe.debug.288132493" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.exe.debug"/>
<builder buildPath="${workspace_loc:/libCocosDenshion/Debug}" id="cdt.managedbuild.target.gnu.builder.exe.debug.328031139" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.exe.debug"/>
<tool id="cdt.managedbuild.tool.gnu.archiver.base.1714134548" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.base"/>
<tool command="g++" commandLinePattern="${COMMAND} ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT} ${INPUTS}" id="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug.120170295" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug">
<option id="gnu.cpp.compiler.exe.debug.option.optimization.level.712619352" name="Optimization Level" superClass="gnu.cpp.compiler.exe.debug.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
<option id="gnu.cpp.compiler.exe.debug.option.debugging.level.427176521" name="Debug Level" superClass="gnu.cpp.compiler.exe.debug.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.55801596" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../../include"/>
<listOptionValue builtIn="false" value="../../third_party/fmod/lib64/api/inc"/>
<listOptionValue builtIn="false" value="../../../cocos2dx"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/kazmath/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/linux"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux"/>
</option>
<option id="gnu.cpp.compiler.option.other.pic.146404933" name="Position Independent Code (-fPIC)" superClass="gnu.cpp.compiler.option.other.pic" value="true" valueType="boolean"/>
<option id="gnu.cpp.compiler.option.preprocessor.def.1600218526" name="Defined symbols (-D)" superClass="gnu.cpp.compiler.option.preprocessor.def" valueType="definedSymbols">
<listOptionValue builtIn="false" value="LINUX"/>
</option>
<option id="gnu.cpp.compiler.option.other.other.800236610" superClass="gnu.cpp.compiler.option.other.other" value="-c -fmessage-length=0 -std=c++0x" valueType="string"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1588316235" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.exe.debug.181942020" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.exe.debug">
<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.exe.debug.option.optimization.level.877368673" name="Optimization Level" superClass="gnu.c.compiler.exe.debug.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.exe.debug.option.debugging.level.906521804" name="Debug Level" superClass="gnu.c.compiler.exe.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
<option id="gnu.c.compiler.option.include.paths.1194563088" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1768675996" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.linker.exe.debug.1360213002" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.exe.debug">
<option defaultValue="true" id="gnu.c.link.option.shared.349128126" name="Shared (-shared)" superClass="gnu.c.link.option.shared" valueType="boolean"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.cpp.linker.exe.debug.320821186" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.exe.debug">
<option id="gnu.cpp.link.option.libs.1692331593" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs">
<listOptionValue builtIn="false" value="fmodex64"/>
</option>
<option defaultValue="true" id="gnu.cpp.link.option.shared.413846573" name="Shared (-shared)" superClass="gnu.cpp.link.option.shared" valueType="boolean"/>
<option id="gnu.cpp.link.option.paths.1389333736" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
<listOptionValue builtIn="false" value="../../third_party/fmod/lib64/api/lib"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.752809568" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.exe.debug.1770910937" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.exe.debug">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.425462237" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
</toolChain>
</folderInfo>
<sourceEntries>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="include"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="linux"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="third_party"/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
</cconfiguration>
<cconfiguration id="cdt.managedbuild.config.gnu.exe.debug.1982681102.1980455286">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.exe.debug.1982681102.1980455286" moduleId="org.eclipse.cdt.core.settings" name="Release">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/libCocosDenshion"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/libCocosDenshion/Release"/>
<entry flags="RESOLVED" kind="libraryFile" name="cocosdenshion" srcPrefixMapping="" srcRootPath=""/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="so" artifactName="cocosdenshion" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.sharedLib" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.sharedLib" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.exe.debug.1982681102.1980455286" name="Release" parent="cdt.managedbuild.config.gnu.exe.debug" postannouncebuildStep="" postbuildStep="">
<folderInfo id="cdt.managedbuild.config.gnu.exe.debug.1982681102.1980455286." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.exe.debug.290994940" name="Linux GCC" superClass="cdt.managedbuild.toolchain.gnu.exe.debug">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.exe.debug.1518934121" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.exe.debug"/>
<builder buildPath="${workspace_loc:/libCocosDenshion/Debug}" id="cdt.managedbuild.target.gnu.builder.exe.debug.1444592736" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.exe.debug"/>
<tool id="cdt.managedbuild.tool.gnu.archiver.base.1436936172" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.base"/>
<tool command="g++" commandLinePattern="${COMMAND} ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT} ${INPUTS}" id="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug.1343498054" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug">
<option id="gnu.cpp.compiler.exe.debug.option.optimization.level.1947435447" name="Optimization Level" superClass="gnu.cpp.compiler.exe.debug.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
<option id="gnu.cpp.compiler.exe.debug.option.debugging.level.1318058097" name="Debug Level" superClass="gnu.cpp.compiler.exe.debug.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.659832591" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../../include"/>
<listOptionValue builtIn="false" value="../../third_party/fmod/api/inc"/>
<listOptionValue builtIn="false" value="../../../cocos2dx"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/kazmath/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/linux"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux"/>
</option>
<option id="gnu.cpp.compiler.option.preprocessor.def.916772535" name="Defined symbols (-D)" superClass="gnu.cpp.compiler.option.preprocessor.def" valueType="definedSymbols">
<listOptionValue builtIn="false" value="LINUX"/>
</option>
<option id="gnu.cpp.compiler.option.other.other.1960189312" superClass="gnu.cpp.compiler.option.other.other" value="-c -fmessage-length=0 -std=c++0x" valueType="string"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1203366553" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.exe.debug.1152172860" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.exe.debug">
<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.exe.debug.option.optimization.level.1273401393" name="Optimization Level" superClass="gnu.c.compiler.exe.debug.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.exe.debug.option.debugging.level.2067549607" name="Debug Level" superClass="gnu.c.compiler.exe.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
<option id="gnu.c.compiler.option.include.paths.1667632524" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.752229897" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.linker.exe.debug.1392521528" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.exe.debug">
<option defaultValue="true" id="gnu.c.link.option.shared.542656166" name="Shared (-shared)" superClass="gnu.c.link.option.shared" valueType="boolean"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.cpp.linker.exe.debug.1985024281" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.exe.debug">
<option id="gnu.cpp.link.option.libs.191504636" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs">
<listOptionValue builtIn="false" value="fmodex"/>
</option>
<option defaultValue="true" id="gnu.cpp.link.option.shared.1603126572" name="Shared (-shared)" superClass="gnu.cpp.link.option.shared" valueType="boolean"/>
<option id="gnu.cpp.link.option.paths.1309346195" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
<listOptionValue builtIn="false" value="../../third_party/fmod/api/lib"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.183238299" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.exe.debug.400809389" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.exe.debug">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.1500024287" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
</toolChain>
</folderInfo>
<sourceEntries>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="include"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="linux"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="third_party"/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="libCocosDenshion.cdt.managedbuild.target.gnu.exe.346390339" name="Executable" projectType="cdt.managedbuild.target.gnu.exe"/>
</storageModule>
<storageModule moduleId="refreshScope" versionNumber="2">
<configuration configurationName="Release">
<resource resourceType="PROJECT" workspacePath="/libCocosDenshion"/>
</configuration>
<configuration configurationName="Debug64">
<resource resourceType="PROJECT" workspacePath="/libCocosDenshion"/>
</configuration>
<configuration configurationName="Release64">
<resource resourceType="PROJECT" workspacePath="/libCocosDenshion"/>
</configuration>
<configuration configurationName="Debug">
<resource resourceType="PROJECT" workspacePath="/libCocosDenshion"/>
</configuration>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.debug.1982681102.2081582318;cdt.managedbuild.config.gnu.exe.debug.1982681102.2081582318.;cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug.672235223;cdt.managedbuild.tool.gnu.cpp.compiler.input.1392083650">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.debug.1982681102.2081582318">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.debug.1982681102.2081582318;cdt.managedbuild.config.gnu.exe.debug.1982681102.2081582318.;cdt.managedbuild.tool.gnu.c.compiler.exe.debug.1363971045;cdt.managedbuild.tool.gnu.c.compiler.input.519362348">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.debug.1982681102;cdt.managedbuild.config.gnu.exe.debug.1982681102.;cdt.managedbuild.tool.gnu.cpp.compiler.exe.debug.2092876171;cdt.managedbuild.tool.gnu.cpp.compiler.input.1604049990">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.release.509246766.545780261;cdt.managedbuild.config.gnu.exe.release.509246766.545780261.;cdt.managedbuild.tool.gnu.c.compiler.exe.release.874883491;cdt.managedbuild.tool.gnu.c.compiler.input.2040937042">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.release.509246766.545780261;cdt.managedbuild.config.gnu.exe.release.509246766.545780261.;cdt.managedbuild.tool.gnu.cpp.compiler.exe.release.461135607;cdt.managedbuild.tool.gnu.cpp.compiler.input.340228974">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.release.509246766.545780261">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.release.509246766;cdt.managedbuild.config.gnu.exe.release.509246766.;cdt.managedbuild.tool.gnu.cpp.compiler.exe.release.222121229;cdt.managedbuild.tool.gnu.cpp.compiler.input.1557365568">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.release.509246766;cdt.managedbuild.config.gnu.exe.release.509246766.;cdt.managedbuild.tool.gnu.c.compiler.exe.release.1919066836;cdt.managedbuild.tool.gnu.c.compiler.input.757092405">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.debug.1982681102;cdt.managedbuild.config.gnu.exe.debug.1982681102.;cdt.managedbuild.tool.gnu.c.compiler.exe.debug.1178240227;cdt.managedbuild.tool.gnu.c.compiler.input.370598124">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
</cproject>

View File

@ -1,100 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>libCocosDenshion</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
<dictionary>
<key>?name?</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.append_environment</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildArguments</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildCommand</key>
<value>make</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
<value>${workspace_loc:/CocosDenshion/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
<value>clean</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.contents</key>
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
<value>false</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.stopOnError</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
<value>true</value>
</dictionary>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
<linkedResources>
<link>
<name>include</name>
<type>2</type>
<locationURI>PARENT-1-PROJECT_LOC/include</locationURI>
</link>
<link>
<name>linux</name>
<type>2</type>
<locationURI>PARENT-1-PROJECT_LOC/linux</locationURI>
</link>
<link>
<name>third_party</name>
<type>2</type>
<locationURI>PARENT-1-PROJECT_LOC/third_party</locationURI>
</link>
</linkedResources>
</projectDescription>

View File

@ -1,20 +0,0 @@
################################################################################
# Do not include this file in your project: see cocos2dx.pri.
################################################################################
linux {
# We will compile extensions on demand using Makefile.
build_CocosDension.name = Build extension static library
build_CocosDension.input = $$PWD/Makefile
build_CocosDension.output = $$CC_LIBRARY_DIR/libcocosdenshion.so
build_CocosDension.target = $$CC_LIBRARY_DIR/libcocosdenshion.so
build_CocosDension.CONFIG = no_link target_predeps
build_CocosDension.commands = cd $$PWD && make $$CC_MAKE_FLAGS
QMAKE_EXTRA_COMPILERS += build_CocosDension
QMAKE_EXTRA_TARGETS += build_CocosDension
PRE_TARGETDEPS += $$CC_LIBRARY_DIR/libcocosdenshion.so
LIBS += -lcocosdenshion
}

View File

@ -1,49 +0,0 @@
TARGET = libcocosdenshion.so
INCLUDES = -I.. -I../include
##Using OpenAL
ifeq ($(OPENAL),1)
SOURCES = ../openal/OpenALDecoder.cpp \
../openal/SimpleAudioEngineOpenAL.cpp
SHAREDLIBS += -lopenal -lalut
ifeq ($(OPENAL_MP3),1)
DEFINES += -DENABLE_MPG123
SHAREDLIBS += -lmpg123
endif
ifneq ($(NOVORBIS),1)
SHAREDLIBS += -logg -lvorbis -lvorbisfile
else
DEFINES += -DDISABLE_VORBIS
endif
##Using FMOD
else
SOURCES = \
../linux/SimpleAudioEngineFMOD.cpp \
../linux/FmodAudioPlayer.cpp
ifeq ($(LBITS),64)
INCLUDES += -I../third-party/fmod/lib64/api/inc
else
INCLUDES += -I../third-party/fmod/api/inc
endif
endif
COCOS_ROOT = ../../..
include $(COCOS_ROOT)/cocos/2d/cocos2dx.mk
TARGET := $(LIB_DIR)/$(TARGET)
all: $(TARGET)
$(TARGET): $(OBJECTS) $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_LINK)$(CXX) $(CXXFLAGS) $(OBJECTS) -shared -o $(TARGET) $(SHAREDLIBS) $(STATICLIBS)
$(OBJ_DIR)/%.o: ../%.cpp $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) $(VISIBILITY) -c $< -o $@

View File

@ -833,7 +833,7 @@ CCBKeyframe* CCBReader::readKeyframe(PropertyType type)
{
spriteFile = _CCBRootPath + spriteFile;
Texture2D *texture = TextureCache::getInstance()->addImage(spriteFile.c_str());
Texture2D *texture = Director::getInstance()->getTextureCache()->addImage(spriteFile.c_str());
Rect bounds = Rect(0, 0, texture->getContentSize().width, texture->getContentSize().height);
spriteFrame = SpriteFrame::createWithTexture(texture, bounds);

View File

@ -577,7 +577,7 @@ SpriteFrame * NodeLoader::parsePropTypeSpriteFrame(Node * pNode, Node * pParent,
if (spriteSheet.length() == 0)
{
spriteFile = ccbReader->getCCBRootPath() + spriteFile;
Texture2D * texture = TextureCache::getInstance()->addImage(spriteFile.c_str());
Texture2D * texture = Director::getInstance()->getTextureCache()->addImage(spriteFile.c_str());
if(texture != NULL) {
Rect bounds = Rect(0, 0, texture->getContentSize().width, texture->getContentSize().height);
spriteFrame = SpriteFrame::createWithTexture(texture, bounds);
@ -635,7 +635,7 @@ Texture2D * NodeLoader::parsePropTypeTexture(Node * pNode, Node * pParent, CCBRe
if (spriteFile.length() > 0)
{
return TextureCache::getInstance()->addImage(spriteFile.c_str());
return Director::getInstance()->getTextureCache()->addImage(spriteFile.c_str());
}
else
{

View File

@ -1,44 +0,0 @@
TARGET = libcocosbuilder.a
INCLUDES =
SOURCES = CCBFileLoader.cpp \
CCMenuItemImageLoader.cpp \
CCBReader.cpp \
CCMenuItemLoader.cpp \
CCControlButtonLoader.cpp \
CCNodeLoader.cpp \
CCControlLoader.cpp \
CCNodeLoaderLibrary.cpp \
CCLabelBMFontLoader.cpp \
CCParticleSystemQuadLoader.cpp \
CCLabelTTFLoader.cpp \
CCScale9SpriteLoader.cpp \
CCLayerColorLoader.cpp \
CCScrollViewLoader.cpp \
CCLayerGradientLoader.cpp \
CCSpriteLoader.cpp \
CCLayerLoader.cpp \
CCBAnimationManager.cpp \
CCBKeyframe.cpp \
CCBSequence.cpp \
CCBSequenceProperty.cpp \
CCBValue.cpp \
CCNode+CCBRelativePositioning.cpp
include ../../2d/cocos2dx.mk
CXXFLAGS += -Wno-multichar
TARGET := $(LIB_DIR)/$(TARGET)
all: $(TARGET)
$(TARGET): $(OBJECTS) $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_AR)$(AR) $(ARFLAGS) $@ $(OBJECTS)
$(OBJ_DIR)/%.o: %.cpp $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@

View File

@ -47,6 +47,7 @@ InputDelegate::~InputDelegate(void)
dispatcher->removeEventListener(_touchListener);
dispatcher->removeEventListener(_keyboardListener);
dispatcher->removeEventListener(_accelerometerListener);
Device::setAccelerometerEnabled(false);
}
bool InputDelegate::onTouchBegan(Touch *pTouch, Event *pEvent)
@ -196,6 +197,8 @@ void InputDelegate::setAccelerometerEnabled(bool enabled)
dispatcher->removeEventListener(_accelerometerListener);
_accelerometerListener = nullptr;
Device::setAccelerometerEnabled(enabled);
if (enabled)
{
auto listener = EventListenerAcceleration::create(CC_CALLBACK_2(InputDelegate::onAcceleration, this));

0
cocos/editor-support/cocostudio/CCSGUIReader.cpp Executable file → Normal file
View File

0
cocos/editor-support/cocostudio/CCSGUIReader.h Executable file → Normal file
View File

View File

@ -1,69 +0,0 @@
TARGET = libcocostudio.a
COCOS_ROOT=../../..
INCLUDES = -I../../2d \
-I../../../external \
-I.. \
-I../.. \
SOURCES = CCActionFrame.cpp \
CCActionFrameEasing.cpp \
CCActionManagerEx.cpp \
CCActionNode.cpp \
CCActionObject.cpp \
CCArmature.cpp \
CCBone.cpp \
CCArmatureAnimation.cpp \
CCProcessBase.cpp \
CCTween.cpp \
CCDatas.cpp \
CCBatchNode.cpp \
CCDecorativeDisplay.cpp \
CCDisplayFactory.cpp \
CCDisplayManager.cpp \
CCSkin.cpp \
CCColliderDetector.cpp \
CCArmatureDataManager.cpp \
CCArmatureDefine.cpp \
CCDataReaderHelper.cpp \
CCSpriteFrameCacheHelper.cpp \
CCTransformHelp.cpp \
CCTweenFunction.cpp \
CCUtilMath.cpp \
CCComAttribute.cpp \
CCComAudio.cpp \
CCComController.cpp \
CCComRender.cpp \
CCInputDelegate.cpp \
CSContentJsonDictionary.cpp \
DictionaryHelper.cpp \
CCSGUIReader.cpp \
CCSSceneReader.cpp \
../../../external/json/json_reader.cpp \
../../../external/json/json_value.cpp \
../../../external/json/json_writer.cpp
include ../../2d/cocos2dx.mk
CXXFLAGS += -Wno-multichar
TARGET := $(LIB_DIR)/$(TARGET)
all: $(TARGET)
$(TARGET): $(OBJECTS) $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_AR)$(AR) $(ARFLAGS) $@ $(OBJECTS)
$(OBJ_DIR)/%.o: %.cpp $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@
$(OBJ_DIR)/%.o: ../../../%.cpp $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@
$(OBJ_DIR)/%.o: %.c $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CC)$(CC) $(CCFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@

View File

@ -1,42 +0,0 @@
TARGET = libspine.a
INCLUDES = -I..
SOURCES = Animation.cpp \
AnimationState.cpp \
AnimationStateData.cpp \
Atlas.cpp \
AtlasAttachmentLoader.cpp \
Attachment.cpp \
AttachmentLoader.cpp \
Bone.cpp \
BoneData.cpp \
Json.cpp \
RegionAttachment.cpp \
Skeleton.cpp \
SkeletonData.cpp \
SkeletonJson.cpp \
Skin.cpp \
Slot.cpp \
SlotData.cpp \
extension.cpp \
spine-cocos2dx.cpp \
CCSkeleton.cpp \
CCSkeletonAnimation.cpp
include ../../2d/cocos2dx.mk
CXXFLAGS += -Wno-multichar
TARGET := $(LIB_DIR)/$(TARGET)
all: $(TARGET)
$(TARGET): $(OBJECTS) $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_AR)$(AR) $(ARFLAGS) $@ $(OBJECTS)
$(OBJ_DIR)/%.o: %.cpp $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@

View File

@ -31,7 +31,7 @@ USING_NS_CC;
namespace spine {
void _AtlasPage_createTexture (AtlasPage* self, const char* path) {
Texture2D* texture = TextureCache::getInstance()->addImage(path);
Texture2D* texture = Director::getInstance()->getTextureCache()->addImage(path);
TextureAtlas* textureAtlas = TextureAtlas::createWithTexture(texture, 4);
textureAtlas->retain();
self->rendererObject = textureAtlas;

View File

@ -1,43 +0,0 @@
TARGET = libgui.a
INCLUDES = -I../ \
-I../editor-support \
-I../../external
SOURCES = UIRootWidget.cpp \
UIWidget.cpp \
UILayout.cpp \
UILayoutParameter.cpp \
UILayoutDefine.cpp \
CocosGUI.cpp \
UIHelper.cpp \
UIInputManager.cpp \
UILayer.cpp \
UIListView.cpp \
UIPageView.cpp \
UIScrollView.cpp \
UIButton.cpp \
UICheckBox.cpp \
UIImageView.cpp \
UILabel.cpp \
UILabelAtlas.cpp \
UILabelBMFont.cpp \
UILoadingBar.cpp \
UISlider.cpp \
UITextField.cpp
include ../2d/cocos2dx.mk
CXXFLAGS += -Wno-multichar
TARGET := $(LIB_DIR)/$(TARGET)
all: $(TARGET)
$(TARGET): $(OBJECTS) $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_AR)$(AR) $(ARFLAGS) $@ $(OBJECTS)
$(OBJ_DIR)/%.o: %.cpp $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@

View File

@ -1,22 +0,0 @@
TARGET = libnetwork.a
INCLUDES = -I..
SOURCES = HttpClient.cpp \
SocketIO.cpp
include ../2d/cocos2dx.mk
CXXFLAGS += -Wno-multichar
TARGET := $(LIB_DIR)/$(TARGET)
all: $(TARGET)
$(TARGET): $(OBJECTS) $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_AR)$(AR) $(ARFLAGS) $@ $(OBJECTS)
$(OBJ_DIR)/%.o: %.cpp $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@

@ -1 +1 @@
Subproject commit 7199547f2f9ffbac4fdeac20e4bb50328c6d9352
Subproject commit 5788b2500339473ecc19acf1c2e43656a2537a6d

View File

@ -9,7 +9,6 @@ LOCAL_MODULE_FILENAME := libcocos2dxjsb
LOCAL_SRC_FILES := ScriptingCore.cpp \
cocos2d_specifics.cpp \
js_manual_conversions.cpp \
cocosjs_manual_conversions.cpp \
js_bindings_core.cpp \
js_bindings_opengl.cpp \
jsb_opengl_functions.cpp \

File diff suppressed because it is too large Load Diff

View File

@ -17,6 +17,7 @@
#include "jsapi.h"
#include "jsfriendapi.h"
#include "spidermonkey_specifics.h"
#include "js_manual_conversions.h"
void js_log(const char *format, ...);
@ -204,98 +205,25 @@ public:
int handleKeypadEvent(void* data);
};
// some utility functions
// to native
JSBool jsval_to_int32( JSContext *cx, jsval vp, int32_t *ret );
JSBool jsval_to_uint32( JSContext *cx, jsval vp, uint32_t *ret );
JSBool jsval_to_uint16( JSContext *cx, jsval vp, uint16_t *ret );
JSBool jsval_to_long_long(JSContext *cx, jsval v, long long* ret);
JSBool jsval_to_std_string(JSContext *cx, jsval v, std::string* ret);
JSBool jsval_to_ccpoint(JSContext *cx, jsval v, Point* ret);
JSBool jsval_to_ccrect(JSContext *cx, jsval v, Rect* ret);
JSBool jsval_to_ccsize(JSContext *cx, jsval v, Size* ret);
JSBool jsval_to_cccolor4b(JSContext *cx, jsval v, Color4B* ret);
JSBool jsval_to_cccolor4f(JSContext *cx, jsval v, Color4F* ret);
JSBool jsval_to_cccolor3b(JSContext *cx, jsval v, Color3B* ret);
JSBool jsval_to_ccarray_of_CCPoint(JSContext* cx, jsval v, Point **points, int *numPoints);
JSBool jsval_to_ccarray(JSContext* cx, jsval v, Array** ret);
JSBool jsval_to_ccdictionary(JSContext* cx, jsval v, Dictionary** ret);
JSBool jsval_to_ccacceleration(JSContext* cx,jsval v, Acceleration* ret);
JSBool jsvals_variadic_to_ccarray( JSContext *cx, jsval *vp, int argc, Array** ret);
JSBool jsval_to_ccaffinetransform(JSContext* cx, jsval v, AffineTransform* ret);
JSBool jsval_to_FontDefinition( JSContext *cx, jsval vp, FontDefinition* ret );
// from native
jsval int32_to_jsval( JSContext *cx, int32_t l);
jsval uint32_to_jsval( JSContext *cx, uint32_t number );
jsval long_long_to_jsval(JSContext* cx, long long v);
jsval std_string_to_jsval(JSContext* cx, const std::string& v);
jsval c_string_to_jsval(JSContext* cx, const char* v, size_t length = -1);
jsval ccpoint_to_jsval(JSContext* cx, const Point& v);
jsval ccrect_to_jsval(JSContext* cx, const Rect& v);
jsval ccsize_to_jsval(JSContext* cx, const Size& v);
jsval cccolor4b_to_jsval(JSContext* cx, const Color4B& v);
jsval cccolor4f_to_jsval(JSContext* cx, const Color4F& v);
jsval cccolor3b_to_jsval(JSContext* cx, const Color3B& v);
jsval ccdictionary_to_jsval(JSContext* cx, Dictionary *dict);
jsval ccarray_to_jsval(JSContext* cx, Array *arr);
jsval ccacceleration_to_jsval(JSContext* cx, const Acceleration& v);
jsval ccaffinetransform_to_jsval(JSContext* cx, const AffineTransform& t);
jsval FontDefinition_to_jsval(JSContext* cx, const FontDefinition& t);
JSObject* NewGlobalObject(JSContext* cx, bool debug = false);
// just a simple utility to avoid mem leaking when using JSString
class JSStringWrapper
{
JSString* string;
const char* buffer;
public:
JSStringWrapper() {
buffer = NULL;
}
JSStringWrapper(JSString* str, JSContext* cx = NULL) {
set(str, cx);
}
JSStringWrapper(jsval val, JSContext* cx = NULL) {
set(val, cx);
}
~JSStringWrapper() {
if (buffer) {
//JS_free(ScriptingCore::getInstance()->getGlobalContext(), (void*)buffer);
delete[] buffer;
}
}
void set(jsval val, JSContext* cx) {
if (val.isString()) {
this->set(val.toString(), cx);
} else {
buffer = NULL;
}
}
void set(JSString* str, JSContext* cx) {
string = str;
if (!cx) {
cx = ScriptingCore::getInstance()->getGlobalContext();
}
// JS_EncodeString isn't supported in SpiderMonkey ff19.0.
//buffer = JS_EncodeString(cx, string);
unsigned short* pStrUTF16 = (unsigned short*)JS_GetStringCharsZ(cx, str);
buffer = cc_utf16_to_utf8(pStrUTF16, -1, NULL, NULL);
}
std::string get() {
return buffer;
}
JSStringWrapper();
JSStringWrapper(JSString* str, JSContext* cx = NULL);
JSStringWrapper(jsval val, JSContext* cx = NULL);
~JSStringWrapper();
void set(jsval val, JSContext* cx);
void set(JSString* str, JSContext* cx);
const char* get();
operator std::string() {
return std::string(buffer);
}
operator char*() {
return (char*)buffer;
}
private:
/* Copy and assignment are not supported. */
const char* _buffer;
/* Copy and assignment are not supported. */
JSStringWrapper(const JSStringWrapper &another);
JSStringWrapper &operator=(const JSStringWrapper &another);
};

View File

@ -1 +1 @@
6558be4f421be9227dc4fabf1b682d479825bd18
2a8f07a22574900290f772ad5a580ef9fc57a9b8

View File

@ -1 +1 @@
1c5eb9cd58c82de77374cdfa5c9ff647cc8b2f02
ac3eca550f3b923d03d042ed63edf3b66cc183b7

View File

@ -42,9 +42,13 @@ static JSBool dummy_constructor(JSContext *cx, uint32_t argc, jsval *vp) {
T* cobj = new T();
cobj->autorelease();
js_type_class_t *p;
uint32_t typeId = t.s_id();
HASH_FIND_INT(_js_global_type_ht, &typeId, p);
assert(p);
long typeId = t.s_id();
auto typeMapIter = _js_global_type_map.find(typeId);
CCASSERT(typeMapIter != _js_global_type_map.end(), "Can't find the class type!");
p = typeMapIter->second;
CCASSERT(p, "The value is null.");
JSObject *_tmp = JS_NewObject(cx, p->jsclass, p->proto, p->parentProto);
js_proxy_t *pp = jsb_new_proxy(cobj, _tmp);
JS_AddObjectRoot(cx, &pp->obj);
@ -179,10 +183,14 @@ JSBool JSB_CCPhysicsDebugNode_debugNodeForCPSpace__static(JSContext *cx, uint32_
do {
if (ret) {
TypeTest<PhysicsDebugNode> t;
js_type_class_t *typeClass;
uint32_t typeId = t.s_id();
HASH_FIND_INT(_js_global_type_ht, &typeId, typeClass);
assert(typeClass);
js_type_class_t *typeClass = nullptr;
long typeId = t.s_id();
auto typeMapIter = _js_global_type_map.find(typeId);
CCASSERT(typeMapIter != _js_global_type_map.end(), "Can't find the class type!");
typeClass = typeMapIter->second;
CCASSERT(typeClass, "The value is null.");
JSObject *obj = JS_NewObject(cx, typeClass->jsclass, typeClass->proto, typeClass->parentProto);
jsret = OBJECT_TO_JSVAL(obj);
js_proxy_t *p = jsb_new_proxy(ret, obj);
@ -265,24 +273,27 @@ void JSB_CCPhysicsDebugNode_createClass(JSContext *cx, JSObject* globalObj, cons
};
TypeTest<cocos2d::DrawNode> t1;
js_type_class_t *typeClass;
uint32_t typeId = t1.s_id();
HASH_FIND_INT(_js_global_type_ht, &typeId, typeClass);
assert(typeClass);
js_type_class_t *typeClass = nullptr;
long typeId = t1.s_id();
auto typeMapIter = _js_global_type_map.find(typeId);
CCASSERT(typeMapIter != _js_global_type_map.end(), "Can't find the class type!");
typeClass = typeMapIter->second;
CCASSERT(typeClass, "The value is null.");
JSB_CCPhysicsDebugNode_object = JS_InitClass(cx, globalObj, typeClass->proto, JSB_CCPhysicsDebugNode_class, dummy_constructor<PhysicsDebugNode>, 0,properties,funcs,NULL,st_funcs);
TypeTest<PhysicsDebugNode> t;
js_type_class_t *p;
typeId = t.s_id();
HASH_FIND_INT(_js_global_type_ht, &typeId, p);
if (!p) {
if (_js_global_type_map.find(typeId) == _js_global_type_map.end())
{
p = (js_type_class_t *)malloc(sizeof(js_type_class_t));
p->type = typeId;
p->jsclass = JSB_CCPhysicsDebugNode_class;
p->proto = JSB_CCPhysicsDebugNode_object;
p->parentProto = typeClass->proto;
HASH_ADD_INT(_js_global_type_ht, type, p);
_js_global_type_map.insert(std::make_pair(typeId, p));
}
}
@ -305,10 +316,13 @@ JSBool JSPROXY_CCPhysicsSprite_spriteWithFile_rect__static(JSContext *cx, uint32
do {
if (ret) {
TypeTest<PhysicsSprite> t;
js_type_class_t *typeClass;
uint32_t typeId = t.s_id();
HASH_FIND_INT(_js_global_type_ht, &typeId, typeClass);
assert(typeClass);
js_type_class_t *typeClass = nullptr;
long typeId = t.s_id();
auto typeMapIter = _js_global_type_map.find(typeId);
CCASSERT(typeMapIter != _js_global_type_map.end(), "Can't find the class type!");
typeClass = typeMapIter->second;
CCASSERT(typeClass, "The value is null.");
JSObject *obj = JS_NewObject(cx, typeClass->jsclass, typeClass->proto, typeClass->parentProto);
jsret = OBJECT_TO_JSVAL(obj);
js_proxy_t *p = jsb_new_proxy(ret, obj);
@ -331,10 +345,12 @@ JSBool JSPROXY_CCPhysicsSprite_spriteWithFile_rect__static(JSContext *cx, uint32
do {
if (ret) {
TypeTest<PhysicsSprite> t;
js_type_class_t *typeClass;
uint32_t typeId = t.s_id();
HASH_FIND_INT(_js_global_type_ht, &typeId, typeClass);
assert(typeClass);
js_type_class_t *typeClass = nullptr;
long typeId = t.s_id();
auto typeMapIter = _js_global_type_map.find(typeId);
CCASSERT(typeMapIter != _js_global_type_map.end(), "Can't find the class type!");
typeClass = typeMapIter->second;
CCASSERT(typeClass, "The value is null.");
JSObject *obj = JS_NewObject(cx, typeClass->jsclass, typeClass->proto, typeClass->parentProto);
jsret = OBJECT_TO_JSVAL(obj);
js_proxy_t *p = jsb_new_proxy(ret, obj);
@ -370,10 +386,12 @@ JSBool JSPROXY_CCPhysicsSprite_spriteWithSpriteFrame__static(JSContext *cx, uint
do {
if (ret) {
TypeTest<PhysicsSprite> t;
js_type_class_t *typeClass;
uint32_t typeId = t.s_id();
HASH_FIND_INT(_js_global_type_ht, &typeId, typeClass);
assert(typeClass);
js_type_class_t *typeClass = nullptr;
long typeId = t.s_id();
auto typeMapIter = _js_global_type_map.find(typeId);
CCASSERT(typeMapIter != _js_global_type_map.end(), "Can't find the class type!");
typeClass = typeMapIter->second;
CCASSERT(typeClass, "The value is null.");
JSObject *obj = JS_NewObject(cx, typeClass->jsclass, typeClass->proto, typeClass->parentProto);
jsret = OBJECT_TO_JSVAL(obj);
js_proxy_t *p = jsb_new_proxy(ret, obj);
@ -393,29 +411,35 @@ JSBool JSPROXY_CCPhysicsSprite_spriteWithSpriteFrameName__static(JSContext *cx,
JSBool ok = JS_TRUE;
const char* arg0;
std::string arg0_tmp;
if (argc >= 1) {
if (argc == 1) {
ok &= jsval_to_std_string(cx, argv[0], &arg0_tmp); arg0 = arg0_tmp.c_str();
}
PhysicsSprite* ret = PhysicsSprite::createWithSpriteFrameName(arg0);
jsval jsret;
do {
if (ret) {
TypeTest<PhysicsSprite> t;
js_type_class_t *typeClass;
uint32_t typeId = t.s_id();
HASH_FIND_INT(_js_global_type_ht, &typeId, typeClass);
assert(typeClass);
JSObject *obj = JS_NewObject(cx, typeClass->jsclass, typeClass->proto, typeClass->parentProto);
jsret = OBJECT_TO_JSVAL(obj);
js_proxy_t *p = jsb_new_proxy(ret, obj);
JS_AddNamedObjectRoot(cx, &p->obj, "CCPhysicsSprite");
} else {
jsret = JSVAL_NULL;
}
} while (0);
JS_SET_RVAL(cx, vp, jsret);
return JS_TRUE;
PhysicsSprite* ret = PhysicsSprite::createWithSpriteFrameName(arg0);
jsval jsret;
do {
if (ret) {
TypeTest<PhysicsSprite> t;
js_type_class_t *typeClass = nullptr;
long typeId = t.s_id();
auto typeMapIter = _js_global_type_map.find(typeId);
CCASSERT(typeMapIter != _js_global_type_map.end(), "Can't find the class type!");
typeClass = typeMapIter->second;
CCASSERT(typeClass, "The value is null.");
JSObject *obj = JS_NewObject(cx, typeClass->jsclass, typeClass->proto, typeClass->parentProto);
jsret = OBJECT_TO_JSVAL(obj);
js_proxy_t *p = jsb_new_proxy(ret, obj);
JS_AddNamedObjectRoot(cx, &p->obj, "CCPhysicsSprite");
} else {
jsret = JSVAL_NULL;
}
} while (0);
JS_SET_RVAL(cx, vp, jsret);
return JS_TRUE;
}
JS_ReportError(cx, "wrong number of arguments: %d, was expecting %d", argc, 1);
return JS_FALSE;
}
void JSPROXY_CCPhysicsSprite_createClass(JSContext *cx, JSObject* globalObj)
@ -450,24 +474,25 @@ void JSPROXY_CCPhysicsSprite_createClass(JSContext *cx, JSObject* globalObj)
};
TypeTest<cocos2d::Sprite> t1;
js_type_class_t *typeClass;
uint32_t typeId = t1.s_id();
HASH_FIND_INT(_js_global_type_ht, &typeId, typeClass);
assert(typeClass);
js_type_class_t *typeClass = nullptr;
long typeId = t1.s_id();
auto typeMapIter = _js_global_type_map.find(typeId);
CCASSERT(typeMapIter != _js_global_type_map.end(), "Can't find the class type!");
typeClass = typeMapIter->second;
CCASSERT(typeClass, "The value is null.");
JSPROXY_CCPhysicsSprite_object = JS_InitClass(cx, globalObj, typeClass->proto, JSPROXY_CCPhysicsSprite_class, dummy_constructor<PhysicsSprite>, 0,properties,funcs,NULL,st_funcs);
TypeTest<PhysicsSprite> t;
js_type_class_t *p;
typeId = t.s_id();
HASH_FIND_INT(_js_global_type_ht, &typeId, p);
if (!p) {
if (_js_global_type_map.find(typeId) == _js_global_type_map.end())
{
p = (js_type_class_t *)malloc(sizeof(js_type_class_t));
p->type = typeId;
p->jsclass = JSPROXY_CCPhysicsSprite_class;
p->proto = JSPROXY_CCPhysicsSprite_object;
p->parentProto = typeClass->proto;
HASH_ADD_INT(_js_global_type_ht, type, p);
_js_global_type_map.insert(std::make_pair(typeId, p));
}
}

View File

@ -27,7 +27,6 @@
#define __js_bindings_chipmunk_manual
#include "js_bindings_config.h"
#include "cocosjs_manual_conversions.h"
#include "js_manual_conversions.h"
#include "ScriptingCore.h"
#ifdef JSB_INCLUDE_CHIPMUNK

View File

@ -1 +1 @@
927efea93a520eeb9db9f62c8d8eb7a7b93b08dc
36a6cc6177c059364c6ccc3b1151b6475219b396

View File

@ -39,14 +39,23 @@ extern callfuncTarget_proxy_t *_callfuncTarget_native_ht;
*/
template <class T>
inline js_type_class_t *js_get_type_from_native(T* native_obj) {
js_type_class_t *typeProxy;
bool found = false;
long typeId = typeid(*native_obj).hash_code();
HASH_FIND_INT(_js_global_type_ht, &typeId, typeProxy);
if (!typeProxy) {
auto typeProxyIter = _js_global_type_map.find(typeId);
if (typeProxyIter == _js_global_type_map.end())
{
typeId = typeid(T).hash_code();
HASH_FIND_INT(_js_global_type_ht, &typeId, typeProxy);
typeProxyIter = _js_global_type_map.find(typeId);
if (typeProxyIter != _js_global_type_map.end())
{
found = true;
}
}
return typeProxy;
else
{
found = true;
}
return found ? typeProxyIter->second : nullptr;
}
/**
@ -101,19 +110,6 @@ protected:
jsval _extraData;
};
class JSCallFuncWrapper: public JSCallbackWrapper {
public:
JSCallFuncWrapper() {}
virtual ~JSCallFuncWrapper(void) {
return;
}
static void setTargetForNativeNode(Node *pNode, JSCallFuncWrapper *target);
static Array * getTargetForNativeNode(Node *pNode);
void callbackFunc(Node *node);
};
class JSScheduleWrapper: public JSCallbackWrapper {

View File

@ -1,134 +0,0 @@
#include "jsapi.h"
#include "jsfriendapi.h"
#include "ScriptingCore.h"
#include "js_bindings_config.h"
#include "cocosjs_manual_conversions.h"
#define JSB_COMPATIBLE_WITH_COCOS2D_HTML5_BASIC_TYPES
using namespace cocos2d;
JSBool jsval_to_CCPoint( JSContext *cx, jsval vp, Point *ret )
{
#ifdef JSB_COMPATIBLE_WITH_COCOS2D_HTML5_BASIC_TYPES
JSObject *jsobj;
if( ! JS_ValueToObject( cx, vp, &jsobj ) )
return JS_FALSE;
JSB_PRECONDITION( jsobj, "Not a valid JS object");
JS::RootedValue valx(cx);
JS::RootedValue valy(cx);
JSBool ok = JS_TRUE;
ok &= JS_GetProperty(cx, jsobj, "x", &valx);
ok &= JS_GetProperty(cx, jsobj, "y", &valy);
if( ! ok )
return JS_FALSE;
double x, y;
ok &= JS_ValueToNumber(cx, valx, &x);
ok &= JS_ValueToNumber(cx, valy, &y);
if( ! ok )
return JS_FALSE;
ret->x = x;
ret->y = y;
return JS_TRUE;
#else // #! JSB_COMPATIBLE_WITH_COCOS2D_HTML5_BASIC_TYPES
JSObject *tmp_arg;
if( ! JS_ValueToObject( cx, vp, &tmp_arg ) )
return JS_FALSE;
JSB_PRECONDITION( tmp_arg && JS_IsTypedArrayObject( tmp_arg, cx ), "Not a TypedArray object");
JSB_PRECONDITION( JS_GetTypedArrayByteLength( tmp_arg, cx ) == sizeof(cpVect), "Invalid length");
*ret = *(Point*)JS_GetArrayBufferViewData( tmp_arg, cx );
return JS_TRUE;
#endif // #! JSB_COMPATIBLE_WITH_COCOS2D_HTML5_BASIC_TYPES
}
JSBool jsval_to_CGPoint( JSContext *cx, jsval vp, cpVect *ret )
{
#ifdef JSB_COMPATIBLE_WITH_COCOS2D_HTML5_BASIC_TYPES
JSObject *jsobj;
if( ! JS_ValueToObject( cx, vp, &jsobj ) )
return JS_FALSE;
JSB_PRECONDITION( jsobj, "Not a valid JS object");
JS::RootedValue valx(cx);
JS::RootedValue valy(cx);
JSBool ok = JS_TRUE;
ok &= JS_GetProperty(cx, jsobj, "x", &valx);
ok &= JS_GetProperty(cx, jsobj, "y", &valy);
if( ! ok )
return JS_FALSE;
double x, y;
ok &= JS_ValueToNumber(cx, valx, &x);
ok &= JS_ValueToNumber(cx, valy, &y);
if( ! ok )
return JS_FALSE;
ret->x = x;
ret->y = y;
return JS_TRUE;
#else // #! JSB_COMPATIBLE_WITH_COCOS2D_HTML5_BASIC_TYPES
JSObject *tmp_arg;
if( ! JS_ValueToObject( cx, vp, &tmp_arg ) )
return JS_FALSE;
JSB_PRECONDITION( tmp_arg && JS_IsTypedArrayObject( tmp_arg, cx ), "Not a TypedArray object");
JSB_PRECONDITION( JS_GetTypedArrayByteLength( tmp_arg, cx ) == sizeof(cpVect), "Invalid length");
*ret = *(cpVect*)JS_GetArrayBufferViewData( tmp_arg, cx );
return JS_TRUE;
#endif // #! JSB_COMPATIBLE_WITH_COCOS2D_HTML5_BASIC_TYPES
}
jsval CGPoint_to_jsval( JSContext *cx, cpVect p)
{
#ifdef JSB_COMPATIBLE_WITH_COCOS2D_HTML5_BASIC_TYPES
JSObject *object = JS_NewObject(cx, NULL, NULL, NULL );
if (!object)
return JSVAL_VOID;
if (!JS_DefineProperty(cx, object, "x", DOUBLE_TO_JSVAL(p.x), NULL, NULL, JSPROP_ENUMERATE | JSPROP_PERMANENT) ||
!JS_DefineProperty(cx, object, "y", DOUBLE_TO_JSVAL(p.y), NULL, NULL, JSPROP_ENUMERATE | JSPROP_PERMANENT) )
return JSVAL_VOID;
return OBJECT_TO_JSVAL(object);
#else // JSB_COMPATIBLE_WITH_COCOS2D_HTML5_BASIC_TYPES
#ifdef __LP64__
JSObject *typedArray = JS_NewFloat64Array( cx, 2 );
#else
JSObject *typedArray = JS_NewFloat32Array( cx, 2 );
#endif
cpVect *buffer = (cpVect*)JS_GetArrayBufferViewData(typedArray, cx );
*buffer = p;
return OBJECT_TO_JSVAL(typedArray);
#endif // ! JSB_COMPATIBLE_WITH_COCOS2D_HTML5_BASIC_TYPES
}

View File

@ -1,24 +0,0 @@
#ifndef __COCOSJS_MANUAL_CONVERSIONS_H__
#define __COCOSJS_MANUAL_CONVERSIONS_H__
#include "chipmunk.h"
#include "cocos2d.h"
#include "js_manual_conversions.h"
//#ifdef __cplusplus
//extern "C" {
//#endif
JSBool jsval_to_CGPoint( JSContext *cx, jsval vp, cpVect *out );
jsval CGPoint_to_jsval( JSContext *cx, cpVect p );
//#ifdef __cplusplus
//}
//#endif
#define cpVect_to_jsval CGPoint_to_jsval
#define jsval_to_cpVect jsval_to_CGPoint
#endif /* __COCOSJS_MANUAL_CONVERSIONS_H__ */

View File

@ -43,17 +43,6 @@ typedef struct _hashJSObject
static tHashJSObject *hash = NULL;
static tHashJSObject *reverse_hash = NULL;
// Globals
char* JSB_association_proxy_key = NULL;
const char* JSB_version = "0.3-beta";
static void its_finalize(JSFreeOp *fop, JSObject *obj)
{
CCLOGINFO("Finalizing global class");
}
//#pragma mark JSBCore - Helper free functions
static void reportError(JSContext *cx, const char *message, JSErrorReport *report)
{
@ -68,7 +57,7 @@ static void reportError(JSContext *cx, const char *message, JSErrorReport *repor
void* jsb_get_proxy_for_jsobject(JSObject *obj)
{
tHashJSObject *element = NULL;
HASH_FIND_INT(hash, &obj, element);
HASH_FIND_PTR(hash, &obj, element);
if( element )
return element->proxy;
@ -88,13 +77,13 @@ void jsb_set_proxy_for_jsobject(void *proxy, JSObject *obj)
element->proxy = proxy;
element->jsObject = obj;
HASH_ADD_INT( hash, jsObject, element );
HASH_ADD_PTR( hash, jsObject, element );
}
void jsb_del_proxy_for_jsobject(JSObject *obj)
{
tHashJSObject *element = NULL;
HASH_FIND_INT(hash, &obj, element);
HASH_FIND_PTR(hash, &obj, element);
if( element ) {
HASH_DEL(hash, element);
free(element);
@ -107,7 +96,7 @@ void jsb_del_proxy_for_jsobject(JSObject *obj)
JSObject* jsb_get_jsobject_for_proxy(void *proxy)
{
tHashJSObject *element = NULL;
HASH_FIND_INT(reverse_hash, &proxy, element);
HASH_FIND_PTR(reverse_hash, &proxy, element);
if( element )
return element->jsObject;
@ -123,13 +112,13 @@ void jsb_set_jsobject_for_proxy(JSObject *jsobj, void* proxy)
element->proxy = proxy;
element->jsObject = jsobj;
HASH_ADD_INT( reverse_hash, proxy, element );
HASH_ADD_PTR( reverse_hash, proxy, element );
}
void jsb_del_jsobject_for_proxy(void* proxy)
{
tHashJSObject *element = NULL;
HASH_FIND_INT(reverse_hash, &proxy, element);
HASH_FIND_PTR(reverse_hash, &proxy, element);
if( element ) {
HASH_DEL(reverse_hash, element);
free(element);

View File

@ -30,10 +30,6 @@
#include "chipmunk.h"
#include "SimpleAudioEngine.h"
// Globals
// one shared key for associations
extern char * JSB_association_proxy_key;
#ifdef __cplusplus
extern "C" {
#endif
@ -77,7 +73,6 @@ extern "C" {
// needed for callbacks. It does nothing.
JSBool JSB_do_nothing(JSContext *cx, uint32_t argc, jsval *vp);
extern const char* JSB_version;
#ifdef __cplusplus
}
#endif

View File

@ -32,24 +32,27 @@ JSBool js_cocos2dx_GLNode_constructor(JSContext *cx, uint32_t argc, jsval *vp)
if (argc == 0) {
GLNode* cobj = new GLNode();
#ifdef COCOS2D_JAVASCRIPT
cocos2d::Object *_ccobj = dynamic_cast<cocos2d::Object *>(cobj);
if (_ccobj) {
_ccobj->autorelease();
}
#endif
TypeTest<GLNode> t;
js_type_class_t *typeClass;
uint32_t typeId = t.s_id();
HASH_FIND_INT(_js_global_type_ht, &typeId, typeClass);
assert(typeClass);
js_type_class_t *typeClass = nullptr;
long typeId = t.s_id();
auto typeMapIter = _js_global_type_map.find(typeId);
CCASSERT(typeMapIter != _js_global_type_map.end(), "Can't find the class type!");
typeClass = typeMapIter->second;
CCASSERT(typeClass, "The value is null.");
JSObject *obj = JS_NewObject(cx, typeClass->jsclass, typeClass->proto, typeClass->parentProto);
JS_SET_RVAL(cx, vp, OBJECT_TO_JSVAL(obj));
// link the native object with the javascript object
js_proxy_t *p = jsb_new_proxy(cobj, obj);
#ifdef COCOS2D_JAVASCRIPT
JS_AddNamedObjectRoot(cx, &p->obj, "cocos2d::GLNode");
#endif
return JS_TRUE;
}
JS_ReportError(cx, "wrong number of arguments: %d, was expecting %d", argc, 0);
@ -131,14 +134,13 @@ void js_register_cocos2dx_GLNode(JSContext *cx, JSObject *global) {
// add the proto and JSClass to the type->js info hash table
TypeTest<GLNode> t;
js_type_class_t *p;
uint32_t typeId = t.s_id();
HASH_FIND_INT(_js_global_type_ht, &typeId, p);
if (!p) {
long typeId = t.s_id();
if (_js_global_type_map.find(typeId) == _js_global_type_map.end())
{
p = (js_type_class_t *)malloc(sizeof(js_type_class_t));
p->type = typeId;
p->jsclass = js_cocos2dx_GLNode_class;
p->proto = js_cocos2dx_GLNode_prototype;
p->parentProto = jsb_Node_prototype;
HASH_ADD_INT(_js_global_type_ht, type, p);
_js_global_type_map.insert(std::make_pair(typeId, p));
}
}

File diff suppressed because it is too large Load Diff

View File

@ -7,37 +7,70 @@
#include "jsapi.h"
#include "js_bindings_core.h"
//#ifdef __cplusplus
//extern "C" {
//#endif
#include "cocos2d.h"
extern JSBool jsval_to_opaque( JSContext *cx, jsval vp, void **out );
extern JSBool jsval_to_int( JSContext *cx, jsval vp, int *out);
extern JSBool jsval_to_uint( JSContext *cx, jsval vp, unsigned int *out);
extern JSBool jsval_to_long( JSContext *cx, jsval vp, long *out);
extern JSBool jsval_to_longlong( JSContext *cx, jsval vp, long long *out);
extern jsval opaque_to_jsval( JSContext *cx, void* opaque);
extern jsval c_class_to_jsval( JSContext *cx, void* handle, JSObject* object, JSClass *klass, const char* class_name);
extern JSBool jsval_to_c_class( JSContext *cx, jsval vp, void **out_native, struct jsb_c_proxy_s **out_proxy);
extern jsval int_to_jsval( JSContext *cx, int number );
extern jsval uint_to_jsval( JSContext *cx, unsigned int number );
extern jsval long_to_jsval( JSContext *cx, long number );
extern jsval longlong_to_jsval( JSContext *cx, long long number );
/** converts a jsval (JS string) into a char */
extern JSBool jsval_to_charptr( JSContext *cx, jsval vp, const char **out);
extern jsval opaque_to_jsval( JSContext *cx, void* opaque);
extern jsval c_class_to_jsval( JSContext *cx, void* handle, JSObject* object, JSClass *klass, const char* class_name);
extern jsval long_to_jsval( JSContext *cx, long number );
extern jsval longlong_to_jsval( JSContext *cx, long long number );
/* Converts a char ptr into a jsval (using JS string) */
extern jsval charptr_to_jsval( JSContext *cx, const char *str);
extern JSBool JSB_jsval_to_int32( JSContext *cx, jsval vp, int32_t *outval );
extern JSBool JSB_jsval_to_uint32( JSContext *cx, jsval vp, uint32_t *outval);
extern JSBool JSB_jsval_typedarray_to_dataptr( JSContext *cx, jsval vp, GLsizei *count, void **data, JSArrayBufferViewType t);
extern JSBool JSB_get_arraybufferview_dataptr( JSContext *cx, jsval vp, GLsizei *count, GLvoid **data );
extern JSBool JSB_jsval_to_uint16( JSContext *cx, jsval vp, uint16_t *outval );
//#ifdef __cplusplus
//}
//#endif
// some utility functions
// to native
JSBool jsval_to_int32( JSContext *cx, jsval vp, int32_t *ret );
JSBool jsval_to_uint32( JSContext *cx, jsval vp, uint32_t *ret );
JSBool jsval_to_uint16( JSContext *cx, jsval vp, uint16_t *ret );
JSBool jsval_to_long_long(JSContext *cx, jsval v, long long* ret);
JSBool jsval_to_std_string(JSContext *cx, jsval v, std::string* ret);
JSBool jsval_to_ccpoint(JSContext *cx, jsval v, cocos2d::Point* ret);
JSBool jsval_to_ccrect(JSContext *cx, jsval v, cocos2d::Rect* ret);
JSBool jsval_to_ccsize(JSContext *cx, jsval v, cocos2d::Size* ret);
JSBool jsval_to_cccolor4b(JSContext *cx, jsval v, cocos2d::Color4B* ret);
JSBool jsval_to_cccolor4f(JSContext *cx, jsval v, cocos2d::Color4F* ret);
JSBool jsval_to_cccolor3b(JSContext *cx, jsval v, cocos2d::Color3B* ret);
JSBool jsval_to_ccarray_of_CCPoint(JSContext* cx, jsval v, cocos2d::Point **points, int *numPoints);
JSBool jsval_to_ccarray(JSContext* cx, jsval v, cocos2d::Array** ret);
JSBool jsval_to_ccdictionary(JSContext* cx, jsval v, cocos2d::Dictionary** ret);
JSBool jsval_to_ccacceleration(JSContext* cx,jsval v, cocos2d::Acceleration* ret);
JSBool jsvals_variadic_to_ccarray( JSContext *cx, jsval *vp, int argc, cocos2d::Array** ret);
JSBool jsval_to_ccaffinetransform(JSContext* cx, jsval v, cocos2d::AffineTransform* ret);
JSBool jsval_to_FontDefinition( JSContext *cx, jsval vp, cocos2d::FontDefinition* ret );
// from native
jsval int32_to_jsval( JSContext *cx, int32_t l);
jsval uint32_to_jsval( JSContext *cx, uint32_t number );
jsval long_long_to_jsval(JSContext* cx, long long v);
jsval std_string_to_jsval(JSContext* cx, const std::string& v);
jsval c_string_to_jsval(JSContext* cx, const char* v, size_t length = -1);
jsval ccpoint_to_jsval(JSContext* cx, const cocos2d::Point& v);
jsval ccrect_to_jsval(JSContext* cx, const cocos2d::Rect& v);
jsval ccsize_to_jsval(JSContext* cx, const cocos2d::Size& v);
jsval cccolor4b_to_jsval(JSContext* cx, const cocos2d::Color4B& v);
jsval cccolor4f_to_jsval(JSContext* cx, const cocos2d::Color4F& v);
jsval cccolor3b_to_jsval(JSContext* cx, const cocos2d::Color3B& v);
jsval ccdictionary_to_jsval(JSContext* cx, cocos2d::Dictionary *dict);
jsval ccarray_to_jsval(JSContext* cx, cocos2d::Array *arr);
jsval ccacceleration_to_jsval(JSContext* cx, const cocos2d::Acceleration& v);
jsval ccaffinetransform_to_jsval(JSContext* cx, const cocos2d::AffineTransform& t);
jsval FontDefinition_to_jsval(JSContext* cx, const cocos2d::FontDefinition& t);
JSBool jsval_to_CGPoint( JSContext *cx, jsval vp, cpVect *out );
jsval CGPoint_to_jsval( JSContext *cx, cpVect p );
#define cpVect_to_jsval CGPoint_to_jsval
#define jsval_to_cpVect jsval_to_CGPoint
#endif /* __JS_MANUAL_CONVERSIONS_H__ */

File diff suppressed because it is too large Load Diff

View File

@ -31,7 +31,6 @@
#include "jsb_opengl_manual.h"
#include "js_manual_conversions.h"
#include "cocosjs_manual_conversions.h"
#include "js_bindings_core.h"
#include "jsb_opengl_functions.h"

View File

@ -609,8 +609,8 @@ JS_BINDED_FUNC_IMPL(MinXmlHttpRequest, open)
JSStringWrapper w1(jsMethod);
JSStringWrapper w2(jsURL);
method = w1;
urlstr = w2;
method = w1.get();
urlstr = w2.get();
_url = urlstr;
_meth = method;
@ -771,8 +771,8 @@ JS_BINDED_FUNC_IMPL(MinXmlHttpRequest, setRequestHeader)
JSStringWrapper w1(jsField);
JSStringWrapper w2(jsValue);
field = w1;
value = w2;
field = w1.get();
value = w2.get();
// Populate the request_header map.
_setRequestHeader(field, value);

View File

@ -13,7 +13,6 @@
<ItemGroup>
<ClCompile Include="..\..\..\auto-generated\js-bindings\jsb_cocos2dx_auto.cpp" />
<ClCompile Include="..\cocos2d_specifics.cpp" />
<ClCompile Include="..\cocosjs_manual_conversions.cpp" />
<ClCompile Include="..\jsb_opengl_functions.cpp" />
<ClCompile Include="..\jsb_opengl_manual.cpp" />
<ClCompile Include="..\jsb_opengl_registration.cpp" />
@ -25,7 +24,6 @@
<ItemGroup>
<ClInclude Include="..\..\..\auto-generated\js-bindings\jsb_cocos2dx_auto.hpp" />
<ClInclude Include="..\cocos2d_specifics.hpp" />
<ClInclude Include="..\cocosjs_manual_conversions.h" />
<ClInclude Include="..\jsb_helper.h" />
<ClInclude Include="..\jsb_opengl_functions.h" />
<ClInclude Include="..\jsb_opengl_manual.h" />

View File

@ -17,9 +17,6 @@
<ClCompile Include="..\cocos2d_specifics.cpp">
<Filter>manual</Filter>
</ClCompile>
<ClCompile Include="..\cocosjs_manual_conversions.cpp">
<Filter>manual</Filter>
</ClCompile>
<ClCompile Include="..\js_bindings_core.cpp">
<Filter>manual</Filter>
</ClCompile>
@ -49,9 +46,6 @@
<ClInclude Include="..\cocos2d_specifics.hpp">
<Filter>manual</Filter>
</ClInclude>
<ClInclude Include="..\cocosjs_manual_conversions.h">
<Filter>manual</Filter>
</ClInclude>
<ClInclude Include="..\js_bindings_config.h">
<Filter>manual</Filter>
</ClInclude>

View File

@ -3,6 +3,7 @@
#include "jsapi.h"
#include "uthash.h"
#include <unordered_map>
typedef struct js_proxy {
void *ptr;
@ -14,20 +15,18 @@ extern js_proxy_t *_native_js_global_ht;
extern js_proxy_t *_js_native_global_ht;
typedef struct js_type_class {
uint32_t type;
JSClass *jsclass;
JSObject *proto;
JSObject *parentProto;
UT_hash_handle hh;
} js_type_class_t;
extern js_type_class_t *_js_global_type_ht;
extern std::unordered_map<long, js_type_class_t*> _js_global_type_map;
template< typename DERIVED >
class TypeTest
{
public:
static int s_id()
static long s_id()
{
// return id unique for DERIVED
// NOT SURE IT WILL BE REALLY UNIQUE FOR EACH CLASS!!

View File

@ -14,6 +14,10 @@ var cc = cc || {};
cc.AnimationCache.destroyInstance();
};
cc.TextureCache.getInstance = function() {
return cc.Director.getInstance().getTextureCache();
};
// Deprecated member functions
cc.Action.prototype.copy = function() {
logW("cc.Action.copy", "cc.Action.clone");

View File

@ -283,6 +283,30 @@ bool luaval_to_point(lua_State* L,int lo,Point* outValue)
return ok;
}
bool luaval_to_long(lua_State* L,int lo, long* outValue)
{
if (NULL == L || NULL == outValue)
return false;
bool ok = true;
tolua_Error tolua_err;
if (!tolua_isnumber(L,lo,0,&tolua_err))
{
#if COCOS2D_DEBUG >=1
luaval_to_native_err(L,"#ferror:",&tolua_err);
#endif
ok = false;
}
if (ok)
{
*outValue = (long)tolua_tonumber(L, lo, 0);
}
return ok;
}
bool luaval_to_size(lua_State* L,int lo,Size* outValue)
{
if (NULL == L || NULL == outValue)

View File

@ -30,6 +30,7 @@ extern bool luaval_to_boolean(lua_State* L,int lo,bool* outValue);
extern bool luaval_to_number(lua_State* L,int lo,double* outValue);
extern bool luaval_to_long_long(lua_State* L,int lo,long long* outValue);
extern bool luaval_to_std_string(lua_State* L, int lo, std::string* outValue);
extern bool luaval_to_long(lua_State* L,int lo, long* outValue);
extern bool luaval_to_point(lua_State* L,int lo,Point* outValue);
extern bool luaval_to_size(lua_State* L,int lo,Size* outValue);

View File

@ -1,94 +0,0 @@
TARGET = liblua.so
INCLUDES += -I../../../../external/lua/tolua \
-I../../../../external/lua/lua \
-I../../auto-generated/lua-bindings \
-I../../../../extensions \
-I../../../editor-support \
-I. \
-I../../../editor-support/cocosbuilder \
-I../../../editor-support/cocostudio \
-I../../../../external \
-I../../../
SOURCES = ../../../../external/lua/lua/lapi.c \
../../../../external/lua/lua/lauxlib.c \
../../../../external/lua/lua/lbaselib.c \
../../../../external/lua/lua/lcode.c \
../../../../external/lua/lua/ldblib.c \
../../../../external/lua/lua/ldebug.c \
../../../../external/lua/lua/ldo.c \
../../../../external/lua/lua/ldump.c \
../../../../external/lua/lua/lfunc.c \
../../../../external/lua/lua/lgc.c \
../../../../external/lua/lua/linit.c \
../../../../external/lua/lua/liolib.c \
../../../../external/lua/lua/llex.c \
../../../../external/lua/lua/lmathlib.c \
../../../../external/lua/lua/lmem.c \
../../../../external/lua/lua/loadlib.c \
../../../../external/lua/lua/lobject.c \
../../../../external/lua/lua/lopcodes.c \
../../../../external/lua/lua/loslib.c \
../../../../external/lua/lua/lparser.c \
../../../../external/lua/lua/lstate.c \
../../../../external/lua/lua/lstring.c \
../../../../external/lua/lua/lstrlib.c \
../../../../external/lua/lua/ltable.c \
../../../../external/lua/lua/ltablib.c \
../../../../external/lua/lua/ltm.c \
../../../../external/lua/lua/lundump.c \
../../../../external/lua/lua/lvm.c \
../../../../external/lua/lua/lzio.c \
../../../../external/lua/lua/print.c \
../../../../external/lua/tolua/tolua_event.c \
../../../../external/lua/tolua/tolua_is.c \
../../../../external/lua/tolua/tolua_map.c \
../../../../external/lua/tolua/tolua_push.c \
../../../../external/lua/tolua/tolua_to.c \
tolua_fix.c \
../../auto-generated/lua-bindings/lua_cocos2dx_auto.cpp \
../../auto-generated/lua-bindings/lua_cocos2dx_extension_auto.cpp \
../../auto-generated/lua-bindings/lua_cocos2dx_studio_auto.cpp \
CCLuaBridge.cpp \
CCLuaEngine.cpp \
CCLuaStack.cpp \
CCLuaValue.cpp \
Cocos2dxLuaLoader.cpp \
CCBProxy.cpp \
LuaOpengl.cpp \
LuaScriptHandlerMgr.cpp \
LuaBasicConversions.cpp \
lua_cocos2dx_manual.cpp \
lua_cocos2dx_extension_manual.cpp \
lua_cocos2dx_deprecated.cpp \
lua_xml_http_request.cpp
include ../../../2d/cocos2dx.mk
TARGET := $(LIB_DIR)/$(TARGET)
SHAREDLIBS += -lextension -lcocostudio -lcocosbuilder
STATICLIBS += $(LIB_DIR)/libbox2d.a
all: $(TARGET)
$(TARGET): $(OBJECTS) $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_LINK)$(CXX) $(CXXFLAGS) $(OBJECTS) -shared -o $@ $(SHAREDLIBS) $(STATICLIBS)
$(OBJ_DIR)/%.o: %.cpp $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@
$(OBJ_DIR)/%.o: ../../%.cpp $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CXX)$(CXX) $(CXXFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@
$(OBJ_DIR)/%.o: ../../../../%.c $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CC)$(CC) $(CCFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@
$(OBJ_DIR)/%.o: %.c $(CORE_MAKEFILE_LIST)
@mkdir -p $(@D)
$(LOG_CC)$(CC) $(CCFLAGS) $(INCLUDES) $(DEFINES) -c $< -o $@

View File

@ -9,7 +9,7 @@ TOLUA_API void toluafix_open(lua_State* L)
lua_pushstring(L, TOLUA_REFID_PTR_MAPPING);
lua_newtable(L);
lua_rawset(L, LUA_REGISTRYINDEX);
lua_pushstring(L, TOLUA_REFID_TYPE_MAPPING);
lua_newtable(L);
lua_rawset(L, LUA_REGISTRYINDEX);
@ -30,29 +30,29 @@ TOLUA_API int toluafix_pushusertype_ccobject(lua_State* L,
lua_pushnil(L);
return -1;
}
if (*p_refid == 0)
{
*p_refid = refid;
lua_pushstring(L, TOLUA_REFID_PTR_MAPPING);
lua_rawget(L, LUA_REGISTRYINDEX); /* stack: refid_ptr */
lua_pushinteger(L, refid); /* stack: refid_ptr refid */
lua_pushlightuserdata(L, ptr); /* stack: refid_ptr refid ptr */
lua_rawset(L, -3); /* refid_ptr[refid] = ptr, stack: refid_ptr */
lua_pop(L, 1); /* stack: - */
lua_pushstring(L, TOLUA_REFID_TYPE_MAPPING);
lua_rawget(L, LUA_REGISTRYINDEX); /* stack: refid_type */
lua_pushinteger(L, refid); /* stack: refid_type refid */
lua_pushstring(L, type); /* stack: refid_type refid type */
lua_rawset(L, -3); /* refid_type[refid] = type, stack: refid_type */
lua_pop(L, 1); /* stack: - */
//printf("[LUA] push CCObject OK - refid: %d, ptr: %x, type: %s\n", *p_refid, (int)ptr, type);
}
tolua_pushusertype(L, ptr, type);
return 0;
}
@ -63,7 +63,7 @@ TOLUA_API int toluafix_remove_ccobject_by_refid(lua_State* L, int refid)
const char* type = NULL;
void** ud = NULL;
if (refid == 0) return -1;
// get ptr from tolua_refid_ptr_mapping
lua_pushstring(L, TOLUA_REFID_PTR_MAPPING);
lua_rawget(L, LUA_REGISTRYINDEX); /* stack: refid_ptr */
@ -78,14 +78,14 @@ TOLUA_API int toluafix_remove_ccobject_by_refid(lua_State* L, int refid)
// printf("[LUA ERROR] remove CCObject with NULL ptr, refid: %d\n", refid);
return -2;
}
// remove ptr from tolua_refid_ptr_mapping
lua_pushinteger(L, refid); /* stack: refid_ptr refid */
lua_pushnil(L); /* stack: refid_ptr refid nil */
lua_rawset(L, -3); /* delete refid_ptr[refid], stack: refid_ptr */
lua_pop(L, 1); /* stack: - */
// get type from tolua_refid_type_mapping
lua_pushstring(L, TOLUA_REFID_TYPE_MAPPING);
lua_rawget(L, LUA_REGISTRYINDEX); /* stack: refid_type */
@ -97,16 +97,16 @@ TOLUA_API int toluafix_remove_ccobject_by_refid(lua_State* L, int refid)
printf("[LUA ERROR] remove CCObject with NULL type, refid: %d, ptr: %p\n", refid, ptr);
return -1;
}
type = lua_tostring(L, -1);
lua_pop(L, 1); /* stack: refid_type */
// remove type from tolua_refid_type_mapping
lua_pushinteger(L, refid); /* stack: refid_type refid */
lua_pushnil(L); /* stack: refid_type refid nil */
lua_rawset(L, -3); /* delete refid_type[refid], stack: refid_type */
lua_pop(L, 1); /* stack: - */
// get ubox
luaL_getmetatable(L, type); /* stack: mt */
lua_pushstring(L, "tolua_ubox"); /* stack: mt key */
@ -118,7 +118,7 @@ TOLUA_API int toluafix_remove_ccobject_by_refid(lua_State* L, int refid)
lua_pushstring(L, "tolua_ubox"); /* stack: mt key */
lua_rawget(L, LUA_REGISTRYINDEX); /* stack: mt ubox */
};
lua_pushlightuserdata(L, ptr); /* stack: mt ubox ptr */
lua_rawget(L,-2); /* stack: mt ubox ud */
if (lua_isnil(L, -1))
@ -128,7 +128,11 @@ TOLUA_API int toluafix_remove_ccobject_by_refid(lua_State* L, int refid)
lua_pop(L, 3);
return -3;
}
// cleanup peertable
lua_pushvalue(L, LUA_REGISTRYINDEX);
lua_setfenv(L, -2);
ud = (void**)lua_touserdata(L, -1);
lua_pop(L, 1); /* stack: mt ubox */
if (ud == NULL)
@ -137,14 +141,14 @@ TOLUA_API int toluafix_remove_ccobject_by_refid(lua_State* L, int refid)
lua_pop(L, 2);
return -1;
}
// clean userdata
*ud = NULL;
lua_pushlightuserdata(L, ptr); /* stack: mt ubox ptr */
lua_pushnil(L); /* stack: mt ubox ptr nil */
lua_rawset(L, -3); /* ubox[ptr] = nil, stack: mt ubox */
lua_pop(L, 2);
//printf("[LUA] remove CCObject, refid: %d, ptr: %x, type: %s\n", refid, (int)ptr, type);
return 0;
@ -154,19 +158,19 @@ TOLUA_API int toluafix_ref_function(lua_State* L, int lo, int def)
{
// function at lo
if (!lua_isfunction(L, lo)) return 0;
s_function_ref_id++;
lua_pushstring(L, TOLUA_REFID_FUNCTION_MAPPING);
lua_rawget(L, LUA_REGISTRYINDEX); /* stack: fun ... refid_fun */
lua_pushinteger(L, s_function_ref_id); /* stack: fun ... refid_fun refid */
lua_pushvalue(L, lo); /* stack: fun ... refid_fun refid fun */
lua_rawset(L, -3); /* refid_fun[refid] = fun, stack: fun ... refid_ptr */
lua_pop(L, 1); /* stack: fun ... */
return s_function_ref_id;
// lua_pushvalue(L, lo); /* stack: ... func */
// return luaL_ref(L, LUA_REGISTRYINDEX);
}

0
cocos/scripting/lua/script/json.lua Executable file → Normal file
View File

View File

@ -1 +1 @@
55fe4bd3605531a58a565c46eec20dee0f81ff97
f86eb12e6d4835f93bd6f59d860970bcd2f74128

View File

@ -214,7 +214,7 @@ void AssetsManager::downloadAndUncompress()
_isDownloading = false;
}
void AssetsManager::update(float delta)
void AssetsManager::update()
{
if (_isDownloading) return;

View File

@ -98,7 +98,7 @@ public:
/* @brief Download new package if there is a new version, and uncompress downloaded zip file.
* Ofcourse it will set search path that stores downloaded files.
*/
virtual void update(float delta) override;
virtual void update();
/* @brief Gets url of package.
*/

View File

@ -1,404 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="cdt.managedbuild.config.gnu.lib.debug.1514141006">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.lib.debug.1514141006" moduleId="org.eclipse.cdt.core.settings" name="Debug">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/libextension"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/libextension/Debug"/>
<entry flags="RESOLVED" kind="libraryFile" name="libextension" srcPrefixMapping="" srcRootPath=""/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="a" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.staticLib" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.staticLib" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.lib.debug.1514141006" name="Debug" parent="cdt.managedbuild.config.gnu.lib.debug">
<folderInfo id="cdt.managedbuild.config.gnu.lib.debug.1514141006." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.lib.debug.1338662218" name="Linux GCC" superClass="cdt.managedbuild.toolchain.gnu.lib.debug">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.lib.debug.811777173" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.lib.debug"/>
<builder buildPath="${workspace_loc:/libextension/Debug}" id="cdt.managedbuild.target.gnu.builder.lib.debug.93956610" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.lib.debug"/>
<tool id="cdt.managedbuild.tool.gnu.archiver.lib.debug.525524595" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.lib.debug">
<outputType id="cdt.managedbuild.tool.gnu.archiver.output.1658254884" outputPrefix="" superClass="cdt.managedbuild.tool.gnu.archiver.output"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.lib.debug.1867780274" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.lib.debug">
<option id="gnu.cpp.compiler.lib.debug.option.optimization.level.2121186789" name="Optimization Level" superClass="gnu.cpp.compiler.lib.debug.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.lib.debug.option.debugging.level.460917574" name="Debug Level" superClass="gnu.cpp.compiler.lib.debug.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.1608640008" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../../../cocos2dx"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libfreetype2"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/kazmath/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/linux"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libpng"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libjpeg"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libtiff/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libwebp"/>
<listOptionValue builtIn="false" value="../../../CocosDenshion/include"/>
<listOptionValue builtIn="false" value="../../../external"/>
<listOptionValue builtIn="false" value="../../../external/chipmunk/include/chipmunk"/>
<listOptionValue builtIn="false" value="../.."/>
<listOptionValue builtIn="false" value="../../CCBReader"/>
<listOptionValue builtIn="false" value="../../GUI/CCControlExtension"/>
<listOptionValue builtIn="false" value="../../network"/>
</option>
<option id="gnu.cpp.compiler.option.preprocessor.def.483510287" name="Defined symbols (-D)" superClass="gnu.cpp.compiler.option.preprocessor.def" valueType="definedSymbols">
<listOptionValue builtIn="false" value="LINUX"/>
<listOptionValue builtIn="false" value="CC_ENABLE_CHIPMUNK_INTEGRATION=1"/>
</option>
<option id="gnu.cpp.compiler.option.other.other.583875716" name="Other flags" superClass="gnu.cpp.compiler.option.other.other" value="-c -fmessage-length=0 -Wno-multichar -std=c++0x" valueType="string"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1844974810" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.lib.debug.923891685" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.lib.debug">
<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.lib.debug.option.optimization.level.662143417" name="Optimization Level" superClass="gnu.c.compiler.lib.debug.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.lib.debug.option.debugging.level.1243096160" name="Debug Level" superClass="gnu.c.compiler.lib.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
<option id="gnu.c.compiler.option.include.paths.1906289381" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../../../cocos2dx"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libfreetype2"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/kazmath/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/linux"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libpng"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libjpeg"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libtiff/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libwebp"/>
<listOptionValue builtIn="false" value="../../../CocosDenshion/include"/>
<listOptionValue builtIn="false" value="../../../external"/>
<listOptionValue builtIn="false" value="../../../external/chipmunk/include/chipmunk"/>
<listOptionValue builtIn="false" value="../.."/>
<listOptionValue builtIn="false" value="../../CCBReader"/>
<listOptionValue builtIn="false" value="../../GUI/CCControlExtension"/>
<listOptionValue builtIn="false" value="../../network"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1018876718" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.linker.base.1688552724" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.base"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.linker.base.412588407" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.base"/>
<tool id="cdt.managedbuild.tool.gnu.assembler.lib.debug.1602433004" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.lib.debug">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.205221013" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
</toolChain>
</folderInfo>
<sourceEntries>
<entry excluding="CCBReader|GUI|LocalStorage|network|physics_nodes" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="CCBReader"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="GUI"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="LocalStorage"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="network"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name="physics_nodes"/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
<cconfiguration id="cdt.managedbuild.config.gnu.lib.release.2055883201">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.lib.release.2055883201" moduleId="org.eclipse.cdt.core.settings" name="Release">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/libextension"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/libextension/Release"/>
<entry flags="RESOLVED" kind="libraryFile" name="libextension" srcPrefixMapping="" srcRootPath=""/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="a" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.staticLib" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.staticLib" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.lib.release.2055883201" name="Release" parent="cdt.managedbuild.config.gnu.lib.release">
<folderInfo id="cdt.managedbuild.config.gnu.lib.release.2055883201." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.lib.release.85621724" name="Linux GCC" superClass="cdt.managedbuild.toolchain.gnu.lib.release">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.lib.release.2127498210" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.lib.release"/>
<builder buildPath="${workspace_loc:/libextension/Release}" id="cdt.managedbuild.target.gnu.builder.lib.release.1754217911" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.lib.release"/>
<tool id="cdt.managedbuild.tool.gnu.archiver.lib.release.1591374298" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.lib.release">
<outputType id="cdt.managedbuild.tool.gnu.archiver.output.1199602311" outputPrefix="" superClass="cdt.managedbuild.tool.gnu.archiver.output"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.lib.release.1949128055" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.lib.release">
<option id="gnu.cpp.compiler.lib.release.option.optimization.level.2063411890" name="Optimization Level" superClass="gnu.cpp.compiler.lib.release.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
<option id="gnu.cpp.compiler.lib.release.option.debugging.level.52638486" name="Debug Level" superClass="gnu.cpp.compiler.lib.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.570737905" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../../../cocos2dx"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libfreetype2"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/kazmath/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/linux"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libpng"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libjpeg"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libtiff/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libwebp"/>
<listOptionValue builtIn="false" value="../../../CocosDenshion/include"/>
<listOptionValue builtIn="false" value="../../../external"/>
<listOptionValue builtIn="false" value="../../../external/chipmunk/include/chipmunk"/>
<listOptionValue builtIn="false" value="../.."/>
<listOptionValue builtIn="false" value="../../CCBReader"/>
<listOptionValue builtIn="false" value="../../GUI/CCControlExtension"/>
<listOptionValue builtIn="false" value="../../network"/>
</option>
<option id="gnu.cpp.compiler.option.preprocessor.def.363334823" name="Defined symbols (-D)" superClass="gnu.cpp.compiler.option.preprocessor.def" valueType="definedSymbols">
<listOptionValue builtIn="false" value="LINUX"/>
<listOptionValue builtIn="false" value="CC_ENABLE_CHIPMUNK_INTEGRATION=1"/>
</option>
<option id="gnu.cpp.compiler.option.other.other.2145306208" name="Other flags" superClass="gnu.cpp.compiler.option.other.other" value="-c -fmessage-length=0 -Wno-multichar -std=c++0x" valueType="string"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1223687608" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.lib.release.225988932" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.lib.release">
<option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.lib.release.option.optimization.level.1328986820" name="Optimization Level" superClass="gnu.c.compiler.lib.release.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.lib.release.option.debugging.level.1641200912" name="Debug Level" superClass="gnu.c.compiler.lib.release.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
<option id="gnu.c.compiler.option.include.paths.1511280424" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../../../cocos2dx"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libfreetype2"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/kazmath/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/linux"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libpng"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libjpeg"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libtiff/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libwebp"/>
<listOptionValue builtIn="false" value="../../../CocosDenshion/include"/>
<listOptionValue builtIn="false" value="../../../external"/>
<listOptionValue builtIn="false" value="../../../external/chipmunk/include/chipmunk"/>
<listOptionValue builtIn="false" value="../.."/>
<listOptionValue builtIn="false" value="../../CCBReader"/>
<listOptionValue builtIn="false" value="../../GUI/CCControlExtension"/>
<listOptionValue builtIn="false" value="../../network"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.2017143095" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.linker.base.387625377" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.base"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.linker.base.259178018" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.base"/>
<tool id="cdt.managedbuild.tool.gnu.assembler.lib.release.2099865225" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.lib.release">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.802617730" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
<cconfiguration id="cdt.managedbuild.config.gnu.lib.debug.1514141006.645570734">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.lib.debug.1514141006.645570734" moduleId="org.eclipse.cdt.core.settings" name="Debug64">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/libextension"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/libextension/Debug64"/>
<entry flags="RESOLVED" kind="libraryFile" name="libextension" srcPrefixMapping="" srcRootPath=""/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="a" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.staticLib" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.staticLib" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.lib.debug.1514141006.645570734" name="Debug64" parent="cdt.managedbuild.config.gnu.lib.debug">
<folderInfo id="cdt.managedbuild.config.gnu.lib.debug.1514141006.645570734." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.lib.debug.1908478331" name="Linux GCC" superClass="cdt.managedbuild.toolchain.gnu.lib.debug">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.lib.debug.2130567258" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.lib.debug"/>
<builder buildPath="${workspace_loc:/libextension/Debug}" id="cdt.managedbuild.target.gnu.builder.lib.debug.1190549450" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.lib.debug"/>
<tool id="cdt.managedbuild.tool.gnu.archiver.lib.debug.688617897" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.lib.debug">
<outputType id="cdt.managedbuild.tool.gnu.archiver.output.1161965631" outputPrefix="" superClass="cdt.managedbuild.tool.gnu.archiver.output"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.lib.debug.2055536591" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.lib.debug">
<option id="gnu.cpp.compiler.lib.debug.option.optimization.level.976015230" name="Optimization Level" superClass="gnu.cpp.compiler.lib.debug.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.lib.debug.option.debugging.level.2008268334" name="Debug Level" superClass="gnu.cpp.compiler.lib.debug.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.1606934226" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../../../cocos2dx"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libfreetype2"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/kazmath/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/linux"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libpng"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libjpeg"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libtiff/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libwebp"/>
<listOptionValue builtIn="false" value="../../../CocosDenshion/include"/>
<listOptionValue builtIn="false" value="../../../external"/>
<listOptionValue builtIn="false" value="../../../external/chipmunk/include/chipmunk"/>
<listOptionValue builtIn="false" value="../.."/>
<listOptionValue builtIn="false" value="../../CCBReader"/>
<listOptionValue builtIn="false" value="../../GUI/CCControlExtension"/>
<listOptionValue builtIn="false" value="../../network"/>
</option>
<option id="gnu.cpp.compiler.option.preprocessor.def.304106741" name="Defined symbols (-D)" superClass="gnu.cpp.compiler.option.preprocessor.def" valueType="definedSymbols">
<listOptionValue builtIn="false" value="LINUX"/>
<listOptionValue builtIn="false" value="CC_KEYBOARD_SUPPORT"/>
<listOptionValue builtIn="false" value="CC_ENABLE_CHIPMUNK_INTEGRATION=1"/>
</option>
<option id="gnu.cpp.compiler.option.other.other.554430191" name="Other flags" superClass="gnu.cpp.compiler.option.other.other" value="-c -fmessage-length=0 -Wno-multichar -std=c++0x" valueType="string"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1787525763" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.lib.debug.315678675" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.lib.debug">
<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.lib.debug.option.optimization.level.261109295" name="Optimization Level" superClass="gnu.c.compiler.lib.debug.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.lib.debug.option.debugging.level.695637610" name="Debug Level" superClass="gnu.c.compiler.lib.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
<option id="gnu.c.compiler.option.include.paths.735889600" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../../../cocos2dx"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libfreetype2"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/kazmath/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/linux"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libpng"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libjpeg"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libtiff/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libwebp"/>
<listOptionValue builtIn="false" value="../../../CocosDenshion/include"/>
<listOptionValue builtIn="false" value="../../../external"/>
<listOptionValue builtIn="false" value="../../../external/chipmunk/include/chipmunk"/>
<listOptionValue builtIn="false" value="../.."/>
<listOptionValue builtIn="false" value="../../CCBReader"/>
<listOptionValue builtIn="false" value="../../GUI/CCControlExtension"/>
<listOptionValue builtIn="false" value="../../network"/>
</option>
<option id="gnu.c.compiler.option.preprocessor.def.symbols.1854594658" name="Defined symbols (-D)" superClass="gnu.c.compiler.option.preprocessor.def.symbols" valueType="definedSymbols">
<listOptionValue builtIn="false" value="CC_KEYBOARD_SUPPORT"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.401196029" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.linker.base.124577990" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.base">
<option defaultValue="true" id="gnu.c.link.option.shared.31345903" name="Shared (-shared)" superClass="gnu.c.link.option.shared" valueType="boolean"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.cpp.linker.base.46603271" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.base">
<option defaultValue="true" id="gnu.cpp.link.option.shared.1668882269" name="Shared (-shared)" superClass="gnu.cpp.link.option.shared" valueType="boolean"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.1712946881" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
<outputType id="cdt.managedbuild.tool.gnu.cpp.linker.output.so.763028859" outputPrefix="" superClass="cdt.managedbuild.tool.gnu.cpp.linker.output.so"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.lib.debug.1162630522" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.lib.debug">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.1324396199" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
<cconfiguration id="cdt.managedbuild.config.gnu.lib.release.2055883201.1965925253">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.lib.release.2055883201.1965925253" moduleId="org.eclipse.cdt.core.settings" name="Release64">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/libextension"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/libextension/Release64"/>
<entry flags="RESOLVED" kind="libraryFile" name="libextension" srcPrefixMapping="" srcRootPath=""/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="a" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.staticLib" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.staticLib" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.lib.release.2055883201.1965925253" name="Release64" parent="cdt.managedbuild.config.gnu.lib.release">
<folderInfo id="cdt.managedbuild.config.gnu.lib.release.2055883201.1965925253." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.lib.release.1879716433" name="Linux GCC" superClass="cdt.managedbuild.toolchain.gnu.lib.release">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.lib.release.1204302704" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.lib.release"/>
<builder buildPath="${workspace_loc:/libextension/Release}" id="cdt.managedbuild.target.gnu.builder.lib.release.1972207722" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.lib.release"/>
<tool id="cdt.managedbuild.tool.gnu.archiver.lib.release.356489202" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.lib.release">
<outputType id="cdt.managedbuild.tool.gnu.archiver.output.9740877" outputPrefix="" superClass="cdt.managedbuild.tool.gnu.archiver.output"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.lib.release.1714668397" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.lib.release">
<option id="gnu.cpp.compiler.lib.release.option.optimization.level.1342610217" name="Optimization Level" superClass="gnu.cpp.compiler.lib.release.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
<option id="gnu.cpp.compiler.lib.release.option.debugging.level.1249772032" name="Debug Level" superClass="gnu.cpp.compiler.lib.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.1654517186" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../../../cocos2dx"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libfreetype2"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/kazmath/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/linux"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libpng"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libjpeg"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libtiff/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libwebp"/>
<listOptionValue builtIn="false" value="../../../CocosDenshion/include"/>
<listOptionValue builtIn="false" value="../../../external"/>
<listOptionValue builtIn="false" value="../../../external/chipmunk/include/chipmunk"/>
<listOptionValue builtIn="false" value="../.."/>
<listOptionValue builtIn="false" value="../../CCBReader"/>
<listOptionValue builtIn="false" value="../../GUI/CCControlExtension"/>
<listOptionValue builtIn="false" value="../../network"/>
</option>
<option id="gnu.cpp.compiler.option.preprocessor.def.192804552" name="Defined symbols (-D)" superClass="gnu.cpp.compiler.option.preprocessor.def" valueType="definedSymbols">
<listOptionValue builtIn="false" value="LINUX"/>
<listOptionValue builtIn="false" value="CC_ENABLE_CHIPMUNK_INTEGRATION=1"/>
</option>
<option id="gnu.cpp.compiler.option.other.other.852144129" name="Other flags" superClass="gnu.cpp.compiler.option.other.other" value="-c -fmessage-length=0 -Wno-multichar -std=c++0x" valueType="string"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.2037211185" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.lib.release.1172909638" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.lib.release">
<option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.lib.release.option.optimization.level.672932175" name="Optimization Level" superClass="gnu.c.compiler.lib.release.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.lib.release.option.debugging.level.523624147" name="Debug Level" superClass="gnu.c.compiler.lib.release.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
<option id="gnu.c.compiler.option.include.paths.1166557056" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="../../../cocos2dx"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libfreetype2"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/kazmath/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/linux"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libpng"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libjpeg"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libtiff/include"/>
<listOptionValue builtIn="false" value="../../../cocos2dx/platform/third_party/linux/libwebp"/>
<listOptionValue builtIn="false" value="../../../CocosDenshion/include"/>
<listOptionValue builtIn="false" value="../../../external"/>
<listOptionValue builtIn="false" value="../../../external/chipmunk/include/chipmunk"/>
<listOptionValue builtIn="false" value="../.."/>
<listOptionValue builtIn="false" value="../../CCBReader"/>
<listOptionValue builtIn="false" value="../../GUI/CCControlExtension"/>
<listOptionValue builtIn="false" value="../../network"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1706233154" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.linker.base.1359198463" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.base"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.linker.base.453057816" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.base"/>
<tool id="cdt.managedbuild.tool.gnu.assembler.lib.release.1180075080" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.lib.release">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.1389777324" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="libextension.cdt.managedbuild.target.gnu.lib.640829670" name="Static Library" projectType="cdt.managedbuild.target.gnu.lib"/>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
<storageModule moduleId="refreshScope"/>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.lib.debug.1514141006.645570734;cdt.managedbuild.config.gnu.lib.debug.1514141006.645570734.;cdt.managedbuild.tool.gnu.c.compiler.lib.debug.315678675;cdt.managedbuild.tool.gnu.c.compiler.input.401196029">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.lib.debug.1514141006;cdt.managedbuild.config.gnu.lib.debug.1514141006.;cdt.managedbuild.tool.gnu.cpp.compiler.lib.debug.1867780274;cdt.managedbuild.tool.gnu.cpp.compiler.input.1844974810">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.lib.release.2055883201;cdt.managedbuild.config.gnu.lib.release.2055883201.;cdt.managedbuild.tool.gnu.cpp.compiler.lib.release.1949128055;cdt.managedbuild.tool.gnu.cpp.compiler.input.1223687608">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.lib.debug.1514141006;cdt.managedbuild.config.gnu.lib.debug.1514141006.;cdt.managedbuild.tool.gnu.c.compiler.lib.debug.923891685;cdt.managedbuild.tool.gnu.c.compiler.input.1018876718">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.lib.release.2055883201;cdt.managedbuild.config.gnu.lib.release.2055883201.;cdt.managedbuild.tool.gnu.c.compiler.lib.release.225988932;cdt.managedbuild.tool.gnu.c.compiler.input.2017143095">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.lib.debug.1514141006.645570734;cdt.managedbuild.config.gnu.lib.debug.1514141006.645570734.;cdt.managedbuild.tool.gnu.cpp.compiler.lib.debug.2055536591;cdt.managedbuild.tool.gnu.cpp.compiler.input.1787525763">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
</storageModule>
</cproject>

View File

@ -1,90 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>libextension</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
<linkedResources>
<link>
<name>CCBReader</name>
<type>2</type>
<locationURI>PARENT-1-PROJECT_LOC/CCBReader</locationURI>
</link>
<link>
<name>CCArmature</name>
<type>2</type>
<locationURI>PARENT-1-PROJECT_LOC/CCArmature</locationURI>
</link>
<link>
<name>Components</name>
<type>2</type>
<locationURI>PARENT-1-PROJECT_LOC/Components</locationURI>
</link>
<link>
<name>spine</name>
<type>2</type>
<locationURI>PARENT-1-PROJECT_LOC/spine</locationURI>
</link>
<link>
<name>ExtensionMacros.h</name>
<type>1</type>
<locationURI>PARENT-1-PROJECT_LOC/ExtensionMacros.h</locationURI>
</link>
<link>
<name>GUI</name>
<type>2</type>
<locationURI>PARENT-1-PROJECT_LOC/GUI</locationURI>
</link>
<link>
<name>LocalStorage</name>
<type>2</type>
<locationURI>PARENT-1-PROJECT_LOC/LocalStorage</locationURI>
</link>
<link>
<name>cocos-ext.h</name>
<type>1</type>
<locationURI>PARENT-1-PROJECT_LOC/cocos-ext.h</locationURI>
</link>
<link>
<name>network</name>
<type>2</type>
<locationURI>PARENT-1-PROJECT_LOC/network</locationURI>
</link>
<link>
<name>physics_nodes</name>
<type>2</type>
<locationURI>PARENT-1-PROJECT_LOC/physics_nodes</locationURI>
</link>
</linkedResources>
<filteredResources>
<filter>
<id>1373359750543</id>
<name></name>
<type>22</type>
<matcher>
<id>org.eclipse.ui.ide.multiFilter</id>
<arguments>1.0-name-matches-false-false-WebSocket.*</arguments>
</matcher>
</filter>
</filteredResources>
</projectDescription>

Some files were not shown because too many files have changed in this diff Show More