2020-12-29 13:59:31 +01:00
|
|
|
#ifndef BSP_Q7S_OBJECTFACTORY_H_
|
|
|
|
#define BSP_Q7S_OBJECTFACTORY_H_
|
|
|
|
|
2021-07-19 12:44:43 +02:00
|
|
|
class LinuxLibgpioIF;
|
2021-08-17 17:11:59 +02:00
|
|
|
class UartComIF;
|
2021-08-17 19:50:48 +02:00
|
|
|
class SpiComIF;
|
2022-02-02 17:36:40 +01:00
|
|
|
class I2cComIF;
|
2021-07-19 12:44:43 +02:00
|
|
|
|
2020-12-29 13:59:31 +01:00
|
|
|
namespace ObjectFactory {
|
2021-07-19 12:44:43 +02:00
|
|
|
|
2021-02-14 14:59:43 +01:00
|
|
|
void setStatics();
|
2021-06-08 16:45:25 +02:00
|
|
|
void produce(void* args);
|
2021-07-19 12:44:43 +02:00
|
|
|
|
2021-08-17 19:50:48 +02:00
|
|
|
void createCommunicationInterfaces(LinuxLibgpioIF** gpioComIF, UartComIF** uartComIF,
|
2022-02-02 17:36:40 +01:00
|
|
|
SpiComIF** spiComIF, I2cComIF** i2cComIF);
|
2021-07-19 12:44:43 +02:00
|
|
|
void createTmpComponents();
|
2022-01-19 18:05:17 +01:00
|
|
|
void createPcduComponents(LinuxLibgpioIF* gpioComIF);
|
2021-07-19 12:44:43 +02:00
|
|
|
void createRadSensorComponent(LinuxLibgpioIF* gpioComIF);
|
2021-08-17 19:50:48 +02:00
|
|
|
void createSunSensorComponents(LinuxLibgpioIF* gpioComIF, SpiComIF* spiComIF);
|
2021-08-17 17:11:59 +02:00
|
|
|
void createAcsBoardComponents(LinuxLibgpioIF* gpioComIF, UartComIF* uartComIF);
|
2021-07-19 12:44:43 +02:00
|
|
|
void createHeaterComponents();
|
|
|
|
void createSolarArrayDeploymentComponents();
|
|
|
|
void createSyrlinksComponents();
|
|
|
|
void createRtdComponents(LinuxLibgpioIF* gpioComIF);
|
|
|
|
void createReactionWheelComponents(LinuxLibgpioIF* gpioComIF);
|
2022-01-18 11:41:19 +01:00
|
|
|
void createCcsdsComponents(LinuxLibgpioIF* gpioComIF);
|
2021-09-13 18:07:07 +02:00
|
|
|
void createTestComponents(LinuxLibgpioIF* gpioComIF);
|
2021-07-19 12:44:43 +02:00
|
|
|
|
2022-01-18 11:41:19 +01:00
|
|
|
}; // namespace ObjectFactory
|
2020-12-29 13:59:31 +01:00
|
|
|
|
|
|
|
#endif /* BSP_Q7S_OBJECTFACTORY_H_ */
|