SimsWorld/MessageBasic/messagebasic.h

106 lines
2.5 KiB
C
Raw Normal View History

2025-05-25 04:43:37 +00:00
#pragma once
#include "messagebasic_global.h"
#include "simsbasic.h"
#define NAME(v) #v
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
class MESSAGEBASIC_EXPORT DeduceRequest : public WsMessage {
private:
uint64_t _from_id, _to_id;
public:
DeduceRequest();
void reset(uint64_t from, uint64_t to);
// ͨ<><CDA8> WsMessage <20>̳<EFBFBD>
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
QString topicString() const override;
uint64_t targetEntity() const override;
uint64_t sourceEntity() const override;
};
/// <summary>
/// Ĭ<>ϵ<EFBFBD><CFB5>޷<EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD>÷<EFBFBD><C3B7><EFBFBD><EFBFBD><EFBFBD>Ϣ
/// </summary>
class MESSAGEBASIC_EXPORT RespondDefault : public WsMessage {
private:
uint64_t _from_id, _to_id;
double _time_consume;
public:
RespondDefault();
void reset(uint64_t from, uint64_t to, double consume);
double consume() const;
// ͨ<><CDA8> WsMessage <20>̳<EFBFBD>
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
QString topicString() const override;
uint64_t targetEntity() const override;
uint64_t sourceEntity() const override;
};
/// <summary>
/// ʱ<><CAB1>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>Ϣ
/// </summary>
class MESSAGEBASIC_EXPORT SyncRequest : public WsMessage {
private:
uint64_t _from_id, _to_id;
double _time_current;
public:
SyncRequest();
void reset(uint64_t from, uint64_t to, double timepoint);
// ͨ<><CDA8> WsMessage <20>̳<EFBFBD>
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
QString topicString() const override;
uint64_t targetEntity() const override;
uint64_t sourceEntity() const override;
};
class MESSAGEBASIC_EXPORT Get3DVolume : public WsMessage {
private:
uint64_t _from_id = 0, _to_id = 0;
public:
Get3DVolume();
void reset(uint64_t from, uint64_t to);
// ͨ<><CDA8> WsMessage <20>̳<EFBFBD>
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
QString topicString() const override;
uint64_t targetEntity() const override;
uint64_t sourceEntity() const override;
};
class MESSAGEBASIC_EXPORT Volume3DDesc : public WsMessage {
private:
uint64_t _from_id, _to_id;
double _length, _width, _height;
double _azimuth_deg;
public:
Volume3DDesc();
void reset(uint64_t from, uint64_t to, double l, double w, double h, double azi);
// ͨ<><CDA8> WsMessage <20>̳<EFBFBD>
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
QString topicString() const override;
uint64_t targetEntity() const override;
uint64_t sourceEntity() const override;
};