diff --git a/inc/Services/ParameterService.hpp b/inc/Services/ParameterService.hpp index 36050f2e22b0bd3e7a04c8c905c346ee68ef414d..3600f3d9e32848c085ce3009338623a735916a41 100644 --- a/inc/Services/ParameterService.hpp +++ b/inc/Services/ParameterService.hpp @@ -2,6 +2,7 @@ #define ECSS_SERVICES_PARAMETERSERVICE_HPP #include "Service.hpp" + #define CONFIGLENGTH 5 /** @@ -40,10 +41,12 @@ class ParameterService : public Service { Parameter paramsList[CONFIGLENGTH]; // CONFIGLENGTH is just a dummy number for now, this should be statically set - public: - ParameterService(); - Message reportParameter(Message paramId); - void setParamData(Message newParamValues); +public: + ParameterService(); + + Message reportParameter(Message paramId); + + void setParamData(Message newParamValues); }; diff --git a/src/Services/ParameterService.cpp b/src/Services/ParameterService.cpp index 798888d589d382a79d94aae354e6a7fbea2d01e4..afe4374920f4257f4d12a148ef1e65d56b552341 100644 --- a/src/Services/ParameterService.cpp +++ b/src/Services/ParameterService.cpp @@ -1,8 +1,11 @@ #include "Services/ParameterService.hpp" + #define DEMOMODE #ifdef DEMOMODE + #include <ctime> + #endif ParameterService::ParameterService() { @@ -23,10 +26,10 @@ ParameterService::ParameterService() { // Test code, setting up one of the parameter fields time_t currTime = time(nullptr); - struct tm* today = localtime(&currTime); + struct tm *today = localtime(&currTime); paramsList[2].paramId = 341; // random parameter ID - paramsList[2].settingData = today -> tm_min; // the minute of the current hour + paramsList[2].settingData = today->tm_min; // the minute of the current hour paramsList[2].ptc = 3; // unsigned int paramsList[2].pfc = 14; // 32 bits #endif @@ -47,7 +50,8 @@ Message ParameterService::reportParameter(Message paramId) { Message reqParam(20, 2, Message::TM, 1); // empty TM[20, 2] parameter report message uint16_t reqParamId = paramId.readUint16(); // parameter ID must be accessed only once - if (paramId.packetType == Message::TC && paramId.serviceType == 20 && paramId.messageType == 1) { + if (paramId.packetType == Message::TC && paramId.serviceType == 20 && + paramId.messageType == 1) { for (int i = 0; i < CONFIGLENGTH; i++) { diff --git a/src/main.cpp b/src/main.cpp index 5551553bcd7ca11b7a07483f9144fd1748fc15ef..c27f8cc609f0032a5885aa0c30a413697b0dff57 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -17,7 +17,8 @@ int main() { char string[6]; packet.readString(string, 5); - std::cout << "Word: " << string << " " << packet.readBits(15) << packet.readBits(1) << std::endl; + std::cout << "Word: " << string << " " << packet.readBits(15) << packet.readBits(1) + << std::endl; std::cout << packet.readFloat() << " " << std::dec << packet.readSint32() << std::endl; // ST[17] test @@ -34,11 +35,10 @@ int main() { sentPacket.appendUint16(341); //the packet sent contains the ID of the desired parameter Message returnedPacket = paramService.reportParameter(sentPacket); - uint16_t id = returnedPacket.readUint16(); - uint32_t val = returnedPacket.readUint32(); + std::cout << "Parameter ID: " << std::dec << returnedPacket.readUint16() << std::endl + << "Parameter value: " << std::dec << returnedPacket.readUint32() << std::endl; + - std::cout << "Parameter ID: " << std::dec << id << std::endl; //set - std::cout << "Parameter value: " << std::dec << val << std::endl; return 0; }