fsfw/src/fsfw_hal/linux/i2c/I2cCookie.h

39 lines
930 B
C
Raw Normal View History

2021-07-13 19:19:25 +02:00
#ifndef LINUX_I2C_I2CCOOKIE_H_
#define LINUX_I2C_I2CCOOKIE_H_
#include <fsfw/devicehandlers/CookieIF.h>
2022-02-02 10:29:30 +01:00
2021-07-13 19:19:25 +02:00
#include <string>
/**
* @brief Cookie for the i2cDeviceComIF.
*
* @author J. Meier
*/
2022-02-02 10:29:30 +01:00
class I2cCookie : public CookieIF {
public:
/**
* @brief Constructor for the I2C cookie.
* @param i2cAddress_ The i2c address of the target device.
* @param maxReplyLen_ The maximum expected length of a reply from the
* target device.
* @param devicFile_ The device file specifying the i2c interface to use. E.g. "/dev/i2c-0".
*/
I2cCookie(address_t i2cAddress_, size_t maxReplyLen_, std::string deviceFile_);
virtual ~I2cCookie();
address_t getAddress() const;
size_t getMaxReplyLen() const;
std::string getDeviceFile() const;
2022-12-06 10:05:23 +01:00
uint8_t errorCounter = 0;
2022-02-02 10:29:30 +01:00
private:
address_t i2cAddress = 0;
size_t maxReplyLen = 0;
std::string deviceFile;
2021-07-13 19:19:25 +02:00
};
#endif /* LINUX_I2C_I2CCOOKIE_H_ */