/**
  * Filter the query by a related \App\Models\Engagement object
  *
  * @param \App\Models\Engagement|ObjectCollection $engagement the related object to use as filter
  * @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
  *
  * @return ChildProfessorQuery The current query, for fluid interface
  */
 public function filterByEngagement($engagement, $comparison = null)
 {
     if ($engagement instanceof \App\Models\Engagement) {
         return $this->addUsingAlias(ProfessorTableMap::COL_ID, $engagement->getProfessorId(), $comparison);
     } elseif ($engagement instanceof ObjectCollection) {
         return $this->useEngagementQuery()->filterByPrimaryKeys($engagement->getPrimaryKeys())->endUse();
     } else {
         throw new PropelException('filterByEngagement() only accepts arguments of type \\App\\Models\\Engagement or Collection');
     }
 }