void ContactTaskBase::setContact(Kopete::Contact *contact)
{
	d->contact = contact;

	// Add the children tasks for DeleteContactTask from the rptocol
	KJob *subTask = d->contact->protocol()->createProtocolTask( taskType() );
	if( subTask )
	{
		kDebug(14010) << "Adding protocol subtask for " << taskType();
		addSubTask(subTask);
	}
}
EigenvaluesResult EigenvaluesTask::solve() const
{
    Q_ASSERT(taskType() != InvalidTaskType);
    switch (taskType())
    {
    case JacobiTaskType:
        return solveWithJacobi(*this);
    break;
    case QRTaskType:
        return solveWithQR(*this);
    break;
    }
    return EigenvaluesResult();
}