17#ifndef DAISI_CPPS_LOGICAL_ALGORITHMS_ALGORITHM_INTERFACE_H_
18#define DAISI_CPPS_LOGICAL_ALGORITHMS_ALGORITHM_INTERFACE_H_
23#include "cpps/common/cpps_communicator.h"
24#include "cpps/logical/message/auction_based/bid_submission.h"
25#include "cpps/logical/message/auction_based/call_for_proposal.h"
26#include "cpps/logical/message/auction_based/iteration_notification.h"
27#include "cpps/logical/message/auction_based/winner_notification.h"
28#include "cpps/logical/message/auction_based/winner_response.h"
29#include "cpps/logical/message/central_allocation/assignment_notification.h"
30#include "cpps/logical/message/central_allocation/assignment_response.h"
31#include "cpps/logical/message/central_allocation/status_update.h"
32#include "cpps/logical/message/central_allocation/status_update_request.h"
33#include "cpps/logical/message/material_flow_update.h"
34#include "cpps/logical/message/serializer.h"
36#define REGISTER_LOGICAL_MESSAGE(MessageType) \
37 virtual bool process(const MessageType &) { return false; }
39#define REQUIRE_IMPLEMENTATION(MessageType) virtual bool process(const MessageType &msg) = 0;
41#define REGISTER_IMPLEMENTATION(MessageType) virtual bool process(const MessageType &msg) override;
48 : communicator_(std::move(communicator)){};
64 daisi::cpps::common::CppsCommunicatorPtr communicator_;
Definition algorithm_interface.h:45
Notification by a central initiator that a task has been assigned to the receiving participant.
Definition assignment_notification.h:31
Response of a central participant as a reaction of a task assignment. Consists of the task_uuid,...
Definition assignment_response.h:32
Definition bid_submission.h:30
Definition call_for_proposal.h:30
Definition iteration_notification.h:29
might need some revision / additions in the future
Definition status_update_request.h:30
might need some revision / additions in the future
Definition status_update.h:33
Definition winner_notification.h:29
Definition winner_response.h:28
Modified Round Robin Algorithm that centrally assigns tasks of incoming material flows to the corresp...
Definition algorithm_config.h:22
Definition material_flow_update.h:30