Example #1
0
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);
}
Example #2
0
    void Action::bind(const String& bindable1, const String& bindable2)
    {
        Binding* b = createBinding();

        b->bind(bindable1);
        b->bind(bindable2);
    }
Example #3
0
    void Action::bind(Bindable* bindable1, Bindable* bindable2)
    {
        Binding* b = createBinding();

        b->bind(bindable1);
        b->bind(bindable2);
    }
Example #4
0
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;
}
Example #5
0
void OscController::loadBindings(::Params &params,
                                 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
}