blitz.bmx.release.linux.x64.h 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417
  1. #ifndef BRL_BLITZ_BLITZ_BMX_RELEASE_LINUX_X64_H
  2. #define BRL_BLITZ_BLITZ_BMX_RELEASE_LINUX_X64_H
  3. #include <brl.mod/blitz.mod/blitz.h>
  4. int __bb_brl_blitz_blitz();
  5. struct brl_blitz_TBlitzException_obj;
  6. struct brl_blitz_TNullObjectException_obj;
  7. struct brl_blitz_TNullMethodException_obj;
  8. struct brl_blitz_TNullFunctionException_obj;
  9. struct brl_blitz_TArrayBoundsException_obj;
  10. struct brl_blitz_TOutOfDataException_obj;
  11. struct brl_blitz_TRuntimeException_obj;
  12. struct brl_blitz_TInvalidEnumException_obj;
  13. struct brl_blitz_IDisposable_obj;
  14. extern const struct BBInterface brl_blitz_IDisposable_ifc;
  15. struct brl_blitz_IIterable_obj;
  16. extern const struct BBInterface brl_blitz_IIterable_ifc;
  17. struct brl_blitz_IIterator_obj;
  18. extern const struct BBInterface brl_blitz_IIterator_ifc;
  19. struct brl_blitz_IComparator_obj;
  20. extern const struct BBInterface brl_blitz_IComparator_ifc;
  21. void(* bbOnDebugStop)();
  22. void(* bbOnDebugLog)(BBSTRING);
  23. extern BBSTRING bbAppDir;
  24. extern BBSTRING bbAppFile;
  25. extern BBSTRING bbAppTitle;
  26. extern BBARRAY bbAppArgs;
  27. extern BBSTRING bbLaunchDir;
  28. extern BBINT bbCountInstances;
  29. void _brl_blitz_TBlitzException_New(struct brl_blitz_TBlitzException_obj* o);
  30. struct BBClass_brl_blitz_TBlitzException {
  31. BBClass* super;
  32. void (*free)( BBObject *o );
  33. BBDebugScope* debug_scope;
  34. unsigned int instance_size;
  35. void (*ctor)( BBOBJECT o );
  36. void (*dtor)( BBOBJECT o );
  37. BBSTRING (*ToString)( BBOBJECT x );
  38. int (*Compare)( BBOBJECT x,BBOBJECT y );
  39. BBOBJECT (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
  40. BBINTERFACETABLE itable;
  41. void* extra;
  42. unsigned int obj_size;
  43. unsigned int instance_count;
  44. };
  45. struct brl_blitz_TBlitzException_obj {
  46. struct BBClass_brl_blitz_TBlitzException* clas;
  47. };
  48. extern struct BBClass_brl_blitz_TBlitzException brl_blitz_TBlitzException;
  49. void _brl_blitz_TNullObjectException_New(struct brl_blitz_TNullObjectException_obj* o);
  50. BBSTRING _brl_blitz_TNullObjectException_ToString(struct brl_blitz_TNullObjectException_obj* o);
  51. struct BBClass_brl_blitz_TNullObjectException {
  52. struct BBClass_brl_blitz_TBlitzException* super;
  53. void (*free)( BBObject *o );
  54. BBDebugScope* debug_scope;
  55. unsigned int instance_size;
  56. void (*ctor)( BBOBJECT o );
  57. void (*dtor)( BBOBJECT o );
  58. BBSTRING (*ToString)( BBOBJECT x );
  59. int (*Compare)( BBOBJECT x,BBOBJECT y );
  60. BBOBJECT (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
  61. BBINTERFACETABLE itable;
  62. void* extra;
  63. unsigned int obj_size;
  64. unsigned int instance_count;
  65. };
  66. struct brl_blitz_TNullObjectException_obj {
  67. struct BBClass_brl_blitz_TNullObjectException* clas;
  68. };
  69. extern struct BBClass_brl_blitz_TNullObjectException brl_blitz_TNullObjectException;
  70. void _brl_blitz_TNullMethodException_New(struct brl_blitz_TNullMethodException_obj* o);
  71. BBSTRING _brl_blitz_TNullMethodException_ToString(struct brl_blitz_TNullMethodException_obj* o);
  72. struct BBClass_brl_blitz_TNullMethodException {
  73. struct BBClass_brl_blitz_TBlitzException* super;
  74. void (*free)( BBObject *o );
  75. BBDebugScope* debug_scope;
  76. unsigned int instance_size;
  77. void (*ctor)( BBOBJECT o );
  78. void (*dtor)( BBOBJECT o );
  79. BBSTRING (*ToString)( BBOBJECT x );
  80. int (*Compare)( BBOBJECT x,BBOBJECT y );
  81. BBOBJECT (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
  82. BBINTERFACETABLE itable;
  83. void* extra;
  84. unsigned int obj_size;
  85. unsigned int instance_count;
  86. };
  87. struct brl_blitz_TNullMethodException_obj {
  88. struct BBClass_brl_blitz_TNullMethodException* clas;
  89. };
  90. extern struct BBClass_brl_blitz_TNullMethodException brl_blitz_TNullMethodException;
  91. void _brl_blitz_TNullFunctionException_New(struct brl_blitz_TNullFunctionException_obj* o);
  92. BBSTRING _brl_blitz_TNullFunctionException_ToString(struct brl_blitz_TNullFunctionException_obj* o);
  93. struct BBClass_brl_blitz_TNullFunctionException {
  94. struct BBClass_brl_blitz_TBlitzException* super;
  95. void (*free)( BBObject *o );
  96. BBDebugScope* debug_scope;
  97. unsigned int instance_size;
  98. void (*ctor)( BBOBJECT o );
  99. void (*dtor)( BBOBJECT o );
  100. BBSTRING (*ToString)( BBOBJECT x );
  101. int (*Compare)( BBOBJECT x,BBOBJECT y );
  102. BBOBJECT (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
  103. BBINTERFACETABLE itable;
  104. void* extra;
  105. unsigned int obj_size;
  106. unsigned int instance_count;
  107. };
  108. struct brl_blitz_TNullFunctionException_obj {
  109. struct BBClass_brl_blitz_TNullFunctionException* clas;
  110. };
  111. extern struct BBClass_brl_blitz_TNullFunctionException brl_blitz_TNullFunctionException;
  112. void _brl_blitz_TArrayBoundsException_New(struct brl_blitz_TArrayBoundsException_obj* o);
  113. BBSTRING _brl_blitz_TArrayBoundsException_ToString(struct brl_blitz_TArrayBoundsException_obj* o);
  114. struct BBClass_brl_blitz_TArrayBoundsException {
  115. struct BBClass_brl_blitz_TBlitzException* super;
  116. void (*free)( BBObject *o );
  117. BBDebugScope* debug_scope;
  118. unsigned int instance_size;
  119. void (*ctor)( BBOBJECT o );
  120. void (*dtor)( BBOBJECT o );
  121. BBSTRING (*ToString)( BBOBJECT x );
  122. int (*Compare)( BBOBJECT x,BBOBJECT y );
  123. BBOBJECT (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
  124. BBINTERFACETABLE itable;
  125. void* extra;
  126. unsigned int obj_size;
  127. unsigned int instance_count;
  128. };
  129. struct brl_blitz_TArrayBoundsException_obj {
  130. struct BBClass_brl_blitz_TArrayBoundsException* clas;
  131. };
  132. extern struct BBClass_brl_blitz_TArrayBoundsException brl_blitz_TArrayBoundsException;
  133. void _brl_blitz_TOutOfDataException_New(struct brl_blitz_TOutOfDataException_obj* o);
  134. BBSTRING _brl_blitz_TOutOfDataException_ToString(struct brl_blitz_TOutOfDataException_obj* o);
  135. struct BBClass_brl_blitz_TOutOfDataException {
  136. struct BBClass_brl_blitz_TBlitzException* super;
  137. void (*free)( BBObject *o );
  138. BBDebugScope* debug_scope;
  139. unsigned int instance_size;
  140. void (*ctor)( BBOBJECT o );
  141. void (*dtor)( BBOBJECT o );
  142. BBSTRING (*ToString)( BBOBJECT x );
  143. int (*Compare)( BBOBJECT x,BBOBJECT y );
  144. BBOBJECT (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
  145. BBINTERFACETABLE itable;
  146. void* extra;
  147. unsigned int obj_size;
  148. unsigned int instance_count;
  149. };
  150. struct brl_blitz_TOutOfDataException_obj {
  151. struct BBClass_brl_blitz_TOutOfDataException* clas;
  152. };
  153. extern struct BBClass_brl_blitz_TOutOfDataException brl_blitz_TOutOfDataException;
  154. void _brl_blitz_TRuntimeException_New(struct brl_blitz_TRuntimeException_obj* o);
  155. BBSTRING _brl_blitz_TRuntimeException_ToString(struct brl_blitz_TRuntimeException_obj* o);
  156. typedef struct brl_blitz_TRuntimeException_obj* (*brl_blitz_TRuntimeException_Create_TTRuntimeException_S_f)(BBSTRING);
  157. struct brl_blitz_TRuntimeException_obj* brl_blitz_TRuntimeException_Create_TTRuntimeException_S(BBSTRING);
  158. struct BBClass_brl_blitz_TRuntimeException {
  159. struct BBClass_brl_blitz_TBlitzException* super;
  160. void (*free)( BBObject *o );
  161. BBDebugScope* debug_scope;
  162. unsigned int instance_size;
  163. void (*ctor)( BBOBJECT o );
  164. void (*dtor)( BBOBJECT o );
  165. BBSTRING (*ToString)( BBOBJECT x );
  166. int (*Compare)( BBOBJECT x,BBOBJECT y );
  167. BBOBJECT (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
  168. BBINTERFACETABLE itable;
  169. void* extra;
  170. unsigned int obj_size;
  171. unsigned int instance_count;
  172. brl_blitz_TRuntimeException_Create_TTRuntimeException_S_f f_Create_TTRuntimeException_S;
  173. };
  174. struct brl_blitz_TRuntimeException_obj {
  175. struct BBClass_brl_blitz_TRuntimeException* clas;
  176. BBSTRING _brl_blitz_truntimeexception_error;
  177. };
  178. extern struct BBClass_brl_blitz_TRuntimeException brl_blitz_TRuntimeException;
  179. void _brl_blitz_TInvalidEnumException_New(struct brl_blitz_TInvalidEnumException_obj* o);
  180. BBSTRING _brl_blitz_TInvalidEnumException_ToString(struct brl_blitz_TInvalidEnumException_obj* o);
  181. struct BBClass_brl_blitz_TInvalidEnumException {
  182. struct BBClass_brl_blitz_TBlitzException* super;
  183. void (*free)( BBObject *o );
  184. BBDebugScope* debug_scope;
  185. unsigned int instance_size;
  186. void (*ctor)( BBOBJECT o );
  187. void (*dtor)( BBOBJECT o );
  188. BBSTRING (*ToString)( BBOBJECT x );
  189. int (*Compare)( BBOBJECT x,BBOBJECT y );
  190. BBOBJECT (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
  191. BBINTERFACETABLE itable;
  192. void* extra;
  193. unsigned int obj_size;
  194. unsigned int instance_count;
  195. };
  196. struct brl_blitz_TInvalidEnumException_obj {
  197. struct BBClass_brl_blitz_TInvalidEnumException* clas;
  198. };
  199. extern struct BBClass_brl_blitz_TInvalidEnumException brl_blitz_TInvalidEnumException;
  200. void _brl_blitz_IDisposable_New(struct brl_blitz_IDisposable_obj* o);
  201. typedef void (*brl_blitz_IDisposable_Dispose_m)(struct brl_blitz_IDisposable_obj*);
  202. void _brl_blitz_IDisposable_Dispose(struct brl_blitz_IDisposable_obj*);
  203. struct BBClass_brl_blitz_IDisposable {
  204. BBClass* super;
  205. void (*free)( BBObject *o );
  206. BBDebugScope* debug_scope;
  207. unsigned int instance_size;
  208. void (*ctor)( BBOBJECT o );
  209. void (*dtor)( BBOBJECT o );
  210. BBSTRING (*ToString)( BBOBJECT x );
  211. int (*Compare)( BBOBJECT x,BBOBJECT y );
  212. BBOBJECT (*SendMessage)( BBOBJECT o,BBOBJECT m,BBOBJECT s );
  213. BBINTERFACETABLE itable;
  214. void* extra;
  215. unsigned int obj_size;
  216. unsigned int instance_count;
  217. brl_blitz_IDisposable_Dispose_m m_Dispose;
  218. };
  219. struct brl_blitz_IDisposable_methods {
  220. brl_blitz_IDisposable_Dispose_m m_Dispose;
  221. };
  222. struct brl_blitz_IDisposable_obj {
  223. struct BBClass_brl_blitz_IDisposable* clas;
  224. };
  225. extern struct BBClass_brl_blitz_IDisposable brl_blitz_IDisposable;
  226. inline BBINT brl_blitz_Max(BBINT bbt_a,BBINT bbt_b){
  227. if(bbt_a<bbt_b){
  228. return bbt_b;
  229. }
  230. return bbt_a;
  231. }
  232. inline BBLONG brl_blitz_Max2(BBLONG bbt_a,BBLONG bbt_b){
  233. if(bbt_a<bbt_b){
  234. return bbt_b;
  235. }
  236. return bbt_a;
  237. }
  238. inline BBFLOAT brl_blitz_Max3(BBFLOAT bbt_a,BBFLOAT bbt_b){
  239. if(bbt_a<bbt_b){
  240. return bbt_b;
  241. }
  242. return bbt_a;
  243. }
  244. inline BBDOUBLE brl_blitz_Max4(BBDOUBLE bbt_a,BBDOUBLE bbt_b){
  245. if(bbt_a<bbt_b){
  246. return bbt_b;
  247. }
  248. return bbt_a;
  249. }
  250. inline BBBYTE brl_blitz_Max5(BBBYTE bbt_a,BBBYTE bbt_b){
  251. if(bbt_a<bbt_b){
  252. return bbt_b;
  253. }
  254. return bbt_a;
  255. }
  256. inline BBSHORT brl_blitz_Max6(BBSHORT bbt_a,BBSHORT bbt_b){
  257. if(bbt_a<bbt_b){
  258. return bbt_b;
  259. }
  260. return bbt_a;
  261. }
  262. inline BBUINT brl_blitz_Max7(BBUINT bbt_a,BBUINT bbt_b){
  263. if(bbt_a<bbt_b){
  264. return bbt_b;
  265. }
  266. return bbt_a;
  267. }
  268. inline BBULONG brl_blitz_Max8(BBULONG bbt_a,BBULONG bbt_b){
  269. if(bbt_a<bbt_b){
  270. return bbt_b;
  271. }
  272. return bbt_a;
  273. }
  274. inline BBSIZET brl_blitz_Max9(BBSIZET bbt_a,BBSIZET bbt_b){
  275. if(bbt_a<bbt_b){
  276. return bbt_b;
  277. }
  278. return bbt_a;
  279. }
  280. inline BBINT brl_blitz_Min(BBINT bbt_a,BBINT bbt_b){
  281. if(bbt_a>bbt_b){
  282. return bbt_b;
  283. }
  284. return bbt_a;
  285. }
  286. inline BBLONG brl_blitz_Min2(BBLONG bbt_a,BBLONG bbt_b){
  287. if(bbt_a>bbt_b){
  288. return bbt_b;
  289. }
  290. return bbt_a;
  291. }
  292. inline BBFLOAT brl_blitz_Min3(BBFLOAT bbt_a,BBFLOAT bbt_b){
  293. if(bbt_a>bbt_b){
  294. return bbt_b;
  295. }
  296. return bbt_a;
  297. }
  298. inline BBDOUBLE brl_blitz_Min4(BBDOUBLE bbt_a,BBDOUBLE bbt_b){
  299. if(bbt_a>bbt_b){
  300. return bbt_b;
  301. }
  302. return bbt_a;
  303. }
  304. inline BBBYTE brl_blitz_Min5(BBBYTE bbt_a,BBBYTE bbt_b){
  305. if(bbt_a>bbt_b){
  306. return bbt_b;
  307. }
  308. return bbt_a;
  309. }
  310. inline BBSHORT brl_blitz_Min6(BBSHORT bbt_a,BBSHORT bbt_b){
  311. if(bbt_a>bbt_b){
  312. return bbt_b;
  313. }
  314. return bbt_a;
  315. }
  316. inline BBUINT brl_blitz_Min7(BBUINT bbt_a,BBUINT bbt_b){
  317. if(bbt_a>bbt_b){
  318. return bbt_b;
  319. }
  320. return bbt_a;
  321. }
  322. inline BBULONG brl_blitz_Min8(BBULONG bbt_a,BBULONG bbt_b){
  323. if(bbt_a>bbt_b){
  324. return bbt_b;
  325. }
  326. return bbt_a;
  327. }
  328. inline BBSIZET brl_blitz_Min9(BBSIZET bbt_a,BBSIZET bbt_b){
  329. if(bbt_a>bbt_b){
  330. return bbt_b;
  331. }
  332. return bbt_a;
  333. }
  334. inline BBINT brl_blitz_Abs(BBINT bbt_a){
  335. return bbIntAbs((int)bbt_a);
  336. }
  337. inline BBFLOAT brl_blitz_Abs2(BBFLOAT bbt_a){
  338. return ((BBFLOAT)bbFloatAbs((double)((BBDOUBLE)bbt_a)));
  339. }
  340. inline BBDOUBLE brl_blitz_Abs3(BBDOUBLE bbt_a){
  341. return bbFloatAbs((double)bbt_a);
  342. }
  343. inline BBLONG brl_blitz_Abs4(BBLONG bbt_a){
  344. return bbLongAbs((BBInt64)bbt_a);
  345. }
  346. inline BBINT brl_blitz_Sgn(BBINT bbt_a){
  347. return bbIntSgn((int)bbt_a);
  348. }
  349. inline BBFLOAT brl_blitz_Sgn2(BBFLOAT bbt_a){
  350. return ((BBFLOAT)bbFloatSgn((double)((BBDOUBLE)bbt_a)));
  351. }
  352. inline BBDOUBLE brl_blitz_Sgn3(BBDOUBLE bbt_a){
  353. return ((BBDOUBLE)bbFloatSgn((double)bbt_a));
  354. }
  355. inline BBLONG brl_blitz_Sgn4(BBLONG bbt_a){
  356. return ((BBLONG)bbLongSgn((BBInt64)bbt_a));
  357. }
  358. BBINT brl_blitz_DefaultComparator_Compare(BBBYTE bbt_o1,BBBYTE bbt_o2);
  359. BBINT brl_blitz_DefaultComparator_Compare2(BBSHORT bbt_o1,BBSHORT bbt_o2);
  360. BBINT brl_blitz_DefaultComparator_Compare3(BBINT bbt_o1,BBINT bbt_o2);
  361. BBINT brl_blitz_DefaultComparator_Compare4(BBUINT bbt_o1,BBUINT bbt_o2);
  362. BBINT brl_blitz_DefaultComparator_Compare5(BBLONG bbt_o1,BBLONG bbt_o2);
  363. BBINT brl_blitz_DefaultComparator_Compare6(BBULONG bbt_o1,BBULONG bbt_o2);
  364. BBINT brl_blitz_DefaultComparator_Compare7(BBSIZET bbt_o1,BBSIZET bbt_o2);
  365. BBINT brl_blitz_DefaultComparator_Compare8(BBFLOAT bbt_o1,BBFLOAT bbt_o2);
  366. BBINT brl_blitz_DefaultComparator_Compare9(BBDOUBLE bbt_o1,BBDOUBLE bbt_o2);
  367. BBINT brl_blitz_DefaultComparator_Compare10(BBOBJECT bbt_o1,BBOBJECT bbt_o2);
  368. BBINT brl_blitz_DefaultComparator_Compare11(BBBYTE* bbt_o1,BBBYTE* bbt_o2);
  369. void brl_blitz_NullObjectError();
  370. void brl_blitz_NullMethodError();
  371. void brl_blitz_NullFunctionError();
  372. void brl_blitz_ArrayBoundsError();
  373. void brl_blitz_OutOfDataError();
  374. void brl_blitz_InvalidEnumError();
  375. void brl_blitz_RuntimeError(BBSTRING bbt_message);
  376. void brl_blitz_DebugStop();
  377. void brl_blitz_DebugLog(BBSTRING bbt_message);
  378. extern void bbOnEnd(void(* bbt_fun)());
  379. extern BBSTRING bbReadStdin();
  380. extern void bbWriteStdout(BBSTRING bbt_str);
  381. extern void bbWriteStderr(BBSTRING bbt_str);
  382. extern void bbDelay(BBINT bbt_millis);
  383. extern BBINT bbMilliSecs();
  384. extern void* bbMemAlloc(size_t bbt_size);
  385. extern void bbMemFree(void* bbt_mem);
  386. extern void* bbMemExtend(void* bbt_mem,size_t bbt_size,size_t bbt_new_size);
  387. extern void bbMemClear(void* bbt_mem,size_t bbt_size);
  388. extern void bbMemCopy(void* bbt_dst,const void* bbt_src,size_t bbt_size);
  389. extern void bbMemMove(void* bbt_dst,const void* bbt_src,size_t bbt_size);
  390. extern void bbGCSetMode(BBINT bbt_Mode);
  391. extern void bbGCSuspend();
  392. extern void bbGCResume();
  393. extern BBSIZET bbGCCollect();
  394. extern BBINT bbGCCollectALittle();
  395. extern BBSIZET bbGCMemAlloced();
  396. extern void bbGCEnter();
  397. extern void bbGCLeave();
  398. extern void bbGCRetain(BBOBJECT bbt_obj);
  399. extern BBINT bbGCThreadIsRegistered();
  400. extern BBINT bbGCRegisterMyThread();
  401. extern BBINT bbGCUnregisterMyThread();
  402. extern BBSIZET bbHandleFromObject(BBOBJECT bbt_obj);
  403. extern BBOBJECT bbHandleToObject(BBSIZET bbt_handle);
  404. extern void bbObjectDumpInstanceCounts(BBBYTE* bbt_buffer,BBINT bbt_size,BBINT bbt_includeZeros);
  405. #endif