Class Trigger
Defined in File Trigger.h
Inheritance Relationships
Base Type
public Component
(Class Component)
Class Documentation
-
class Trigger : public Component
This component converts data connector to signal one: when a value is written to a specified address, it will be masked and checked for equivalency. If the value equals to the one specified a signal will be sent to the connected component.
Connectors: data “trigger” - writing to this connector will trigger a “target” connected device if addresses match. Ports: signal “target” - the signal is sent to the component connected to this port on write to the “trigger”
Note
It can be used to map signals to memory, this way a CPU can trigger an interrupt signal by writing to a specified address.
Public Functions
-
explicit Trigger(uint32_t address, uint32_t value = 0x1, uint32_t mask = ~0x0)
-
virtual void init() override
Initialize a component to a default power-on state (hard reset).
Note
For Component developer: Implement a correct power-on state here.
-
virtual std::vector<EmulatorWindow> getGUIs() override
Get GUI windows: metadata and rendering functions.
Note
For Component developer: If the component have a debugger or other GUI, return an arbitrary count of windows, they will be rendered on a load of a system which contains the component.
- Returns
A vector of windows to be rendered.
Protected Attributes
-
uint32_t m_triggerAddress
-
uint32_t m_triggerValue
-
uint32_t m_mask
-
SignalPort m_target
-
explicit Trigger(uint32_t address, uint32_t value = 0x1, uint32_t mask = ~0x0)