space.monkey2 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. Namespace chipmunk
  2. #Import "chipmunk_glue.h"
  3. Extern
  4. '***** File: Chipmunk7/include/chipmunk/cpSpace.h *****
  5. Alias cpCollisionBeginFunc:cpBool( cpArbiter, cpSpace, cpDataPointer )
  6. Alias cpCollisionPreSolveFunc:cpBool( cpArbiter, cpSpace, cpDataPointer )
  7. Alias cpCollisionPostSolveFunc:Void( cpArbiter, cpSpace, cpDataPointer )
  8. Alias cpCollisionSeparateFunc:Void( cpArbiter, cpSpace, cpDataPointer )
  9. Class cpCollisionHandler="bb_cpCollisionHandler"
  10. Field typeA:cpCollisionType
  11. Field typeB:cpCollisionType
  12. Field beginFunc:cpCollisionBeginFunc
  13. Field preSolveFunc:cpCollisionPreSolveFunc
  14. Field postSolveFunc:cpCollisionPostSolveFunc
  15. Field separateFunc:cpCollisionSeparateFunc
  16. Field userData:cpDataPointer
  17. End
  18. Alias cpSpaceDebugDrawCircleImpl:Void( cpVect, cpFloat, cpFloat, cpSpaceDebugColor, cpSpaceDebugColor, cpDataPointer )
  19. Alias cpSpaceDebugDrawSegmentImpl:Void( cpVect, cpVect, cpSpaceDebugColor, cpDataPointer )
  20. Alias cpSpaceDebugDrawFatSegmentImpl:Void( cpVect, cpVect, cpFloat, cpSpaceDebugColor, cpSpaceDebugColor, cpDataPointer )
  21. Alias cpSpaceDebugDrawPolygonImpl:Void( Int, cpVect Ptr, cpFloat, cpSpaceDebugColor, cpSpaceDebugColor, cpDataPointer )
  22. Alias cpSpaceDebugDrawDotImpl:Void( cpFloat, cpVect, cpSpaceDebugColor, cpDataPointer )
  23. Alias cpSpaceDebugDrawColorForShapeImpl:cpSpaceDebugColor( cpShape, cpDataPointer )
  24. Enum cpSpaceDebugDrawFlags
  25. End
  26. Const CP_SPACE_DEBUG_DRAW_SHAPES:cpSpaceDebugDrawFlags
  27. Const CP_SPACE_DEBUG_DRAW_CONSTRAINTS:cpSpaceDebugDrawFlags
  28. Const CP_SPACE_DEBUG_DRAW_COLLISION_POINTS:cpSpaceDebugDrawFlags
  29. Struct cpSpaceDebugColor
  30. Field r:Float
  31. Field g:Float
  32. Field b:Float
  33. Field a:Float
  34. End
  35. Class cpSpaceDebugDrawOptions="bb_cpSpaceDebugDrawOptions"
  36. Field drawCircle:cpSpaceDebugDrawCircleImpl
  37. Field drawSegment:cpSpaceDebugDrawSegmentImpl
  38. Field drawFatSegment:cpSpaceDebugDrawFatSegmentImpl
  39. Field drawPolygon:cpSpaceDebugDrawPolygonImpl
  40. Field drawDot:cpSpaceDebugDrawDotImpl
  41. Field flags:cpSpaceDebugDrawFlags
  42. Field shapeOutlineColor:cpSpaceDebugColor
  43. Field colorForShape:cpSpaceDebugDrawColorForShapeImpl
  44. Field constraintColor:cpSpaceDebugColor
  45. Field collisionPointColor:cpSpaceDebugColor
  46. Field userData:cpDataPointer
  47. End
  48. Alias cpPostStepFunc:Void( cpSpace, Void Ptr, Void Ptr )
  49. Alias cpSpacePointQueryFunc:Void( cpShape, cpVect, cpFloat, cpVect, Void Ptr )
  50. Alias cpSpaceSegmentQueryFunc:Void( cpShape, cpVect, cpVect, cpFloat, Void Ptr )
  51. Alias cpSpaceBBQueryFunc:Void( cpShape, Void Ptr )
  52. Alias cpSpaceShapeQueryFunc:Void( cpShape, cpContactPointSet Ptr, Void Ptr )
  53. Alias cpSpaceBodyIteratorFunc:Void( cpBody, Void Ptr )
  54. Alias cpSpaceShapeIteratorFunc:Void( cpShape, Void Ptr )
  55. Alias cpSpaceConstraintIteratorFunc:Void( cpConstraint, Void Ptr )
  56. Function cpSpaceAlloc:cpSpace( )
  57. Function cpSpaceInit:cpSpace( space:cpSpace )
  58. Function cpSpaceNew:cpSpace( )
  59. Function cpSpaceDestroy:Void( space:cpSpace )
  60. Function cpSpaceFree:Void( space:cpSpace )
  61. Function cpSpaceGetIterations:Int( space:cpSpace )
  62. Function cpSpaceSetIterations:Void( space:cpSpace, iterations:Int )
  63. Function cpSpaceGetGravity:cpVect( space:cpSpace )
  64. Function cpSpaceSetGravity:Void( space:cpSpace, gravity:cpVect )
  65. Function cpSpaceGetDamping:cpFloat( space:cpSpace )
  66. Function cpSpaceSetDamping:Void( space:cpSpace, damping:cpFloat )
  67. Function cpSpaceGetIdleSpeedThreshold:cpFloat( space:cpSpace )
  68. Function cpSpaceSetIdleSpeedThreshold:Void( space:cpSpace, idleSpeedThreshold:cpFloat )
  69. Function cpSpaceGetSleepTimeThreshold:cpFloat( space:cpSpace )
  70. Function cpSpaceSetSleepTimeThreshold:Void( space:cpSpace, sleepTimeThreshold:cpFloat )
  71. Function cpSpaceGetCollisionSlop:cpFloat( space:cpSpace )
  72. Function cpSpaceSetCollisionSlop:Void( space:cpSpace, collisionSlop:cpFloat )
  73. Function cpSpaceGetCollisionBias:cpFloat( space:cpSpace )
  74. Function cpSpaceSetCollisionBias:Void( space:cpSpace, collisionBias:cpFloat )
  75. Function cpSpaceGetCollisionPersistence:cpTimestamp( space:cpSpace )
  76. Function cpSpaceSetCollisionPersistence:Void( space:cpSpace, collisionPersistence:cpTimestamp )
  77. Function cpSpaceGetUserData:cpDataPointer( space:cpSpace )
  78. Function cpSpaceSetUserData:Void( space:cpSpace, userData:cpDataPointer )
  79. Function cpSpaceGetStaticBody:cpBody( space:cpSpace )
  80. Function cpSpaceGetCurrentTimeStep:cpFloat( space:cpSpace )
  81. Function cpSpaceIsLocked:cpBool( space:cpSpace )
  82. Function cpSpaceAddDefaultCollisionHandler:cpCollisionHandler( space:cpSpace )="bb_cpSpaceAddDefaultCollisionHandler"
  83. Function cpSpaceAddCollisionHandler:cpCollisionHandler( space:cpSpace, a:cpCollisionType, b:cpCollisionType )="bb_cpSpaceAddCollisionHandler"
  84. Function cpSpaceAddWildcardHandler:cpCollisionHandler( space:cpSpace, type:cpCollisionType )="bb_cpSpaceAddWildcardHandler"
  85. Function cpSpaceAddShape:cpShape( space:cpSpace, shape:cpShape )
  86. Function cpSpaceAddBody:cpBody( space:cpSpace, body:cpBody )
  87. Function cpSpaceAddConstraint:cpConstraint( space:cpSpace, constraint:cpConstraint )
  88. Function cpSpaceRemoveShape:Void( space:cpSpace, shape:cpShape )
  89. Function cpSpaceRemoveBody:Void( space:cpSpace, body:cpBody )
  90. Function cpSpaceRemoveConstraint:Void( space:cpSpace, constraint:cpConstraint )
  91. Function cpSpaceContainsShape:cpBool( space:cpSpace, shape:cpShape )
  92. Function cpSpaceContainsBody:cpBool( space:cpSpace, body:cpBody )
  93. Function cpSpaceContainsConstraint:cpBool( space:cpSpace, constraint:cpConstraint )
  94. Function cpSpaceAddPostStepCallback:cpBool( space:cpSpace, func:cpPostStepFunc, key:Void Ptr, data:Void Ptr )
  95. Function cpSpacePointQuery:Void( space:cpSpace, point:cpVect, maxDistance:cpFloat, filter:cpShapeFilter, func:cpSpacePointQueryFunc, data:Void Ptr )
  96. Function cpSpacePointQueryNearest:cpShape( space:cpSpace, point:cpVect, maxDistance:cpFloat, filter:cpShapeFilter, out:cpPointQueryInfo Ptr )
  97. Function cpSpaceSegmentQuery:Void( space:cpSpace, start:cpVect, end_:cpVect, radius:cpFloat, filter:cpShapeFilter, func:cpSpaceSegmentQueryFunc, data:Void Ptr )
  98. Function cpSpaceSegmentQueryFirst:cpShape( space:cpSpace, start:cpVect, end_:cpVect, radius:cpFloat, filter:cpShapeFilter, out:cpSegmentQueryInfo Ptr )
  99. Function cpSpaceBBQuery:Void( space:cpSpace, bb:cpBB, filter:cpShapeFilter, func:cpSpaceBBQueryFunc, data:Void Ptr )
  100. Function cpSpaceShapeQuery:cpBool( space:cpSpace, shape:cpShape, func:cpSpaceShapeQueryFunc, data:Void Ptr )
  101. Function cpSpaceEachBody:Void( space:cpSpace, func:cpSpaceBodyIteratorFunc, data:Void Ptr )
  102. Function cpSpaceEachShape:Void( space:cpSpace, func:cpSpaceShapeIteratorFunc, data:Void Ptr )
  103. Function cpSpaceEachConstraint:Void( space:cpSpace, func:cpSpaceConstraintIteratorFunc, data:Void Ptr )
  104. Function cpSpaceReindexStatic:Void( space:cpSpace )
  105. Function cpSpaceReindexShape:Void( space:cpSpace, shape:cpShape )
  106. Function cpSpaceReindexShapesForBody:Void( space:cpSpace, body:cpBody )
  107. Function cpSpaceUseSpatialHash:Void( space:cpSpace, dim:cpFloat, count:Int )
  108. Function cpSpaceStep:Void( space:cpSpace, dt:cpFloat )
  109. Function cpSpaceDebugDraw:Void( space:cpSpace, options:cpSpaceDebugDrawOptions )="bb_cpSpaceDebugDraw"
  110. Class cpSpace Extends Void
  111. Property Iterations:Int() Extension="cpSpaceGetIterations"
  112. Setter( iterations:Int ) Extension="cpSpaceSetIterations"
  113. Property Gravity:cpVect() Extension="cpSpaceGetGravity"
  114. Setter( gravity:cpVect ) Extension="cpSpaceSetGravity"
  115. Property Damping:cpFloat() Extension="cpSpaceGetDamping"
  116. Setter( damping:cpFloat ) Extension="cpSpaceSetDamping"
  117. Property IdleSpeedThreshold:cpFloat() Extension="cpSpaceGetIdleSpeedThreshold"
  118. Setter( idleSpeedThreshold:cpFloat ) Extension="cpSpaceSetIdleSpeedThreshold"
  119. Property SleepTimeThreshold:cpFloat() Extension="cpSpaceGetSleepTimeThreshold"
  120. Setter( sleepTimeThreshold:cpFloat ) Extension="cpSpaceSetSleepTimeThreshold"
  121. Property CollisionSlop:cpFloat() Extension="cpSpaceGetCollisionSlop"
  122. Setter( collisionSlop:cpFloat ) Extension="cpSpaceSetCollisionSlop"
  123. Property CollisionBias:cpFloat() Extension="cpSpaceGetCollisionBias"
  124. Setter( collisionBias:cpFloat ) Extension="cpSpaceSetCollisionBias"
  125. Property CollisionPersistence:cpTimestamp() Extension="cpSpaceGetCollisionPersistence"
  126. Setter( collisionPersistence:cpTimestamp ) Extension="cpSpaceSetCollisionPersistence"
  127. Property UserData:cpDataPointer() Extension="cpSpaceGetUserData"
  128. Setter( userData:cpDataPointer ) Extension="cpSpaceSetUserData"
  129. Property StaticBody:cpBody() Extension="cpSpaceGetStaticBody"
  130. Property CurrentTimeStep:cpFloat() Extension="cpSpaceGetCurrentTimeStep"
  131. property IsLocked:cpBool() Extension="cpSpaceIsLocked"
  132. Method StepTime( dt:cpFloat ) Extension="cpSpaceStep"
  133. Method AddShape:cpShape( shape:cpShape ) Extension="cpSpaceAddShape"
  134. Method AddBody:cpBody( body:cpBody ) Extension="cpSpaceAddBody"
  135. Method AddConstraint:cpConstraint( constraint:cpConstraint ) Extension="cpSpaceAddConstraint"
  136. Method RemoveShape( shape:cpShape ) Extension="cpSpaceRemoveShape"
  137. Method RemoveBody( body:cpBody ) Extension="cpSpaceRemoveBody"
  138. Method RemoveConstraint( constraint:cpConstraint ) Extension="cpSpaceRemoveConstraint"
  139. Method AddDefaultCollisionHandler:cpCollisionHandler() Extension="bb_cpSpaceAddDefaultCollisionHandler"
  140. Method DebugDraw( options:cpSpaceDebugDrawOptions ) Extension="bb_cpSpaceDebugDraw"
  141. End