DataStructure.AnalysisRangeInfo#

AnalysisRangeInfo.py

Copyright (c) 2018-2024, SAXS Team, KEK-PF

This class is intended to unify the following existing range_info’s and the newly introduced decomp_editor’s range_info.

from the attribute range_info

AnalyzerDialog.range_info[0] AnalyzerDialog.set_analysis_ranges()

AnalyzerUtil.set_analysis_ranges()

from get_setting( … )
Analyzer.get_analysis_ranges()

AnalyzerUtil.get_analysis_ranges()

How to unify

  1. define ‘analysis_range_info’ as a temporary setting info. this ensures that it is cleared everytime when the in_folder gets changed.

  2. a range info is a list of range record, which has either one of the following styles

    [ PeakInfo, [f1, t1], [f2, t2] ] (new style) [ PeakInfo, [f1, t1] ] (new style)

    where old-style info has been convereted as follows

    [ lower, middle, upper ] => [ PeakInfo(k, middle), [lower, middle], [middle, upper] ] [ lower, upper, upper ] => [ PeakInfo(k, upper), [lower, upper] ] for a microfluidic range

class AnalysisRangeInfo(ranges, editor=None)#

Bases: object

get_old_style_ranges()#
get_ranges()#
class PairedRange(peak_info, range1=None, range2=None)#

Bases: object

normally, range1 is not None. however, range1 can be None in abnormal cases as 20161104/BL-10C/OA

as_list(k)#
get_concatenated_range()#
get_fromto_list()#
get_log_str()#
update_range(ad, f, t)#
convert_to_paired_ranges(in_ranges)#
get_analysis_info_from_curve(curve, editor)#
report_ranges_from_analysis_ranges(j0, analysis_ranges)#
set_default_analysis_range_info(x_curve)#
shift_paired_ranges(j0, paired_ranges)#
shift_range_from_to_by_x(x, f, t)#
upgrade_ranges(ranges)#