GrabBag/App/WorkpieceProject/WorkpieceSpliceApp/IYWorkpieceSpliceStatus.h
2025-12-10 00:01:32 +08:00

31 lines
925 B
C++

#ifndef IYWORKPIECESPLICESTATUS_H
#define IYWORKPIECESPLICESTATUS_H
#include <string>
#include <vector>
#include <QMetaType>
#include "IBinocularMarkReceiver.h" // 使用 VrMark3D
#include "IVisionApplicationStatus.h"
struct WorkpieceSpliceResult {
std::vector<VrMark3D> marks; // 使用通用类型
qint64 timestamp;
int errorCode;
bool success;
WorkpieceSpliceResult() : timestamp(0), errorCode(0), success(false) {}
};
class IYWorkpieceSpliceStatus
{
public:
virtual ~IYWorkpieceSpliceStatus() = default;
virtual void OnStatusUpdate(const std::string& statusMessage) = 0;
virtual void OnMarkResult(const WorkpieceSpliceResult& result) = 0;
virtual void OnBinocularMarkConnectionChanged(bool connected) = 0;
virtual void OnWorkStatusChanged(WorkStatus status) = 0;
};
Q_DECLARE_METATYPE(WorkpieceSpliceResult)
#endif // IYWORKPIECESPLICESTATUS_H