#encoding = utf8
import logging
import time
from abc import ABC, abstractmethod
from queue import Queue
from threading import Event, Thread

from utils import SyncQueue

logger = logging.getLogger(__name__)


class BaseRender(ABC):
    def __init__(self, play_clock, context, type_):
        self._play_clock = play_clock
        self._context = context
        # self._queue = SyncQueue(context.batch_size, f'{type_}RenderQueue')
        # self._exit_event = Event()
        # self._thread = Thread(target=self._on_run, name=thread_name)
        # self._exit_event.set()
        # self._thread.start()

    @abstractmethod
    def render(self, frame, ps):
        pass