# `events`

Event definitions for OCL evaluation loops.

Events emit in the following order:

```text
TrainBegin (once)
    TrainTaskBegin (for number of tasks)
        TrainBatchPredict
            TestBegin
            TestTaskBegin (for number of tasks)
                EvalBatchPredict
            TestTaskEnd
        TestEnd
    TrainTaskEnd
TrainEnd
```

## Classes

| [`EvalBatchPredict`](capymoa.ocl.evaluation.events.EvalBatchPredict.md#capymoa.ocl.evaluation.events.EvalBatchPredict)   | After predicting on an evaluation batch, but before any updates.   |
|--------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------|
| [`TestBegin`](capymoa.ocl.evaluation.events.TestBegin.md#capymoa.ocl.evaluation.events.TestBegin)                 | On evaluation start.                                               |
| [`TestEnd`](capymoa.ocl.evaluation.events.TestEnd.md#capymoa.ocl.evaluation.events.TestEnd)                     | On evaluation end.                                                 |
| [`TestTaskBegin`](capymoa.ocl.evaluation.events.TestTaskBegin.md#capymoa.ocl.evaluation.events.TestTaskBegin)         | On evaluation start for a task.                                    |
| [`TestTaskEnd`](capymoa.ocl.evaluation.events.TestTaskEnd.md#capymoa.ocl.evaluation.events.TestTaskEnd)             | On evaluation end for a task.                                      |
| [`TrainBatchPredict`](capymoa.ocl.evaluation.events.TrainBatchPredict.md#capymoa.ocl.evaluation.events.TrainBatchPredict) | After predicting on a training batch, but before training on it.   |
| [`TrainBegin`](capymoa.ocl.evaluation.events.TrainBegin.md#capymoa.ocl.evaluation.events.TrainBegin)               | On training start.                                                 |
| [`TrainEnd`](capymoa.ocl.evaluation.events.TrainEnd.md#capymoa.ocl.evaluation.events.TrainEnd)                   | On training end.                                                   |
| [`TrainTaskBegin`](capymoa.ocl.evaluation.events.TrainTaskBegin.md#capymoa.ocl.evaluation.events.TrainTaskBegin)       | On training start for a task.                                      |
| [`TrainTaskEnd`](capymoa.ocl.evaluation.events.TrainTaskEnd.md#capymoa.ocl.evaluation.events.TrainTaskEnd)           | On training end for a task.                                        |
