// Copyrigth Xtooltech @ 2023- All rights reserved.(LXH)

#ifndef __REPORT_COLLECTOR_EVENT_HANDLER_HPP__
#define __REPORT_COLLECTOR_EVENT_HANDLER_HPP__

#include "StationDataReportRecord.hpp"

namespace otx {
namespace jidu {
/**
 * @brief 测试大项中的模块(Block)，对应配置文件中的function。
 * 
 */
class ReportCollectorEventHandler {
protected:
  ReportCollectorEventHandler() = default;
  ReportCollectorEventHandler(const ReportCollectorEventHandler &) = default;
  ReportCollectorEventHandler &operator=(const ReportCollectorEventHandler &) = default;
public:
  virtual ~ReportCollectorEventHandler() = default;

public:
  virtual void onBlockCompleted(StationDataReportRecord *newBlock) = 0;
  virtual void onStationResultCompleted(StationResultReportRecord *newResult) = 0;
  virtual void onPrintResultCompleted(PrintResultReportRecord *newResult) = 0;
};

} // namespace jidu
} // namespace otx

#endif /* __REPORT_COLLECTOR_EVENT_HANDLER_HPP__ */
