42 #ifndef BLUETOOTH_SCANNER_FILTER_HPP_ 43 #define BLUETOOTH_SCANNER_FILTER_HPP_ 65 class BluetoothScannerFilter {
68 std::vector<std::string> m_include_macs;
70 std::vector<std::string> m_exclude_macs;
72 std::vector<std::string> m_include_names;
74 std::vector<std::string> m_exclude_names;
79 BluetoothScannerFilter(std::vector<std::string>& include_macs, std::vector<std::string>& exclude_macs,
80 std::vector<std::string>& include_names, std::vector<std::string>& exclude_names);
91 BluetoothScannerFilter(
const BluetoothScannerFilter&
filter);
96 BluetoothScannerFilter&
operator=(
const BluetoothScannerFilter&
filter);
101 BluetoothScannerFilter(BluetoothScannerFilter&& configuration);
106 BluetoothScannerFilter&
operator=(BluetoothScannerFilter&& configuration);
136 bool filter(std::string name, std::string mac);
141 std::vector<std::string> m_include_macs;
143 std::vector<std::string> m_exclude_macs;
145 std::vector<std::string> m_include_names;
147 std::vector<std::string> m_exclude_names;
154 void operator=(
Builder const&) =
delete;
155 void operator=(
Builder &&) =
delete;
162 static bool isValidMacAddress(
const std::string mac);
Builder & includeDeviceWithMacIn(std::vector< std::string > &macs)
BluetoothScannerFilter buildDefault()
BluetoothScannerFilter build()
Builder & excludeDeviceWhoseNameContains(std::string name)
~BluetoothScannerFilter()
Builder & excludeDeviceWithMac(std::string mac)
Definition: bluetooth_adapter.hpp:52
Builder & includeDeviceWithMac(std::string mac)
Definition: bluetooth_scanner_filter.hpp:64
Builder & includeDeviceWhoseNameContains(std::string name)
BluetoothScannerFilter & operator=(const BluetoothScannerFilter &filter)
bool filter(std::string name, std::string mac)
Builder & excludeDeviceWithMacIn(std::vector< std::string > &macs)
Definition: bluetooth_scanner_filter.hpp:137