/* * call-seq: * XML.default_compression = true|false * * Controls whether parsers use Zlib compression by default * (requires libxml to be compiled with Zlib support). */ static VALUE rxml_default_compression_set(VALUE klass, VALUE num) { #ifdef HAVE_ZLIB_H Check_Type(num, T_FIXNUM); xmlSetCompressMode(FIX2INT(num)); return(num); #else rb_warn("libxml was compiled without zlib support"); return (Qfalse); #endif }
int main (int argc, char ** argv) { unsigned long channels = 2; int opt; const char * options = "hps:ionc:tD:"; struct option long_options[] = { { "help", 0, NULL, 'h' }, { "pid-name", 0, NULL, 'p' }, { "string-name", 1, NULL, 's' }, { "name", 1, NULL, 'n' }, { "channels", 1, NULL, 'c' }, { "input", 1, NULL, 'i' }, { "output", 1, NULL, 'o' }, { "no-time", 0, NULL, 't' }, { "jack-session-uuid", 1, NULL, 'U' }, { 0, 0, 0, 0 } }; #ifdef HAVE_LASH lash_args_t * lash_args; lash_event_t * lash_event; #endif gtk_set_locale (); #ifdef ENABLE_NLS bindtextdomain (PACKAGE, LOCALEDIR); bind_textdomain_codeset (PACKAGE, "UTF-8"); #endif /* not using gnome popt */ for (opt = 1; opt < argc; opt++) { if (strcmp (argv[opt], "-h") == 0 || strcmp (argv[opt], "--help") == 0) { print_help (); exit (0); } } #ifdef HAVE_LASH lash_args = lash_extract_args (&argc, &argv); #endif gtk_init (&argc, &argv); /* set the client name */ client_name = g_string_new (""); session_uuid = g_string_new (""); g_string_printf (client_name, "%s", CLIENT_NAME_BASE); while ((opt = getopt_long (argc, argv, options, long_options, NULL)) != -1) { switch (opt) { case 'h': print_help (); exit (0); break; case 's': g_string_printf (client_name, "%s (%s)", CLIENT_NAME_BASE, optarg); break; case 'p': g_string_printf (client_name, "%s (%d)", CLIENT_NAME_BASE, getpid()); break; case 'n': g_string_printf (client_name, CLIENT_NAME_BASE); break; case 'i': connect_inputs = TRUE; break; case 'o': connect_outputs = TRUE; break; case 'c': channels = atof (optarg); if (channels < 1) { fprintf (stderr, _("There must be at least one channel\n")); exit (EXIT_FAILURE); } break; case 't': time_runs = FALSE; break; case 'U': g_string_printf (session_uuid, "%s", optarg); break; case ':': case '?': print_help (); exit (EXIT_FAILURE); break; } } if (optind < argc) { if (argc - optind > 1) { fprintf (stderr, _("Please specify only one file to open")); exit(EXIT_FAILURE); } initial_filename = g_string_new(argv[optind]); } #ifdef HAVE_LASH { int flags = LASH_Config_File; global_lash_client = lash_init (lash_args, PACKAGE_NAME, flags, LASH_PROTOCOL (2,0)); } if (global_lash_client) { lash_event = lash_event_new_with_type (LASH_Client_Name); lash_event_set_string (lash_event, client_name->str); lash_send_event (global_lash_client, lash_event); } #endif /* HAVE_LASH */ xmlSetCompressMode (XML_COMPRESSION_LEVEL); global_ui = ui_new (channels); if (!global_ui) return 1; /* ignore the sighup (the jack client thread needs to deal with it) */ signal (SIGHUP, SIG_IGN); /* jack_activate (global_ui->procinfo->jack_client); */ gtk_main (); /* jack_deactivate (global_ui->procinfo->jack_client); */ ui_destroy (global_ui); return 0; }