Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 0 additions & 5 deletions config.json

This file was deleted.

13 changes: 0 additions & 13 deletions config.py

This file was deleted.

4 changes: 1 addition & 3 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,16 @@

from simulator.utils.setup.documentation import DocCommand


if __name__ == "__main__":
setup(
name="simulation_generator",
version="1.0.0",
version="1.0.1",
packages=find_packages(exclude=("tests", "tests.*")),
url="",
license="",
author="avcaron",
author_email="",
description="",
data_files=[(".", ["config.py", "config.json"])],
scripts=list(
filter(lambda s: "init" not in s, glob.glob("scripts/*.py"))
),
Expand Down
7 changes: 7 additions & 0 deletions simulator/default.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
import typing
import pathlib

SINGULARITY_PATH: typing.Final[pathlib.PurePath] = pathlib.PurePath()
SINGULARITY_NAME: typing.Final[str] = "voxsim_singularity_latest.sif"
SINGULARITY: typing.Final[pathlib.PurePath] = SINGULARITY_PATH / SINGULARITY_NAME
SINGULARITY_EXEC: typing.Final[str] = "singularity"
1 change: 1 addition & 0 deletions simulator/runner/__init__.py
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
from .config import SingularityConfig
from .simulation_runner import SimulationRunner
10 changes: 10 additions & 0 deletions simulator/runner/config.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
import dataclasses
import pathlib

import simulator.default as default


@dataclasses.dataclass
class SingularityConfig:
singularity: pathlib.PurePath = default.SINGULARITY
singularity_exec: str = default.SINGULARITY_EXEC
19 changes: 6 additions & 13 deletions simulator/runner/legacy.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,21 @@
from numpy import ones_like, sum
import nrrd

from config import get_config
from .config import SingularityConfig
from ..exceptions import SimulationRunnerException
from ..utils.logging import RTLogging


logger = logging.getLogger(basename(__file__).split(".")[0])


class SimulationRunner:

def __init__(
self,
base_naming,
geometry_infos,
simulation_infos=None,
singularity_conf=get_config(),
singularity_conf=SingularityConfig(),
output_nifti=False,
):
self._geometry_path = geometry_infos["file_path"]
Expand All @@ -40,17 +40,10 @@ def __init__(
self._compartment_ids = simulation_infos["compartment_ids"]

singularity_conf = (
singularity_conf if singularity_conf else get_config()
)
self._singularity = path.join(
singularity_conf["singularity_path"],
singularity_conf["singularity_name"],
)
self._singularity_exec = (
singularity_conf["singularity_exec"]
if "singularity_exec" in singularity_conf
else "singularity"
singularity_conf if singularity_conf else SingularityConfig()
)
self._singularity = singularity_conf.singularity
self._singularity_exec = singularity_conf.singularity_exec

self._run_simulation = True if simulation_infos else False
self._extension = "nii.gz" if output_nifti else "nrrd"
Expand Down
15 changes: 5 additions & 10 deletions simulator/runner/simulation_runner.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@
from os.path import basename
from subprocess import PIPE, Popen

from config import get_config
from .config import SingularityConfig
from .datastore import Datastore
from ..utils.logging import RTLogging


logger = logging.getLogger(basename(__file__).split(".")[0])


class AsyncRunner:

def __init__(self):
self._event_loop = new_event_loop()

Expand Down Expand Up @@ -49,16 +49,11 @@ async def _run_async(self, command, log_file, log_tag):
class SimulationRunner(AsyncRunner):
_apps = {"phantom": "launch_voxsim", "diffusion mri": "launch_mitk"}

def __init__(self, singularity_conf=get_config()):
self._singularity = path.join(
singularity_conf["singularity_path"],
singularity_conf["singularity_name"],
)
def __init__(self, singularity_conf=SingularityConfig()):
self._singularity = singularity_conf.singularity
super().__init__()

self._singularity_exec = "singularity"
if "singularity_exec" in singularity_conf:
self._singularity_exec = singularity_conf["singularity_exec"]
self._singularity_exec = singularity_conf.singularity_exec

def _bind_singularity(self, step, paths, arguments):
return "{} run -B {} --app {} {} {}".format(
Expand Down