157dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//
257dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//  Copyright (C) 2015 Google, Inc.
357dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//
457dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//  Licensed under the Apache License, Version 2.0 (the "License");
557dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//  you may not use this file except in compliance with the License.
657dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//  You may obtain a copy of the License at:
757dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//
857dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//  http://www.apache.org/licenses/LICENSE-2.0
957dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//
1057dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//  Unless required by applicable law or agreed to in writing, software
1157dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//  distributed under the License is distributed on an "AS IS" BASIS,
1257dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1357dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//  See the License for the specific language governing permissions and
1457dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//  limitations under the License.
1557dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray//
1657dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray
1757dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray#include "service/common/bluetooth/scan_settings.h"
1857dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray
1957dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguraynamespace bluetooth {
2057dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray
2157dcd7e47681d3f452ab0f2b34f413af9be51e9eArman UgurayScanSettings::ScanSettings()
2257dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray    : mode_(MODE_LOW_POWER),
2357dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray      callback_type_(CALLBACK_TYPE_ALL_MATCHES),
2457dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray      result_type_(RESULT_TYPE_FULL),
25911d1ae03efec2d54c3b1b605589d790d1745488Myles Watson      match_count_per_filter_(MATCH_COUNT_MAX_ADVERTISEMENTS) {}
2657dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray
27911d1ae03efec2d54c3b1b605589d790d1745488Myles WatsonScanSettings::ScanSettings(Mode mode, CallbackTypeBitField callback_type,
28911d1ae03efec2d54c3b1b605589d790d1745488Myles Watson                           ResultType result_type,
29911d1ae03efec2d54c3b1b605589d790d1745488Myles Watson                           base::TimeDelta report_delay_ms,
30911d1ae03efec2d54c3b1b605589d790d1745488Myles Watson                           MatchMode match_mode,
31911d1ae03efec2d54c3b1b605589d790d1745488Myles Watson                           MatchCount match_count_per_filter)
3257dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray    : mode_(mode),
3357dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray      callback_type_(callback_type),
3457dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray      result_type_(result_type),
3557dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray      report_delay_ms_(report_delay_ms),
3657dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray      match_mode_(match_mode),
37911d1ae03efec2d54c3b1b605589d790d1745488Myles Watson      match_count_per_filter_(match_count_per_filter) {}
3857dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray
3957dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguraybool ScanSettings::operator==(const ScanSettings& rhs) const {
40911d1ae03efec2d54c3b1b605589d790d1745488Myles Watson  if (mode_ != rhs.mode_) return false;
4157dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray
42911d1ae03efec2d54c3b1b605589d790d1745488Myles Watson  if (callback_type_ != rhs.callback_type_) return false;
4357dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray
44911d1ae03efec2d54c3b1b605589d790d1745488Myles Watson  if (result_type_ != rhs.result_type_) return false;
4557dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray
46911d1ae03efec2d54c3b1b605589d790d1745488Myles Watson  if (report_delay_ms_ != rhs.report_delay_ms_) return false;
4757dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray
48911d1ae03efec2d54c3b1b605589d790d1745488Myles Watson  if (match_mode_ != rhs.match_mode_) return false;
4957dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray
50911d1ae03efec2d54c3b1b605589d790d1745488Myles Watson  if (match_count_per_filter_ != rhs.match_count_per_filter_) return false;
5157dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray
5257dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray  return true;
5357dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray}
5457dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray
5557dcd7e47681d3f452ab0f2b34f413af9be51e9eArman Uguray}  // namespace bluetooth
56