/*! * * Copyright (c) 2023 Diality Inc. - All Rights Reserved. * * \copyright * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * \file IEnterBootloader.h * \author (last) Phil Braica * \date (last) 23-Jan-2023 * \author (original) Phil Braica * \date (original) 23-Jan-2023 * */ #ifndef I_ENTER_BOOT_LOADER_H_ #define I_ENTER_BOOT_LOADER_H_ namespace SwUpdate { /*! * \brief The interface class that allows the update to call the app to enter bootloader. * * See sendEnterBootloader. */ class IEnterBootLoader { public: /*! * \brief Tell app layer to send it's app msg to enter bootloader. * * Bootloader will timeout after 5s or so if it hasn't seen a "start" * command. This allows the App layer to evolve it's messages independently * from the update software which can be basically static. * * \param asHd True=do the HD, False=do the DG. */ virtual void sendEnterBootloader(bool asHd) = 0; }; } // namespace SwUpdate #endif // I_ENTER_BOOT_LOADER_H_