Declares an association between this object and a ChildObject object.

@param  ChildObject $v
@return $this|\gossi\trixionary\model\Skill The current object (for fluent API support)
@throws PropelException
966567
public function setObject(ChildObject $v = null)
    {
        // aggregate_column_relation behavior
        if (null !== $this->aObject && $v !== $this->aObject) {
            $this->oldObjectSkillCount = $this->aObject;
        }
        if ($v === null) {
            $this->setObjectId(NULL);
        } else {
            $this->setObjectId($v->getId());
        }

        $this->aObject = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildObject object, it will not be re-added.
        if ($v !== null) {
            $v->addSkill($this);
        }


        return $this;
    }
394544
public function setDealerContent(ChildDealerContent $v = null)
    {
        if ($v === null) {
            $this->setId(NULL);
        } else {
            $this->setId($v->getId());
        }

        $this->aDealerContent = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildDealerContent object, it will not be re-added.
        if ($v !== null) {
            $v->addDealerContentVersion($this);
        }


        return $this;
    }
1198656
public function setFeatureType(ChildFeatureType $v = null)
    {
        if ($v === null) {
            $this->setId(NULL);
        } else {
            $this->setId($v->getId());
        }

        $this->aFeatureType = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildFeatureType object, it will not be re-added.
        if ($v !== null) {
            $v->addFeatureTypeI18n($this);
        }


        return $this;
    }
249578
public function setTutorialId($v)
    {
        if ($v !== null) {
            $v = (int) $v;
        }

        if ($this->tutorial_id !== $v) {
            $this->tutorial_id = $v;
            $this->modifiedColumns[SkillVersionTableMap::COL_TUTORIAL_ID] = true;
        }

        return $this;
    }
1355117
public function setSkill(ChildSkill $v = null)
    {
        if ($v === null) {
            $this->setId(NULL);
        } else {
            $this->setId($v->getId());
        }

        $this->aSkill = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildSkill object, it will not be re-added.
        if ($v !== null) {
            $v->addSkillVersion($this);
        }


        return $this;
    }
1153837
public function setPlayer(Player $v = null)
    {
        if ($v === null) {
            $this->setPlayerId(NULL);
        } else {
            $this->setPlayerId($v->getId());
        }

        $this->aPlayer = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the Player object, it will not be re-added.
        if ($v !== null) {
            $v->addRecord($this);
        }


        return $this;
    }
1022674
public function setFunctionPhaseRoot(ChildFunctionPhase $v = null)
    {
        if ($v === null) {
            $this->setFunctionPhaseId(NULL);
        } else {
            $this->setFunctionPhaseId($v->getId());
        }

        $this->aFunctionPhaseRoot = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildFunctionPhase object, it will not be re-added.
        if ($v !== null) {
            $v->addRootSkill($this);
        }


        return $this;
    }
1182754
public function setDealerProduct(ChildDealerProduct $v = null)
    {
        if ($v === null) {
            $this->setId(NULL);
        } else {
            $this->setId($v->getId());
        }

        $this->aDealerProduct = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildDealerProduct object, it will not be re-added.
        if ($v !== null) {
            $v->addDealerProductVersion($this);
        }


        return $this;
    }
986833
public function setKstrukturId($v)
    {
        if ($v !== null) {
            $v = (int) $v;
        }

        if ($this->kstruktur_id !== $v) {
            $this->kstruktur_id = $v;
            $this->modifiedColumns[SkillVersionTableMap::COL_KSTRUKTUR_ID] = true;
        }

        return $this;
    }
1245659
public function setTeam(ChildTeam $v = null)
    {
        if ($v === null) {
            $this->setTeamId(NULL);
        } else {
            $this->setTeamId($v->getId());
        }

        $this->aTeam = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildTeam object, it will not be re-added.
        if ($v !== null) {
            $v->addPersonTeamLink($this);
        }


        return $this;
    }
1120112
public function setStructureNodeRelatedByParentId(ChildStructureNode $v = null)
    {
        if ($v === null) {
            $this->setParentId(NULL);
        } else {
            $this->setParentId($v->getId());
        }

        $this->aStructureNodeRelatedByParentId = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildStructureNode object, it will not be re-added.
        if ($v !== null) {
            $v->addStructureNodeParentRelatedByParentId($this);
        }


        return $this;
    }
1193921
public function setObjectId($v)
    {
        if ($v !== null) {
            $v = (int) $v;
        }

        if ($this->object_id !== $v) {
            $this->object_id = $v;
            $this->modifiedColumns[SkillTableMap::COL_OBJECT_ID] = true;
        }

        if ($this->aObject !== null && $this->aObject->getId() !== $v) {
            $this->aObject = null;
        }

        return $this;
    }
766562
public function setSkillRelatedByCompositeId(ChildSkill $v = null)
    {
        if ($v === null) {
            $this->setCompositeId(NULL);
        } else {
            $this->setCompositeId($v->getId());
        }

        $this->aSkillRelatedByCompositeId = $v;

        // Add binding for other direction of this n:n relationship.
        // If this object has already been added to the ChildSkill object, it will not be re-added.
        if ($v !== null) {
            $v->addComposite($this);
        }


        return $this;
    }
691394
public function add(Vector $v) {
		if($this->dimension != $v->getDimensions()) {
			throw new Exception("Both vectors must have the same size");
		}

		$components = array();
		$otherComponents = $v->toArray();
		foreach($this->components as $i => $component) {
			$components[] = $component + $otherComponents[$i];
		}
		$this->components = $components;
		return $this;
	}
752230
public function addSkill(ChildSkill $skill)
    {
        if ($this->collSkills === null) {
            $this->initSkills();
        }

        if (!$this->getSkills()->contains($skill)) {
            // only add it if the **same** object is not already associated
            $this->collSkills->push($skill);
            $this->doAddSkill($skill);
        }

        return $this;
    }
312619
public function setImportance($v)
    {
        if ($v !== null) {
            $v = (int) $v;
        }

        if ($this->importance !== $v) {
            $this->importance = $v;
            $this->modifiedColumns[SkillTableMap::COL_IMPORTANCE] = true;
        }

        return $this;
    }
44101
public function setCompositeId($v)
    {
        if ($v !== null) {
            $v = (int) $v;
        }

        if ($this->composite_id !== $v) {
            $this->composite_id = $v;
            $this->modifiedColumns[SkillPartTableMap::COL_COMPOSITE_ID] = true;
        }

        if ($this->aSkillRelatedByCompositeId !== null && $this->aSkillRelatedByCompositeId->getId() !== $v) {
            $this->aSkillRelatedByCompositeId = null;
        }

        return $this;
    }