annotator/example/include/process/definition_receiver.hpp
2023-01-06 14:48:31 +01:00

24 lines
805 B
C++

#ifndef PROCESS_LIBPROCESS_EXT_INCLUDE_DEFINITION_RECEIVER_HPP
#define PROCESS_LIBPROCESS_EXT_INCLUDE_DEFINITION_RECEIVER_HPP
#include <asap/asap.hpp>
#include <process/process_collection.hpp>
#include "process_definition.hpp"
namespace process::controller {
class DefinitionListener;
class DefinitionReceiver {
public:
DefinitionReceiver(std::shared_ptr<ProcessCollection> collection, std::shared_ptr<asap::Participant> participant, const std::string& topic_name);
virtual ~DefinitionReceiver() = default;
protected: //for testing purposes
std::shared_ptr<DefinitionListener> m_def_listener;
std::shared_ptr<asap::Participant> m_participant;
std::shared_ptr<asap::Subscriber<ProcessDefinition>> m_subscriber;
};
}
#endif //PROCESS_LIBPROCESS_EXT_INCLUDE_DEFINITION_RECEIVER_HPP