Skip to content

Commit

Permalink
Release v3.0
Browse files Browse the repository at this point in the history
  • Loading branch information
arobenko committed Jan 13, 2025
2 parents 56cbf5e + 103d3ee commit 7dbd216
Show file tree
Hide file tree
Showing 180 changed files with 6,239 additions and 8,063 deletions.
108 changes: 43 additions & 65 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -56,80 +56,61 @@ cc_msvc_force_warn_opt(/W4)

include(GNUInstallDirs)

set (CORE_LIB_NAME "cc_tools_qt_plugin_cc_mqttsn_protocol_core")
set (INTERFACE_LIB_PREFIX "cc_tools_qt_plugin_cc_mqttsn")

######################################################################

function (cc_plugin_core)
set (name ${CORE_LIB_NAME})
function (cc_plugin_Message)
set (name ${INTERFACE_LIB_PREFIX}_Message)
set (src
cc_tools_qt_plugin/cc_mqttsn/field/ClientId.cpp
cc_tools_qt_plugin/cc_mqttsn/field/Ctrl.cpp
cc_tools_qt_plugin/cc_mqttsn/field/Data.cpp
cc_tools_qt_plugin/cc_mqttsn/field/Duration.cpp
cc_tools_qt_plugin/cc_mqttsn/field/Flags.cpp
cc_tools_qt_plugin/cc_mqttsn/field/GwAdd.cpp
cc_tools_qt_plugin/cc_mqttsn/field/GwId.cpp
cc_tools_qt_plugin/cc_mqttsn/field/MessageId.cpp
cc_tools_qt_plugin/cc_mqttsn/field/MsgId.cpp
cc_tools_qt_plugin/cc_mqttsn/field/MsgLengthField.cpp
cc_tools_qt_plugin/cc_mqttsn/field/NodeId.cpp
cc_tools_qt_plugin/cc_mqttsn/field/ProtocolId.cpp
cc_tools_qt_plugin/cc_mqttsn/field/Qos.cpp
cc_tools_qt_plugin/cc_mqttsn/field/Radius.cpp
cc_tools_qt_plugin/cc_mqttsn/field/ReturnCode.cpp
cc_tools_qt_plugin/cc_mqttsn/field/TopicId.cpp
cc_tools_qt_plugin/cc_mqttsn/field/TopicIdType.cpp
cc_tools_qt_plugin/cc_mqttsn/field/TopicName.cpp
cc_tools_qt_plugin/cc_mqttsn/field/WillMsg.cpp
cc_tools_qt_plugin/cc_mqttsn/field/WillTopic.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Advertise.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Connack.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Connect.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Disconnect.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Fwd.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Gwinfo.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Pingreq.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Pingresp.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Puback.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Pubcomp.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Publish.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Pubrec.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Pubrel.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Regack.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Register.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Searchgw.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Suback.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Subscribe.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Unsuback.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Unsubscribe.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Willmsg.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Willmsgreq.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Willmsgresp.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Willmsgupd.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Willtopic.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Willtopicreq.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Willtopicresp.cpp
cc_tools_qt_plugin/cc_mqttsn/message/Willtopicupd.cpp
cc_tools_qt_plugin/cc_mqttsn/Message.cpp
cc_tools_qt_plugin/cc_mqttsn/frame/FrameTransportMessage.cpp
cc_tools_qt_plugin/cc_mqttsn/factory/AllMessagesDynMemMsgFactory.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/Message.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Advertise.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Connack.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Connect.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Disconnect.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Fwd.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Gwinfo.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Pingreq.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Pingresp.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Puback.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Pubcomp.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Publish.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Pubrec.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Pubrel.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Regack.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Register.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Searchgw.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Suback.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Subscribe.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Unsuback.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Unsubscribe.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Willmsg.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Willmsgreq.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Willmsgresp.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Willmsgupd.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Willtopic.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Willtopicreq.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Willtopicresp.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/message/Willtopicupd.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/frame/FrameTransportMessage.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/frame/Frame.cpp
cc_tools_qt_plugin/Message/cc_mqttsn/factory/MsgFactory.cpp
)

