class_docstr: An auxiliary data structure that allows user to control stages and track progress in a single averaging step
  
  :param scheduled_time: estimated time when averaging should begin. Will be used for scheduling
  :param deadline: if averaging is still in progress at this time, it should be stopped due to TimeoutError
  :param allow_retries: if True, allow running matchmaking and all-reduce again if previous attempt fails
  :param weight: averaging weight, can be changed afterwards
  :param data_for_gather: send this data to all peers in the next group and gather it from groupmates
code: def __del__(self):
      if os.getpid() == self._origin_pid and not self.triggered:
          logger.warning(
              "Deleted an averaging StepControl, but the step was not triggered. This may cause other "
              "peers to fail an averaging round via TimeoutError."
          )
      super().__del__()
  
imports: import os
  import struct
  from enum import Enum
  from typing import Optional
  import numpy
  import torch
  from hivemind.utils import DHTExpiration, MPFuture, get_dht_time, get_logger
label_desc: Use image node_id 19 for calling the StepControl obj's underlying member method code with example usage: obj.__del__() without return types