| 404 | } |
| 405 | |
| 406 | void Evaluate(double sq_norm, double out[3]) const override { |
| 407 | if (rho_.get() == nullptr) { |
| 408 | out[0] = sq_norm; |
| 409 | out[1] = 1.0; |
| 410 | out[2] = 0.0; |
| 411 | } else { |
| 412 | rho_->Evaluate(sq_norm, out); |
| 413 | } |
| 414 | } |
| 415 | |
| 416 | void Reset(LossFunction* rho, Ownership ownership) { |
| 417 | if (ownership_ == DO_NOT_TAKE_OWNERSHIP) { |