Läuft die Voice Acoustic VA-Remotecontrol (AllDSP AllControl) nativ unter Linux auf echtem wxGTK 3.0 — ohne Wine und ohne dekompilierten App-Code. Ausgeführt wird das unveränderte Python-2.7-Bytecode aus dem macOS-.app; C-Extensions (wxGTK/numpy/ scipy/PortAudio) kommen nativ aus Debian stretch. Enthält: va/ (Original-.pyc + pure-Python-Libs + Assets + launch.py mit den drei Linux-Fixes), Dockerfile/run.sh/entrypoint.sh, reference/ (dekompilierter Quellcode zum Debuggen) und README/STATUS. img.cache (378 MB, regenerierbar) ist per .gitignore ausgeschlossen. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
57 lines
1.7 KiB
Python
57 lines
1.7 KiB
Python
# uncompyle6 version 3.9.3
|
|
# Python bytecode version base 2.6 (62161)
|
|
# Decompiled from: Python 3.9.25 (main, Oct 31 2025, 23:16:49)
|
|
# [GCC 14.2.0]
|
|
# Embedded file name: future.pyc
|
|
# Compiled at: 2022-04-20 07:08:29
|
|
from threading import *
|
|
import copy, mytime, traceback, sys, inspect, mytime, wx
|
|
|
|
class Future:
|
|
|
|
def __init__(self, delay, func, *param):
|
|
self.__done = 0
|
|
self.__result = None
|
|
self.__status = 'working'
|
|
self.__C = Condition()
|
|
self.__T = Thread(target=self.Wrapper, args=(func, param, delay))
|
|
self.__T.setName('FutureThread')
|
|
self.__T.start()
|
|
self.calledFrom = inspect.getouterframes(inspect.currentframe(), 2)[1][3]
|
|
self.funcName = func.__name__
|
|
curframe = inspect.currentframe()
|
|
calframe = inspect.getouterframes(curframe, 2)
|
|
return
|
|
|
|
def __repr__(self):
|
|
return '<Future at ' + hex(id(self)) + ':' + self.__status + '>'
|
|
|
|
def __call__(self):
|
|
self.__C.acquire()
|
|
while self.__done == 0:
|
|
self.__C.wait()
|
|
|
|
self.__C.release()
|
|
a = copy.deepcopy(self.__result)
|
|
return a
|
|
|
|
def Wrapper(self, func, param, delay):
|
|
self.__C.acquire()
|
|
mytime.sleep(delay)
|
|
try:
|
|
self.__result = wx.CallAfter(func, *param)
|
|
except:
|
|
self.__result = 'Exception raised within Future, function ' + self.funcName + ' called from ' + self.calledFrom
|
|
print mytime.displayTime(), self.__result
|
|
traceback.print_exc(file=sys.stdout)
|
|
|
|
self.__done = 1
|
|
self.__status = `(self.__result)`
|
|
self.__C.notify()
|
|
self.__C.release()
|
|
return
|
|
|
|
|
|
|
|
# okay decompiling pycode/future.pyc
|