# VisionEvent

<a id="visionevent"></a>

# VisionEvent

```cpp
#include <icy/vision/event.h>

struct VisionEvent
```

[Defined in src/vision/include/icy/vision/event.h:32](https://github.com/auscaster/icey/blob/main/src/vision/include/icy/vision/event.h#L32)

A detector's report on one frame, with its detections and tracks, in the vision.event.v1 schema.

## Public Attributes

| Return | Name | Description |
|--------|------|-------------|
| `std::string` | [`schema`](#schema)  |  |
| `std::string` | [`type`](#type-27)  |  |
| `std::string` | [`source`](#source-3)  |  |
| `std::string` | [`detector`](#detector-3)  |  |
| `int64_t` | [`emittedAtUsec`](#emittedatusec-1)  |  |
| [`VisionFrameContext`](https://auscaster.com/icey/docs/api-reference/icy-vision-VisionFrameContext.md#visionframecontext) | [`frame`](#frame-2)  |  |
| std::vector< [`Detection`](https://auscaster.com/icey/docs/api-reference/icy-vision-Detection.md#detection) > | [`detections`](#detections)  |  |
| std::vector< [`Track`](https://auscaster.com/icey/docs/api-reference/icy-vision-Track.md#track) > | [`tracks`](#tracks)  |  |
| [`json::Value`](https://auscaster.com/icey/docs/api-reference/icy-json.md#value) | [`data`](#data-14)  |  |

---

<a id="schema"></a>

### schema

```cpp
std::string schema = "vision.event.v1"
```

[Defined in src/vision/include/icy/vision/event.h:34](https://github.com/auscaster/icey/blob/main/src/vision/include/icy/vision/event.h#L34)

---

<a id="type-27"></a>

### type

```cpp
std::string type = "detect"
```

[Defined in src/vision/include/icy/vision/event.h:35](https://github.com/auscaster/icey/blob/main/src/vision/include/icy/vision/event.h#L35)

---

<a id="source-3"></a>

### source

```cpp
std::string source
```

[Defined in src/vision/include/icy/vision/event.h:36](https://github.com/auscaster/icey/blob/main/src/vision/include/icy/vision/event.h#L36)

---

<a id="detector-3"></a>

### detector

```cpp
std::string detector
```

[Defined in src/vision/include/icy/vision/event.h:37](https://github.com/auscaster/icey/blob/main/src/vision/include/icy/vision/event.h#L37)

---

<a id="emittedatusec-1"></a>

### emittedAtUsec

```cpp
int64_t emittedAtUsec = 0
```

[Defined in src/vision/include/icy/vision/event.h:38](https://github.com/auscaster/icey/blob/main/src/vision/include/icy/vision/event.h#L38)

---

<a id="frame-2"></a>

### frame

```cpp
VisionFrameContext frame
```

Type: [`VisionFrameContext`](https://auscaster.com/icey/docs/api-reference/icy-vision-VisionFrameContext.md#visionframecontext)

[Defined in src/vision/include/icy/vision/event.h:39](https://github.com/auscaster/icey/blob/main/src/vision/include/icy/vision/event.h#L39)

---

<a id="detections"></a>

### detections

```cpp
std::vector< Detection > detections
```

Type: std::vector< [`Detection`](https://auscaster.com/icey/docs/api-reference/icy-vision-Detection.md#detection) >

[Defined in src/vision/include/icy/vision/event.h:40](https://github.com/auscaster/icey/blob/main/src/vision/include/icy/vision/event.h#L40)

---

<a id="tracks"></a>

### tracks

```cpp
std::vector< Track > tracks
```

Type: std::vector< [`Track`](https://auscaster.com/icey/docs/api-reference/icy-vision-Track.md#track) >

[Defined in src/vision/include/icy/vision/event.h:41](https://github.com/auscaster/icey/blob/main/src/vision/include/icy/vision/event.h#L41)

---

<a id="data-14"></a>

### data

```cpp
json::Value data = json::Value::object()
```

Type: [`json::Value`](https://auscaster.com/icey/docs/api-reference/icy-json.md#value)

[Defined in src/vision/include/icy/vision/event.h:42](https://github.com/auscaster/icey/blob/main/src/vision/include/icy/vision/event.h#L42)
