35def get_input_years(config: ConfigAccumulator) -> list[int]:
36 """
37 Utility function to get the list of years that the input corresponds to
38 """
39 years = []
40 if config.campaign() is Campaign.MC20a:
41 years = [2015, 2016]
42 elif is_data_from(config, 2015):
43 years = [2015]
44 elif is_data_from(config, 2016):
45 years = [2016]
46 elif config.campaign() is Campaign.MC20d or is_data_from(config, 2017):
47 years = [2017]
48 elif config.campaign() is Campaign.MC20e or is_data_from(config, 2018):
49 years = [2018]
50 elif config.campaign() is Campaign.MC23a or is_data_from(config, 2022):
51 years = [2022]
52 elif config.campaign() is Campaign.MC23d or is_data_from(config, 2023):
53 years = [2023]
54 elif config.campaign() is Campaign.MC23e or is_data_from(config, 2024):
55 years = [2024]
56 elif config.campaign() is Campaign.MC23g or is_data_from(config, 2025):
57 years = [2025]
58 else:
59 raise ValueError('TriggerAnalysisConfig: unable to deduce data taking year for input file')
60
61 return years
62
63