class_docstr: Extract metadata written by the SDT-control software
  
  Some of it is encoded in the comment strings
  (see :py:meth:`parse_comments`). Also, date and time are encoded in a
  peculiar way (see :py:meth:`get_datetime`). Use :py:meth:`extract_metadata`
  to update the metadata dict.
docstr: Get the version of SDT-control metadata encoded in the comments
  
  Parameters
  ----------
  comments
      List of SPE file comments, typically ``metadata["comments"]``.
  
  Returns
  -------
  Major and minor version. ``-1, -1`` if detection failed.
docstr_tok: ["Get","the","version","of","SDT-control","metadata","encoded","in","the","comments","Parameters","--","--","--","--","--","comments","List","of","SPE","file","comments",",","typically","``","metadata","[","``","comments","''","]","``",".","Returns","--","--","--","-","Major","and","minor","version",".","``","-1",",","-1","``","if","detection","failed","."]
code: def get_comment_version(comments: Sequence[str]) -> Tuple[int, int]:
      """Get the version of SDT-control metadata encoded in the comments
  
      Parameters
      ----------
      comments
          List of SPE file comments, typically ``metadata["comments"]``.
  
      Returns
      -------
      Major and minor version. ``-1, -1`` if detection failed.
      """
      if comments[4][70:76] != "COMVER":
          return -1, -1
      try:
          return int(comments[4][76:78]), int(comments[4][78:80])
      except ValueError:
          return -1, -1
  
imports: from datetime import datetime
  import logging
  import os
  from typing import Any, Callable, Dict, Iterator, List, Mapping, Optional, Sequence, Tuple, Union
  import warnings
  import numpy
  from ..core.request import Request, IOMode, InitializationError
  from ..core.v3_plugin_api import PluginV3, ImageProperties
label_desc: Use image node_id 1 for calling the SDTControlSpec obj's underlying member method code with example usage: obj.get_comment_version(comments) and returns: unknown,  unknown, int,  int, unknown,  unknown