/script_binding/lua/lua_ftk_dir.c

http://ftk.googlecode.com/ · C · 74 lines · 57 code · 16 blank · 1 comment · 1 complexity · 8679d768687184026f2453f58401e476 MD5 · raw file

  1. /*This file is generated by luagen.*/
  2. #include "lua_ftk_dir.h"
  3. #include "lua_ftk_callbacks.h"
  4. static void tolua_reg_types (lua_State* L)
  5. {
  6. tolua_usertype(L, "FtkDir");
  7. }
  8. static int lua_ftk_dir_open(lua_State* L)
  9. {
  10. tolua_Error err = {0};
  11. FtkDir* retv;
  12. const char* dir_name;
  13. int param_ok = tolua_isstring(L, 1, 0, &err);
  14. return_val_if_fail(param_ok, 0);
  15. dir_name = tolua_tostring(L, 1, 0);
  16. retv = ftk_dir_open(dir_name);
  17. tolua_pushusertype(L, (FtkDir*)retv, "FtkDir");
  18. return 1;
  19. }
  20. static int lua_ftk_dir_read(lua_State* L)
  21. {
  22. tolua_Error err = {0};
  23. Ret retv;
  24. FtkDir* dir;
  25. FtkFileInfo* info;
  26. int param_ok = tolua_isusertype(L, 1, "FtkDir", 0, &err) && tolua_isusertype(L, 2, "FtkFileInfo", 0, &err);
  27. return_val_if_fail(param_ok, 0);
  28. dir = tolua_tousertype(L, 1, 0);
  29. info = tolua_tousertype(L, 2, 0);
  30. retv = ftk_dir_read(dir, info);
  31. tolua_pushnumber(L, (lua_Number)retv);
  32. return 1;
  33. }
  34. static int lua_ftk_dir_close(lua_State* L)
  35. {
  36. tolua_Error err = {0};
  37. FtkDir* dir;
  38. int param_ok = tolua_isusertype(L, 1, "FtkDir", 0, &err);
  39. return_val_if_fail(param_ok, 0);
  40. dir = tolua_tousertype(L, 1, 0);
  41. ftk_dir_close(dir);
  42. return 1;
  43. }
  44. int tolua_ftk_dir_init(lua_State* L)
  45. {
  46. tolua_open(L);
  47. tolua_reg_types(L);
  48. tolua_module(L, NULL, 0);
  49. tolua_beginmodule(L, NULL);
  50. tolua_cclass(L,"FtkDir", "FtkDir", "", NULL);
  51. tolua_beginmodule(L, "FtkDir");
  52. tolua_function(L, "Open", lua_ftk_dir_open);
  53. tolua_function(L, "Read", lua_ftk_dir_read);
  54. tolua_function(L, "Close", lua_ftk_dir_close);
  55. tolua_endmodule(L);
  56. tolua_endmodule(L);
  57. return 1;
  58. }