Shellminator V3.0.1
Simple Terminal
Loading...
Searching...
No Matches
ShellminatorBleStream Class Reference

#include <Shellminator-BLE-Stream.hpp>

Inheritance diagram for ShellminatorBleStream:
Collaboration diagram for ShellminatorBleStream:

Classes

class  bleRxCallback
 
class  ServerCallbacks
 

Public Types

enum  bleState_t { BLE_DISCONNECTED_STATE , BLE_CONNECTED_STATE }
 

Public Member Functions

 ShellminatorBleStream ()
 
int available () override
 Available bytes in the channel. More...
 
int read () override
 Read one byte form the channel. More...
 
int peek () override
 Peek the firtst byte from the channel. More...
 
void flush () override
 Flush the channel. More...
 
size_t write (uint8_t b) override
 Write one byte to the channel. More...
 
size_t write (const uint8_t *data, size_t size) override
 
void begin ()
 
void update ()
 
void attachDebugChannel (Stream *dbg_p)
 
void attachConnectCallback (void(*connectCallback_p)(ShellminatorBleStream *))
 
void attachDisconnectCallback (void(*disconnectCallback_p)(ShellminatorBleStream *))
 

Public Attributes

bleState_t state
 
uint32_t callbackDelayStart
 
uint32_t callbackDelayPeriod = 3000
 

Private Member Functions

void resetVariables ()
 
void appendToCircularBuffer (uint8_t data)
 
void appendToCircularBuffer (uint8_t *data, int dataSize)
 

Private Attributes

uint8_t streamBuffer [SHELLMINATOR_BLE_STREAM_BUFFER_SIZE]
 
uint32_t streamBufferWritePointer
 
uint32_t streamBufferReadPointer
 
Stream * dbg
 
void(* connectCallback )(ShellminatorBleStream *parent) = NULL
 
void(* disconnectCallback )(ShellminatorBleStream *parent) = NULL
 
BLEServer * bleServer = NULL
 
BLEService * bleService = NULL
 
BLECharacteristic * bleTxChar
 
BLECharacteristic * bleRxChar
 
ServerCallbacks serverCallbacks
 
bleRxCallback rxCallback
 

Detailed Description

Definition at line 103 of file Shellminator-BLE-Stream.hpp.

Member Enumeration Documentation

◆ bleState_t

Enumerator
BLE_DISCONNECTED_STATE 
BLE_CONNECTED_STATE 

Definition at line 113 of file Shellminator-BLE-Stream.hpp.

Constructor & Destructor Documentation

◆ ShellminatorBleStream()

ShellminatorBleStream::ShellminatorBleStream ( )

Definition at line 46 of file Shellminator-BLE-Stream.cpp.

Here is the call graph for this function:

Member Function Documentation

◆ appendToCircularBuffer() [1/2]

void ShellminatorBleStream::appendToCircularBuffer ( uint8_t *  data,
int  dataSize 
)
private

Definition at line 272 of file Shellminator-BLE-Stream.cpp.

Here is the call graph for this function:

◆ appendToCircularBuffer() [2/2]

void ShellminatorBleStream::appendToCircularBuffer ( uint8_t  data)
private

Definition at line 254 of file Shellminator-BLE-Stream.cpp.

Here is the caller graph for this function:

◆ attachConnectCallback()

void ShellminatorBleStream::attachConnectCallback ( void(*)(ShellminatorBleStream *)  connectCallback_p)

Definition at line 372 of file Shellminator-BLE-Stream.cpp.

◆ attachDebugChannel()

void ShellminatorBleStream::attachDebugChannel ( Stream *  dbg_p)

Definition at line 139 of file Shellminator-BLE-Stream.cpp.

◆ attachDisconnectCallback()

void ShellminatorBleStream::attachDisconnectCallback ( void(*)(ShellminatorBleStream *)  disconnectCallback_p)

Definition at line 376 of file Shellminator-BLE-Stream.cpp.

◆ available()

int ShellminatorBleStream::available ( )
override

Available bytes in the channel.

Returns
The available bytes in the channel.

Definition at line 279 of file Shellminator-BLE-Stream.cpp.

◆ begin()

void ShellminatorBleStream::begin ( )