add_library (${name} STATIC ${src})
set_target_properties(${name} PROPERTIES POSITION_INDEPENDENT_CODE TRUE)
target_link_libraries (${name} PUBLIC cc::cc_mqttsn cc::comms cc::cc_tools_qt Qt${OPT_QT_MAJOR_VERSION}::Widgets Qt${OPT_QT_MAJOR_VERSION}::Core)
target_include_directories (${name} PUBLIC ${PROJECT_SOURCE_DIR})
target_compile_options(${name} PRIVATE
$<$<CXX_COMPILER_ID:MSVC>:/bigobj /wd4127 /wd5054>
$<$<CXX_COMPILER_ID:GNU>:-ftemplate-depth=2048 -fconstexpr-depth=4096 -Wno-unused-local-typedefs>
$<$<CXX_COMPILER_ID:Clang>:-ftemplate-depth=2048 -fconstexpr-depth=4096 -fbracket-depth=2048 -Wno-unused-local-typedefs>
)

endfunction()

######################################################################

function (cc_plugin protocol has_config_widget)
function (cc_plugin protocol interface)
string(TOLOWER "cc_tools_plugin_${protocol}" name)

if (NOT "${name}" MATCHES ".*_protocol$")
Expand All @@ -153,22 +134,19 @@ function (cc_plugin protocol has_config_widget)
cc_tools_qt_plugin/cc_mqttsn/plugin/Plugin_${protocol}.h
)

if (has_config_widget)
list (APPEND src cc_tools_qt_plugin/cc_mqttsn/plugin/ConfigWidget_${protocol}.cpp)
endif ()

