eive-obsw/linux/obc/VcInterfaceIF.h

31 lines
792 B
C
Raw Normal View History

2021-09-19 12:27:48 +02:00
#ifndef LINUX_OBC_VCINTERFACEIF_H_
#define LINUX_OBC_VCINTERFACEIF_H_
2021-09-26 08:29:30 +02:00
#include <stddef.h>
2022-01-18 11:41:19 +01:00
2021-09-19 12:27:48 +02:00
#include "fsfw/returnvalues/HasReturnvaluesIF.h"
/**
* @brief Interface class for managing different virtual channels of the PTME IP core implemented
* in the programmable logic.
*
* @author J. Meier
*/
class VcInterfaceIF {
2022-01-18 11:41:19 +01:00
public:
virtual ~VcInterfaceIF(){};
2021-09-19 12:27:48 +02:00
2022-01-18 11:41:19 +01:00
/**
* @brief Implememts the functionality to write data in the virtual channel of the PTME IP
* Core.
*
* @param data Pointer to buffer holding the data to write
* @param size Number of bytes to write
*/
virtual ReturnValue_t write(const uint8_t* data, size_t size) = 0;
2021-09-26 08:29:30 +02:00
2022-01-18 11:41:19 +01:00
virtual void setRegisterAddress(uint32_t* ptmeBaseAddress) = 0;
2021-09-19 12:27:48 +02:00
};
#endif /* LINUX_OBC_VCINTERFACEIF_H_ */