------------------------------------------------------------------------------------------------------------------------------------------------------------- ┌────────────────────────────────┐ │Device │ ├────────────────────────────────┤ │+id: string │ │+name: string │ │+icon:Icon? │ │+dtype: DeviceType │ │+provider: HostSessionProvider │ │+manager: DeviceManager │ │+main_context: MainContext │ ┌────────────────────────────────────┐ ┌────────────────────────────────────┐ ┌────────────────────────────────────┐ ┌────────────────────────────────────┐ │ │ ┌────────────────────────────────────┐ │N3 These 2 functions are implemented│ │N4 These 2 functions are implemented│ │N1 These 2 functions are implemented│ │N2 These 2 functions are implemented│ │-check_open (): void │ │N5 These 2 functions are implemented│ ├────────────────────────────────────┤ ├────────────────────────────────────┤ ├────────────────────────────────────┤ ├────────────────────────────────────┤ │-check_process(): Process │ ├────────────────────────────────────┤ │ │--│ │ │ │---│ │ │-on_host_session_closed(): void │-- │ │ └────────────────────────────────────┘ └────────────────────────────────────┘ └────────────────────────────────────┘ └────────────────────────────────────┘ │-attach_host_session(): void │ └────────────────────────────────────┘ │-detach_host_session(): void │ │-on_agent_session_closed(): void│ │-on_spawn_added(): void │ │-on_spawn_removed(): void │ │-on_child_added(): void │ │-on_child_removed(): void │ │-on_process_crashed(): void │ │-on_output(): void │ │-on_uninjected(): void │ │-create ():T │ └────────────────────────────────┘