5#include "BigEndian.hpp"
7namespace rtype::protocol {
32 return static_cast<InputAction>(
static_cast<std::uint8_t
>(left) |
33 static_cast<std::uint8_t
>(right));
43 return static_cast<std::uint8_t
>(actions) &
static_cast<std::uint8_t
>(action);
64 "InputPayload must not contain padding");
constexpr bool hasAction(InputAction actions, InputAction action)
Tells whether an action set contains an action.
Definition InputPayload.hpp:42
BigEndian< std::uint32_t > be32
32-bit unsigned integer stored in big-endian order.
Definition BigEndian.hpp:87
constexpr InputAction operator|(InputAction left, InputAction right)
Combines two action sets.
Definition InputPayload.hpp:31
InputAction
Bit flags of the actions held by a player.
Definition InputPayload.hpp:16
@ NoneAction
No action held.
@ Shoot
Shoot button held.