/*
 * @brief Defines the EuroScope RADAR screen
 * @file src/RadarScreen.h
 * @author Sven Czarnian <devel@svcz.de>
 * @copyright Copyright 2021 Sven Czarnian
 * @license This project is published under the GNU General Public License v3 (GPLv3)
 */

#pragma once

#pragma warning(push, 0)
#include <EuroScopePlugIn.h>
#pragma warning(pop)

namespace aman {
    /**
     * @brief Defines the RADAR screen
     * @ingroup euroscope
     */
    class RadarScreen : public EuroScopePlugIn::CRadarScreen {
    public:
        /**
         * @brief Creates a new RADAR screen
         */
        RadarScreen();
        /**
         * @brief Destroys the internal structure
         */
        virtual ~RadarScreen();

        RadarScreen(const RadarScreen&) = delete;
        RadarScreen(RadarScreen&&) = delete;
        RadarScreen& operator=(const RadarScreen&) = delete;
        RadarScreen& operator=(RadarScreen&&) = delete;

        /**
         * @brief Called as soon as the ASR file is closed
         */
        void OnAsrContentToBeClosed() override;
    };
}