Definition at line 71 of file Shellminator-BLE-Stream.cpp.

◆ flush()

void ShellminatorBleStream::flush ( )
override

Flush the channel.

Definition at line 324 of file Shellminator-BLE-Stream.cpp.

◆ peek()

int ShellminatorBleStream::peek ( )
override

Peek the firtst byte from the channel.

Returns
Read and return one byte form the channel. The byte will NOT be removed from the channel.

Definition at line 313 of file Shellminator-BLE-Stream.cpp.

◆ read()

int ShellminatorBleStream::read ( )
override

Read one byte form the channel.

Returns
Read and return one byte form the channel. The byte will be removed from the channel.

Definition at line 293 of file Shellminator-BLE-Stream.cpp.

◆ resetVariables()

void ShellminatorBleStream::resetVariables ( )
private

Definition at line 64 of file Shellminator-BLE-Stream.cpp.

Here is the caller graph for this function:

◆ update()

void ShellminatorBleStream::update ( )

Definition at line 123 of file Shellminator-BLE-Stream.cpp.

◆ write() [1/2]

size_t ShellminatorBleStream::write ( const uint8_t *  data,
size_t  size 
)
override

Definition at line 345 of file Shellminator-BLE-Stream.cpp.

◆ write() [2/2]

size_t ShellminatorBleStream::write ( uint8_t  b)
override

Write one byte to the channel.

Parameters
bThe value that has to be written to the channel.
Returns
The number of bytes that has been successfully written to the channel. Because it is the base class, it returns 0.

Definition at line 329 of file Shellminator-BLE-Stream.cpp.

Member Data Documentation

◆ bleRxChar

BLECharacteristic* ShellminatorBleStream::bleRxChar
private

Definition at line 178 of file Shellminator-BLE-Stream.hpp.

◆ bleServer

BLEServer* ShellminatorBleStream::bleServer = NULL
private

Definition at line 175 of file Shellminator-BLE-Stream.hpp.

◆ bleService

BLEService* ShellminatorBleStream::bleService = NULL
private

Definition at line 176 of file Shellminator-BLE-Stream.hpp.

◆ bleTxChar

BLECharacteristic* ShellminatorBleStream::bleTxChar
private

Definition at line 177 of file Shellminator-BLE-Stream.hpp.

◆ callbackDelayPeriod

uint32_t ShellminatorBleStream::callbackDelayPeriod = 3000

Definition at line 153 of file Shellminator-BLE-Stream.hpp.

◆ callbackDelayStart

uint32_t ShellminatorBleStream::callbackDelayStart

Definition at line 152 of file Shellminator-BLE-Stream.hpp.

◆ connectCallback

void(* ShellminatorBleStream::connectCallback) (ShellminatorBleStream *parent) = NULL
private

Definition at line 166 of file Shellminator-BLE-Stream.hpp.

◆ dbg

Stream* ShellminatorBleStream::dbg
private

Definition at line 164 of file Shellminator-BLE-Stream.hpp.

◆ disconnectCallback

void(* ShellminatorBleStream::disconnectCallback) (ShellminatorBleStream *parent) = NULL
private

Definition at line 167 of file Shellminator-BLE-Stream.hpp.

◆ rxCallback

bleRxCallback ShellminatorBleStream::rxCallback
private

Definition at line 199 of file Shellminator-BLE-Stream.hpp.

◆ serverCallbacks

ServerCallbacks ShellminatorBleStream::serverCallbacks
private

Definition at line 198 of file Shellminator-BLE-Stream.hpp.

◆ state

bleState_t ShellminatorBleStream::state

Definition at line 150 of file Shellminator-BLE-Stream.hpp.

◆ streamBuffer

uint8_t ShellminatorBleStream::streamBuffer[SHELLMINATOR_BLE_STREAM_BUFFER_SIZE]
private

Definition at line 160 of file Shellminator-BLE-Stream.hpp.

◆ streamBufferReadPointer

uint32_t ShellminatorBleStream::streamBufferReadPointer
private

Definition at line 162 of file Shellminator-BLE-Stream.hpp.

◆ streamBufferWritePointer

uint32_t ShellminatorBleStream::streamBufferWritePointer
private

Definition at line 161 of file Shellminator-BLE-Stream.hpp.