<?php

namespace SHServ\Implements;

/**
 * Минимальный набор методов для реализации скрипта контроля
 */
interface ControlScriptsInterface {
	/**
	 * Используй это для инициализации карты синхронизации устройств
	 * @return void
	 */
	public function register_sync_map();

	/**
	 * Тут можно подписатся на события генерируемые системой и устройствами. 
	 * Обработчик события должен быть объявлен в этом же классе или быть в формате анонимной функции.
	 * @return void
	 */
	public function register_events_handlers();

	/**
	 * Этот метод будет регулярно вызыватся системой раз в такт.
	 * @return void
	 */
	public function register_regular_scripts();

	/**
	 * Этот метод существует для того, чтоб в нём регистрировали необходимые скрипты, что будут вызываться из вне вручную, или из другого скрипта
	 * @return void
	 */
	public function register_actions_scripts();
}