extends ANTDevice @onready var hr_label = $"../PanelContainer/hr_container/VBoxContainer/value_label" @onready var toruqe_cnt_label = $"../PanelContainer/pwr_container/VBoxContainer/HBoxContainer2/torque_cnt_value" @onready var power_cnt_label = $"../PanelContainer/pwr_container/VBoxContainer/HBoxContainer/power_cnt_value" @onready var operating_time_label = $"../PanelContainer/pwr_container/VBoxContainer/operating_time_label" @onready var voltage_label = $"../PanelContainer/pwr_container/VBoxContainer/voltage_label" @onready var power_label = $"../PanelContainer/pwr_container/VBoxContainer/power_label" var torque_counter: int = 0 var power_counter: int = 0 # Called when the node enters the scene tree for the first time. func _ready() -> void: pass # Replace with function body. # Called every frame. 'delta' is the elapsed time since the previous frame. func _process(delta: float) -> void: pass func _on_broadcast_data_received(channel: int, msg_ref: Object) -> void: var children = get_children() for child in children: if child is Channel: var chan: Channel = child as Channel print("Dispatching broadcast data to %s" % chan.name) chan.on_broadcast_data(msg_ref) func _set_channel_numbers(): var i: int = 1 var children = get_children() for child in children: if child is Channel: var chan: Channel = child as Channel chan.channel = i i += 1 func _on_channel_response_received(channel: int, msg_ref: Object) -> void: var children = get_children() for child in children: if child is Channel: var chan: Channel = child as Channel if chan.channel == channel: print("Dispatching channel_response data to %s" % chan.name) chan.on_channel_response(msg_ref) func _on_device_number_received(channel: int, device_number: int) -> void: var children = get_children() for child in children: if child is Channel: var chan: Channel = child as Channel if chan.channel == channel: print("Dispatching device_number data to %s" % chan.name) chan.device_number = device_number func _on_heart_rate_channel_heart_rate_updated(heart_rate: int) -> void: hr_label.text = "%d" % heart_rate func _on_connect_button_pressed() -> void: $HeartRateChannel.start_searching() func _on_power_channel_battery_status_received(operating_time: int, status: String, voltage: float) -> void: var hours = int(operating_time / 3600) var minutes = int((operating_time % 3600) / 60) var seconds = operating_time % 60 operating_time_label.text = "%02d:%02d:%02d" % [hours, minutes, seconds] func _on_power_channel_crank_torque_received(power: float, torque: float, cadence: int) -> void: torque_counter += 1 toruqe_cnt_label.text = "%d" % torque_counter func _on_power_channel_power_received(power: float, cadence: int) -> void: power_counter += 1 power_cnt_label.text = "%d" % power_counter power_label.text = "%d" % (int(power)) func _on_power_connect_button_pressed() -> void: $PowerChannel.start_searching() func _on_power_channel_search_timed_out() -> void: $PowerChannel.start_searching()