https://github.com/fenderglass/Ragout
Revision 7b92fe7a0c5fc29dce009c066d35dd8298462388 authored by Mikhail Kolmogorov on 08 December 2020, 17:38:21 UTC, committed by GitHub on 08 December 2020, 17:38:21 UTC
Add architecture ppc64le to travis build
2 parent s 031e062 + 686db1b
Raw File
Tip revision: 7b92fe7a0c5fc29dce009c066d35dd8298462388 authored by Mikhail Kolmogorov on 08 December 2020, 17:38:21 UTC
Merge pull request #70 from ddeka2910/master
Tip revision: 7b92fe7
debug.py
"""
This module provedes some functions
for debug output
"""

from __future__ import absolute_import
from __future__ import division
import os
import shutil


class DebugConfig():
    """
    Singleton providing global debug configuration
    """
    instance = None

    def __init__(self):
        self.debug_dir = None
        self.debugging = False

    def set_debugging(self, debugging):
        self.debugging = debugging

    def set_debug_dir(self, debug_dir):
        if not self.debugging:
            return
        self.debug_dir = debug_dir
        if not os.path.isdir(debug_dir):
            os.mkdir(debug_dir)

    def clear_debug_dir(self):
        if not self.debugging:
            return
        if os.path.isdir(self.debug_dir):
            shutil.rmtree(self.debug_dir)
            os.mkdir(self.debug_dir)

    @staticmethod
    def get_instance():
        if not DebugConfig.instance:
            DebugConfig.instance = DebugConfig()
        return DebugConfig.instance
back to top