diff --git a/.gitignore b/.gitignore index 259148f..8604b38 100644 --- a/.gitignore +++ b/.gitignore @@ -30,3 +30,5 @@ *.exe *.out *.app + +.vscode/ diff --git a/include/enhanced_hnz_server.h b/include/enhanced_hnz_server.h index c7e56d5..b0891fd 100644 --- a/include/enhanced_hnz_server.h +++ b/include/enhanced_hnz_server.h @@ -75,6 +75,13 @@ class EnhancedHNZServer */ void sendRR(bool repetition, int ns, int nr); + /** + * Sends information frame with the specified message. + * @param message The message to be sent. + * @param repeat Whether to repeat the frame. + */ + void sendInformation(std::vector message, bool repeat); + /** * Sends a frame with the specified message. * @param message The message to be sent. diff --git a/include/pa_hnz_data.h b/include/pa_hnz_data.h index a5ed931..0fe8580 100644 --- a/include/pa_hnz_data.h +++ b/include/pa_hnz_data.h @@ -1,6 +1,7 @@ #pragma once #include +#include /** * @class PaHnzData diff --git a/src/enhanced_hnz_server.cpp b/src/enhanced_hnz_server.cpp index 5735d3f..7d3d362 100644 --- a/src/enhanced_hnz_server.cpp +++ b/src/enhanced_hnz_server.cpp @@ -419,13 +419,19 @@ void EnhancedHNZServer::sendUA() createAndSendFrame(m_state_machine->getAAddress(), message, sizeof(message)); } +void EnhancedHNZServer::sendInformation(std::vector message, bool repeat) +{ + sendFrame(message,repeat); + m_state_machine->sendInformation(); +} + void EnhancedHNZServer::sendFrame(std::vector message, bool repeat) { char num = m_state_machine->getControlInformation(repeat); message.insert(message.begin(), num); int len = message.size(); createAndSendFrame(m_state_machine->getBAddress(), message.data(), len); - m_state_machine->sendInformation(); + } diff --git a/src/hnz.cpp b/src/hnz.cpp index 577415b..91d4c87 100644 --- a/src/hnz.cpp +++ b/src/hnz.cpp @@ -478,7 +478,7 @@ void HNZ::managerServer(const std::shared_ptr &server) if (frame->usLgBuffer > 3 && frame->aubTrame[2] == 0x13) { HnzUtility::log_info("%s Send CG", beforeLog.c_str()); - server->sendFrame(server->getStateMachine()->getHnzData().tsValueToTSCG(), + server->sendInformation(server->getStateMachine()->getHnzData().tsValueToTSCG(), false); } // tc