36#ifndef _DCC_PACKETSOURCE_HXX_
37#define _DCC_PACKETSOURCE_HXX_
80 void set_fn(uint32_t address, uint16_t value)
override
83 uint16_t
get_fn(uint32_t address)
override
93 return dcc::TrainAddressType::DCC_SHORT_ADDRESS;
Abstract class that is a packet source but not a TrainImpl.
uint32_t legacy_address() override
bool get_emergencystop() override
Get the current E-Stop state.
void set_speed(SpeedType speed) override
Sets the speed of the locomotive.
uint16_t get_fn(uint32_t address) override
void set_emergencystop() override
Sets the train to emergency stop.
void set_fn(uint32_t address, uint16_t value) override
Sets the value of a function.
dcc::TrainAddressType legacy_address_type() override
SpeedType get_speed() override
Abstract class for streams of DCC packets.
virtual void get_next_packet(unsigned code, Packet *packet)=0
Generates the next packet to send out to the track.
Abstract base class for train implementations.
This class provides a mechanism for working with velocity in different forms.
TrainAddressType
Which address type this legacy train node uses.
Represents a command to be sent to the track driver.