2014-03-10 18:13:39 +08:00
[cocos2dx_studio]
# the prefix to be added to the generated functions. You might or might not use this in your own
# templates
prefix = cocos2dx_studio
# create a target namespace (in javascript, this would create some code like the equiv. to `ns = ns || {}`)
# all classes will be embedded in that namespace
target_namespace = ccs
2014-03-12 10:46:49 +08:00
# the native namespace in which this module locates, this parameter is used for avoid conflict of the same class name in different modules, as "cocos2d::Label" <-> "cocos2d::ui::Label".
2014-03-10 18:13:39 +08:00
cpp_namespace = cocostudio
2017-12-07 13:34:12 +08:00
android_headers =
2014-03-10 18:13:39 +08:00
2017-12-07 13:34:12 +08:00
android_flags = -target armv7-none-linux-androideabi -D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -DANDROID -D__ANDROID_API__=14 -gcc-toolchain %(gcc_toolchain_dir)s --sysroot=%(androidndkdir)s/platforms/android-14/arch-arm -idirafter %(androidndkdir)s/sources/android/support/include -idirafter %(androidndkdir)s/sysroot/usr/include -idirafter %(androidndkdir)s/sysroot/usr/include/arm-linux-androideabi -idirafter %(clangllvmdir)s/lib64/clang/5.0/include -I%(androidndkdir)s/sources/cxx-stl/llvm-libc++/include
clang_headers =
clang_flags = -nostdinc -x c++ -std=c++11 -fsigned-char -U__SSE__
2014-03-10 18:13:39 +08:00
2020-11-02 12:50:51 +08:00
cocos_headers = -I%(cocosdir)s/external -I%(cocosdir)s/cocos -I%(cocosdir)s/extensions -I%(cocosdir)s/extensions/cocostudio -I%(cocosdir)s/cocos/platform/android -I%(cocosdir)s/external/lua/luajit/include -I%(cocosdir)s/external/lua/tolua -I%(cocosdir)s/extensions/scripting/lua-bindings/manual
2014-03-10 18:13:39 +08:00
2014-05-17 11:15:43 +08:00
cocos_flags = -DANDROID
2014-03-10 18:13:39 +08:00
2014-10-14 11:24:45 +08:00
cxxgenerator_headers =
2014-03-10 18:13:39 +08:00
# extra arguments for clang
2014-10-14 11:24:45 +08:00
extra_arguments = %(android_headers)s %(clang_headers)s %(cxxgenerator_headers)s %(cocos_headers)s %(android_flags)s %(clang_flags)s %(cocos_flags)s %(extra_flags)s
2014-03-10 18:13:39 +08:00
# what headers to parse
2020-11-01 20:18:50 +08:00
headers = %(cocosdir)s/extensions/cocostudio/CocoStudio.h %(cocosdir)s/extensions/cocostudio/CCComExtensionData.h %(cocosdir)s/extensions/scripting/lua-bindings/manual/cocostudio/lua-cocos-studio-conversions.h
2014-03-10 18:13:39 +08:00
# what classes to produce code for. You can use regular expressions here. When testing the regular
# expression, it will be enclosed in "^$", like this: "^Menu*$".
2015-07-27 09:56:55 +08:00
classes = Armature ArmatureAnimation Skin Bone ArmatureDataManager \w+Data$ ActionManagerEx ComAudio ComController ComAttribute ComRender BatchNode SceneReader GUIReader ActionObject Tween DisplayManager NodeReader ActionTimeline.* .*Frame$ Timeline ActionTimelineNode ComExtensionData BoneNode SkeletonNode
2014-03-10 18:13:39 +08:00
# what should we skip? in the format ClassName::[function function]
# ClassName is a regular expression, but will be used like this: "^ClassName$" functions are also
# regular expressions, they will not be surrounded by "^$". If you want to skip a whole class, just
# add a single "*" as functions. See bellow for several examples. A special class name is "*", which
# will apply to all class names. This is a convenience wildcard to be able to skip similar named
# functions from all classes.
2015-01-14 13:51:09 +08:00
skip = *::[^visit$ copyWith.* onEnter.* onExit.* ^description$ getObjectType .*HSV onTouch.* (s|g)etUserObject add\w*EventListener],
2014-03-10 18:13:39 +08:00
ArmatureDataManager::[CCArmatureDataManager ~CCArmatureDataManager],
Armature::[createBone updateBlendType setBody getShapeList ^getBody$],
Skin::[(s|g)etSkinData],
ArmatureAnimation::[updateHandler updateFrameData frameEvent setMovementEventCallFunc setFrameEventCallFunc],
Bone::[(s|g)etIgnoreMovementBoneData],
2014-07-15 17:38:56 +08:00
ActionManagerEx::[initWithDictionary initWithBinary],
2014-03-10 18:13:39 +08:00
DisplayManager::[initDisplayList (s|g)etCurrentDecorativeDisplay getDecorativeDisplayByIndex],
Tween::[(s|g)etMovementBoneData],
2014-08-30 00:46:38 +08:00
GUIReader::[registerTypeAndCallBack storeFileDesignSize getFileDesignSize getParseCallBackMap getParseObjectMap],
2014-03-10 18:13:39 +08:00
ActionNode::[initWithDictionary],
2014-07-15 17:38:56 +08:00
ActionObject::[initWithDictionary initWithBinary],
2014-06-26 09:51:32 +08:00
BaseData::[copy subtract],
2016-01-14 16:16:37 +08:00
ActionTimelineCache::[getInstance loadActionTimelineFromXML loadAnimationWithDataBuffer createActionWithDataBuffer],
2015-07-27 21:24:52 +08:00
ActionTimeline::[setFrameEventCallFunc]
2014-03-10 18:13:39 +08:00
2014-10-20 16:14:24 +08:00
rename_functions = ActionManagerEx::[shareManager=getInstance purgeActionManager=destroyInstance],
2016-06-14 23:35:17 +08:00
SceneReader::[purgeSceneReader = destroyInstance],
ComAudio::[end = endToLua]
2014-03-10 18:13:39 +08:00
rename_classes =
# for all class names, should we remove something when registering in the target VM?
2014-10-14 11:24:45 +08:00
remove_prefix =
2014-03-10 18:13:39 +08:00
# classes for which there will be no "parent" lookup
2014-10-14 11:24:45 +08:00
classes_have_no_parents =
2014-03-10 18:13:39 +08:00
# base classes which will be skipped when their sub-classes found them.
2014-03-26 12:58:33 +08:00
base_classes_to_skip =
2014-03-10 18:13:39 +08:00
# classes that create no constructor
# Set is special and we will use a hand-written constructor
2014-03-26 12:58:33 +08:00
abstract_classes = ArmatureDataManager ComAttribute ComRender ComAudio ActionManagerEx SceneReader GUIReader BatchNode ProcessBase
2014-03-10 18:13:39 +08:00
# Determining whether to use script object(js object) to control the lifecycle of native(cpp) object or the other way around. Supported values are 'yes' or 'no'.
script_control_cpp = no