Files
VA-Control-for-linux/reference/decompiled/future.py
T
maikandClaude Opus 4.8 a7c93fa266 Erster Commit: nativer Linux-Port aus macOS-Bytecode
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>
2026-08-20 19:57:01 +02:00

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