Bluenet  5.7.0
Bluenet, firmware for nRF52 smart home devices
Loading...
Searching...
No Matches
cs_Scanner.h
Go to the documentation of this file.
1/*
2 * Author: Crownstone Team
3 * Copyright: Crownstone (https://crownstone.rocks)
4 * Date: Dec 2, 2015
5 * License: LGPLv3+, Apache License 2.0, and/or MIT (triple-licensed)
6 */
7#pragma once
8
9#include <ble/cs_Stack.h>
11
15
16public:
18 static Scanner& getInstance() {
19 static Scanner instance;
20 return instance;
21 }
22
23 void setStack(Stack* stack);
24
25 void onBleEvent(ble_evt_t* p_ble_evt);
26
29
30 bool isScanning();
31
32 static void staticTick(Scanner* ptr);
33
34 void init();
36 void start();
38 void delayedStart(uint16_t delay);
42 void stop();
43
44 void handleEvent(event_t& event);
45
46private:
50 };
51
53
60
61 uint16_t _scanCount;
62
63 app_timer_t _appTimerData;
64 app_timer_id_t _appTimerId;
65
67
69
71
72 void onAdvertisement(ble_gap_evt_adv_report_t* p_adv_report);
73};
Event listener.
Definition: cs_EventListener.h:17
Scanner scans for BLE devices.
Definition: cs_Scanner.h:14
void delayedStart()
delay start by _scanBreakDuration ms
Stack * _stack
Definition: cs_Scanner.h:66
void delayedStart(uint16_t delay)
delay start by delay ms
void executeScan()
void stop()
stop scan immediately (no results will be sent)
app_timer_id_t _appTimerId
Definition: cs_Scanner.h:64
bool _running
Definition: cs_Scanner.h:55
void setStack(Stack *stack)
void onBleEvent(ble_evt_t *p_ble_evt)
SCAN_OP_CODE _opCode
Definition: cs_Scanner.h:52
app_timer_t _appTimerData
Definition: cs_Scanner.h:63
void onAdvertisement(ble_gap_evt_adv_report_t *p_adv_report)
bool isScanning()
void manualStopScan()
void init()
static void staticTick(Scanner *ptr)
void manualStartScan()
void handleEvent(event_t &event)
Handle events.
SCAN_OP_CODE
Definition: cs_Scanner.h:47
@ SCAN_STOP
Definition: cs_Scanner.h:49
@ SCAN_START
Definition: cs_Scanner.h:48
TYPIFY(CONFIG_SCAN_DURATION) _scanDuration
scan for ... ms
uint16_t _scanCount
Definition: cs_Scanner.h:61
static Scanner & getInstance()
Gets a static singleton (no dynamic memory allocation)
Definition: cs_Scanner.h:18
bool _scanning
Definition: cs_Scanner.h:54
TYPIFY(CONFIG_SCAN_BREAK_DURATION) _scanBreakDuration
wait ... ms before starting the next scan
void start()
start immediately
nRF51822 specific implementation of the BLEStack
Definition: cs_Stack.h:41
Author: Crownstone Team Copyright: Crownstone (https://crownstone.rocks) Date: Oct 9,...
Definition: cs_Event.h:26
Manufacturing data.
@ CONFIG_SCAN_DURATION
@ CONFIG_SCAN_BREAK_DURATION