godot_ant/ant/src/main.cpp

51 lines
1.7 KiB
C++

#include "ant/ant_device.hpp"
#include "ant/channels.hpp"
#include "ant/message.hpp"
#include <memory>
int main() {
ant::ANTDevice ant_device;
ant_device.Init();
// ant::PowerChannel power_channel(ant_device, 2,
// ant::DeviceNumbers::Wildcard);
ant::HeartRateChannel hr_channel(ant_device, 3, ant::DeviceNumbers::Wildcard);
ant::FitnessEquipmentChannel fe_channel(ant_device, 4,
ant::DeviceNumbers::Wildcard);
// ant_device.processor.SetOnChannelResponseCallback(
// power_channel.channel_id(),
// [&power_channel](ant::ChannelResponseMessage msg) {
// power_channel.OnChannelResponse(msg);
// });
// ant_device.processor.SetOnBroadcastDataCallback(
// power_channel.channel_id(), [&power_channel](ant::BroadcastPayload
// data) {
// power_channel.OnBroadcastData(data);
// });
// power_channel.StartSearch();
ant_device.processor.SetOnChannelResponseCallback(
hr_channel.channel_id(), [&hr_channel](ant::ChannelResponseMessage msg) {
hr_channel.OnChannelResponse(msg);
});
ant_device.processor.SetOnBroadcastDataCallback(
hr_channel.channel_id(), [&hr_channel](ant::BroadcastPayload data) {
hr_channel.OnBroadcastData(data);
});
hr_channel.StartSearch();
ant_device.processor.SetOnBroadcastDataCallback(
fe_channel.channel_id(), [&fe_channel](ant::BroadcastPayload data) {
fe_channel.OnBroadcastData(data);
});
ant_device.processor.SetOnChannelResponseCallback(
fe_channel.channel_id(), [&fe_channel](ant::ChannelResponseMessage msg) {
fe_channel.OnChannelResponse(msg);
});
// fe_channel.StartSearch();
while (true) {
ant_device.ReceiveMessage();
}
return 0;
}