/**
  * Filter the query by a related \ECP\ItemFilterDef object
  *
  * @param \ECP\ItemFilterDef|ObjectCollection $itemFilterDef the related object to use as filter
  * @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
  *
  * @return ChildTypeQuery The current query, for fluid interface
  */
 public function filterByItemFilterDef($itemFilterDef, $comparison = null)
 {
     if ($itemFilterDef instanceof \ECP\ItemFilterDef) {
         return $this->addUsingAlias(TypeTableMap::COL_ID, $itemFilterDef->getTypeid(), $comparison);
     } elseif ($itemFilterDef instanceof ObjectCollection) {
         return $this->useItemFilterDefQuery()->filterByPrimaryKeys($itemFilterDef->getPrimaryKeys())->endUse();
     } else {
         throw new PropelException('filterByItemFilterDef() only accepts arguments of type \\ECP\\ItemFilterDef or Collection');
     }
 }