Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

interrogate_interface.cxx

Go to the documentation of this file.
00001 // Filename: interrogate_interface.cxx
00002 // Created by:  drose (31Jul00)
00003 //
00004 ////////////////////////////////////////////////////////////////////
00005 //
00006 // PANDA 3D SOFTWARE
00007 // Copyright (c) 2001, Disney Enterprises, Inc.  All rights reserved
00008 //
00009 // All use of this software is subject to the terms of the Panda 3d
00010 // Software license.  You should have received a copy of this license
00011 // along with this source code; you will also find a current copy of
00012 // the license at http://www.panda3d.org/license.txt .
00013 //
00014 // To contact the maintainers of this program write to
00015 // panda3d@yahoogroups.com .
00016 //
00017 ////////////////////////////////////////////////////////////////////
00018 
00019 #include "interrogate_interface.h"
00020 #include "interrogateDatabase.h"
00021 #include "interrogateType.h"
00022 #include "interrogateFunction.h"
00023 
00024 int
00025 interrogate_number_of_manifests() {
00026   return InterrogateDatabase::get_ptr()->get_num_global_manifests();
00027 }
00028 
00029 ManifestIndex
00030 interrogate_get_manifest(int n) {
00031   return InterrogateDatabase::get_ptr()->get_global_manifest(n);
00032 }
00033 
00034 ManifestIndex
00035 interrogate_get_manifest_by_name(const char *manifest_name) {
00036   return InterrogateDatabase::get_ptr()->lookup_manifest_by_name(manifest_name);
00037 }
00038 
00039 const char *
00040 interrogate_manifest_name(ManifestIndex manifest) {
00041   return InterrogateDatabase::get_ptr()->get_manifest(manifest).get_name().c_str();
00042 }
00043 
00044 const char *
00045 interrogate_manifest_definition(ManifestIndex manifest) {
00046   return InterrogateDatabase::get_ptr()->get_manifest(manifest).get_definition().c_str();
00047 }
00048 
00049 bool
00050 interrogate_manifest_has_type(ManifestIndex manifest) {
00051   return InterrogateDatabase::get_ptr()->get_manifest(manifest).has_type();
00052 }
00053 
00054 TypeIndex
00055 interrogate_manifest_get_type(ManifestIndex manifest) {
00056   return InterrogateDatabase::get_ptr()->get_manifest(manifest).get_type();
00057 }
00058 
00059 bool
00060 interrogate_manifest_has_getter(ManifestIndex manifest) {
00061   return InterrogateDatabase::get_ptr()->get_manifest(manifest).has_getter();
00062 }
00063 
00064 FunctionIndex
00065 interrogate_manifest_getter(ManifestIndex manifest) {
00066   return InterrogateDatabase::get_ptr()->get_manifest(manifest).get_getter();
00067 }
00068 
00069 bool
00070 interrogate_manifest_has_int_value(ManifestIndex manifest) {
00071   return InterrogateDatabase::get_ptr()->get_manifest(manifest).has_int_value();
00072 }
00073 
00074 int
00075 interrogate_manifest_get_int_value(ManifestIndex manifest) {
00076   return InterrogateDatabase::get_ptr()->get_manifest(manifest).get_int_value();
00077 }
00078 
00079 const char *
00080 interrogate_element_name(ElementIndex element) {
00081   return InterrogateDatabase::get_ptr()->get_element(element).get_name().c_str();
00082 }
00083 
00084 const char *
00085 interrogate_element_scoped_name(ElementIndex element) {
00086   return InterrogateDatabase::get_ptr()->get_element(element).get_scoped_name().c_str();
00087 }
00088 
00089 ElementIndex
00090 interrogate_get_element_by_name(const char *element_name) {
00091   return InterrogateDatabase::get_ptr()->lookup_element_by_name(element_name);
00092 }
00093 
00094 ElementIndex
00095 interrogate_get_element_by_scoped_name(const char *element_name) {
00096   return InterrogateDatabase::get_ptr()->lookup_element_by_scoped_name(element_name);
00097 }
00098 
00099 TypeIndex
00100 interrogate_element_type(ElementIndex element) {
00101   return InterrogateDatabase::get_ptr()->get_element(element).get_type();
00102 }
00103 
00104 bool
00105 interrogate_element_has_getter(ElementIndex element) {
00106   return InterrogateDatabase::get_ptr()->get_element(element).has_getter();
00107 }
00108 
00109 FunctionIndex
00110 interrogate_element_getter(ElementIndex element) {
00111   return InterrogateDatabase::get_ptr()->get_element(element).get_getter();
00112 }
00113 
00114 bool
00115 interrogate_element_has_setter(ElementIndex element) {
00116   return InterrogateDatabase::get_ptr()->get_element(element).has_setter();
00117 }
00118 
00119 FunctionIndex
00120 interrogate_element_setter(ElementIndex element) {
00121   return InterrogateDatabase::get_ptr()->get_element(element).get_setter();
00122 }
00123 
00124 int
00125 interrogate_number_of_globals() {
00126   return InterrogateDatabase::get_ptr()->get_num_global_elements();
00127 }
00128 
00129 ElementIndex
00130 interrogate_get_global(int n) {
00131   return InterrogateDatabase::get_ptr()->get_global_element(n);
00132 }
00133 
00134 int
00135 interrogate_number_of_global_functions() {
00136   return InterrogateDatabase::get_ptr()->get_num_global_functions();
00137 }
00138 
00139 FunctionIndex
00140 interrogate_get_global_function(int n) {
00141   return InterrogateDatabase::get_ptr()->get_global_function(n);
00142 }
00143 
00144 int
00145 interrogate_number_of_functions() {
00146   return InterrogateDatabase::get_ptr()->get_num_all_functions();
00147 }
00148 
00149 FunctionIndex
00150 interrogate_get_function(int n) {
00151   return InterrogateDatabase::get_ptr()->get_all_function(n);
00152 }
00153 
00154 const char *
00155 interrogate_function_name(FunctionIndex function) {
00156   return InterrogateDatabase::get_ptr()->get_function(function).get_name().c_str();
00157 }
00158 
00159 const char *
00160 interrogate_function_scoped_name(FunctionIndex function) {
00161   return InterrogateDatabase::get_ptr()->get_function(function).get_scoped_name().c_str();
00162 }
00163 
00164 bool
00165 interrogate_function_has_comment(FunctionIndex function) {
00166   return InterrogateDatabase::get_ptr()->get_function(function).has_comment();
00167 }
00168 
00169 const char *
00170 interrogate_function_comment(FunctionIndex function) {
00171   return InterrogateDatabase::get_ptr()->get_function(function).get_comment().c_str();
00172 }
00173 
00174 const char *
00175 interrogate_function_prototype(FunctionIndex function) {
00176   return InterrogateDatabase::get_ptr()->get_function(function).get_prototype().c_str();
00177 }
00178 
00179 bool
00180 interrogate_function_is_method(FunctionIndex function) {
00181   return InterrogateDatabase::get_ptr()->get_function(function).is_method();
00182 }
00183 
00184 TypeIndex
00185 interrogate_function_class(FunctionIndex function) {
00186   return InterrogateDatabase::get_ptr()->get_function(function).get_class();
00187 }
00188 
00189 bool
00190 interrogate_function_has_module_name(FunctionIndex function) {
00191   return InterrogateDatabase::get_ptr()->get_function(function).has_module_name();
00192 }
00193 
00194 const char *
00195 interrogate_function_module_name(FunctionIndex function) {
00196   return InterrogateDatabase::get_ptr()->get_function(function).get_module_name();
00197 }
00198 
00199 bool
00200 interrogate_function_is_virtual(FunctionIndex function) {
00201   return InterrogateDatabase::get_ptr()->get_function(function).is_virtual();
00202 }
00203 
00204 int
00205 interrogate_function_number_of_c_wrappers(FunctionIndex function) {
00206   return InterrogateDatabase::get_ptr()->get_function(function).number_of_c_wrappers();
00207 }
00208 
00209 FunctionWrapperIndex
00210 interrogate_function_c_wrapper(FunctionIndex function, int n) {
00211   return InterrogateDatabase::get_ptr()->get_function(function).get_c_wrapper(n);
00212 }
00213 
00214 int
00215 interrogate_function_number_of_python_wrappers(FunctionIndex function) {
00216   return InterrogateDatabase::get_ptr()->get_function(function).number_of_python_wrappers();
00217 }
00218 
00219 FunctionWrapperIndex
00220 interrogate_function_python_wrapper(FunctionIndex function, int n) {
00221   return InterrogateDatabase::get_ptr()->get_function(function).get_python_wrapper(n);
00222 }
00223 
00224 const char *
00225 interrogate_wrapper_name(FunctionWrapperIndex wrapper) {
00226   static string result;
00227   result = InterrogateDatabase::get_ptr()->get_wrapper(wrapper).get_name();
00228   return result.c_str();
00229 }
00230 
00231 bool
00232 interrogate_wrapper_is_callable_by_name(FunctionWrapperIndex wrapper) {
00233   return InterrogateDatabase::get_ptr()->get_wrapper(wrapper).is_callable_by_name();
00234 }
00235 
00236 bool
00237 interrogate_wrapper_has_return_value(FunctionWrapperIndex wrapper) {
00238   return InterrogateDatabase::get_ptr()->get_wrapper(wrapper).has_return_value();
00239 }
00240 
00241 TypeIndex
00242 interrogate_wrapper_return_type(FunctionWrapperIndex wrapper) {
00243   return InterrogateDatabase::get_ptr()->get_wrapper(wrapper).get_return_type();
00244 }
00245 
00246 bool
00247 interrogate_wrapper_caller_manages_return_value(FunctionWrapperIndex wrapper) {
00248   return InterrogateDatabase::get_ptr()->get_wrapper(wrapper).caller_manages_return_value();
00249 }
00250 
00251 FunctionIndex
00252 interrogate_wrapper_return_value_destructor(FunctionWrapperIndex wrapper) {
00253   return InterrogateDatabase::get_ptr()->get_wrapper(wrapper).get_return_value_destructor();
00254 }
00255 
00256 int
00257 interrogate_wrapper_number_of_parameters(FunctionWrapperIndex wrapper) {
00258   return InterrogateDatabase::get_ptr()->get_wrapper(wrapper).number_of_parameters();
00259 }
00260 
00261 TypeIndex
00262 interrogate_wrapper_parameter_type(FunctionWrapperIndex wrapper, int n) {
00263   return InterrogateDatabase::get_ptr()->get_wrapper(wrapper).parameter_get_type(n);
00264 }
00265 
00266 bool
00267 interrogate_wrapper_parameter_has_name(FunctionWrapperIndex wrapper, int n) {
00268   return InterrogateDatabase::get_ptr()->get_wrapper(wrapper).parameter_has_name(n);
00269 }
00270 
00271 const char *
00272 interrogate_wrapper_parameter_name(FunctionWrapperIndex wrapper, int n) {
00273   return InterrogateDatabase::get_ptr()->get_wrapper(wrapper).parameter_get_name(n).c_str();
00274 }
00275 
00276 bool
00277 interrogate_wrapper_parameter_is_this(FunctionWrapperIndex wrapper, int n) {
00278   return InterrogateDatabase::get_ptr()->get_wrapper(wrapper).parameter_is_this(n);
00279 }
00280 
00281 bool
00282 interrogate_wrapper_has_pointer(FunctionWrapperIndex wrapper) {
00283   return (InterrogateDatabase::get_ptr()->get_fptr(wrapper) != (void *)NULL);
00284 }
00285 
00286 void *
00287 interrogate_wrapper_pointer(FunctionWrapperIndex wrapper) {
00288   return InterrogateDatabase::get_ptr()->get_fptr(wrapper);
00289 }
00290 
00291 const char *
00292 interrogate_wrapper_unique_name(FunctionWrapperIndex wrapper) {
00293   static string result;
00294   result = InterrogateDatabase::get_ptr()->get_wrapper(wrapper).get_unique_name();
00295   return result.c_str();
00296 }
00297 
00298 FunctionWrapperIndex
00299 interrogate_get_wrapper_by_unique_name(const char *unique_name) {
00300   return InterrogateDatabase::get_ptr()->get_wrapper_by_unique_name(unique_name);
00301 }
00302 
00303 int
00304 interrogate_number_of_global_types() {
00305   return InterrogateDatabase::get_ptr()->get_num_global_types();
00306 }
00307 
00308 TypeIndex
00309 interrogate_get_global_type(int n) {
00310   return InterrogateDatabase::get_ptr()->get_global_type(n);
00311 }
00312 
00313 int
00314 interrogate_number_of_types() {
00315   return InterrogateDatabase::get_ptr()->get_num_all_types();
00316 }
00317 
00318 TypeIndex
00319 interrogate_get_type(int n) {
00320   return InterrogateDatabase::get_ptr()->get_all_type(n);
00321 }
00322 
00323 TypeIndex
00324 interrogate_get_type_by_name(const char *type_name) {
00325   return InterrogateDatabase::get_ptr()->lookup_type_by_name(type_name);
00326 }
00327 
00328 TypeIndex
00329 interrogate_get_type_by_scoped_name(const char *type_name) {
00330   return InterrogateDatabase::get_ptr()->lookup_type_by_scoped_name(type_name);
00331 }
00332 
00333 TypeIndex
00334 interrogate_get_type_by_true_name(const char *type_name) {
00335   return InterrogateDatabase::get_ptr()->lookup_type_by_true_name(type_name);
00336 }
00337 
00338 const char *
00339 interrogate_type_name(TypeIndex type) {
00340   return InterrogateDatabase::get_ptr()->get_type(type).get_name().c_str();
00341 }
00342 
00343 const char *
00344 interrogate_type_scoped_name(TypeIndex type) {
00345   return InterrogateDatabase::get_ptr()->get_type(type).get_scoped_name().c_str();
00346 }
00347 
00348 const char *
00349 interrogate_type_true_name(TypeIndex type) {
00350   return InterrogateDatabase::get_ptr()->get_type(type).get_true_name().c_str();
00351 }
00352 
00353 bool
00354 interrogate_type_is_nested(TypeIndex type) {
00355   return InterrogateDatabase::get_ptr()->get_type(type).is_nested();
00356 }
00357 
00358 TypeIndex
00359 interrogate_type_outer_class(TypeIndex type) {
00360   return InterrogateDatabase::get_ptr()->get_type(type).get_outer_class();
00361 }
00362 
00363 bool
00364 interrogate_type_has_comment(TypeIndex type) {
00365   return InterrogateDatabase::get_ptr()->get_type(type).has_comment();
00366 }
00367 
00368 const char *
00369 interrogate_type_comment(TypeIndex type) {
00370   return InterrogateDatabase::get_ptr()->get_type(type).get_comment().c_str();
00371 }
00372 
00373 bool
00374 interrogate_type_has_module_name(TypeIndex type) {
00375   return InterrogateDatabase::get_ptr()->get_type(type).has_module_name();
00376 }
00377 
00378 const char *
00379 interrogate_type_module_name(TypeIndex type) {
00380   return InterrogateDatabase::get_ptr()->get_type(type).get_module_name();
00381 }
00382 
00383 bool
00384 interrogate_type_is_atomic(TypeIndex type) {
00385   return InterrogateDatabase::get_ptr()->get_type(type).is_atomic();
00386 }
00387 
00388 AtomicToken
00389 interrogate_type_atomic_token(TypeIndex type) {
00390   return InterrogateDatabase::get_ptr()->get_type(type).get_atomic_token();
00391 }
00392 
00393 bool
00394 interrogate_type_is_unsigned(TypeIndex type) {
00395   return InterrogateDatabase::get_ptr()->get_type(type).is_unsigned();
00396 }
00397 
00398 bool
00399 interrogate_type_is_signed(TypeIndex type) {
00400   return InterrogateDatabase::get_ptr()->get_type(type).is_signed();
00401 }
00402 
00403 bool
00404 interrogate_type_is_long(TypeIndex type) {
00405   return InterrogateDatabase::get_ptr()->get_type(type).is_long();
00406 }
00407 
00408 bool
00409 interrogate_type_is_longlong(TypeIndex type) {
00410   return InterrogateDatabase::get_ptr()->get_type(type).is_longlong();
00411 }
00412 
00413 bool
00414 interrogate_type_is_short(TypeIndex type) {
00415   return InterrogateDatabase::get_ptr()->get_type(type).is_short();
00416 }
00417 
00418 bool
00419 interrogate_type_is_wrapped(TypeIndex type) {
00420   return InterrogateDatabase::get_ptr()->get_type(type).is_wrapped();
00421 }
00422 
00423 bool
00424 interrogate_type_is_pointer(TypeIndex type) {
00425   return InterrogateDatabase::get_ptr()->get_type(type).is_pointer();
00426 }
00427 
00428 bool
00429 interrogate_type_is_const(TypeIndex type) {
00430   return InterrogateDatabase::get_ptr()->get_type(type).is_const();
00431 }
00432 
00433 TypeIndex
00434 interrogate_type_wrapped_type(TypeIndex type) {
00435   return InterrogateDatabase::get_ptr()->get_type(type).get_wrapped_type();
00436 }
00437 
00438 bool
00439 interrogate_type_is_enum(TypeIndex type) {
00440   return InterrogateDatabase::get_ptr()->get_type(type).is_enum();
00441 }
00442 
00443 int
00444 interrogate_type_number_of_enum_values(TypeIndex type) {
00445   return InterrogateDatabase::get_ptr()->get_type(type).number_of_enum_values();
00446 }
00447 
00448 const char *
00449 interrogate_type_enum_value_name(TypeIndex type, int n) {
00450   return InterrogateDatabase::get_ptr()->get_type(type).get_enum_value_name(n).c_str();
00451 }
00452 
00453 const char *
00454 interrogate_type_enum_value_scoped_name(TypeIndex type, int n) {
00455   return InterrogateDatabase::get_ptr()->get_type(type).get_enum_value_scoped_name(n).c_str();
00456 }
00457 
00458 int
00459 interrogate_type_enum_value(TypeIndex type, int n) {
00460   return InterrogateDatabase::get_ptr()->get_type(type).get_enum_value(n);
00461 }
00462 
00463 bool
00464 interrogate_type_is_struct(TypeIndex type) {
00465   return InterrogateDatabase::get_ptr()->get_type(type).is_struct();
00466 }
00467 
00468 bool
00469 interrogate_type_is_class(TypeIndex type) {
00470   return InterrogateDatabase::get_ptr()->get_type(type).is_class();
00471 }
00472 
00473 bool
00474 interrogate_type_is_union(TypeIndex type) {
00475   return InterrogateDatabase::get_ptr()->get_type(type).is_union();
00476 }
00477 
00478 bool
00479 interrogate_type_is_fully_defined(TypeIndex type) {
00480   return InterrogateDatabase::get_ptr()->get_type(type).is_fully_defined();
00481 }
00482 
00483 bool
00484 interrogate_type_is_unpublished(TypeIndex type) {
00485   return InterrogateDatabase::get_ptr()->get_type(type).is_unpublished();
00486 }
00487 
00488 int
00489 interrogate_type_number_of_constructors(TypeIndex type) {
00490   return InterrogateDatabase::get_ptr()->get_type(type).number_of_constructors();
00491 }
00492 
00493 FunctionIndex
00494 interrogate_type_get_constructor(TypeIndex type, int n) {
00495   return InterrogateDatabase::get_ptr()->get_type(type).get_constructor(n);
00496 }
00497 
00498 bool
00499 interrogate_type_has_destructor(TypeIndex type) {
00500   return InterrogateDatabase::get_ptr()->get_type(type).has_destructor();
00501 }
00502 
00503 bool
00504 interrogate_type_destructor_is_inherited(TypeIndex type) {
00505   return InterrogateDatabase::get_ptr()->get_type(type).destructor_is_inherited();
00506 }
00507 
00508 FunctionIndex
00509 interrogate_type_get_destructor(TypeIndex type) {
00510   return InterrogateDatabase::get_ptr()->get_type(type).get_destructor();
00511 }
00512 
00513 int
00514 interrogate_type_number_of_elements(TypeIndex type) {
00515   return InterrogateDatabase::get_ptr()->get_type(type).number_of_elements();
00516 }
00517 
00518 ElementIndex
00519 interrogate_type_get_element(TypeIndex type, int n) {
00520   return InterrogateDatabase::get_ptr()->get_type(type).get_element(n);
00521 }
00522 
00523 int
00524 interrogate_type_number_of_methods(TypeIndex type) {
00525   return InterrogateDatabase::get_ptr()->get_type(type).number_of_methods();
00526 }
00527 
00528 FunctionIndex
00529 interrogate_type_get_method(TypeIndex type, int n) {
00530   return InterrogateDatabase::get_ptr()->get_type(type).get_method(n);
00531 }
00532 
00533 int
00534 interrogate_type_number_of_casts(TypeIndex type) {
00535   return InterrogateDatabase::get_ptr()->get_type(type).number_of_casts();
00536 }
00537 
00538 FunctionIndex
00539 interrogate_type_get_cast(TypeIndex type, int n) {
00540   return InterrogateDatabase::get_ptr()->get_type(type).get_cast(n);
00541 }
00542 
00543 int
00544 interrogate_type_number_of_derivations(TypeIndex type) {
00545   return InterrogateDatabase::get_ptr()->get_type(type).number_of_derivations();
00546 }
00547 
00548 TypeIndex
00549 interrogate_type_get_derivation(TypeIndex type, int n) {
00550   return InterrogateDatabase::get_ptr()->get_type(type).get_derivation(n);
00551 }
00552 
00553 bool
00554 interrogate_type_derivation_has_upcast(TypeIndex type, int n) {
00555   return InterrogateDatabase::get_ptr()->get_type(type).derivation_has_upcast(n);
00556 }
00557 
00558 FunctionIndex
00559 interrogate_type_get_upcast(TypeIndex type, int n) {
00560   return InterrogateDatabase::get_ptr()->get_type(type).derivation_get_upcast(n);
00561 }
00562 
00563 bool
00564 interrogate_type_derivation_downcast_is_impossible(TypeIndex type, int n) {
00565   return InterrogateDatabase::get_ptr()->get_type(type).derivation_downcast_is_impossible(n);
00566 }
00567 
00568 bool
00569 interrogate_type_derivation_has_downcast(TypeIndex type, int n) {
00570   return InterrogateDatabase::get_ptr()->get_type(type).derivation_has_downcast(n);
00571 }
00572 
00573 FunctionIndex
00574 interrogate_type_get_downcast(TypeIndex type, int n) {
00575   return InterrogateDatabase::get_ptr()->get_type(type).derivation_get_downcast(n);
00576 }
00577 
00578 int
00579 interrogate_type_number_of_nested_types(TypeIndex type) {
00580   return InterrogateDatabase::get_ptr()->get_type(type).number_of_nested_types();
00581 }
00582 
00583 TypeIndex
00584 interrogate_type_get_nested_type(TypeIndex type, int n) {
00585   return InterrogateDatabase::get_ptr()->get_type(type).get_nested_type(n);
00586 }

Generated on Fri Apr 18 01:33:48 2003 for DTool by doxygen1.3