fota lib for mdot
mdot/Lora/MacEvents.h@3:63d10f2375ea, 2018-09-14 (annotated)
- Committer:
- Jenkins@KEILDM1.dc.multitech.prv
- Date:
- Fri Sep 14 15:39:09 2018 -0500
- Revision:
- 3:63d10f2375ea
fota lib updates
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 1 | /** __ ___ ____ _ ______ __ ____ __ ____ |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 2 | * / |/ /_ __/ / /_(_)__/_ __/__ ____/ / / __/_ _____ / /____ __ _ ___ / _/__ ____ |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 3 | * / /|_/ / // / / __/ /___// / / -_) __/ _ \ _\ \/ // (_-</ __/ -_) ' \(_-< _/ // _ \/ __/ __ |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 4 | * /_/ /_/\_,_/_/\__/_/ /_/ \__/\__/_//_/ /___/\_, /___/\__/\__/_/_/_/___/ /___/_//_/\__/ /_/ |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 5 | * Copyright (C) 2015 by Multi-Tech Systems /___/ |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 6 | * |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 7 | * |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 8 | * @author Jason Reiss |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 9 | * @date 10-31-2015 |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 10 | * @brief lora::MacEvents provides an interface for events from the Mac layer |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 11 | * |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 12 | * @details |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 13 | * |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 14 | */ |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 15 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 16 | #ifndef __LORA_MAC_EVENTS_H__ |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 17 | #define __LORA_MAC_EVENTS_H__ |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 18 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 19 | #include "Lora.h" |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 20 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 21 | namespace lora { |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 22 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 23 | class MacEvents { |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 24 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 25 | public: |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 26 | virtual ~MacEvents() {}; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 27 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 28 | virtual void TxStart(void) = 0; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 29 | virtual void TxDone(uint8_t dr) = 0; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 30 | virtual void TxTimeout(void) = 0; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 31 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 32 | virtual void JoinAccept(uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr) = 0; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 33 | virtual void JoinFailed(uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr) = 0; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 34 | virtual void PacketRx(uint8_t port, uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr, lora::DownlinkControl ctrl, uint8_t slot, uint8_t retries=0, uint32_t address=0, bool dupRx=false) = 0; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 35 | virtual void RxDone(uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr, lora::DownlinkControl ctrl, uint8_t slot) = 0; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 36 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 37 | virtual void Pong(int16_t m_rssi, int8_t m_snr, int16_t s_rssi, int8_t s_snr) = 0; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 38 | virtual void NetworkLinkCheck(int16_t m_rssi, int8_t m_snr, int8_t s_snr, uint8_t s_gateways) = 0; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 39 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 40 | virtual void RxTimeout(uint8_t slot) = 0; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 41 | virtual void RxError(uint8_t slot) = 0; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 42 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 43 | virtual void MissedAck(uint8_t retries) = 0; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 44 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 45 | virtual uint8_t MeasureBattery() = 0; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 46 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 47 | private: |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 48 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 49 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 50 | }; |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 51 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 52 | } |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 53 | |
Jenkins@KEILDM1.dc.multitech.prv | 3:63d10f2375ea | 54 | #endif |