mirror of
https://github.com/intrepidcs/libicsneo.git
synced 2026-11-04 04:49:07 +01:00
38 lines
955 B
C++
38 lines
955 B
C++
#ifndef __BOOTLOADER_RADMULTICHIPCOMMUNICATION_H_
|
|
#define __BOOTLOADER_RADMULTICHIPCOMMUNICATION_H_
|
|
|
|
#ifdef __cplusplus
|
|
|
|
#include "icsneo/device/extensions/bootloader/communication/radcommunication.h"
|
|
#include "icsneo/device/extensions/bootloader/communication/application.h"
|
|
|
|
#include <cstdint>
|
|
#include <memory>
|
|
|
|
namespace icsneo {
|
|
|
|
namespace Bootloader {
|
|
|
|
class RADMultiChipCommunication : public RADCommunication {
|
|
private:
|
|
std::unique_ptr<Application> standardComm;
|
|
const bool doAuthChecks;
|
|
const uint8_t slot;
|
|
bool authenticate() override;
|
|
public:
|
|
RADMultiChipCommunication(icsneo::Device& dev, const ChipInfo& chipToFlash, bool auth, uint8_t slot = UINT8_MAX);
|
|
|
|
bool flash(const FWRepo& fw, const StatusHandler& handler) override;
|
|
bool open() override;
|
|
bool close() override;
|
|
bool enterApplication() override;
|
|
};
|
|
|
|
} // namespace Bootloader
|
|
|
|
} // namespace icsneo
|
|
|
|
#endif // __cplusplus
|
|
|
|
#endif // __BOOTLOADER_RADMULTICHIPCOMMUNICATION_H_
|