template<> void DbQueryJob<GameServer::DB_StorageBinding>::init(DbConnectionPool* dbConnectionPool) { createBinding(dbConnectionPool, CONFIG_GET()->game.telecaster.connectionString, "select * from item where account_id = ? AND owner_id = 0 AND auction_id = 0 AND keeping_id = 0", DbQueryBinding::EM_MultiRows); addParam("account_id", &InputType::account_id); addColumn("sid", &OutputType::sid); addColumn("account_id", &OutputType::account_id); addColumn("summon_id", &OutputType::summon_id); addColumn("idx", &OutputType::idx); addColumn("code", &OutputType::code); addColumn("cnt", &OutputType::count); addColumn("level", &OutputType::level); addColumn("enhance", &OutputType::enhance); addColumn("ethereal_durability", &OutputType::ethereal_durability); addColumn("endurance", &OutputType::endurance); addColumn("flag", &OutputType::flag); addColumn("gcode", &OutputType::gcode); addColumn("wear_info", &OutputType::wear_info); addColumn("socket_0", &OutputType::socket, 0); addColumn("socket_1", &OutputType::socket, 1); addColumn("socket_2", &OutputType::socket, 2); addColumn("socket_3", &OutputType::socket, 3); addColumn("awaken_sid", &OutputType::awaken_sid); addColumn("remain_time", &OutputType::remain_time); addColumn("elemental_effect_type", &OutputType::elemental_effect_type); addColumn("elemental_effect_expire_time", &OutputType::elemental_effect_expire_time); addColumn("elemental_effect_attack_point", &OutputType::elemental_effect_attack_point); addColumn("elemental_effect_magic_point", &OutputType::elemental_effect_magic_point); addColumn("appearance_code", &OutputType::appearance_code); addColumn("create_time", &OutputType::create_time); addColumn("update_time", &OutputType::update_time); }
void Action::bind(const String& bindable1, const String& bindable2) { Binding* b = createBinding(); b->bind(bindable1); b->bind(bindable2); }
void Action::bind(Bindable* bindable1, Bindable* bindable2) { Binding* b = createBinding(); b->bind(bindable1); b->bind(bindable2); }
void MidiRouter::addBinding(const MidiMapping& mapping) { const auto& path = mapping.path(); if (path.empty()) { return; } TParamBase* param = _appParams.lookupPath(path); if (!param) { AppSystem::get().log().control().logWarning("Unable to find parameter for binding path '" + path + "'"); return; } auto device = getDevice(mapping.key().device()); if (!device) { AppSystem::get().log().control().logWarning("Unable to find device for mapping " + ofToString(mapping)); return; } std::shared_ptr<AbstractMidiBinding> binding; try { binding = createBinding(mapping.key(), *param, device); } catch (std::invalid_argument ex) { AppSystem::get().log().control().logWarning(std::string("Unable to create binding: ") + ex.what()); return; } const auto& key = mapping.key(); _bindings[key] = binding; }
void OscController::loadBindings(::Params ¶ms, const std::string& basePath) { for (auto param : params.getParamBases()) { if (!param->supportsOsc()) { continue; } if (param->isGroup()) { std::string subBasePath = basePath + param->getKey() + '/'; loadBindings(dynamic_cast<::Params&>(*param), subBasePath); } else { std::shared_ptr<AbstractOscBinding> binding; try { binding = createBinding(*param, basePath, *this); } catch (std::invalid_argument ex) { ofLogWarning() << "Unable to create binding: " << ex.what(); continue; } _bindings[binding->path()] = binding; } } }
//----[ createBinding ]------------------------------------------------------ Binding::BindingPtr SpecialFXBindingSource::createBinding( SpecialFXBindingIndex binding) { assert(binding != INVALID_SPECIALFX_BINDING_INDEX); if (binding < number_of_bindings_) { return SpecialFXBindingInstance::New(&bindings_[binding], this); } else { switch (binding) { default: assert(false); case SPECIALFX_BINDING_SOURCE_LOCATION: if (source_location_ == NULL) { if (expiration_time_ >= 0.0) { source_location_ = Binding::DelayLocationBinding::New( expiration_time_, source_x_, 0.0f, source_z_); } else { source_location_ = Binding::LocationBinding::New( source_x_, 0.0f, source_z_); } } if (bindings_used_) bindings_used_->insert(source_location_); return source_location_; case SPECIALFX_BINDING_SOURCE_OBJECT: if (delayed_source_object_ == NULL) { if (source_object_ == NULL) { delayed_source_object_ = createBinding(SPECIALFX_BINDING_SOURCE_LOCATION); } else { if (expiration_time_ >= 0.0) { delayed_source_object_ = Binding::DelayBinding::New( source_object_, expiration_time_); } else { delayed_source_object_ = Binding::NoUpdateWrapperBinding::New(source_object_); } } } if (bindings_used_) bindings_used_->insert(delayed_source_object_); return delayed_source_object_; case SPECIALFX_BINDING_TARGET_LOCATION: if (target_location_ == NULL) { if (expiration_time_ >= 0.0) { target_location_ = Binding::DelayLocationBinding::New( expiration_time_, target_x_, 0.0f, target_z_); } else { target_location_ = Binding::LocationBinding::New( target_x_, 0.0f, target_z_); } } if (bindings_used_) bindings_used_->insert(target_location_); return target_location_; case SPECIALFX_BINDING_TARGET_OBJECT: if (delayed_target_object_ == NULL) { if (target_object_ == NULL) { delayed_target_object_ = createBinding(SPECIALFX_BINDING_TARGET_LOCATION); } else { if (expiration_time_ >= 0.0) { delayed_target_object_ = Binding::DelayBinding::New( target_object_, expiration_time_); } else { delayed_target_object_ = Binding::NoUpdateWrapperBinding::New(target_object_); } } } if (bindings_used_) bindings_used_->insert(delayed_target_object_); return delayed_target_object_; } } assert(false); // one of the other paths should have returned }