// Copyright (C) 2018-2024 Intel Corporation // SPDX-License-Identifier: Apache-2.0 // #pragma once #include /** * @brief Class for action info */ using Action = int; /** * @brief Class for events on a single frame with action info */ struct FrameEvent { /** @brief Frame index */ int frame_id; /** @brief Action label */ Action action; /** * @brief Constructor */ FrameEvent(int frame_id, Action action) : frame_id(frame_id), action(action) {} }; using FrameEventsTrack = std::vector; /** * @brief Class for range of the same event with action info */ struct RangeEvent { /** @brief Start frame index */ int begin_frame_id; /** @brief Next after the last valid frame index */ int end_frame_id; /** @brief Action label */ Action action; /** * @brief Constructor */ RangeEvent(int begin_frame_id, int end_frame_id, Action action) : begin_frame_id(begin_frame_id), end_frame_id(end_frame_id), action(action) {} }; using RangeEventsTrack = std::vector; enum ActionsType { STUDENT, TEACHER, TOP_K };