Skip to content

Commit 4477865

Browse files
committed
Remove duplicate code
1 parent b0e7fd9 commit 4477865

File tree

9 files changed

+33
-47
lines changed

9 files changed

+33
-47
lines changed

src/nectarchain/dqm/start_dqm.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
from nectarchain.dqm.pixel_timeline import PixelTimelineHighLowGain
2222
from nectarchain.dqm.trigger_statistics import TriggerStatistics
2323
from nectarchain.makers import ChargesNectarCAMCalibrationTool
24+
from nectarchain.utils.constants import ALLOWED_CAMERAS
2425

2526
logging.basicConfig(format="%(asctime)s %(name)s %(levelname)s %(message)s")
2627
log = logging.getLogger(__name__)
@@ -32,10 +33,6 @@ def main():
3233
Main DQM script
3334
"""
3435

35-
prefix = "NectarCAM"
36-
cameras = [f"{prefix}" + "QM"]
37-
cameras.extend([f"{prefix + str(i)}" for i in range(2, 10)])
38-
3936
# Create an ArgumentParser object
4037
parser = argparse.ArgumentParser(
4138
description="NectarCAM Data Quality Monitoring tool"
@@ -83,8 +80,8 @@ def main():
8380
parser.add_argument(
8481
"-c",
8582
"--camera",
86-
choices=cameras,
87-
default=[camera for camera in cameras if "QM" in camera][0],
83+
choices=ALLOWED_CAMERAS,
84+
default=[camera for camera in ALLOWED_CAMERAS if "QM" in camera][0],
8885
help="""Process data for a specific NectarCAM camera.
8986
Default: NectarCAMQM (Qualification Model).""",
9087
type=str,

src/nectarchain/makers/core.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
from ..data import DataManagement
3030
from ..data.container.core import NectarCAMContainer, TriggerMapContainer
3131
from ..utils import ComponentUtils
32+
from ..utils.constants import ALLOWED_CAMERAS
3233
from .component import NectarCAMComponent, get_valid_component
3334

3435
logging.basicConfig(format="%(asctime)s %(name)s %(levelname)s %(message)s")
@@ -234,12 +235,8 @@ def __new__(cls, *args, **kwargs):
234235
def __init__(self, *args, **kwargs):
235236
super().__init__(*args, **kwargs)
236237

237-
prefix = "NectarCAM"
238-
cameras = [f"{prefix}" + "QM"]
239-
cameras.extend([f"{prefix + str(i)}" for i in range(2, 10)])
240-
241-
if self.camera not in cameras and self.run_file is None:
242-
raise TraitError(f"The camera field should be one of {cameras}.")
238+
if self.camera not in ALLOWED_CAMERAS and self.run_file is None:
239+
raise TraitError(f"The camera field should be one of {ALLOWED_CAMERAS}.")
243240

244241
if not ("output_path" in kwargs.keys()):
245242
self._init_output_path()

src/nectarchain/user_scripts/ggrolleron/gain_PhotoStat_computation.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,7 @@
1010
from nectarchain.data.management import DataManagement
1111
from nectarchain.makers.calibration import PhotoStatisticNectarCAMCalibrationTool
1212
from nectarchain.makers.extractor.utils import CtapipeExtractor
13-
14-
prefix = "NectarCAM"
15-
cameras = [f"{prefix}" + "QM"]
16-
cameras.extend([f"{prefix + str(i)}" for i in range(2, 10)])
13+
from nectarchain.utils.constants import ALLOWED_CAMERAS
1714

1815
parser = argparse.ArgumentParser(
1916
prog="gain_SPEfit_computation.py",
@@ -31,8 +28,8 @@
3128
parser.add_argument(
3229
"-c",
3330
"--camera",
34-
choices=cameras,
35-
default=[camera for camera in cameras if "QM" in camera][0],
31+
choices=ALLOWED_CAMERAS,
32+
default=[camera for camera in ALLOWED_CAMERAS if "QM" in camera][0],
3633
help="""Process data for a specific NectarCAM camera.
3734
Default: NectarCAMQM (Qualification Model).""",
3835
type=str,

src/nectarchain/user_scripts/ggrolleron/gain_SPEfit_combined_computation.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,7 @@
1313
FlatFieldSPECombinedStdNectarCAMCalibrationTool,
1414
)
1515
from nectarchain.makers.extractor.utils import CtapipeExtractor
16-
17-
prefix = "NectarCAM"
18-
cameras = [f"{prefix}" + "QM"]
19-
cameras.extend([f"{prefix + str(i)}" for i in range(2, 10)])
16+
from nectarchain.utils.constants import ALLOWED_CAMERAS
2017

2118
parser = argparse.ArgumentParser(
2219
prog="gain_SPEfit_combined_computation.py",
@@ -30,8 +27,8 @@
3027
parser.add_argument(
3128
"-c",
3229
"--camera",
33-
choices=cameras,
34-
default=[camera for camera in cameras if "QM" in camera][0],
30+
choices=ALLOWED_CAMERAS,
31+
default=[camera for camera in ALLOWED_CAMERAS if "QM" in camera][0],
3532
help="""Process data for a specific NectarCAM camera.
3633
Default: NectarCAMQM (Qualification Model).""",
3734
type=str,

src/nectarchain/user_scripts/ggrolleron/gain_SPEfit_computation.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,7 @@
1414
FlatFieldSPENominalStdNectarCAMCalibrationTool,
1515
)
1616
from nectarchain.makers.extractor.utils import CtapipeExtractor
17-
18-
prefix = "NectarCAM"
19-
cameras = [f"{prefix}" + "QM"]
20-
cameras.extend([f"{prefix + str(i)}" for i in range(2, 10)])
17+
from nectarchain.utils.constants import ALLOWED_CAMERAS
2118

2219
parser = argparse.ArgumentParser(
2320
prog="gain_SPEfit_computation.py",
@@ -31,8 +28,8 @@
3128
parser.add_argument(
3229
"-c",
3330
"--camera",
34-
choices=cameras,
35-
default=[camera for camera in cameras if "QM" in camera][0],
31+
choices=ALLOWED_CAMERAS,
32+
default=[camera for camera in ALLOWED_CAMERAS if "QM" in camera][0],
3633
help="""Process data for a specific NectarCAM camera.
3734
Default: NectarCAMQM (Qualification Model).""",
3835
type=str,

src/nectarchain/user_scripts/ggrolleron/load_wfs_compute_charge.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,7 @@
1515
ChargesNectarCAMCalibrationTool,
1616
WaveformsNectarCAMCalibrationTool,
1717
)
18-
19-
prefix = "NectarCAM"
20-
cameras = [f"{prefix}" + "QM"]
21-
cameras.extend([f"{prefix + str(i)}" for i in range(2, 10)])
18+
from nectarchain.utils.constants import ALLOWED_CAMERAS
2219

2320
parser = argparse.ArgumentParser(
2421
prog="load_wfs_compute_charge",
@@ -33,8 +30,8 @@
3330
parser.add_argument(
3431
"-c",
3532
"--camera",
36-
choices=cameras,
37-
default=[camera for camera in cameras if "QM" in camera][0],
33+
choices=ALLOWED_CAMERAS,
34+
default=[camera for camera in ALLOWED_CAMERAS if "QM" in camera][0],
3835
help="""Process data for a specific NectarCAM camera.
3936
Default: NectarCAMQM (Qualification Model).""",
4037
type=str,

src/nectarchain/user_scripts/jlenain/dqm_job_submitter/submit_dqm_processor.py

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,15 +21,13 @@
2121
from DIRAC.Interfaces.API.Job import Job
2222
from DIRAC.Resources.Catalog.FileCatalogClient import FileCatalogClient
2323

24+
from nectarchain.utils.constants import ALLOWED_CAMERAS
25+
2426
logging.basicConfig(format="[%(levelname)s] %(message)s")
2527
logger = logging.getLogger(__name__)
2628

2729
dirac = Dirac()
2830

29-
prefix = "NectarCAM"
30-
cameras = [f"{prefix}" + "QM"]
31-
cameras.extend([f"{prefix+str(i)}" for i in range(2, 10)])
32-
3331
# Option and argument parser
3432
parser = argparse.ArgumentParser(description="Submit jobs on DIRAC to run the DQM")
3533
parser.add_argument(
@@ -49,8 +47,8 @@
4947
parser.add_argument(
5048
"-c",
5149
"--camera",
52-
choices=cameras,
53-
default=[camera for camera in cameras if "QM" in camera][0],
50+
choices=ALLOWED_CAMERAS,
51+
default=[camera for camera in ALLOWED_CAMERAS if "QM" in camera][0],
5452
help="Process data for a specific NectarCAM camera. Default: Qualification Model.",
5553
type=str,
5654
)

src/nectarchain/user_scripts/jlenain/parse_dqm_fits_file.py

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,11 @@
1818
from DIRAC.Interfaces.API.Dirac import Dirac
1919

2020
from nectarchain.dqm.db_utils import DQMDB
21+
from nectarchain.utils.constants import ALLOWED_CAMERAS
2122

2223
logging.basicConfig(format="[%(levelname)s] %(message)s")
2324
logger = logging.getLogger(__name__)
2425

25-
prefix = "NectarCAM"
26-
cameras = [f"{prefix}" + "QM"]
27-
cameras.extend([f"{prefix+str(i)}" for i in range(2, 10)])
2826

2927
# Option and argument parser
3028
parser = argparse.ArgumentParser(
@@ -55,8 +53,8 @@
5553
parser.add_argument(
5654
"-c",
5755
"--camera",
58-
choices=cameras,
59-
default=[camera for camera in cameras if "QM" in camera][0],
56+
choices=ALLOWED_CAMERAS,
57+
default=[camera for camera in ALLOWED_CAMERAS if "QM" in camera][0],
6058
help="Process data for a specific NectarCAM camera. Default: Qualification Model.",
6159
type=str,
6260
)

src/nectarchain/utils/constants.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
def get_allowed_cameras():
2+
prefix = "NectarCAM"
3+
allowed_cameras = [f"{prefix}" + "QM"]
4+
allowed_cameras.extend([f"{prefix + str(i)}" for i in range(2, 10)])
5+
return allowed_cameras
6+
7+
8+
ALLOWED_CAMERAS = get_allowed_cameras()

0 commit comments

Comments
 (0)