o
    Oc                     @   s8   d dl mZmZ d dlZddlmZ G dd deZdS )    )ABCabstractmethodN   )
Controllerc                       s6   e Zd Zdef fddZdd Zedd Z  ZS )	Component
controllerc                   s   t  jdi | || _d S )N )super__init__r   )selfr   kwargs	__class__r   )/home/sam/code/vtrack420/lib/component.pyr
      s   
zComponent.__init__c                    s   t  | _|  I d H  d S N)asyncioget_running_looplooprunr   r   r   r   start
   s   
zComponent.startc                    s   d S r   r   r   r   r   r   r      s   zComponent.run)	__name__
__module____qualname__r   r
   r   r   r   __classcell__r   r   r   r   r      s
    r   )abcr   r   r   typesr   r   r   r   r   r   <module>   s    