mirror of
https://github.com/alicevision/Meshroom.git
synced 2025-08-02 00:08:29 +02:00
New notion of local isolated computation for python nodes using meshroom_compute
Reoganization - BaseNode: is the base class for all nodes - Node: is now dedicated to python nodes, with the implentation directly in the process function - CommandLineNode: dedicated to generate and run external command lines
This commit is contained in:
parent
faece7efca
commit
727a4d129b
6 changed files with 288 additions and 152 deletions
|
@ -183,10 +183,11 @@ class ChunksMonitor(QObject):
|
|||
return self.statusFiles, self.monitorableChunks
|
||||
elif self.filePollerRefresh is PollerRefreshStatus.MINIMAL_ENABLED.value:
|
||||
for c in self.monitorableChunks:
|
||||
# Only chunks that are run externally should be monitored; when run locally, status changes are already notified
|
||||
if c.isExtern():
|
||||
# Chunks with an ERROR status may be re-submitted externally and should thus still be monitored
|
||||
if c._status.status in {Status.SUBMITTED, Status.RUNNING, Status.ERROR}:
|
||||
# Only chunks that are run externally or local_isolated should be monitored,
|
||||
# when run locally, status changes are already notified.
|
||||
# Chunks with an ERROR status may be re-submitted externally and should thus still be monitored
|
||||
if (c.isExtern() and c._status.status in (Status.SUBMITTED, Status.RUNNING, Status.ERROR)) or (
|
||||
(c._status.execMode is ExecMode.LOCAL_ISOLATED) and (c._status.status in (Status.SUBMITTED, Status.RUNNING))):
|
||||
files.append(c.statusFile)
|
||||
chunks.append(c)
|
||||
return files, chunks
|
||||
|
@ -582,8 +583,8 @@ class UIGraph(QObject):
|
|||
def updateGraphComputingStatus(self):
|
||||
# update graph computing status
|
||||
computingLocally = any([
|
||||
(ch.status.execMode == ExecMode.LOCAL and
|
||||
ch.status.sessionUid == sessionUid and
|
||||
(((ch.status.execMode == ExecMode.LOCAL and ch.status.sessionUid == sessionUid) or
|
||||
ch.status.execMode == ExecMode.LOCAL_ISOLATED) and
|
||||
ch.status.status in (Status.RUNNING, Status.SUBMITTED))
|
||||
for ch in self._sortedDFSChunks])
|
||||
submitted = any([ch.status.status == Status.SUBMITTED for ch in self._sortedDFSChunks])
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue