27interrogate_add_search_directory(
const char *dirname) {
36interrogate_add_search_path(
const char *pathstring) {
41bool interrogate_error_flag() {
47interrogate_number_of_manifests() {
53interrogate_get_manifest(
int n) {
59interrogate_get_manifest_by_name(
const char *manifest_name) {
65interrogate_manifest_name(ManifestIndex manifest) {
71interrogate_manifest_definition(ManifestIndex manifest) {
77interrogate_manifest_has_type(ManifestIndex manifest) {
83interrogate_manifest_get_type(ManifestIndex manifest) {
89interrogate_manifest_has_getter(ManifestIndex manifest) {
95interrogate_manifest_getter(ManifestIndex manifest) {
101interrogate_manifest_has_int_value(ManifestIndex manifest) {
107interrogate_manifest_get_int_value(ManifestIndex manifest) {
113interrogate_element_name(ElementIndex element) {
119interrogate_element_scoped_name(ElementIndex element) {
125interrogate_element_has_comment(ElementIndex element) {
131interrogate_element_comment(ElementIndex element) {
137interrogate_get_element_by_name(
const char *element_name) {
143interrogate_get_element_by_scoped_name(
const char *element_name) {
150interrogate_element_type(ElementIndex element) {
156interrogate_element_has_getter(ElementIndex element) {
162interrogate_element_getter(ElementIndex element) {
168interrogate_element_has_setter(ElementIndex element) {
174interrogate_element_setter(ElementIndex element) {
180interrogate_element_has_has_function(ElementIndex element) {
186interrogate_element_has_function(ElementIndex element) {
192interrogate_element_has_clear_function(ElementIndex element) {
198interrogate_element_clear_function(ElementIndex element) {
204interrogate_element_has_del_function(ElementIndex element) {
210interrogate_element_del_function(ElementIndex element) {
216interrogate_element_has_insert_function(ElementIndex element) {
222interrogate_element_insert_function(ElementIndex element) {
228interrogate_element_has_getkey_function(ElementIndex element) {
234interrogate_element_getkey_function(ElementIndex element) {
240interrogate_element_length_function(ElementIndex element) {
246interrogate_element_is_sequence(ElementIndex element) {
252interrogate_element_is_mapping(ElementIndex element) {
258interrogate_number_of_globals() {
264interrogate_get_global(
int n) {
270interrogate_number_of_global_functions() {
276interrogate_get_global_function(
int n) {
282interrogate_number_of_functions() {
288interrogate_get_function(
int n) {
294interrogate_function_name(FunctionIndex function) {
300interrogate_function_scoped_name(FunctionIndex function) {
306interrogate_function_has_comment(FunctionIndex function) {
312interrogate_function_comment(FunctionIndex function) {
318interrogate_function_prototype(FunctionIndex function) {
324interrogate_function_is_method(FunctionIndex function) {
330interrogate_function_class(FunctionIndex function) {
336interrogate_function_is_unary_op(FunctionIndex function) {
342interrogate_function_is_operator_typecast(FunctionIndex function) {
349interrogate_function_is_constructor(FunctionIndex function) {
355interrogate_function_is_destructor(FunctionIndex function) {
361interrogate_function_has_module_name(FunctionIndex function) {
367interrogate_function_module_name(FunctionIndex function) {
373interrogate_function_has_library_name(FunctionIndex function) {
379interrogate_function_library_name(FunctionIndex function) {
387interrogate_function_is_virtual(FunctionIndex function) {
393interrogate_function_number_of_c_wrappers(FunctionIndex function) {
400interrogate_function_c_wrapper(FunctionIndex function,
int n) {
407interrogate_function_number_of_python_wrappers(FunctionIndex function) {
414interrogate_function_python_wrapper(FunctionIndex function,
int n) {
421interrogate_wrapper_name(FunctionWrapperIndex wrapper) {
423 static string result;
425 return result.c_str();
429interrogate_wrapper_function(FunctionWrapperIndex wrapper) {
435interrogate_wrapper_is_callable_by_name(FunctionWrapperIndex wrapper) {
441interrogate_wrapper_is_copy_constructor(FunctionWrapperIndex wrapper) {
447interrogate_wrapper_is_coerce_constructor(FunctionWrapperIndex wrapper) {
453interrogate_wrapper_is_extension(FunctionWrapperIndex wrapper) {
459interrogate_wrapper_has_comment(FunctionWrapperIndex wrapper) {
465interrogate_wrapper_comment(FunctionWrapperIndex wrapper) {
471interrogate_wrapper_has_return_value(FunctionWrapperIndex wrapper) {
477interrogate_wrapper_return_type(FunctionWrapperIndex wrapper) {
483interrogate_wrapper_caller_manages_return_value(FunctionWrapperIndex wrapper) {
490interrogate_wrapper_return_value_destructor(FunctionWrapperIndex wrapper) {
497interrogate_wrapper_number_of_parameters(FunctionWrapperIndex wrapper) {
503interrogate_wrapper_parameter_type(FunctionWrapperIndex wrapper,
int n) {
510interrogate_wrapper_parameter_has_name(FunctionWrapperIndex wrapper,
int n) {
517interrogate_wrapper_parameter_name(FunctionWrapperIndex wrapper,
int n) {
524interrogate_wrapper_parameter_is_this(FunctionWrapperIndex wrapper,
int n) {
530interrogate_wrapper_parameter_is_optional(FunctionWrapperIndex wrapper,
int n) {
536interrogate_wrapper_has_pointer(FunctionWrapperIndex wrapper) {
542interrogate_wrapper_pointer(FunctionWrapperIndex wrapper) {
548interrogate_wrapper_unique_name(FunctionWrapperIndex wrapper) {
550 static string result;
552 return result.c_str();
556interrogate_get_wrapper_by_unique_name(
const char *unique_name) {
563interrogate_make_seq_seq_name(MakeSeqIndex make_seq) {
565 static string result;
567 return result.c_str();
571interrogate_make_seq_scoped_name(MakeSeqIndex make_seq) {
573 static string result;
575 return result.c_str();
579interrogate_make_seq_has_comment(MakeSeqIndex make_seq) {
585interrogate_make_seq_comment(MakeSeqIndex make_seq) {
591interrogate_make_seq_num_name(MakeSeqIndex make_seq) {
594 return interrogate_function_name(function);
598interrogate_make_seq_element_name(MakeSeqIndex make_seq) {
601 return interrogate_function_name(function);
605interrogate_make_seq_num_getter(MakeSeqIndex make_seq) {
611interrogate_make_seq_element_getter(MakeSeqIndex make_seq) {
617interrogate_number_of_global_types() {
623interrogate_get_global_type(
int n) {
629interrogate_number_of_types() {
635interrogate_get_type(
int n) {
641interrogate_get_type_by_name(
const char *type_name) {
647interrogate_get_type_by_scoped_name(
const char *type_name) {
653interrogate_get_type_by_true_name(
const char *type_name) {
659interrogate_type_is_global(TypeIndex type) {
665interrogate_type_name(TypeIndex type) {
671interrogate_type_scoped_name(TypeIndex type) {
677interrogate_type_true_name(TypeIndex type) {
683interrogate_type_is_nested(TypeIndex type) {
689interrogate_type_outer_class(TypeIndex type) {
695interrogate_type_has_comment(TypeIndex type) {
701interrogate_type_comment(TypeIndex type) {
707interrogate_type_has_module_name(TypeIndex type) {
713interrogate_type_module_name(TypeIndex type) {
719interrogate_type_has_library_name(TypeIndex type) {
725interrogate_type_library_name(TypeIndex type) {
732interrogate_type_is_atomic(TypeIndex type) {
738interrogate_type_atomic_token(TypeIndex type) {
744interrogate_type_is_unsigned(TypeIndex type) {
750interrogate_type_is_signed(TypeIndex type) {
756interrogate_type_is_long(TypeIndex type) {
762interrogate_type_is_longlong(TypeIndex type) {
768interrogate_type_is_short(TypeIndex type) {
774interrogate_type_is_wrapped(TypeIndex type) {
780interrogate_type_is_pointer(TypeIndex type) {
786interrogate_type_is_const(TypeIndex type) {
792interrogate_type_is_typedef(TypeIndex type) {
798interrogate_type_wrapped_type(TypeIndex type) {
804interrogate_type_is_array(TypeIndex type) {
810interrogate_type_array_size(TypeIndex type) {
816interrogate_type_is_enum(TypeIndex type) {
822interrogate_type_is_scoped_enum(TypeIndex type) {
828interrogate_type_number_of_enum_values(TypeIndex type) {
834interrogate_type_enum_value_name(TypeIndex type,
int n) {
841interrogate_type_enum_value_scoped_name(TypeIndex type,
int n) {
848interrogate_type_enum_value_comment(TypeIndex type,
int n) {
855interrogate_type_enum_value(TypeIndex type,
int n) {
861interrogate_type_is_struct(TypeIndex type) {
867interrogate_type_is_class(TypeIndex type) {
873interrogate_type_is_union(TypeIndex type) {
879interrogate_type_is_fully_defined(TypeIndex type) {
885interrogate_type_is_unpublished(TypeIndex type) {
891interrogate_type_number_of_constructors(TypeIndex type) {
897interrogate_type_get_constructor(TypeIndex type,
int n) {
904interrogate_type_has_destructor(TypeIndex type) {
910interrogate_type_destructor_is_inherited(TypeIndex type) {
916interrogate_type_get_destructor(TypeIndex type) {
922interrogate_type_number_of_elements(TypeIndex type) {
928interrogate_type_get_element(TypeIndex type,
int n) {
934interrogate_type_number_of_methods(TypeIndex type) {
940interrogate_type_get_method(TypeIndex type,
int n) {
946interrogate_type_number_of_make_seqs(TypeIndex type) {
952interrogate_type_get_make_seq(TypeIndex type,
int n) {
958interrogate_type_number_of_casts(TypeIndex type) {
964interrogate_type_get_cast(TypeIndex type,
int n) {
970interrogate_type_number_of_derivations(TypeIndex type) {
976interrogate_type_get_derivation(TypeIndex type,
int n) {
982interrogate_type_is_final(TypeIndex type) {
988interrogate_type_derivation_has_upcast(TypeIndex type,
int n) {
995interrogate_type_get_upcast(TypeIndex type,
int n) {
1001interrogate_type_derivation_downcast_is_impossible(TypeIndex type,
int n) {
1008interrogate_type_derivation_has_downcast(TypeIndex type,
int n) {
1015interrogate_type_get_downcast(TypeIndex type,
int n) {
1021interrogate_type_number_of_nested_types(TypeIndex type) {
1027interrogate_type_get_nested_type(TypeIndex type,
int n) {
void append_directory(const Filename &directory)
Adds a new directory to the end of the search list.
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.
const char * get_module_name() const
Returns the module name, if it is known, or NULL if it is not.
bool has_module_name() const
Returns true if we have a known module name, false if we do not.
const char * get_library_name() const
Returns the library name, if it is known, or NULL if it is not.
bool has_library_name() const
Returns true if we have a known library name, false if we do not.
int get_num_global_types()
Returns the total number of "global" types known to the interrogate database.
TypeIndex lookup_type_by_scoped_name(const std::string &name)
Returns the TypeIndex associated with the first type found with the given scoped name,...
ManifestIndex get_global_manifest(int n)
Returns the index of the nth global manifest constant known to the interrogate database.
const InterrogateFunction & get_function(FunctionIndex function)
Returns the function associated with the given FunctionIndex, if there is one.
ManifestIndex lookup_manifest_by_name(const std::string &name)
Returns the ManifestIndex associated with the first manifest found with the given name,...
int get_num_all_functions()
Returns the total number of functions known to the interrogate database.
int get_num_all_types()
Returns the total number of types known to the interrogate database.
TypeIndex lookup_type_by_true_name(const std::string &name)
Returns the TypeIndex associated with the first type found with the given true name,...
const InterrogateMakeSeq & get_make_seq(MakeSeqIndex element)
Returns the make_seq associated with the given MakeSeqIndex, if there is one.
bool get_error_flag()
Returns the global error flag.
int get_num_global_elements()
Returns the total number of global data elements known to the interrogate database.
const InterrogateManifest & get_manifest(ManifestIndex manifest)
Returns the manifest constant associated with the given ManifestIndex, if there is one.
const InterrogateType & get_type(TypeIndex type)
Returns the type associated with the given TypeIndex, if there is one.
const InterrogateElement & get_element(ElementIndex element)
Returns the data element associated with the given ElementIndex, if there is one.
int get_num_global_manifests()
Returns the total number of global manifest constants known to the interrogate database.
int get_num_global_functions()
Returns the total number of global functions known to the interrogate database.
const InterrogateFunctionWrapper & get_wrapper(FunctionWrapperIndex wrapper)
Returns the function wrapper associated with the given FunctionWrapperIndex, if there is one.
static InterrogateDatabase * get_ptr()
Returns the global pointer to the one InterrogateDatabase.
void * get_fptr(FunctionWrapperIndex wrapper)
Returns the function pointer associated with the given function wrapper, if it has a pointer availabl...
ElementIndex lookup_element_by_name(const std::string &name)
Returns the ElementIndex associated with the first element found with the given name,...
FunctionIndex get_all_function(int n)
Returns the index of the nth function known to the interrogate database.
TypeIndex get_all_type(int n)
Returns the index of the nth type 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,...
FunctionWrapperIndex get_wrapper_by_unique_name(const std::string &unique_name)
Looks up the function wrapper corresponding to the given unique name, if available.
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...
ElementIndex get_global_element(int n)
Returns the index of the nth global data element known to the interrogate database.
TypeIndex get_global_type(int n)
Returns the index of the nth global type known to the interrogate database.
FunctionIndex get_global_function(int n)
Returns the index of the nth global function known to the interrogate database.
bool is_coerce_constructor() const
FunctionIndex get_function() const
Returns the FunctionIndex of the function that this wrapper corresponds to.
bool is_copy_constructor() const
bool is_extension() const
bool is_method() const
Returns true if the function is a class method.
bool is_destructor() const
Returns true if the function is a destructor.
TypeIndex get_class() const
Return the class that owns the method, if is_method() returns true.
bool is_constructor() const
Returns true if the function is a constructor.
bool is_unary_op() const
Returns true if the function is flagged as a special unary operator, like operator -() with no parame...
bool is_virtual() const
Returns true if the function is virtual, for whatever that's worth.
bool is_operator_typecast() const
Returns true if the function is a special typecast operator, like operator bool().
bool is_global() const
Returns true if the type is marked as 'global'.
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.
TypeIndex get_outer_class() const
If is_nested() returns true, this is the class within which this type is defined.
bool is_scoped_enum() const
Returns true if enum values are only available under a scope.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.