void App::set_sound_output() { soundbuffer_sessions.clear(); selected_sound_session = SoundSession(); fill_session_combobox(); use_selected_session(); sound_output = CL_SoundOutput(spin_output_frequency->get_value(), spin_output_latency->get_value()); if (chk_echo_filter->is_checked() || chk_fade_filter->is_checked() || chk_inverse_echo->is_checked() ) { btn_set_soundoutput_filters->set_enabled(false); } }
/** * Creates the game world and sets up initial contents. */ World::World(const CL_DisplayWindow &display_window) : ApplicationModule(display_window) { DEBUG_MSG("World::World(CL_DisplayWindow &) - Called.") //Set object pointers to null music = 0x0; active_scene = 0x0; plot = 0x0; mouse_dragging = false; left_mouse_button_down = false; //Get the resource manager rm = CL_ResourceManager("data/game-resources.xml"); //Setup sound output sound_output = CL_SoundOutput(44100); //Load objects into the world. init_level(); }
Application::Application(const std::vector<CL_String> &args, lua_State *luaState) : mUpdated(false), mCompanyName(""), mApplicationName("bmgui"), mApplicationVersion(""), mQuit(false) { GAME_ASSERT(!args.empty()); #ifdef WIN32 // bind main thread to the first core for correct timings on some multicore systems SetThreadAffinityMask(GetCurrentThread(), 0x01); #endif // parse the command line arguments std::vector<char *> argv; for (std::vector<CL_String>::const_iterator it = args.begin(); it != args.end(); ++it) argv.push_back(const_cast<char *>(it->c_str())); CL_CommandLine commandLine; commandLine.set_help_indent(40); commandLine.add_doc("Graphical interface for Sibek balance machines"); commandLine.add_usage("[OPTION...]\n"); commandLine.add_option('g', "gateway", "ADDR", "Default gateway address"); commandLine.add_option('a', "local_addr", "ADDR", "Local address"); commandLine.add_option('m', "netmask", "ADDR", "Subnet mask"); commandLine.add_option('d', "dns", "ADDR", "DNS server address"); commandLine.add_option('i', "input_dev", "TYPE", "Input device type"); commandLine.add_option('s', "server_status", "FLAG", "Server status"); commandLine.add_option('u', "available_update_version", "VERSION", "Available update version"); commandLine.add_option('U', "updated", "FLAG", "Software update flag"); commandLine.add_option('W', "updatedfw", "FLAG", "Firmware update flag"); commandLine.add_option('D', "datadir", "PATH", "Path to the data directory"); commandLine.add_option('h', "help", "", "Show this help"); commandLine.parse_args(argv.size(), &argv[0]); #if defined(WIN32) || defined(__APPLE__) mDataDirectory = CL_Directory::get_resourcedata("bmgui", "data"); #else mDataDirectory = CL_PathHelp::add_trailing_slash(GAME_DATA_DIR); #endif while (commandLine.next()) { switch (commandLine.get_key()) { case 'g': mGateway = commandLine.get_argument(); break; case 'a': mLocalAddr = commandLine.get_argument(); break; case 'm': mNetmask = commandLine.get_argument(); break; case 'd': mDNS = commandLine.get_argument(); break; case 'i': mInputDev = commandLine.get_argument(); break; case 's': mServerStatus = commandLine.get_argument(); break; case 'u': mAvailableUpdateVersion = commandLine.get_argument(); break; case 'U': mUpdated = CL_StringHelp::text_to_bool(commandLine.get_argument()); break; case 'W': mFirmwareUpdated = commandLine.get_argument(); break; case 'D': mDataDirectory = CL_PathHelp::add_trailing_slash(commandLine.get_argument()); break; case 'h': commandLine.print_help(); quit(); return; } } /*CL_Console::write_line(cl_format("mGateway = %1", mGateway)); CL_Console::write_line(cl_format("mLocalAddr = %1", mLocalAddr)); CL_Console::write_line(cl_format("mNetmask = %1", mNetmask)); CL_Console::write_line(cl_format("mDNS = %1", mDNS)); CL_Console::write_line(cl_format("mInputDev = %1", mInputDev)); CL_Console::write_line(cl_format("mServerStatus = %1", mServerStatus)); CL_Console::write_line(cl_format("mAvailableUpdateVersion = %1", mAvailableUpdateVersion)); CL_Console::write_line(cl_format("mDataDirectory = %1", mDataDirectory));*/ // load the system profile Profile profile(""); CL_Console::write_line(cl_format("gateway = %1", profile.getString("gateway"))); CL_Console::write_line(cl_format("local_addr = %1", profile.getString("local_addr"))); CL_Console::write_line(cl_format("netmask = %1", profile.getString("netmask"))); CL_Console::write_line(cl_format("dns = %1", profile.getString("dns"))); CL_Console::write_line(cl_format("input_dev = %1", profile.getInt("input_dev"))); CL_Console::write_line(cl_format("server_status = %1", profile.getBool("server_status"))); CL_Console::write_line(cl_format("available_update_version = %1", profile.getString("available_update_version"))); CL_Console::write_line(cl_format("server_addr = %1", profile.getString("server_addr"))); CL_Console::write_line(cl_format("remote_control = %1", profile.getBool("remote_control"))); CL_Console::write_line(cl_format("ignored_update_version = %1", profile.getString("ignored_update_version"))); CL_Console::write_line(cl_format("cal_command = %1", profile.getString("cal_command"))); CL_Console::write_line(cl_format("language = %1", profile.getInt("language"))); CL_Console::write_line(cl_format("fullscreen = %1", profile.getBool("fullscreen"))); CL_Console::write_line(cl_format("width = %1", profile.getInt("width"))); CL_Console::write_line(cl_format("height = %1", profile.getInt("height"))); CL_Console::write_line(cl_format("sound_level = %1", profile.getInt("sound_level"))); // initialize all game subsystems mBalance = CL_SharedPtr<Balance>(new Balance(profile)); mDatabase = CL_SharedPtr<Database>(new Database(getConfigDirectory() + getApplicationName() + ".db")); mResourceManager = CL_SharedPtr<ResourceManager>(new ResourceManager()); mResourceQueue = CL_SharedPtr<ResourceQueue>(new ResourceQueue()); mGraphics = CL_SharedPtr<Graphics>(new Graphics(profile)); mKeyboard = CL_SharedPtr<Keyboard>(new Keyboard()); mMouse = CL_SharedPtr<Mouse>(new Mouse()); mSoundOutput = CL_SoundOutput(44100); mLuaScript = CL_SharedPtr<LuaScript>(new LuaScript("main.lua", luaState)); }
CL_SoundOutput CL_Sound::get_current_output() { return CL_SoundOutput(cl_current_output); }