AgIsoStack++
A control-function-focused implementation of the major ISOBUS and J1939 protocols
|
Files | |
can_address_claim_state_machine.hpp | |
Defines a class for managing the address claiming process. | |
can_badge.hpp | |
A way to only allow certain object types to access certain functions that is enforced at compile time. A neat trick from Serenity OS :^) | |
can_callbacks.hpp | |
An object to represent common callbacks used within this CAN stack. | |
can_constants.hpp | |
General constants used throughout this library. | |
can_control_function.hpp | |
Defines a base class to represent a generic ISOBUS control function. | |
can_extended_transport_protocol.hpp | |
A protocol class that handles the ISO11783 extended transport protocol. Designed for destination specific packets larger than 1785 bytes. | |
can_general_parameter_group_numbers.hpp | |
Defines some PGNs that are used in the library or are very common. | |
can_hardware_abstraction.hpp | |
An abstraction between this CAN stack and any hardware layer. | |
can_identifier.hpp | |
A representation of a classical CAN identifier with utility functions for ectracting values that are encoded inside, along with some helpful constants. | |
can_internal_control_function.hpp | |
A representation of an ISOBUS ECU that we can send from. Use this class when defining your own control functions that will claim an address within your program. | |
can_message.hpp | |
can_message_data.hpp | |
can_message_frame.hpp | |
can_NAME.hpp | |
A class that represents a control function's NAME. | |
can_NAME_filter.hpp | |
Defines a filter value for an ISONAME component. Used to tell the stack what kind of ECU you want to talk to when creating a partnered control function. | |
can_network_configuration.hpp | |
This is a class for changing stack settings. | |
can_network_manager.hpp | |
The main class that manages the ISOBUS stack including: callbacks, Name to Address management, making control functions, and driving the various protocols. | |
can_parameter_group_number_request_protocol.hpp | |
A protocol that handles PGN requests. | |
can_partnered_control_function.hpp | |
A class that describes a control function on the bus that the stack should communicate with. Use these to describe ECUs you want to send messages to. | |
can_stack_logger.hpp | |
A class that acts as a logging sink. The intent is that someone could make their own derived class of logger and inject it into the CAN stack to get helpful debug logging. | |
can_transport_protocol.hpp | |
A protocol that handles the ISO11783/J1939 transport protocol. It handles both the broadcast version (BAM) and and the connection mode version. | |
can_transport_protocol_base.hpp | |
Abstract base class for CAN transport protocols. | |
isobus_data_dictionary.hpp | |
This file contains the definition of an auto-generated lookup of all ISOBUS DDIs as defined in ISO11783-11, exported from isobus.net. This file was generated January 25, 2024. | |
isobus_device_descriptor_object_pool.hpp | |
Defines an interface for creating a Task Controller DDOP. | |
isobus_device_descriptor_object_pool_helpers.hpp | |
Defines helpers for getting commonly needed information out of a DDOP. These are provided so that you don't have to do quite as much manual parsing of the DDOP. | |
isobus_diagnostic_protocol.hpp | |
A protocol that handles the ISO 11783-12 Diagnostic Protocol and some J1939 DMs. | |
isobus_functionalities.hpp | |
Defines a class that manages the control function functionalities message data. (PGN 64654, 0xFC8E) as defined in ISO11783-12. | |
isobus_guidance_interface.hpp | |
Defines an interface for sending and receiving ISOBUS guidance messages. These messages are used to steer ISOBUS compliant machines, steering valves, and implements in general. | |
isobus_heartbeat.hpp | |
Defines an interface for sending and receiving ISOBUS heartbeats. The heartbeat message is used to determine the integrity of the communication of messages and parameters being transmitted by a control function. There may be multiple instances of the heartbeat message on the network, and CFs are required transmit the message on request. As long as the heartbeat message is transmitted at the regular time interval and the sequence number increases through the valid range, then the heartbeat message indicates that the data source CF is operational and provides correct data in all its messages. | |
isobus_language_command_interface.hpp | |
Defines a set of values found in the isobus language command message from ISO11783-7 commonly used in VT and TC communication. | |
isobus_maintain_power_interface.hpp | |
Defines an interface for sending and receiving the maintain power message (PGN 65095). | |
isobus_preferred_addresses.hpp | |
This is a reference for control function's preferred addresses as defined by ISO 11783-11 and/or SAE. Preferred addresses are industry group specific. You should use these when your are creating a control function that is a well known function type, but if your control function doesn't arbitrate for that address, the stack will claim for you in the dynamic address range. | |
isobus_shortcut_button_interface.hpp | |
Defines an interface for communicating as or from an ISOBUS shortcut button (ISB). Defined in AEF Guideline 004 - ISB and at https://www.isobus.net/isobus/pGNAndSPN/10936 (ISO 11783-7) | |
isobus_speed_distance_messages.hpp | |
isobus_standard_data_description_indices.hpp | |
Defines some standard DDIs. Does not include proprietary DDIs. | |
isobus_task_controller_client.hpp | |
A class to manage a client connection to a ISOBUS field computer's task controller. | |
isobus_task_controller_client_objects.hpp | |
Defines a set of C++ objects that represent a DDOP. | |
isobus_task_controller_server.hpp | |
An abstract task controller server class. You can consume this file and implement the pure virtual functions to create your own task controller or data logger server. | |
isobus_task_controller_server_options.hpp | |
Defines a helper class to assign TC server options. | |
isobus_virtual_terminal_client.hpp | |
A class to manage a client connection to a ISOBUS virtual terminal display. | |
isobus_virtual_terminal_client_state_tracker.hpp | |
A helper class to track the state of an active working set. | |
isobus_virtual_terminal_client_update_helper.hpp | |
A helper class to update and track the state of an active working set. | |
isobus_virtual_terminal_objects.hpp | |
Defines the different VT object types that can comprise a VT object pool. | |
nmea2000_fast_packet_protocol.hpp | |
A protocol that handles the NMEA 2000 (IEC 61162-3) fast packet protocol. | |
nmea2000_message_definitions.hpp | |
nmea2000_message_interface.hpp | |