9 #include "../core/core-data.hpp"
10 #include "data_view.hpp"
11 #include "helics_cxx_export.h"
31 void setTimeFunction(std::function<
Time(
Time)> userTimeFunction);
34 std::function<
Time(
Time)> TimeFunction;
35 virtual std::unique_ptr<Message> process(std::unique_ptr<Message> message)
override;
45 std::function<std::string(
const std::string&,
const std::string&)> userDestFunction);
48 std::function<std::string(
const std::string&,
const std::string&)> userDestFunction);
52 std::function<std::string(
const std::string&,
const std::string&)>
54 virtual std::unique_ptr<Message> process(std::unique_ptr<Message> message)
override;
65 void setDataFunction(std::function<
void(
SmallBuffer&)> userDataFunction);
69 virtual std::unique_ptr<Message> process(std::unique_ptr<Message> message)
override;
82 std::function<
bool(
const Message*)> userConditionalFunction);
84 void setConditionFunction(std::function<
bool(
const Message*)> userConditionFunction);
87 std::function<bool(
const Message*)>
89 virtual std::unique_ptr<Message> process(std::unique_ptr<Message> message)
override;
102 std::function<std::vector<std::unique_ptr<Message>>(
const Message*)> userCloneFunction);
104 void setCloneFunction(
105 std::function<std::vector<std::unique_ptr<Message>>(
const Message*)> userCloneFunction);
109 std::function<std::vector<std::unique_ptr<Message>>(
const Message*)>
111 virtual std::unique_ptr<Message> process(std::unique_ptr<Message> message)
override;
112 virtual std::vector<std::unique_ptr<Message>>
113 processVector(std::unique_ptr<Message> message)
override;
136 void setCheckFunction(std::function<
bool(
const Message*)> userCheckFunction);
141 std::function<bool(
const Message*)>
143 std::atomic<operations> operation{
145 virtual std::unique_ptr<Message> process(std::unique_ptr<Message> message)
override;
155 std::function<std::unique_ptr<Message>(std::unique_ptr<Message>)> userMessageFunction);
157 void setMessageFunction(
158 std::function<std::unique_ptr<Message>(std::unique_ptr<Message>)> userMessageFunction);
161 std::function<std::unique_ptr<Message>(std::unique_ptr<Message>)>
163 virtual std::unique_ptr<Message> process(std::unique_ptr<Message> message)
override;
Definition: MessageOperators.hpp:96
virtual bool isMessageGenerating() const override
Definition: MessageOperators.hpp:106
Definition: MessageOperators.hpp:149
CustomMessageOperator()=default
Definition: core-data.hpp:85
Definition: MessageOperators.hpp:120
operations
Definition: MessageOperators.hpp:123
void setOperation(operations newop)
Definition: MessageOperators.hpp:138
FirewallOperator()=default
Definition: MessageOperators.hpp:76
MessageConditionalOperator()=default
Definition: MessageOperators.hpp:58
MessageDataOperator()=default
Definition: MessageOperators.hpp:39
MessageDestOperator()=default
virtual bool isMessageGenerating() const override
Definition: MessageOperators.hpp:49
Definition: MessageOperators.hpp:24
MessageTimeOperator()=default
Definition: core-data.hpp:29
Definition: SmallBuffer.hpp:25
the main namespace for the helics co-simulation library User functions will be in the helics namespac...
Definition: AsyncFedCallInfo.hpp:14
TimeRepresentation< count_time< 9 > > Time
Definition: helicsTime.hpp:27