diff --git a/eos/gamedata.py b/eos/gamedata.py index 9064f7b94..588db93fd 100644 --- a/eos/gamedata.py +++ b/eos/gamedata.py @@ -28,7 +28,7 @@ import traceback try: from collections import OrderedDict except ImportError: - from gui.utils.compat import OrderedDict + from utils.compat import OrderedDict class Effect(EqBase): ''' diff --git a/eos/saveddata/fit.py b/eos/saveddata/fit.py index ac66da6f1..d61950de6 100644 --- a/eos/saveddata/fit.py +++ b/eos/saveddata/fit.py @@ -32,7 +32,7 @@ import time try: from collections import OrderedDict except ImportError: - from gui.utils.compat import OrderedDict + from utils.compat import OrderedDict class Fit(object): """Represents a fitting, with modules, ship, implants, etc.""" diff --git a/gui/bitmapLoader.py b/gui/bitmapLoader.py index fb1139f57..e0a773b98 100644 --- a/gui/bitmapLoader.py +++ b/gui/bitmapLoader.py @@ -25,7 +25,7 @@ import time try: from collections import OrderedDict except ImportError: - from gui.utils.compat import OrderedDict + from utils.compat import OrderedDict cachedBitmapsCount = 0 cachedBitmaps = OrderedDict() diff --git a/gui/builtinStatsViews/targetingMiscViewFull.py b/gui/builtinStatsViews/targetingMiscViewFull.py index 6dda18821..fc2673389 100644 --- a/gui/builtinStatsViews/targetingMiscViewFull.py +++ b/gui/builtinStatsViews/targetingMiscViewFull.py @@ -26,7 +26,7 @@ import locale try: from collections import OrderedDict except ImportError: - from gui.utils.compat import OrderedDict + from utils.compat import OrderedDict class TargetingMiscViewFull(StatsView): name = "targetingmiscViewFull" diff --git a/gui/itemStats.py b/gui/itemStats.py index b721b75b6..d225abe65 100644 --- a/gui/itemStats.py +++ b/gui/itemStats.py @@ -32,7 +32,7 @@ import config try: from collections import OrderedDict except ImportError: - from gui.utils.compat import OrderedDict + from utils.compat import OrderedDict class ItemStatsDialog(wx.Dialog): counter = 0 diff --git a/service/market.py b/service/market.py index 74fadf7fc..dd811282a 100644 --- a/service/market.py +++ b/service/market.py @@ -32,7 +32,7 @@ import service.conversions as conversions try: from collections import OrderedDict except ImportError: - from gui.utils.compat import OrderedDict + from utils.compat import OrderedDict # Event which tells threads dependent on Market that it's initialized mktRdy = threading.Event() diff --git a/service/port.py b/service/port.py index 117371736..7303d09af 100644 --- a/service/port.py +++ b/service/port.py @@ -27,7 +27,7 @@ import service try: from collections import OrderedDict except ImportError: - from gui.utils.compat import OrderedDict + from utils.compat import OrderedDict FIT_WIN_HEADINGS = ["High power", "Medium power", "Low power", "Rig Slot", "Sub System", "Charges"] EFT_SLOT_ORDER = [Slot.LOW, Slot.MED, Slot.HIGH, Slot.RIG, Slot.SUBSYSTEM] diff --git a/eos/utils/compat.py b/utils/compat.py similarity index 100% rename from eos/utils/compat.py rename to utils/compat.py diff --git a/utils/timer.py b/utils/timer.py new file mode 100644 index 000000000..811dfe348 --- /dev/null +++ b/utils/timer.py @@ -0,0 +1,30 @@ +import time + +class Timer(object): + """ + Generic timing class for simple profiling. + + Usage: + + with Timer(verbose=True) as t: + # code to be timed + time.sleep(5) + + Output: + elapsed time: 5000.000 ms + + Can also access time with t.secs + """ + def __init__(self, verbose=False): + self.verbose = verbose + + def __enter__(self): + self.start = time.time() + return self + + def __exit__(self, *args): + self.end = time.time() + self.secs = self.end - self.start + self.msecs = self.secs * 1000 # millisecs + if self.verbose: + print 'elapsed time: %f ms' % self.msecs \ No newline at end of file