21 #ifndef BM_BM_SIM_CONTROL_ACTION_H_
22 #define BM_BM_SIM_CONTROL_ACTION_H_
27 #include "control_flow.h"
34 class ControlAction :
public ControlFlowNode {
36 ControlAction(
const std::string &name, p4object_id_t
id);
38 ControlAction(
const std::string &name, p4object_id_t
id,
39 std::unique_ptr<SourceInfo> source_info);
41 void set_next_node(ControlFlowNode *next_node);
43 void set_action(ActionFn *action);
45 const ControlFlowNode *operator()(Packet *pkt)
const override;
48 ControlFlowNode *next_node{
nullptr};
54 #endif // BM_BM_SIM_CONTROL_ACTION_H_