flow_control: implement pass / drop filtering policies
This change introduces a set of three modes for flow control
filters, one of which is default behavor and two extra modes
else described below:
- FILTER_POLICY_PASS_ALL
- FILTER_POLICY_DROP_ALL
Both modes are opposite, and make a filter either unconditionally
pass or drop all the data one gets to the input. They would be
usable for some external usage.
diff --git a/lib/flow_control/dummy_burst_filter_impl.h b/lib/flow_control/dummy_burst_filter_impl.h
index ce9c741..953ae94 100644
--- a/lib/flow_control/dummy_burst_filter_impl.h
+++ b/lib/flow_control/dummy_burst_filter_impl.h
@@ -35,10 +35,16 @@
private:
bool is_dummy_burst(int8_t *burst, size_t burst_len);
static const int8_t d_dummy_burst[];
+ filter_policy d_filter_policy;
public:
dummy_burst_filter_impl();
~dummy_burst_filter_impl();
void process_burst(pmt::pmt_t msg);
+
+ /* External API */
+ /* Filtering policy */
+ filter_policy get_policy(void);
+ filter_policy set_policy(filter_policy policy);
};
} // namespace gsm