diff --git a/MessageBasic/MessageBasic.vcxproj b/MessageBasic/MessageBasic.vcxproj
index 34b5807..60cb910 100644
--- a/MessageBasic/MessageBasic.vcxproj
+++ b/MessageBasic/MessageBasic.vcxproj
@@ -104,13 +104,21 @@
+
+
+
+
+
+
+
+
diff --git a/MessageBasic/MessageBasic.vcxproj.filters b/MessageBasic/MessageBasic.vcxproj.filters
index ba7057e..2e76644 100644
--- a/MessageBasic/MessageBasic.vcxproj.filters
+++ b/MessageBasic/MessageBasic.vcxproj.filters
@@ -38,6 +38,18 @@
Header Files
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
@@ -46,5 +58,17 @@
Source Files
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
\ No newline at end of file
diff --git a/MessageBasic/MessageLoader.cpp b/MessageBasic/MessageLoader.cpp
new file mode 100644
index 0000000..5363b4a
--- /dev/null
+++ b/MessageBasic/MessageLoader.cpp
@@ -0,0 +1,52 @@
+#include "MessageLoader.h"
+#include "componentinfo_access.h"
+#include "entity_operate.h"
+#include "motion_access.h"
+#include "route_access.h"
+#include "visiblecube_access.h"
+
+
+MessageLoader::MessageLoader()
+{
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+ _message_types << std::make_shared();
+}
+
+QList> MessageLoader::allType() const
+{
+ return _message_types;
+}
diff --git a/MessageBasic/MessageLoader.h b/MessageBasic/MessageLoader.h
new file mode 100644
index 0000000..ceee94d
--- /dev/null
+++ b/MessageBasic/MessageLoader.h
@@ -0,0 +1,14 @@
+#pragma once
+#include "messagebasic.h"
+
+class MESSAGEBASIC_EXPORT MessageLoader
+{
+private:
+ QList> _message_types;
+
+public:
+ MessageLoader();
+
+ QList> allType() const;
+};
+
diff --git a/MessageBasic/componentinfo_access.cpp b/MessageBasic/componentinfo_access.cpp
new file mode 100644
index 0000000..f68b3e6
--- /dev/null
+++ b/MessageBasic/componentinfo_access.cpp
@@ -0,0 +1,21 @@
+#include "componentinfo_access.h"
+
+std::shared_ptr ComponentDatasQuery::newDefault() const
+{
+ return std::make_shared();
+}
+
+std::shared_ptr ComponentDatasQueryResult::newDefault() const
+{
+ return std::make_shared();
+}
+
+std::shared_ptr ProcedureSignatureQuery::newDefault() const
+{
+ return std::make_shared();
+}
+
+std::shared_ptr ProcedureSignatureQueryResult::newDefault() const
+{
+ return std::make_shared< ProcedureSignatureQueryResult>();
+}
diff --git a/MessageBasic/componentinfo_access.h b/MessageBasic/componentinfo_access.h
new file mode 100644
index 0000000..9f01ce6
--- /dev/null
+++ b/MessageBasic/componentinfo_access.h
@@ -0,0 +1,49 @@
+#pragma once
+#include "messagebasic.h"
+
+///
+/// 获取指定实体的所有组件数据
+///
+struct MESSAGEBASIC_EXPORT ComponentDatasQuery : public AbstractMessage {
+ ComponentDatasQuery();
+
+ std::shared_ptr newDefault() const override;
+};
+
+///
+/// 组件数据查询结果
+///
+struct MESSAGEBASIC_EXPORT ComponentDatasQueryResult : public AbstractMessage {
+ QJsonObject _entity_json;
+
+ ComponentDatasQueryResult();
+
+ // 通过 WsMessage 继承
+ std::shared_ptr newDefault() const override;
+ void recoveryFrom(const QJsonObject& obj) override;
+ void saveTo(QJsonObject& obj) const override;
+};
+
+///
+/// 处理过程签名查询
+///
+struct MESSAGEBASIC_EXPORT ProcedureSignatureQuery : public AbstractMessage {
+ ProcedureSignatureQuery();
+
+ std::shared_ptr newDefault() const override;
+};
+
+///
+/// 处理过程签名查询结果
+///
+struct MESSAGEBASIC_EXPORT ProcedureSignatureQueryResult : public AbstractMessage
+{
+ QList _signature_list;
+
+ ProcedureSignatureQueryResult();
+
+ // 通过 WsMessage 继承
+ std::shared_ptr newDefault() const override;
+ void recoveryFrom(const QJsonObject& obj) override;
+ void saveTo(QJsonObject& obj) const override;
+};
\ No newline at end of file
diff --git a/MessageBasic/entity_operate.cpp b/MessageBasic/entity_operate.cpp
new file mode 100644
index 0000000..636baaf
--- /dev/null
+++ b/MessageBasic/entity_operate.cpp
@@ -0,0 +1,37 @@
+#include "entity_operate.h"
+
+
+std::shared_ptr TypesQuery::newDefault() const
+{
+ return std::make_shared();
+}
+
+std::shared_ptr TypesQueryResult::newDefault() const
+{
+ return std::make_shared();
+}
+
+std::shared_ptr TempletOperate::newDefault() const
+{
+ return std::make_shared();
+}
+
+std::shared_ptr EntityOperate::newDefault() const
+{
+ return std::make_shared();
+}
+
+std::shared_ptr ComponentOperate::newDefault() const
+{
+ return std::make_shared();
+}
+
+std::shared_ptr EntityTotalGet::newDefault() const
+{
+ return std::make_shared();
+}
+
+std::shared_ptr EntityTotalList::newDefault() const
+{
+ return std::make_shared();
+}
diff --git a/MessageBasic/entity_operate.h b/MessageBasic/entity_operate.h
new file mode 100644
index 0000000..4e10538
--- /dev/null
+++ b/MessageBasic/entity_operate.h
@@ -0,0 +1,102 @@
+#pragma once
+#include "messagebasic.h"
+
+
+///
+/// 查询系统中的组件类型和实体类型
+///
+struct MESSAGEBASIC_EXPORT TypesQuery : public AbstractMessage {
+ TypesQuery();
+ std::shared_ptr newDefault() const override;
+};
+
+///
+/// 返回系统内所有的组件类型和实体模板类型
+///
+struct MESSAGEBASIC_EXPORT TypesQueryResult : public AbstractMessage {
+ QStringList _component_types;
+ QHash _entity_templets;
+
+ TypesQueryResult();
+ // 通过 WsMessage 继承
+ std::shared_ptr newDefault() const override;
+ void recoveryFrom(const QJsonObject& obj) override;
+ void saveTo(QJsonObject& obj) const override;
+};
+
+
+///
+/// 操作类型
+///
+enum class EntityOperateType {
+ NEW, DELETE, MODIFY
+};
+///
+/// 模板操作支持增、删、改
+///
+struct MESSAGEBASIC_EXPORT TempletOperate : public AbstractMessage {
+ uint64_t _operate_code = (uint64_t)EntityOperateType::NEW;
+ QString _template_name = "";
+ uint64_t _template_id_within_0x2ff_0xffff = 0x2ff;
+
+ TempletOperate();
+
+ // 通过 WsMessage 继承
+ std::shared_ptr newDefault() const override;
+ void recoveryFrom(const QJsonObject& obj) override;
+ void saveTo(QJsonObject& obj) const override;
+};
+
+///
+/// 实体构造操作
+///
+struct MESSAGEBASIC_EXPORT EntityOperate : public AbstractMessage {
+ uint64_t _operate_code = (uint64_t)EntityOperateType::NEW;
+ QString _template_name = "";
+ QString _entity_name = "";
+ uint64_t _entity_id_over_0xffff = 0xffff;
+
+ EntityOperate();
+
+ // 通过 WsMessage 继承
+ std::shared_ptr newDefault() const override;
+ void recoveryFrom(const QJsonObject& obj) override;
+ void saveTo(QJsonObject& obj) const override;
+};
+
+///
+/// 对指定实体的组件进行操作
+///
+struct MESSAGEBASIC_EXPORT ComponentOperate : public AbstractMessage {
+ uint64_t _entity_id_within_0x2ff_0xffffffffffffffff = 0x2ff;
+ QStringList _component_types;
+
+ ComponentOperate();
+
+ // 通过 WsMessage 继承
+ std::shared_ptr newDefault() const override;
+ void recoveryFrom(const QJsonObject& obj) override;
+ void saveTo(QJsonObject& obj) const override;
+};
+
+///
+/// 获取所有实体句柄
+///
+struct MESSAGEBASIC_EXPORT EntityTotalGet : public AbstractMessage {
+ EntityTotalGet();
+ std::shared_ptr newDefault() const override;
+};
+
+///
+/// 所有实体列表
+///
+struct MESSAGEBASIC_EXPORT EntityTotalList : public AbstractMessage {
+ QList _entities_list;
+
+ EntityTotalList();
+
+ // 通过 WsMessage 继承
+ std::shared_ptr newDefault() const override;
+ void recoveryFrom(const QJsonObject& obj) override;
+ void saveTo(QJsonObject& obj) const override;
+};
\ No newline at end of file
diff --git a/MessageBasic/messagebasic.cpp b/MessageBasic/messagebasic.cpp
index 8371e24..940a9db 100644
--- a/MessageBasic/messagebasic.cpp
+++ b/MessageBasic/messagebasic.cpp
@@ -1,4 +1,7 @@
#include "messagebasic.h"
+#include "visiblecube_access.h"
+#include "entity_operate.h"
+#include "componentinfo_access.h"
#include
void from_to_save(uint64_t f, uint64_t t, QJsonObject& o) {
@@ -14,11 +17,21 @@ DeduceRequest::DeduceRequest()
:AbstractMessage(NAME(DeduceRequest)) {
}
+std::shared_ptr DeduceRequest::newDefault() const
+{
+ return std::make_shared();
+}
+
SyncRequest::SyncRequest()
:AbstractMessage(NAME(SyncRequest)),
_time_current(0) {
}
+std::shared_ptr SyncRequest::newDefault() const
+{
+return std::make_shared();
+}
+
void SyncRequest::recoveryFrom(const QJsonObject& obj)
{
AbstractMessage::recoveryFrom(obj);
@@ -36,6 +49,11 @@ RespondDefault::RespondDefault()
_time_consume(0) {
}
+std::shared_ptr RespondDefault::newDefault() const
+{
+return std::make_shared();
+}
+
void RespondDefault::recoveryFrom(const QJsonObject& obj)
{
AbstractMessage::recoveryFrom(obj);
diff --git a/MessageBasic/messagebasic.h b/MessageBasic/messagebasic.h
index 9488ded..e5ad3fd 100644
--- a/MessageBasic/messagebasic.h
+++ b/MessageBasic/messagebasic.h
@@ -39,11 +39,26 @@ public:
uint64_t sourceEntity() const override;
};
+///
+/// 时间同步消息
+///
+struct MESSAGEBASIC_EXPORT SyncRequest : public AbstractMessage {
+ double _time_current;
+
+ SyncRequest();
+
+ // 通过 WsMessage 继承
+ std::shared_ptr newDefault() const override;
+ void recoveryFrom(const QJsonObject& obj) override;
+ void saveTo(QJsonObject& obj) const override;
+};
+
///
/// 推演请求
///
struct MESSAGEBASIC_EXPORT DeduceRequest : public AbstractMessage {
DeduceRequest();
+ std::shared_ptr newDefault() const override;
};
///
@@ -57,214 +72,7 @@ struct MESSAGEBASIC_EXPORT RespondDefault : public AbstractMessage {
RespondDefault();
// 通过 WsMessage 继承
+ std::shared_ptr newDefault() const override;
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
-
-///
-/// 时间同步消息
-///
-struct MESSAGEBASIC_EXPORT SyncRequest : public AbstractMessage {
- double _time_current;
-
- SyncRequest();
-
- // 通过 WsMessage 继承
- void recoveryFrom(const QJsonObject& obj) override;
- void saveTo(QJsonObject& obj) const override;
-};
-
-// 体积盒可视化插件定义消息 =======================================================
-///
-/// 获取体积盒详细数据
-///
-struct MESSAGEBASIC_EXPORT Get3DBox : public AbstractMessage {
- Get3DBox();
-};
-
-///
-/// 姿态数据结构定义
-///
-struct Posture {
- double _azimuth_deg = 0;
- double _pitch_deg = 0;
- double _roll_deg = 0;
-};
-///
-/// 三维数据结构定义
-///
-struct VolumeData {
- double _length_m = 0;
- double _width_m = 0;
- double _height_m = 0;
-};
-
-///
-/// 体积盒详细数据定义
-///
-struct MESSAGEBASIC_EXPORT Box3DDesc : public AbstractMessage {
- VolumeData _d3_data;
- Posture _posture_d3;
- LonLatAlt _lla_pos;
-
- Box3DDesc();
-
- // 通过 WsMessage 继承
- void recoveryFrom(const QJsonObject& obj) override;
- void saveTo(QJsonObject& obj) const override;
-};
-
-struct MESSAGEBASIC_EXPORT Set3DBoxD3Data : public AbstractMessage {
- VolumeData _d3_data;
-
- Set3DBoxD3Data();
-
- // 通过 WsMessage 继承
- void recoveryFrom(const QJsonObject& obj) override;
- void saveTo(QJsonObject& obj) const override;
-};
-
-struct MESSAGEBASIC_EXPORT Set3DBoxPosture : public AbstractMessage
-{
- Posture _posture_d3;
-
- Set3DBoxPosture();
-
- // 通过 WsMessage 继承
- void recoveryFrom(const QJsonObject& obj) override;
- void saveTo(QJsonObject& obj) const override;
-};
-
-struct MESSAGEBASIC_EXPORT Set3DBoxLLAPos : public AbstractMessage
-{
- LonLatAlt _lla_pos;
-
- Set3DBoxLLAPos();
-
- // 通过 WsMessage 继承
- void recoveryFrom(const QJsonObject& obj) override;
- void saveTo(QJsonObject& obj) const override;
-};
-
-// 实体构造消息定义 ==========================================
-
-///
-/// 查询系统重的组件类型和实体类型
-///
-struct MESSAGEBASIC_EXPORT TypesQuery : public AbstractMessage {
- TypesQuery();
-};
-///
-/// 返回系统内所有的组件类型和实体模板类型
-///
-struct MESSAGEBASIC_EXPORT TypesQueryResult : public AbstractMessage {
- QStringList _component_types;
- QHash _entity_templets;
-
- TypesQueryResult();
- // 通过 WsMessage 继承
- void recoveryFrom(const QJsonObject& obj) override;
- void saveTo(QJsonObject& obj) const override;
-};
-
-
-///
-/// 操作类型
-///
-enum class EntityOperateType {
- NEW, DELETE, MODIFY
-};
-///
-/// 模板操作支持增、删、改
-///
-struct MESSAGEBASIC_EXPORT TempletOperate : public AbstractMessage {
- uint64_t _operate_code = (uint64_t)EntityOperateType::NEW;
- QString _template_name = "";
- uint64_t _template_id_within_0x2ff_0xffff = 0x2ff;
-
- TempletOperate();
-
- // 通过 WsMessage 继承
- void recoveryFrom(const QJsonObject& obj) override;
- void saveTo(QJsonObject& obj) const override;
-};
-
-///
-/// 实体构造操作
-///
-struct MESSAGEBASIC_EXPORT EntityOperate : public AbstractMessage {
- uint64_t _operate_code = (uint64_t)EntityOperateType::NEW;
- QString _template_name = "";
- QString _entity_name = "";
- uint64_t _entity_id_over_0xffff = 0xffff;
-
- EntityOperate();
-
- // 通过 WsMessage 继承
- void recoveryFrom(const QJsonObject& obj) override;
- void saveTo(QJsonObject& obj) const override;
-};
-
-struct MESSAGEBASIC_EXPORT ComponentOperate : public AbstractMessage {
- uint64_t _entity_id_within_0x2ff_0xffffffffffffffff = 0x2ff;
- QStringList _component_types;
-
- ComponentOperate();
-
- // 通过 WsMessage 继承
- void recoveryFrom(const QJsonObject& obj) override;
- void saveTo(QJsonObject& obj) const override;
-};
-
-///
-/// 获取所有实体句柄
-///
-struct MESSAGEBASIC_EXPORT EntityTotalGet : public AbstractMessage {
- EntityTotalGet();
-};
-///
-/// 所有实体列表
-///
-struct MESSAGEBASIC_EXPORT EntityTotalList : public AbstractMessage {
- QList _entities_list;
-
- EntityTotalList();
-
- // 通过 WsMessage 继承
- void recoveryFrom(const QJsonObject& obj) override;
- void saveTo(QJsonObject& obj) const override;
-};
-
-// componoents_desc ===================================
-
-///
-/// 获取指定实体的所有组件数据
-///
-struct MESSAGEBASIC_EXPORT ComponentDatasQuery : public AbstractMessage {
- ComponentDatasQuery();
-};
-
-struct MESSAGEBASIC_EXPORT ComponentDatasQueryResult : public AbstractMessage {
- QJsonObject _entity_json;
-
- ComponentDatasQueryResult();
-
- // 通过 WsMessage 继承
- void recoveryFrom(const QJsonObject& obj) override;
- void saveTo(QJsonObject& obj) const override;
-};
-
-struct MESSAGEBASIC_EXPORT ProcedureSignatureQuery : public AbstractMessage {
- ProcedureSignatureQuery();
-};
-
-struct MESSAGEBASIC_EXPORT ProcedureSignatureQueryResult : public AbstractMessage
-{
- QList _signature_list;
-
- ProcedureSignatureQueryResult();
-
- // 通过 WsMessage 继承
- void recoveryFrom(const QJsonObject& obj) override;
- void saveTo(QJsonObject& obj) const override;
-};
\ No newline at end of file
diff --git a/MessageBasic/motion_access.cpp b/MessageBasic/motion_access.cpp
index 6bdecea..9ca2683 100644
--- a/MessageBasic/motion_access.cpp
+++ b/MessageBasic/motion_access.cpp
@@ -24,6 +24,11 @@ void NavigateWithRoute::saveTo(QJsonObject& obj) const
UINT64_SAVE(_drive_mode);
}
+std::shared_ptr NavigateWithRoute::newDefault() const
+{
+ return std::make_shared();
+}
+
#include
#include
MotionSequencePreviewGet::MotionSequencePreviewGet()
@@ -31,12 +36,22 @@ MotionSequencePreviewGet::MotionSequencePreviewGet()
}
+std::shared_ptr MotionSequencePreviewGet::newDefault() const
+{
+ return std::make_shared();
+}
+
PlatformMotionSequence::PlatformMotionSequence()
:AbstractMessage(NAME(PlatformMotionSequence))
{
}
+std::shared_ptr PlatformMotionSequence::newDefault() const
+{
+ return std::shared_ptr();
+}
+
void PlatformMotionSequence::recoveryFrom(const QJsonObject& obj)
{
throw - 1;
@@ -87,6 +102,11 @@ QVector3D StrightLineMotion::speedAtTimeSpan(double time) const
return QVector3D(0, vspeed, 0);
}
+std::shared_ptr StrightLineMotion::newDefault() const
+{
+ return std::make_shared();
+}
+
void StrightLineMotion::recoveryFrom(const QJsonObject& obj)
{
AbstractMessage::recoveryFrom(obj);
@@ -139,6 +159,11 @@ QVector3D HorizontalArcMotion::speedAtTimeSpan(double time) const
return speed_nv.normalized() * _speed_motion;
}
+std::shared_ptr HorizontalArcMotion::newDefault() const
+{
+ return std::make_shared();
+}
+
void HorizontalArcMotion::recoveryFrom(const QJsonObject& obj)
{
AbstractMessage::recoveryFrom(obj);
@@ -203,6 +228,11 @@ QVector3D VerticalArcMotion::speedAtTimeSpan(double time) const
return speed_nv.normalized() * _speed_motion;
}
+std::shared_ptr VerticalArcMotion::newDefault() const
+{
+ return std::make_shared();
+}
+
void VerticalArcMotion::recoveryFrom(const QJsonObject& obj)
{
AbstractMessage::recoveryFrom(obj);
@@ -233,6 +263,11 @@ MotionDeduceRequest::MotionDeduceRequest()
: AbstractMessage(NAME(MotionDeduceRequest)) {
}
+std::shared_ptr MotionDeduceRequest::newDefault() const
+{
+ return std::make_shared();
+}
+
void MotionDeduceRequest::recoveryFrom(const QJsonObject& obj)
{
AbstractMessage::recoveryFrom(obj);
diff --git a/MessageBasic/motion_access.h b/MessageBasic/motion_access.h
index 0977672..0b7e687 100644
--- a/MessageBasic/motion_access.h
+++ b/MessageBasic/motion_access.h
@@ -19,6 +19,7 @@ struct MESSAGEBASIC_EXPORT NavigateWithRoute : public AbstractMessage {
NavigateWithRoute();
// Serializable
+ std::shared_ptr newDefault() const override;
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
@@ -61,6 +62,7 @@ struct MESSAGEBASIC_EXPORT MotionDeduceRequest : public AbstractMessage {
MotionDeduceRequest();
// Serializable
+ std::shared_ptr newDefault() const override;
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
@@ -70,6 +72,7 @@ struct MESSAGEBASIC_EXPORT MotionDeduceRequest : public AbstractMessage {
///
struct MESSAGEBASIC_EXPORT MotionSequencePreviewGet : public AbstractMessage {
MotionSequencePreviewGet();
+ std::shared_ptr newDefault() const override;
};
///
@@ -81,6 +84,7 @@ struct MESSAGEBASIC_EXPORT PlatformMotionSequence : public AbstractMessage {
PlatformMotionSequence();
// Serializable
+ std::shared_ptr newDefault() const override;
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
@@ -116,6 +120,7 @@ struct MESSAGEBASIC_EXPORT StrightLineMotion : public PlatformMotionCommand {
QVector3D posAtTimeSpan(double time) const override;
QVector3D speedAtTimeSpan(double time) const override;
+ std::shared_ptr newDefault() const override;
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
@@ -149,6 +154,7 @@ struct MESSAGEBASIC_EXPORT HorizontalArcMotion : public PlatformMotionCommand {
QVector3D posAtTimeSpan(double time) const override;
QVector3D speedAtTimeSpan(double time) const override;
+ std::shared_ptr newDefault() const override;
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
@@ -181,6 +187,7 @@ struct MESSAGEBASIC_EXPORT VerticalArcMotion : public PlatformMotionCommand {
QVector3D posAtTimeSpan(double time) const override;
QVector3D speedAtTimeSpan(double time) const override;
+ std::shared_ptr newDefault() const override;
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
\ No newline at end of file
diff --git a/MessageBasic/route_access.cpp b/MessageBasic/route_access.cpp
index 478791a..91928c7 100644
--- a/MessageBasic/route_access.cpp
+++ b/MessageBasic/route_access.cpp
@@ -4,6 +4,11 @@ PlainRouteReset::PlainRouteReset()
:AbstractMessage(NAME(PlainRouteReset)) {
}
+std::shared_ptr PlainRouteReset::newDefault() const
+{
+ return std::make_shared();
+}
+
void PlainRouteReset::recoveryFrom(const QJsonObject& obj)
{
AbstractMessage::recoveryFrom(obj);
@@ -37,6 +42,11 @@ NewPlainRoute::NewPlainRoute()
:AbstractMessage(NAME(NewPlainRoute)) {
}
+std::shared_ptr NewPlainRoute::newDefault() const
+{
+ return std::make_shared();
+}
+
void NewPlainRoute::recoveryFrom(const QJsonObject& obj)
{
AbstractMessage::recoveryFrom(obj);
@@ -55,6 +65,11 @@ RemovePlainRoute::RemovePlainRoute()
}
+std::shared_ptr RemovePlainRoute::newDefault() const
+{
+ return std::make_shared();
+}
+
void RemovePlainRoute::recoveryFrom(const QJsonObject& obj)
{
AbstractMessage::recoveryFrom(obj);
@@ -73,6 +88,11 @@ PlainRouteQuery::PlainRouteQuery()
}
+std::shared_ptr PlainRouteQuery::newDefault() const
+{
+ return std::make_shared();
+}
+
void PlainRouteQuery::recoveryFrom(const QJsonObject& obj)
{
AbstractMessage::recoveryFrom(obj);
@@ -91,6 +111,11 @@ PlainRouteInfo::PlainRouteInfo()
}
+std::shared_ptr PlainRouteInfo::newDefault() const
+{
+ return std::make_shared();
+}
+
void PlainRouteInfo::recoveryFrom(const QJsonObject& obj)
{
RespondDefault::recoveryFrom(obj);
diff --git a/MessageBasic/route_access.h b/MessageBasic/route_access.h
index 7fa7087..520a456 100644
--- a/MessageBasic/route_access.h
+++ b/MessageBasic/route_access.h
@@ -11,6 +11,7 @@ struct MESSAGEBASIC_EXPORT NewPlainRoute : public AbstractMessage {
NewPlainRoute();
// Serializable
+ std::shared_ptr newDefault() const override;
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
@@ -24,6 +25,7 @@ struct MESSAGEBASIC_EXPORT RemovePlainRoute : public AbstractMessage {
RemovePlainRoute();
// Serializable
+ std::shared_ptr newDefault() const override;
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
@@ -38,6 +40,7 @@ struct MESSAGEBASIC_EXPORT PlainRouteReset : public AbstractMessage {
PlainRouteReset();
// Serializable
+ std::shared_ptr newDefault() const override;
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
@@ -51,6 +54,7 @@ struct MESSAGEBASIC_EXPORT PlainRouteQuery : public AbstractMessage {
PlainRouteQuery();
// Serializable
+ std::shared_ptr newDefault() const override;
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
@@ -65,6 +69,7 @@ struct MESSAGEBASIC_EXPORT PlainRouteInfo : public RespondDefault {
PlainRouteInfo();
// Serializable
+ std::shared_ptr newDefault() const override;
void recoveryFrom(const QJsonObject& obj) override;
void saveTo(QJsonObject& obj) const override;
};
\ No newline at end of file
diff --git a/MessageBasic/visiblecube_access.cpp b/MessageBasic/visiblecube_access.cpp
new file mode 100644
index 0000000..7f4973c
--- /dev/null
+++ b/MessageBasic/visiblecube_access.cpp
@@ -0,0 +1,28 @@
+#include "visiblecube_access.h"
+
+
+
+std::shared_ptr Get3DBox::newDefault() const
+{
+ return std::make_shared();
+}
+
+std::shared_ptr Box3DDesc::newDefault() const
+{
+ return std::make_shared();
+}
+
+std::shared_ptr Set3DBoxD3Data::newDefault() const
+{
+ return std::make_shared();
+}
+
+std::shared_ptr Set3DBoxPosture::newDefault() const
+{
+ return std::make_shared();
+}
+
+std::shared_ptr Set3DBoxLLAPos::newDefault() const
+{
+ return std::make_shared();
+}
diff --git a/MessageBasic/visiblecube_access.h b/MessageBasic/visiblecube_access.h
new file mode 100644
index 0000000..652bb99
--- /dev/null
+++ b/MessageBasic/visiblecube_access.h
@@ -0,0 +1,90 @@
+#pragma once
+
+#include "messagebasic.h"
+
+
+// 体积盒可视化插件定义消息 =======================================================
+///
+/// 获取体积盒详细数据
+///
+struct MESSAGEBASIC_EXPORT Get3DBox : public AbstractMessage {
+ Get3DBox();
+ std::shared_ptr newDefault() const override;
+};
+
+///
+/// 姿态数据结构定义
+///
+struct Posture {
+ double _azimuth_deg = 0;
+ double _pitch_deg = 0;
+ double _roll_deg = 0;
+};
+///
+/// 三维数据结构定义
+///
+struct VolumeData {
+ double _length_m = 0;
+ double _width_m = 0;
+ double _height_m = 0;
+};
+
+///
+/// 体积盒详细数据定义
+///
+struct MESSAGEBASIC_EXPORT Box3DDesc : public AbstractMessage {
+ VolumeData _d3_data;
+ Posture _posture_d3;
+ LonLatAlt _lla_pos;
+
+ Box3DDesc();
+
+ // 通过 WsMessage 继承
+ std::shared_ptr newDefault() const override;
+ void recoveryFrom(const QJsonObject& obj) override;
+ void saveTo(QJsonObject& obj) const override;
+};
+
+///
+/// 设置三维数据
+///
+struct MESSAGEBASIC_EXPORT Set3DBoxD3Data : public AbstractMessage {
+ VolumeData _d3_data;
+
+ Set3DBoxD3Data();
+
+ // 通过 WsMessage 继承
+ std::shared_ptr newDefault() const override;
+ void recoveryFrom(const QJsonObject& obj) override;
+ void saveTo(QJsonObject& obj) const override;
+};
+
+///
+/// 设置姿态数据
+///
+struct MESSAGEBASIC_EXPORT Set3DBoxPosture : public AbstractMessage
+{
+ Posture _posture_d3;
+
+ Set3DBoxPosture();
+
+ // 通过 WsMessage 继承
+ std::shared_ptr newDefault() const override;
+ void recoveryFrom(const QJsonObject& obj) override;
+ void saveTo(QJsonObject& obj) const override;
+};
+
+///
+/// 设置地理定位
+///
+struct MESSAGEBASIC_EXPORT Set3DBoxLLAPos : public AbstractMessage
+{
+ LonLatAlt _lla_pos;
+
+ Set3DBoxLLAPos();
+
+ // 通过 WsMessage 继承
+ std::shared_ptr newDefault() const override;
+ void recoveryFrom(const QJsonObject& obj) override;
+ void saveTo(QJsonObject& obj) const override;
+};