| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- import os
- from DynLoader.modInfo import modInfo
- class DynLoaderMod(object):
- instance = None
- @staticmethod
- def getInstance():
- if DynLoaderMod.instance==None:
- DynLoaderMod.instance = DynLoaderMod()
- return DynLoaderMod.instance
- def __init__(self,dir,method_prefix=""):
- self._modules = []
- files = os.listdir(dir)
- self._prefix = method_prefix
- _mod = modInfo.modInfo
- for f in files:
- if f!='__pycache__' and f.endswith(".py"):
- self._modules.append({
- "file": f,
- "modInfo": modInfo(dir+"/"+f)
- })
-
- def __del__(self):
- for x in range(self._modules):
- del self._modules[x]
- del self._modules
- def execute(self, method, arg1 = None, arg2 = None, arg3 = None):
- for m in self._modules:
- if m["modInfo"].Loaded:
- m["modInfo"].Execute(method, arg1, arg2, arg3)
-
|