QuISP
Loading...
Searching...
No Matches
RuleSet.h
Go to the documentation of this file.
1#pragma once
2#include <memory>
3
4#include <nlohmann/json.hpp>
5
6#include "Rule.h"
7#include "runtime/RuleSet.h"
8
9using json = nlohmann::json;
10namespace quisp::rules {
15class RuleSet {
16 public:
18 RuleSet(unsigned long ruleset_id, int owner_address);
19
20 unsigned long ruleset_id;
22 std::vector<std::unique_ptr<Rule>> rules;
23
24 Rule *addRule(std::unique_ptr<Rule> rule);
25 json serialize_json();
26 void deserialize_json(json serialized);
27 unsigned long createUniqueId();
29};
30
31} // namespace quisp::rules
Rule.
Definition Rule.h:18
RuleSet class which includes a set of Rule Information.
Definition RuleSet.h:15
runtime::RuleSet construct() const
Definition RuleSet.cc:51
unsigned long createUniqueId()
void deserialize_json(json serialized)
Definition RuleSet.cc:33
RuleSet()
Definition RuleSet.h:17
Rule * addRule(std::unique_ptr< Rule > rule)
Definition RuleSet.cc:15
json serialize_json()
Definition RuleSet.cc:21
unsigned long ruleset_id
ruleset_id is used for identifying connection
Definition RuleSet.h:20
std::vector< std::unique_ptr< Rule > > rules
Definition RuleSet.h:22
int owner_addr
Address of RuleSet owner.
Definition RuleSet.h:21
The RuleSet.
Definition RuleSet.h:80
Definition Action.cc:3