#pragma once
#include "pxt.h"
#include "serial-target.h"

enum class BaudRate {
  //% block=115200
  BaudRate115200 = 115200,
  //% block=57600
  BaudRate57600 = 57600,
  //% block=38400
  BaudRate38400 = 38400,
  //% block=31250
  BaudRate31250 = 31250,
  //% block=28800
  BaudRate28800 = 28800,
  //% block=19200
  BaudRate19200 = 19200,
  //% block=14400
  BaudRate14400 = 14400,
  //% block=9600
  BaudRate9600 = 9600,
  //% block=4800
  BaudRate4800 = 4800,
  //% block=2400
  BaudRate2400 = 2400,
  //% block=1200
  BaudRate1200 = 1200,
  //% block=300
  BaudRate300 = 300
};

enum class SerialEvent {
    //% block="data received"
    DataReceived = CODAL_SERIAL_EVT_DATA_RECEIVED,
    //% block="rx buffer full"
    RxBufferFull = CODAL_SERIAL_EVT_RX_FULL
};

enum class Delimiters {
    //% block="new line (\n)"
    NewLine = 10,
    //% block=","
    Comma = 44,
    //% block="$"
    Dollar = 36,
    //% block=":"
    Colon = 58,
    //% block="."
    Fullstop = 46,
    //% block="#"
    Hash = 35,
    //% block="carriage return (\r)"
    CarriageReturn = 13,
    //% block="space"
    Space = 32,
    //% block="tab (\t)"
    Tab = 9,
    //% block="|"
    Pipe = 124,
    //% block=";"
    SemiColon = 59,
};

