Source code for sssm.wrap_sssm.utils.io
"""Helper functions for sssm (e.g. logger)
"""
import logging
[docs]
LOGGING_TYPES = dict(
DEBUG=logging.DEBUG,
INFO=logging.INFO,
WARNING=logging.WARNING,
ERROR=logging.ERROR,
CRITICAL=logging.CRITICAL,
)
[docs]
def set_log_level(verbose=None):
"""Convenience function for setting the logging level.
This function comes from the PySurfer package. See :
https://github.com/nipy/PySurfer/blob/master/surfer/utils.py
Parameters
----------
verbose : bool, str, int, or None
The verbosity of messages to print. If a str, it can be either
PROFILER, DEBUG, INFO, WARNING, ERROR, or CRITICAL.
"""
logger = logging.getLogger("sssm")
if isinstance(verbose, bool):
verbose = "INFO" if verbose else "WARNING"
if isinstance(verbose, str):
if verbose.upper() in LOGGING_TYPES:
verbose = verbose.upper()
verbose = LOGGING_TYPES[verbose]
logger.setLevel(verbose)
else:
raise ValueError("verbose must be in %s" % ", ".join(LOGGING_TYPES))
# def is_tensorpac_installed():
# """Test if tensorpac is installed."""
# try:
# import tensorpac # noqa
# except IOError: # pragma: no cover
# raise IOError("tensorpac needs to be installed. Please use `pip install tensorpac -U`.")
#
#
# def is_pyriemann_installed():
# """Test if pyRiemann is installed."""
# try:
# import pyriemann # noqa
# except IOError: # pragma: no cover
# raise IOError("pyRiemann needs to be installed. Please use `pip install pyriemann -U`.")
#
#
# def is_sleepecg_installed():
# """Test if sleepecg is installed."""
# try:
# import sleepecg # noqa
# except IOError: # pragma: no cover
# raise IOError("sleepecg needs to be installed. Please use `pip install sleepecg -U`.")