27 interrogate_add_search_directory(
const char *dirname) {
36 interrogate_add_search_path(
const char *pathstring) {
41 bool interrogate_error_flag() {
47 interrogate_number_of_manifests() {
53 interrogate_get_manifest(
int n) {
59 interrogate_get_manifest_by_name(
const char *manifest_name) {
65 interrogate_manifest_name(ManifestIndex manifest) {
71 interrogate_manifest_definition(ManifestIndex manifest) {
77 interrogate_manifest_has_type(ManifestIndex manifest) {
83 interrogate_manifest_get_type(ManifestIndex manifest) {
89 interrogate_manifest_has_getter(ManifestIndex manifest) {
95 interrogate_manifest_getter(ManifestIndex manifest) {
101 interrogate_manifest_has_int_value(ManifestIndex manifest) {
107 interrogate_manifest_get_int_value(ManifestIndex manifest) {
113 interrogate_element_name(ElementIndex element) {
119 interrogate_element_scoped_name(ElementIndex element) {
125 interrogate_element_has_comment(ElementIndex element) {
131 interrogate_element_comment(ElementIndex element) {
137 interrogate_get_element_by_name(
const char *element_name) {
143 interrogate_get_element_by_scoped_name(
const char *element_name) {
150 interrogate_element_type(ElementIndex element) {
156 interrogate_element_has_getter(ElementIndex element) {
162 interrogate_element_getter(ElementIndex element) {
168 interrogate_element_has_setter(ElementIndex element) {
174 interrogate_element_setter(ElementIndex element) {
180 interrogate_element_is_sequence(ElementIndex element) {
186 interrogate_element_is_mapping(ElementIndex element) {
192 interrogate_number_of_globals() {
198 interrogate_get_global(
int n) {
204 interrogate_number_of_global_functions() {
210 interrogate_get_global_function(
int n) {
216 interrogate_number_of_functions() {
222 interrogate_get_function(
int n) {
228 interrogate_function_name(FunctionIndex
function) {
234 interrogate_function_scoped_name(FunctionIndex
function) {
240 interrogate_function_has_comment(FunctionIndex
function) {
246 interrogate_function_comment(FunctionIndex
function) {
252 interrogate_function_prototype(FunctionIndex
function) {
258 interrogate_function_is_method(FunctionIndex
function) {
264 interrogate_function_class(FunctionIndex
function) {
270 interrogate_function_has_module_name(FunctionIndex
function) {
276 interrogate_function_module_name(FunctionIndex
function) {
282 interrogate_function_has_library_name(FunctionIndex
function) {
288 interrogate_function_library_name(FunctionIndex
function) {
296 interrogate_function_is_virtual(FunctionIndex
function) {
302 interrogate_function_number_of_c_wrappers(FunctionIndex
function) {
309 interrogate_function_c_wrapper(FunctionIndex
function,
int n) {
316 interrogate_function_number_of_python_wrappers(FunctionIndex
function) {
323 interrogate_function_python_wrapper(FunctionIndex
function,
int n) {
330 interrogate_wrapper_name(FunctionWrapperIndex wrapper) {
332 static string result;
334 return result.c_str();
338 interrogate_wrapper_is_callable_by_name(FunctionWrapperIndex wrapper) {
344 interrogate_wrapper_has_comment(FunctionWrapperIndex wrapper) {
350 interrogate_wrapper_comment(FunctionWrapperIndex wrapper) {
356 interrogate_wrapper_has_return_value(FunctionWrapperIndex wrapper) {
362 interrogate_wrapper_return_type(FunctionWrapperIndex wrapper) {
368 interrogate_wrapper_caller_manages_return_value(FunctionWrapperIndex wrapper) {
375 interrogate_wrapper_return_value_destructor(FunctionWrapperIndex wrapper) {
382 interrogate_wrapper_number_of_parameters(FunctionWrapperIndex wrapper) {
388 interrogate_wrapper_parameter_type(FunctionWrapperIndex wrapper,
int n) {
395 interrogate_wrapper_parameter_has_name(FunctionWrapperIndex wrapper,
int n) {
402 interrogate_wrapper_parameter_name(FunctionWrapperIndex wrapper,
int n) {
409 interrogate_wrapper_parameter_is_this(FunctionWrapperIndex wrapper,
int n) {
415 interrogate_wrapper_has_pointer(FunctionWrapperIndex wrapper) {
421 interrogate_wrapper_pointer(FunctionWrapperIndex wrapper) {
427 interrogate_wrapper_unique_name(FunctionWrapperIndex wrapper) {
429 static string result;
431 return result.c_str();
435 interrogate_get_wrapper_by_unique_name(
const char *unique_name) {
442 interrogate_make_seq_seq_name(MakeSeqIndex make_seq) {
444 static string result;
446 return result.c_str();
450 interrogate_make_seq_scoped_name(MakeSeqIndex make_seq) {
452 static string result;
454 return result.c_str();
458 interrogate_make_seq_has_comment(MakeSeqIndex make_seq) {
464 interrogate_make_seq_comment(MakeSeqIndex make_seq) {
470 interrogate_make_seq_num_name(MakeSeqIndex make_seq) {
473 return interrogate_function_name(
function);
477 interrogate_make_seq_element_name(MakeSeqIndex make_seq) {
479 static string result;
481 return interrogate_function_name(
function);
485 interrogate_number_of_global_types() {
491 interrogate_get_global_type(
int n) {
497 interrogate_number_of_types() {
503 interrogate_get_type(
int n) {
509 interrogate_get_type_by_name(
const char *type_name) {
515 interrogate_get_type_by_scoped_name(
const char *type_name) {
521 interrogate_get_type_by_true_name(
const char *type_name) {
527 interrogate_type_is_global(TypeIndex type) {
533 interrogate_type_name(TypeIndex type) {
539 interrogate_type_scoped_name(TypeIndex type) {
545 interrogate_type_true_name(TypeIndex type) {
551 interrogate_type_is_nested(TypeIndex type) {
557 interrogate_type_outer_class(TypeIndex type) {
563 interrogate_type_has_comment(TypeIndex type) {
569 interrogate_type_comment(TypeIndex type) {
575 interrogate_type_has_module_name(TypeIndex type) {
581 interrogate_type_module_name(TypeIndex type) {
587 interrogate_type_has_library_name(TypeIndex type) {
593 interrogate_type_library_name(TypeIndex type) {
600 interrogate_type_is_atomic(TypeIndex type) {
606 interrogate_type_atomic_token(TypeIndex type) {
612 interrogate_type_is_unsigned(TypeIndex type) {
618 interrogate_type_is_signed(TypeIndex type) {
624 interrogate_type_is_long(TypeIndex type) {
630 interrogate_type_is_longlong(TypeIndex type) {
636 interrogate_type_is_short(TypeIndex type) {
642 interrogate_type_is_wrapped(TypeIndex type) {
648 interrogate_type_is_pointer(TypeIndex type) {
654 interrogate_type_is_const(TypeIndex type) {
660 interrogate_type_is_typedef(TypeIndex type) {
666 interrogate_type_wrapped_type(TypeIndex type) {
672 interrogate_type_is_enum(TypeIndex type) {
678 interrogate_type_number_of_enum_values(TypeIndex type) {
684 interrogate_type_enum_value_name(TypeIndex type,
int n) {
691 interrogate_type_enum_value_scoped_name(TypeIndex type,
int n) {
698 interrogate_type_enum_value_comment(TypeIndex type,
int n) {
705 interrogate_type_enum_value(TypeIndex type,
int n) {
711 interrogate_type_is_struct(TypeIndex type) {
717 interrogate_type_is_class(TypeIndex type) {
723 interrogate_type_is_union(TypeIndex type) {
729 interrogate_type_is_fully_defined(TypeIndex type) {
735 interrogate_type_is_unpublished(TypeIndex type) {
741 interrogate_type_number_of_constructors(TypeIndex type) {
747 interrogate_type_get_constructor(TypeIndex type,
int n) {
754 interrogate_type_has_destructor(TypeIndex type) {
760 interrogate_type_destructor_is_inherited(TypeIndex type) {
766 interrogate_type_get_destructor(TypeIndex type) {
772 interrogate_type_number_of_elements(TypeIndex type) {
778 interrogate_type_get_element(TypeIndex type,
int n) {
784 interrogate_type_number_of_methods(TypeIndex type) {
790 interrogate_type_get_method(TypeIndex type,
int n) {
796 interrogate_type_number_of_make_seqs(TypeIndex type) {
802 interrogate_type_get_make_seq(TypeIndex type,
int n) {
808 interrogate_type_number_of_casts(TypeIndex type) {
814 interrogate_type_get_cast(TypeIndex type,
int n) {
820 interrogate_type_number_of_derivations(TypeIndex type) {
826 interrogate_type_get_derivation(TypeIndex type,
int n) {
832 interrogate_type_derivation_has_upcast(TypeIndex type,
int n) {
839 interrogate_type_get_upcast(TypeIndex type,
int n) {
845 interrogate_type_derivation_downcast_is_impossible(TypeIndex type,
int n) {
852 interrogate_type_derivation_has_downcast(TypeIndex type,
int n) {
859 interrogate_type_get_downcast(TypeIndex type,
int n) {
865 interrogate_type_number_of_nested_types(TypeIndex type) {
871 interrogate_type_get_nested_type(TypeIndex type,
int n) {
bool has_library_name() const
Returns true if we have a known library name, false if we do not.
bool is_virtual() const
Returns true if the function is virtual, for whatever that's worth.
const InterrogateManifest & get_manifest(ManifestIndex manifest)
Returns the manifest constant associated with the given ManifestIndex, if there is one.
int get_num_global_manifests()
Returns the total number of global manifest constants known to the interrogate database.
ElementIndex lookup_element_by_scoped_name(const std::string &name)
Returns the ElementIndex associated with the first element found with the given scoped name,...
bool has_module_name() const
Returns true if we have a known module name, false if we do not.
TypeIndex get_all_type(int n)
Returns the index of the nth type known to the interrogate database.
bool get_error_flag()
Returns the global error flag.
ManifestIndex lookup_manifest_by_name(const std::string &name)
Returns the ManifestIndex associated with the first manifest found with the given name,...
void append_path(const std::string &path, const std::string &separator=std::string())
Adds all of the directories listed in the search path to the end of the search list.
bool is_method() const
Returns true if the function is a class method.
const InterrogateMakeSeq & get_make_seq(MakeSeqIndex element)
Returns the make_seq associated with the given MakeSeqIndex, if there is one.
FunctionIndex get_global_function(int n)
Returns the index of the nth global function known to the interrogate database.
const InterrogateType & get_type(TypeIndex type)
Returns the type associated with the given TypeIndex, if there is one.
static InterrogateDatabase * get_ptr()
Returns the global pointer to the one InterrogateDatabase.
TypeIndex lookup_type_by_scoped_name(const std::string &name)
Returns the TypeIndex associated with the first type found with the given scoped name,...
ElementIndex get_global_element(int n)
Returns the index of the nth global data element known to the interrogate database.
void * get_fptr(FunctionWrapperIndex wrapper)
Returns the function pointer associated with the given function wrapper, if it has a pointer availabl...
TypeIndex get_global_type(int n)
Returns the index of the nth global type known to the interrogate database.
int get_num_global_functions()
Returns the total number of global functions known to the interrogate database.
ElementIndex lookup_element_by_name(const std::string &name)
Returns the ElementIndex associated with the first element found with the given name,...
TypeIndex lookup_type_by_name(const std::string &name)
Returns the TypeIndex associated with the first type found with the given name, or 0 if no type has t...
FunctionIndex get_all_function(int n)
Returns the index of the nth function known to the interrogate database.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
bool is_unpublished() const
Returns true if the type is an unpublished type.
bool is_nested() const
Returns true if this type is nested within some class definition.
ManifestIndex get_global_manifest(int n)
Returns the index of the nth global manifest constant known to the interrogate database.
bool is_global() const
Returns true if the type is marked as 'global'.
const InterrogateElement & get_element(ElementIndex element)
Returns the data element associated with the given ElementIndex, if there is one.
int get_num_global_types()
Returns the total number of "global" types known to the interrogate database.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
const char * get_library_name() const
Returns the library name, if it is known, or NULL if it is not.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
TypeIndex lookup_type_by_true_name(const std::string &name)
Returns the TypeIndex associated with the first type found with the given true name,...
TypeIndex get_class() const
Return the class that owns the method, if is_method() returns true.
const InterrogateFunctionWrapper & get_wrapper(FunctionWrapperIndex wrapper)
Returns the function wrapper associated with the given FunctionWrapperIndex, if there is one.
FunctionWrapperIndex get_wrapper_by_unique_name(const std::string &unique_name)
Looks up the function wrapper corresponding to the given unique name, if available.
int get_num_all_functions()
Returns the total number of functions known to the interrogate database.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
const char * get_module_name() const
Returns the module name, if it is known, or NULL if it is not.
TypeIndex get_outer_class() const
If is_nested() returns true, this is the class within which this type is defined.
void append_directory(const Filename &directory)
Adds a new directory to the end of the search list.
int get_num_all_types()
Returns the total number of types known to the interrogate database.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
int get_num_global_elements()
Returns the total number of global data elements known to the interrogate database.
const InterrogateFunction & get_function(FunctionIndex function)
Returns the function associated with the given FunctionIndex, if there is one.
static Filename from_os_specific(const std::string &os_specific, Type type=T_general)
This named constructor returns a Panda-style filename (that is, using forward slashes,...