2014-03-10 18:13:39 +08:00
[cocos2d-x]
# the prefix to be added to the generated functions. You might or might not use this in your own
# templates
prefix = cocos2dx
# 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 = cc
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
2021-06-18 11:31:07 +08:00
cocos_headers = -I%(cocosdir)s/cocos -I%(cocosdir)s/cocos/platform/android -I%(cocosdir)s/extensions -I%(cocosdir)s/thirdparty
2014-05-17 11:15:43 +08:00
cocos_flags = -DANDROID
2014-03-10 18:13:39 +08:00
2015-07-07 14:54:31 +08:00
cxxgenerator_headers =
2014-03-10 18:13:39 +08:00
# extra arguments for clang
2015-07-07 14:54:31 +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-02 16:37:18 +08:00
headers = %(cocosdir)s/cocos/cocos2d.h %(cocosdir)s/cocos/2d/CCProtectedNode.h %(cocosdir)s/cocos/base/CCAsyncTaskPool.h %(cocosdir)s/extensions/scripting/lua-bindings/manual/CCComponentLua.h %(cocosdir)s/cocos/renderer/CCRenderer.h %(cocosdir)s/cocos/renderer/CCPipelineDescriptor.h %(cocosdir)s/cocos/renderer/backend/RenderTarget.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*$".
2019-10-23 14:58:31 +08:00
classes = New.* Sprite.* Scene Node.* Director Layer.* Menu.* Touch .*Action.* Move.* Rotate.* Blink.* Tint.* Sequence Repeat.* Fade.* Ease.* Scale.* Transition.* Spawn Animat.* Flip.* Delay.* Skew.* Jump.* Place.* Show.* Progress.* PointArray ToggleVisibility.* RemoveSelf Hide Particle.* Label.* Atlas.* TextureCache.* Texture2D Cardinal.* CatmullRom.* ParallaxNode TileMap.* .*TMX.* CallFunc RenderTexture GridAction Grid3DAction GridBase$ .+Grid Shaky3D Waves3D FlipX3D FlipY3D Speed ActionManager Set Scheduler Timer Orbit.* Follow.* Bezier.* CardinalSpline.* Camera.* DrawNode .*3D$ Liquid$ Waves$ ShuffleTiles$ TurnOffTiles$ Split.* Twirl$ FileUtils$ GLProgram ShaderCache Application ClippingNode MotionStreak ^Ref$ UserDefault GLViewImpl GLView Image Event(?!.*(Physics).*).* Component ProtectedNode Console GLProgramCache GLProgramState Device ClippingRectangleNode .*Light$ AsyncTaskPool RenderState Material Properties Technique Pass PolygonInfo AutoPolygon BoneNode SkeletonNode ComponentLua PipelineDescriptor Renderer FastTMXLayer FastTMXTiledMap
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.
2016-07-31 22:44:24 +08:00
skip = Node::[setGLServerState description getUserObject .*UserData getGLServerState .*schedule getPosition$ setContentSize setAnchorPoint enumerateChildren getonEnterTransitionDidFinishCallback getOnEnterCallback getOnExitCallback getonExitTransitionDidStartCallback setAdditionalTransform setRotationQuat getRotationQuat sortNodes],
2015-06-18 12:03:30 +08:00
Sprite::[getQuad ^setPosition$ ^create$ setPolygonInfo initWithPolygon getPolygonInfo],
2015-09-30 21:20:53 +08:00
SpriteFrame::[setPolygonInfo getPolygonInfo hasPolygonInfo],
2015-01-14 13:51:09 +08:00
SpriteBatchNode::[getDescendants],
MotionStreak::[draw update],
ParticleSystem::[updateQuadWithParticle initParticle],
DrawNode::[drawPolygon drawSolidPoly drawPoly drawCardinalSpline drawCatmullRom drawPoints listenBackToForeground],
2019-07-02 09:29:20 +08:00
Director::[getAccelerometer getProjection getFrustum getCocos2dThreadId],
2015-01-14 13:51:09 +08:00
Layer.*::[didAccelerate keyPressed keyReleased],
2014-03-10 18:13:39 +08:00
Menu.*::[.*Target getSubItems create initWithItems alignItemsInRows alignItemsInColumns],
MenuItem.*::[create setCallback initWithCallback],
2015-03-30 15:48:47 +08:00
Label::[createWithTTF],
2014-03-10 18:13:39 +08:00
Copying::[*],
LabelProtocol::[*],
LabelTextFormatProtocol::[*],
.*Delegate::[*],
PoolManager::[*],
2014-06-12 10:08:58 +08:00
Texture2D::[setTexParameters initWithData getPixelFormatInfoMap updateWithData initWithMipmaps],
2014-03-10 18:13:39 +08:00
Set::[begin end acceptVisitor],
IMEDispatcher::[*],
SAXParser::[*],
Thread::[*],
Profiler::[*],
ProfilingTimer::[*],
CallFunc::[create initWithFunction],
SAXDelegator::[*],
Color3bObject::[*],
TouchDispatcher::[*],
EGLTouchDelegate::[*],
ScriptEngineManager::[*],
KeypadHandler::[*],
Invocation::[*],
SchedulerScriptHandlerEntry::[*],
Size::[*],
Point::[*],
PointArray::[*],
Rect::[*],
String::[*],
Data::[*],
Dictionary::[*],
Array::[*],
Range::[*],
EventListenerVector::[*],
EventListener.*::[create],
EventTouch::[(s|g)etTouches],
NotificationObserver::[*],
2014-05-07 10:09:54 +08:00
Image::[initWithString initWithImageData initWithRawData getData getMipmaps],
2014-03-10 18:13:39 +08:00
Sequence::[create],
Spawn::[create],
2014-06-12 10:08:58 +08:00
GLProgram::[getProgram setUniformLocationWith2f.* setUniformLocationWith1f.* setUniformLocationWith3f.* setUniformLocationWith4f.* setUniformLocationWithMatrix4f.* getUniform setUniformLocationWith3i.* setUniformLocationWith4i.* setUniformLocationWith2i.* setUniformLocationWithMatrix3f.* setUniformLocationWithMatrix2f.* getVertexAttrib],
2014-03-10 18:13:39 +08:00
Grid3DAction::[create actionWith.* vertex originalVertex (g|s)etVertex getOriginalVertex],
Grid3D::[vertex originalVertex (g|s)etVertex getOriginalVertex],
TiledGrid3DAction::[create actionWith.* tile originalTile getOriginalTile (g|s)etTile],
TiledGrid3D::[tile originalTile getOriginalTile (g|s)etTile],
2014-06-12 10:08:58 +08:00
TMXLayer::[getTiles getTileGIDAt setTiles],
2019-10-23 14:58:31 +08:00
FastTMXLayer::[(g|s)etTiles getTileGIDAt],
2014-03-10 18:13:39 +08:00
TMXMapInfo::[startElement endElement textHandler],
ParticleSystemQuad::[postStep setBatchNode draw setTexture$ setTotalParticles updateQuadWithParticle setupIndices listenBackToForeground initWithTotalParticles particleWithFile node],
LayerMultiplex::[create layerWith.* initWithLayers],
CatmullRom.*::[create actionWithDuration],
Bezier.*::[create actionWithDuration],
CardinalSpline.*::[create actionWithDuration setPoints],
2014-04-10 15:52:51 +08:00
Scheduler::[pause resume unschedule schedule update isTargetPaused isScheduled performFunctionInCocosThread],
2014-03-10 18:13:39 +08:00
TextureCache::[addPVRTCImage addImageAsync],
Timer::[getSelector createWithScriptHandler],
2014-05-23 10:00:59 +08:00
*::[copyWith.* onEnter.* onExit.* ^description$ getObjectType (g|s)etDelegate onTouch.* onAcc.* onKey.* onRegisterTouchListener],
2021-06-18 12:23:10 +08:00
FileUtils::[getFileData getDataFromFile writeDataToFile getFullPathCache getContents openFileStream],
2014-03-10 18:13:39 +08:00
Application::[^application.* ^run$],
Camera::[getEyeXYZ getCenterXYZ getUpXYZ],
ccFontDefinition::[*],
Ref::[autorelease isEqual acceptVisitor update],
2020-11-02 16:37:18 +08:00
UserDefault::[getInstance (s|g)etDataForKey encrypt],
2014-09-04 22:12:59 +08:00
GLView::[setTouchDelegate getAllTouches],
2014-07-31 00:53:04 +08:00
GLViewImpl::[end swapBuffers],
2014-03-10 18:13:39 +08:00
NewTextureAtlas::[*],
DisplayLinkDirector::[mainLoop setAnimationInterval startAnimation stopAnimation],
2019-06-19 13:45:14 +08:00
RenderTexture::[listenToBackground listenToForeground newImage],
2014-03-10 18:13:39 +08:00
TMXTiledMap::[getPropertiesForGID],
EventCustom::[getUserData setUserData],
2014-04-10 15:52:51 +08:00
Component::[serialize],
2017-12-05 13:35:16 +08:00
Console::[addCommand addSubCommand getSubCommand delSubCommand getCommand],
2014-06-12 10:08:58 +08:00
ParallaxNode::[(s|g)etParallaxArray],
TileMapAtlas::[(s|g)etTGAInfo],
GLProgramState::[setVertexAttribCallback setUniformCallback setVertexAttribPointer],
OrbitCamera::[sphericalRadius],
ShuffleTiles::[placeTile shuffle],
TurnOffTiles::[shuffle],
LabelTTF::[*],
2014-06-18 13:43:22 +08:00
LabelBMFont::[*],
2015-09-19 00:08:15 +08:00
Scene::[getCameras getLights .*(Physics3D).* .*(NavMesh).*],
2014-08-27 10:18:44 +08:00
Animate3D::[*],
Sprite3D::[*],
AttachNode::[*],
Animation3D::[*],
Skeleton3D::[*],
Mesh::[*],
Animation3DCache::[*],
Sprite3DMaterialCache::[*],
2015-12-01 23:05:47 +08:00
Sprite3DMaterial::[*],
2014-08-27 10:18:44 +08:00
Sprite3DCache::[*],
2014-09-04 16:45:42 +08:00
Bone3D::[*],
2014-09-26 11:52:52 +08:00
Device::[getTextureDataForText],
2014-09-26 15:07:23 +08:00
BillBoard::[*],
2015-04-28 18:19:57 +08:00
Camera::[unproject],
2015-04-30 17:18:12 +08:00
EventListenerCustom::[init],
EventListener::[init],
2015-05-27 15:37:59 +08:00
RotateTo::[calculateAngles],
2019-03-07 18:29:06 +08:00
RenderState::[finalize setStateBlock getStateBlock],
2015-06-11 14:38:38 +08:00
Properties::[createNonRefCounted],
AutoPolygon::[trace reduce expand triangulate calculateUV generateTriangles generatePolygon],
2019-03-07 18:29:06 +08:00
PolygonInfo::[operator = ],
Technique::[getStateBlock],
2019-05-06 09:41:59 +08:00
Material::[getStateBlock setStateBlock],
2021-08-14 13:22:03 +08:00
Pass::[getStateBlock],
SpriteSheetLoader::[*],
SpriteFrameCache::[registerSpriteSheetLoader insertFrame addSpriteFramesWithFileContent]
2014-03-10 18:13:39 +08:00
2014-10-17 15:04:16 +08:00
rename_functions = SpriteFrameCache::[addSpriteFramesWithFile=addSpriteFrames getSpriteFrameByName=getSpriteFrame],
2014-03-10 18:13:39 +08:00
ProgressTimer::[setReverseProgress = setReverseDirection],
AnimationCache::[addAnimationsWithFile = addAnimations],
2014-10-20 16:14:24 +08:00
GLProgram::[setUniformLocationWith1i = setUniformLocationI32],
2014-03-10 18:13:39 +08:00
Node::[removeFromParentAndCleanup = removeFromParent removeAllChildrenWithCleanup=removeAllChildren],
LabelAtlas::[create = _create],
Touch::[getID = getId],
FileUtils::[loadFilenameLookupDictionaryFromFile = loadFilenameLookup],
2016-06-14 23:35:17 +08:00
Director::[end = endToLua],
GLView::[end = endToLua],
RenderTexture::[end = endToLua]
2014-03-10 18:13:39 +08:00
2014-08-04 09:39:42 +08:00
rename_classes = ParticleSystemQuad::ParticleSystem
2014-03-10 18:13:39 +08:00
# for all class names, should we remove something when registering in the target VM?
2015-07-07 14:54:31 +08:00
remove_prefix =
2014-03-10 18:13:39 +08:00
# classes for which there will be no "parent" lookup
2019-05-05 15:26:34 +08:00
classes_have_no_parents = Director FileUtils TMXMapInfo Application Downloader
2014-03-10 18:13:39 +08:00
# base classes which will be skipped when their sub-classes found them.
base_classes_to_skip = Clonable
# classes that create no constructor
# Set is special and we will use a hand-written constructor
2015-09-25 22:46:10 +08:00
abstract_classes = Action FiniteTimeAction ActionInterval ActionEase EaseRateAction EaseElastic EaseBounce ActionInstant GridAction Grid3DAction TiledGrid3DAction Director SpriteFrameCache TransitionEaseScene Set FileUtils Application ClippingNode Label GLViewImpl GLView EventAcceleration DisplayLinkDirector Component Console EventListener BaseLight
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