interrogate_module.1 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. .TH INTERROGATE_MODULE 1 "02 June 2015" "" Panda3D
  2. .SH NAME
  3. interrogate_module \- generate module-level code for interrogate
  4. .SH SYNOPSIS
  5. .B interrogate_module
  6. [
  7. .I opts
  8. ]
  9. .I libname.in
  10. [
  11. .I libname.in ...
  12. ]
  13. .SH DESCRIPTION
  14. This program generates a module-level file for the
  15. .BR interrogate (1) program.
  16. This is a higher level than library, and groups several libraries
  17. together. In particular, the code generated by interrogate_module
  18. typically includes a table of the classes that are to be exported
  19. to Python.
  20. .SH OPTIONS
  21. .TP
  22. .BI "\-oc " output.C
  23. Specify the name of the file to which generated code will be written.
  24. .TP
  25. .BI "\-module " module_name
  26. Defines the name of the module this data is associated with. This
  27. is strictly a code-organizational tool. Conceptually, a module is
  28. the highest level of grouping for interrogate data; a module may
  29. contain several libraries. If this is omitted, no module name is
  30. specified.
  31. .TP
  32. .BI "\-library " library_name
  33. Defines the name of the library this data is associated with. This
  34. is another code-organizational tool. Typically, there will be one
  35. invocation of interrogate for each library, and there will be
  36. multiple libraries per module. If this is omitted, no library name
  37. is specified.
  38. .TP
  39. .B \-c
  40. Generate function wrappers using the C calling convention. Any
  41. scripting language that can call a C function should be able to
  42. make advantage of the interrogate database.
  43. .TP
  44. .B \-python
  45. Generate function wrappers using the Python calling convention.
  46. The shared library will be directly loadable as a Python module.
  47. However, C++ objects and methods will be converted into an object
  48. handle and a list of independent Python functions.
  49. .TP
  50. .B \-python\-obj
  51. Generate Python function wrappers that convert C++ objects to true
  52. python objects, with all methods converted to Python methods. This
  53. is currently experimental.
  54. .TP
  55. .B \-python\-native
  56. Generate Python function wrappers that convert C++ objects to true
  57. python objects, with all methods converted to Python methods. This
  58. is the recommended method for creating Python wrappers.
  59. .PP
  60. Any combination of \fB\-c\fP, \fB\-python\fP, or \fB\-python\-obj\fP
  61. may be specified. If all are omitted, the default is \fB\-c\fP.
  62. .TP
  63. .B \-track\-interpreter
  64. Generate code within each wrapper function to adjust the global
  65. variable "in_interpreter" to indicated whether code is running
  66. within the Panda C++ environment or within the high-level language.
  67. .TP
  68. .BI "\-import " module_name
  69. Used to import an external dependency module.
  70. .SH "SEE ALSO"
  71. .BR interrogate (1),
  72. .BR test_interrogate (1)