set(extra_link_opts)
if (CMAKE_COMPILER_IS_GNUCC)
if ((CMAKE_COMPILER_IS_GNUCC) OR ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang"))
set(extra_link_opts "-Wl,--no-undefined")
endif ()

add_library (${name} MODULE ${src} ${moc})
target_link_libraries (${name} ${CORE_LIB_NAME} cc::cc_tools_qt Qt${OPT_QT_MAJOR_VERSION}::Widgets Qt${OPT_QT_MAJOR_VERSION}::Core ${extra_link_opts})
add_library (${name} MODULE ${src})
target_link_libraries (${name} ${INTERFACE_LIB_PREFIX}_${interface} cc::cc_tools_qt Qt${OPT_QT_MAJOR_VERSION}::Core ${extra_link_opts})
target_compile_options(${name} PRIVATE
$<$<CXX_COMPILER_ID:MSVC>:/bigobj /wd4127 /wd5054>
$<$<CXX_COMPILER_ID:GNU>:-ftemplate-depth=2048 -fconstexpr-depth=4096>
$<$<CXX_COMPILER_ID:Clang>:-ftemplate-depth=2048 -fconstexpr-depth=4096 -fbracket-depth=2048>
)
target_include_directories (${name} PRIVATE ${PROJECT_SOURCE_DIR})

install (
TARGETS ${name}
Expand All @@ -194,6 +172,6 @@ if (TARGET cc::cc_tools_qt)
include_directories (${cc_inc})
endif ()

cc_plugin_core()
cc_plugin_Message()

cc_plugin ("CC_MQTT_SN" FALSE)
cc_plugin ("CC_MQTT_SN" "Message")
27 changes: 27 additions & 0 deletions cc_tools_qt_plugin/Message/cc_mqttsn/Message.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
// Generated by commsdsl2tools_qt v7.0.0

#include "Message.h"

namespace cc_tools_qt_plugin
{

namespace Message
{

namespace cc_mqttsn
{

Message::Message() = default;

Message::~Message() noexcept = default;

QString Message::idAsStringImpl() const
{
return QString("0x%1").arg(numericIdImpl(), 2, 16, QChar('0')).toUpper();
}

} // namespace cc_mqttsn

} // namespace Message

} // namespace cc_tools_qt_plugin
36 changes: 36 additions & 0 deletions cc_tools_qt_plugin/Message/cc_mqttsn/Message.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
// Generated by commsdsl2tools_qt v7.0.0

#pragma once

#include "cc_mqttsn/Message.h"
#include "cc_tools_qt/ToolsMessage.h"
#include "cc_tools_qt/ToolsProtMsgInterface.h"
#include "cc_tools_qt_plugin/cc_mqttsn/Version.h"
#include "cc_tools_qt_plugin/cc_mqttsn/options/DefaultOptions.h"

namespace cc_tools_qt_plugin
{

namespace Message
{

namespace cc_mqttsn
{

class Message : public cc_tools_qt::ToolsMessage
{
public:
using ProtInterface = cc_tools_qt::ToolsProtMsgInterface<::cc_mqttsn::Message>;
using ProtOptions = cc_tools_qt_plugin::cc_mqttsn::options::DefaultOptions;
Message();
virtual ~Message() noexcept;

protected:
virtual QString idAsStringImpl() const override;
};

} // namespace cc_mqttsn

} // namespace Message

} // namespace cc_tools_qt_plugin
90 changes: 90 additions & 0 deletions cc_tools_qt_plugin/Message/cc_mqttsn/factory/MsgFactory.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
// Generated by commsdsl2tools_qt v7.0.0

#include "MsgFactory.h"

#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Advertise.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Connack.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Connect.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Disconnect.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Fwd.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Gwinfo.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Pingreq.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Pingresp.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Puback.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Pubcomp.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Publish.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Pubrec.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Pubrel.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Regack.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Register.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Searchgw.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Suback.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Subscribe.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Unsuback.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Unsubscribe.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Willmsg.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Willmsgreq.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Willmsgresp.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Willmsgupd.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Willtopic.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Willtopicreq.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Willtopicresp.h"
#include "cc_tools_qt_plugin/Message/cc_mqttsn/message/Willtopicupd.h"

namespace cc_tools_qt_plugin
{

namespace Message
{

namespace cc_mqttsn
{

namespace factory
{

MsgFactory::MsgFactory() = default;
MsgFactory::~MsgFactory() = default;

MsgFactory::MessagesListInternal MsgFactory::createAllMessagesImpl()
{
return
MessagesListInternal{
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Advertise),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Searchgw),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Gwinfo),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Connect),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Connack),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Willtopicreq),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Willtopic),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Willmsgreq),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Willmsg),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Register),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Regack),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Publish),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Puback),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Pubcomp),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Pubrec),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Pubrel),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Subscribe),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Suback),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Unsubscribe),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Unsuback),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Pingreq),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Pingresp),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Disconnect),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Willtopicupd),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Willtopicresp),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Willmsgupd),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Willmsgresp),
cc_tools_qt::ToolsMessagePtr(new cc_tools_qt_plugin::Message::cc_mqttsn::message::Fwd)
};
}

} // namespace factory

} // namespace cc_mqttsn

} // namespace Message

} // namespace cc_tools_qt_plugin
35 changes: 35 additions & 0 deletions cc_tools_qt_plugin/Message/cc_mqttsn/factory/MsgFactory.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
// Generated by commsdsl2tools_qt v7.0.0

#pragma once

#include "cc_tools_qt/ToolsMsgFactory.h"

namespace cc_tools_qt_plugin
{

namespace Message
{

namespace cc_mqttsn
{

namespace factory
{

class MsgFactory : public cc_tools_qt::ToolsMsgFactory
{
public:
MsgFactory();
virtual ~MsgFactory();

protected:
virtual MessagesListInternal createAllMessagesImpl() override;
};

} // namespace factory

} // namespace cc_mqttsn

} // namespace Message

} // namespace cc_tools_qt_plugin
Loading

0 comments on commit 7dbd216

Please sign in to comment.