mirror of
https://git.intern.spaceteamaachen.de/ALPAKA/TACOS.git
synced 2025-06-12 01:25:59 +00:00
52 lines
1.3 KiB
C++
52 lines
1.3 KiB
C++
/*
|
|
* tacos.cpp
|
|
*
|
|
* Created on: Jan 2, 2024
|
|
* Author: Dario
|
|
*/
|
|
|
|
#include <sta/tacos.hpp>
|
|
|
|
namespace sta
|
|
{
|
|
namespace tacos
|
|
{
|
|
uint16_t getState()
|
|
{
|
|
return Statemachine::instance()->getCurrentState();
|
|
}
|
|
|
|
void setState(uint32_t from, uint32_t to, uint32_t lockout /* = 0 */, bool force /* = false */)
|
|
{
|
|
Statemachine::instance()->requestStateTransition(from, to, lockout, force);
|
|
}
|
|
|
|
void setStateTimed(uint32_t from, uint32_t to, uint32_t millis, uint32_t lockout /* = 0 */)
|
|
{
|
|
Statemachine::instance()->requestTimedStateTransition(from, to, millis, lockout);
|
|
}
|
|
|
|
#ifdef STA_TACOS_CAN_BUS_ENABLED
|
|
bool queueCanBusMsg(CanSysMsg & msg, uint32_t timeout){
|
|
return CanBus::instance()->queueCanBusMsg(msg, timeout);
|
|
}
|
|
|
|
bool publishState(uint32_t from, uint32_t to, uint32_t lockout /* = 0 */){
|
|
CanSysMsg msg;
|
|
msg.header.sid = STA_TACOS_CAN_BUS_SYS_MSG_ID;
|
|
msg.header.payloadLength = 2;
|
|
msg.payload[0] = from;
|
|
msg.payload[1] = to;
|
|
|
|
msg.header.eid = 0;
|
|
msg.header.format = 0;
|
|
|
|
return CanBus::instance()->queueCanBusMsg(msg, lockout);
|
|
}
|
|
#endif // STA_TACOS_CAN_BUS_ENABLED
|
|
} // namespace tacos
|
|
|
|
} // namespace sta
|
|
|
|
|