Skip to content
Snippets Groups Projects
LoraConnector.cs 1.07 KiB
Newer Older
philip.schell's avatar
philip.schell committed
using System;
using System.Collections.Generic;
using System.Linq;
philip.schell's avatar
philip.schell committed
using System.Text;
philip.schell's avatar
philip.schell committed
using System.Threading.Tasks;
using Fraunhofer.Fit.Iot.Lora.Events;
philip.schell's avatar
philip.schell committed

philip.schell's avatar
philip.schell committed
namespace Fraunhofer.Fit.Iot.Lora.lib {
  public abstract class LoraConnector {
philip.schell's avatar
philip.schell committed
    public delegate void DataUpdate(Object sender, LoraClientEvent e);
philip.schell's avatar
philip.schell committed
    public event DataUpdate Update;

philip.schell's avatar
philip.schell committed
    public abstract void OnReceive();
    public abstract Boolean Begin(Int64 freq);
    public abstract void SetSignalBandwith(Int64 sbw);
    public abstract void SetSpreadingFactor(Byte sf);
    public abstract void SetCodingRate4(Byte denominator);
    public abstract void DisableCrc();
    public abstract void EnableCrc();
    public abstract void Receive(Byte size);
    public abstract void SetTxPower(Int32 level, Pa outputPin = Pa.OUTPUT_PA_BOOST_PIN);
    public abstract Boolean BeginPacket(Boolean implictHeader = false);
    public abstract Byte Write(Byte[] buffer);
    public abstract Boolean EndPacket(Boolean async = false);
    public abstract void End();
    public abstract void Dispose();
philip.schell's avatar
philip.schell committed
  }
}