Source code for wbia.expt

# -*- coding: utf-8 -*-
### __init__.py ###
# flake8: noqa
import logging
from wbia.expt import experiment_configs
from wbia.expt import experiment_drawing
from wbia.expt import test_result
from wbia.expt import harness
from wbia.expt import experiment_helpers
from wbia.expt import experiment_printres
import utool as ut

print, rrr, profile = ut.inject2(__name__, '[wbia.expt]')
logger = logging.getLogger('wbia')


[docs]def reassign_submodule_attributes(verbose=True): """ why reloading all the modules doesnt do this I don't know """ import sys if verbose and '--quiet' not in sys.argv: logger.info('dev reimport') # Self import import wbia.expt # Implicit reassignment. seen_ = set([]) for tup in IMPORT_TUPLES: if len(tup) > 2 and tup[2]: continue # dont import package names submodname, fromimports = tup[0:2] submod = getattr(wbia.expt, submodname) for attr in dir(submod): if attr.startswith('_'): continue if attr in seen_: # This just holds off bad behavior # but it does mimic normal util_import behavior # which is good continue seen_.add(attr) setattr(wbia.expt, attr, getattr(submod, attr))
[docs]def reload_subs(verbose=True): """Reloads wbia.expt and submodules""" rrr(verbose=verbose) def fbrrr(*args, **kwargs): """fallback reload""" pass getattr(experiment_configs, 'rrr', fbrrr)(verbose=verbose) getattr(harness, 'rrr', fbrrr)(verbose=verbose) getattr(experiment_helpers, 'rrr', fbrrr)(verbose=verbose) getattr(experiment_printres, 'rrr', fbrrr)(verbose=verbose) getattr(results_all, 'rrr', fbrrr)(verbose=verbose) getattr(results_analyzer, 'rrr', fbrrr)(verbose=verbose) getattr(results_organizer, 'rrr', fbrrr)(verbose=verbose) rrr(verbose=verbose) try: # hackish way of propogating up the new reloaded submodule attributes reassign_submodule_attributes(verbose=verbose) except Exception as ex: logger.info(ex)
rrrr = reload_subs IMPORT_TUPLES = [ ('experiment_configs', None), ('harness', None), ('experiment_helpers', None), ('experiment_printres', None), ('results_all', None), ('results_analyzer', None), ('results_organizer', None), ] """ Regen Command: cd /home/joncrall/code/wbia/wbia.expt makeinit.py """ # autogenerated __init__.py for: '/home/joncrall/code/wbia/wbia.expt'