@startuml

!includeurl https://gist.githubusercontent.com/Arnaud-Bonneuil/c317a7a30bed7d64e2b5b1f558ac00cf/raw/sober.puml

!includeurl https://raw.githubusercontent.com/HomeMadeBots/Five_Buttons_Keypad/main/doc/E_Button_Id.puml
!includeurl https://raw.githubusercontent.com/HomeMadeBots/Five_Buttons_Keypad/main/doc/Any_Button_Pressed.puml
!includeurl https://raw.githubusercontent.com/HomeMadeBots/Button_Events/main/doc/Button_Pressed.puml
!includeurl https://raw.githubusercontent.com/HomeMadeBots/Five_Buttons_Keypad/main/doc/Five_Buttons_Keypad_Sensor.puml
!includeurl https://raw.githubusercontent.com/HomeMadeBots/Hardware_IO_Interfaces/main/doc/Analogic_Input_5.puml

note "The Five_Button_Keypad_Sensor Component_Type provides\n5 ports realizing Button_Pressed interface for each button." as Note_1

E_Button_Id <.down. Any_Button_Pressed : use
Any_Button_Pressed <|..down.# "Any_Button_Pressed" Five_Buttons_Keypad_Sensor
Button_Pressed <|..down.# "Select_Button_Pressed\lRight_Button_Pressed\nLeft_Button_Pressed\nUp_Button_Pressed\nDown_Button_Pressed" Five_Buttons_Keypad_Sensor
Five_Buttons_Keypad_Sensor - Note_1
Five_Buttons_Keypad_Sensor "Analog_Pin" #.down.> Analogic_Input_5

@enduml