/// <summary> /// Retrieves BeamInfos for the given configuration. /// </summary> /// <param name="config"> /// The configuration of interest, a ValueTuple of /// ArisSystemType, int, LensType. Developers are encouraged /// to keep these as such, e.g., /// using BeamConfig = ValueTuple<ArisSystemType, int, LensType>; /// </param> /// <returns>An area of BeamInfo describing each beam.</returns> public static BeamInfo[] GetBeamInformation(BeamConfig config) { if (lookupTable.TryGetValue(config, out var value)) { return(value); } else { var msg = $"No elemnet found for {config}; {lookupTable.Count} entries"; throw new ArgumentOutOfRangeException(msg); } }
/// <summary> /// Inidicates whether the given configuration is a known /// ARIS configuration. /// </summary> /// <param name="config">The configuration of interest.</param> /// <returns>True, if the configuration is known; otherwise, False.</returns> public static bool IsKnownBeamConfiguration(BeamConfig config) { return(lookupTable.ContainsKey(config)); }