#pragma once #include #include #include "GpioCookie.h" class GpioCommIF : public DeviceCommunicationIF, public SystemObject { public: GpioCommIF(object_id_t setObjectId); virtual ~GpioCommIF() {} ReturnValue_t initializeInterface(CookieIF *cookie) override; ReturnValue_t sendMessage(CookieIF *cookie, const uint8_t *sendData, size_t sendLen) override; ReturnValue_t getSendSuccess(CookieIF *cookie) override; ReturnValue_t requestReceiveMessage(CookieIF *cookie, size_t requestLen) override; ReturnValue_t readReceivedMessage(CookieIF *cookie, uint8_t **buffer, size_t *size) override; private: ReturnValue_t initializeInterface(GpioCookie *cookie); ReturnValue_t sendMessage(GpioCookie *cookie, const uint8_t *sendData, size_t sendLen); ReturnValue_t readReceivedMessage(GpioCookie *cookie, uint8_t **buffer, size_t *size); };