#ifndef __OTX_FLASH_ECUFlasherECUEventArg_HPP__
#define __OTX_FLASH_ECUFlasherECUEventArg_HPP__

#include "ECU.hpp"

namespace otx{
namespace flash{

class ECUFlasher;

class ECUFlasherECUEventArg {
public:
  ECUFlasherECUEventArg(ECUFlasher* sender, ECU* ecu, bool status = false);
  ECUFlasherECUEventArg(const ECUFlasherECUEventArg &right) = default;
  ECUFlasherECUEventArg &operator=(const ECUFlasherECUEventArg &right) = default;

public:
  virtual ~ECUFlasherECUEventArg() = default;

private:
  ECUFlasher *mSender;
  ECU *mEcu;
  bool status = false;

public:
  virtual ECUFlasher *getSender();
  virtual ECU *getEcu();
  bool getStatus();
};

} // namespace flash
} // namespace otx

#endif // __OTX_FLASH_ECUFlasherECUEventArg_HPP__