Package jmri.jmrix.pi.simulator
Class GpioSimulator
java.lang.Object
jmri.jmrix.pi.simulator.GpioSimulator
Simulate Raspberry Pi GPIO — pure JMRI implementation, no Pi4J dependency.
Maintains a registry of provisioned input and output pins keyed by BCM
address so that RaspberryPiSensor and
RaspberryPiTurnout can share state.
-
Method Summary
Modifier and TypeMethodDescriptionstatic GpioSimulatorprovisionDigitalInputPin(int address, String name) Provision (or replace) a simulated digital input pin.provisionDigitalOutputPin(int address, String name) Provision (or replace) a simulated digital output pin.voidreset()Reset pin registry for testing.voidshutdown()Remove all provisioned pins (called from adapter shutdown).voidunprovisionInputPin(int address) Remove a provisioned input pin (called from sensor dispose).voidunprovisionOutputPin(int address) Remove a provisioned output pin (called from turnout dispose).
-
Method Details
-
getInstance
-
provisionDigitalInputPin
Provision (or replace) a simulated digital input pin.- Parameters:
address- BCM pin addressname- descriptive name (unused internally)- Returns:
- the new pin instance
-
provisionDigitalOutputPin
Provision (or replace) a simulated digital output pin.- Parameters:
address- BCM pin addressname- descriptive name (unused internally)- Returns:
- the new pin instance
-
unprovisionInputPin
Remove a provisioned input pin (called from sensor dispose). -
unprovisionOutputPin
Remove a provisioned output pin (called from turnout dispose). -
shutdown
Remove all provisioned pins (called from adapter shutdown). -
reset
Reset pin registry for testing. Preserves the singleton instance but clears all provisioned pins so that the next test starts clean.
-