semf
communication.h
Go to the documentation of this file.
1
10#ifndef SEMF_APP_COMMUNICATION_COMMUNICATION_H_
11#define SEMF_APP_COMMUNICATION_COMMUNICATION_H_
12
15#include <cstdint>
16
17namespace semf
18{
19namespace app
20{
25{
26public:
27 virtual ~Communication() = default;
33 virtual void write(const uint8_t data[], size_t dataSize) = 0;
39 virtual void read(uint8_t buffer[], size_t bufferSize) = 0;
41 virtual void stopRead() = 0;
43 virtual void stopWrite() = 0;
48 virtual bool isBusyReading() const = 0;
53 virtual bool isBusyWriting() const = 0;
54
65};
66} /* namespace app*/
67} /* namespace semf*/
68#endif /* SEMF_APP_COMMUNICATION_COMMUNICATION_H_ */
Signal for lightweight signal/slot implementation. One signal can be connected to multiple slots and ...
Definition: signal.h:41
This interface standardized the read and write interface for communication hardware like CAN,...
Definition: communication.h:25
virtual bool isBusyReading() const =0
Communication hardware is busy reading at the moment.
virtual void stopRead()=0
virtual bool isBusyWriting() const =0
Communication hardware is busy writing at the moment.
virtual void write(const uint8_t data[], size_t dataSize)=0
For writing data, dataWritten signal will be emitted after successful write.
virtual ~Communication()=default
virtual void read(uint8_t buffer[], size_t bufferSize)=0
For reading data, dataAvailable signal will be emitted after successful read.
virtual void stopWrite()=0
Signal< Error > error
Definition: communication.h:64