1 #ifndef ORBIT_IDL3_TYPES_H 2 #define ORBIT_IDL3_TYPES_H 1 3 4 #include <errno.h> 5 #include <stdio.h> 6 #include <libIDL/IDL.h> 7 #include <orbit/util/orbit-util.h> 8 #include <orbit/orbit-config.h> 9 10 typedef struct _OIDL_Marshal_Context OIDL_Marshal_Context; 11 12 #define OUTPUT_NUM_PASSES 7 13 14 typedef struct { 15 char *cpp_args; 16 int debug_level; 17 int idl_warn_level; 18 int show_cpp_errors; 19 int is_pidl; 20 int do_skel_defs; /* gen defs within the header file */ 21 22 enum { OUTPUT_STUBS=1<<0, 23 OUTPUT_SKELS=1<<1, 24 OUTPUT_COMMON=1<<2, 25 OUTPUT_HEADERS=1<<3, 26 OUTPUT_SKELIMPL=1<<4, 27 OUTPUT_IMODULE=1<<5, 28 OUTPUT_DEPS=1<<6 /* Make sure this is always the last pass or dep output will break. */ 29 } enabled_passes; 30 31 char *output_language; 32 char *input_filename; 33 char *backend_directory; 34 char *deps_file; 35 char *header_guard_prefix; 36 char *output_directory; 37 gboolean onlytop; 38 gboolean idata; 39 40 IDL_ns ns; /* Use ns instead of namespace because that's a C++ reserved keyword */ 41 } OIDL_Run_Info; 42 43 typedef struct { 44 IDL_tree op1; 45 IDL_tree op2; 46 } OIDL_Attr_Info; 47 48 #endif 49