diff --git a/src/g2_2025_grade_calculator_pkg/src/final_grade_determinator/nodes/FinalGradeDeterminator.cpp b/src/g2_2025_grade_calculator_pkg/src/final_grade_determinator/nodes/FinalGradeDeterminator.cpp index bc450e1..199228d 100644 --- a/src/g2_2025_grade_calculator_pkg/src/final_grade_determinator/nodes/FinalGradeDeterminator.cpp +++ b/src/g2_2025_grade_calculator_pkg/src/final_grade_determinator/nodes/FinalGradeDeterminator.cpp @@ -12,7 +12,7 @@ FinalGradeDeterminator::FinalGradeDeterminator() : Node("final_grade_determinato exam_subscriber_ = this->create_subscription( "exam_results", 10, std::bind( - &ExamResultGenerator::exam_results_callback, + &FinalGradeDeterminator::exam_results_callback, this, std::placeholders::_1 ) @@ -22,18 +22,24 @@ FinalGradeDeterminator::FinalGradeDeterminator() : Node("final_grade_determinato } void FinalGradeDeterminator::exam_results_callback(const g2_2025_interfaces::msg::Exam::SharedPtr msg){ - dataMap_[{ msg->student_name, msg->course_name}].push_back(msg->result); - if (dataMap_[{ msg->student_name, msg->course_name}].size() = PARAM) + studentCourseCombo_.student_name = msg->student_name; + studentCourseCombo_.course_name = msg->course_name; + + dataMap_[studentCourseCombo_].push_back(msg->result); + if (dataMap_[studentCourseCombo_].size() == PARAM) { - + RCLCPP_INFO(this->get_logger(), + "%s // %s is full", + msg->student_name.c_str(), msg->course_name.c_str() + ); } } void FinalGradeDeterminator::grade_calculator_response(rclcpp::Client::SharedFuture future){ auto response = future.get(); - StudentCourse passthrough; - passthrough. - db_manager_->store_final_course_result() + // StudentCourse passthrough; + // passthrough.course_name + // db_manager_->store_final_course_result(); } } // namespace assignments::one::final_grade_determinator diff --git a/src/g2_2025_grade_calculator_pkg/src/final_grade_determinator/nodes/FinalGradeDeterminator.hpp b/src/g2_2025_grade_calculator_pkg/src/final_grade_determinator/nodes/FinalGradeDeterminator.hpp index b31a3f5..f19b374 100644 --- a/src/g2_2025_grade_calculator_pkg/src/final_grade_determinator/nodes/FinalGradeDeterminator.hpp +++ b/src/g2_2025_grade_calculator_pkg/src/final_grade_determinator/nodes/FinalGradeDeterminator.hpp @@ -28,11 +28,12 @@ private: std::unique_ptr db_manager_; - std::map, std::vector> dataMap_; + StudentCourse studentCourseCombo_; + StudentCourseResultMap dataMap_; void exam_results_callback(const g2_2025_interfaces::msg::Exam::SharedPtr msg); - void grade_calculator_response(rclcpp::Client::SharedFuture future) + void grade_calculator_response(rclcpp::Client::SharedFuture future); }; } // namespace assignments::one::final_grade_determinator \ No newline at end of file