Skip to content

Saving/loading

This page contains a listing of all functions to load and save .pssession and .psmethod files.

Functions:

pypalmsens.load_method_file

load_method_file(path: str | Path) -> MethodType

Load a method file (.psmethod).

Parameters:

  • path

    (Path | str) –

    Path to method file

Returns:

  • method ( MethodType ) –

    Return method parameters

Source code in src/pypalmsens/_io.py
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
def load_method_file(path: str | Path) -> MethodType:
    """Load a method file (.psmethod).

    Parameters
    ----------
    path : Path | str
        Path to method file

    Returns
    -------
    method : MethodType
        Return method parameters
    """
    method = _load_method_file(path)
    return method.to_settings()

pypalmsens.load_session_file

load_session_file(path: str | Path) -> list[Measurement]

Load a session file (.pssession).

Parameters:

  • path

    (Path | str) –

    Path to session file

Returns:

Source code in src/pypalmsens/_io.py
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
def load_session_file(
    path: str | Path,
) -> list[Measurement]:
    """Load a session file (.pssession).

    Parameters
    ----------
    path : Path | str
        Path to session file

    Returns
    -------
    measurements : list[Measurement]
        Return list of measurements
    """
    path = Path(path)

    session = PalmSens.Data.SessionManager()

    with stream_reader(str(path)) as stream:
        session.Load(stream.BaseStream, str(path))

    session.MethodForEditor.MethodFilename = str(path.absolute())

    for psmeasurement in session:
        psmeasurement.Method.MethodFilename = str(path.absolute())

    return [Measurement(psmeasurement=m) for m in session]

pypalmsens.save_method_file

save_method_file(path: str | Path, method: MethodType)

Load a method file (.psmethod).

Parameters:

  • path

    (Path | str) –

    Path to save the method file

  • method

    (MethodType) –

    Method to save

Source code in src/pypalmsens/_io.py
130
131
132
133
134
135
136
137
138
139
140
141
142
143
def save_method_file(path: str | Path, method: MethodType):
    """Load a method file (.psmethod).

    Parameters
    ----------
    path : Path | str
        Path to save the method file
    method : MethodType
        Method to save
    """
    data = method._serialize()

    with open(path, 'w') as f:
        _ = f.write(data)

pypalmsens.save_session_file

save_session_file(path: str | Path, measurements: list[Measurement])

Load a session file (.pssession).

Parameters:

  • path

    (Path | str) –

    Path to save the session file

  • measurements

    (list[Measurement]) –

    List of measurements to save

Source code in src/pypalmsens/_io.py
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
def save_session_file(path: str | Path, measurements: list[Measurement]):
    """Load a session file (.pssession).

    Parameters
    ----------
    path : Path | str
        Path to save the session file
    measurements : list[Measurement]
        List of measurements to save
    """
    path = Path(path)

    if any((measurement is None) for measurement in measurements):
        raise ValueError('cannot save null measurement')

    session = PalmSens.Data.SessionManager()
    session.MethodForEditor = measurements[0]._psmeasurement.Method
    session.MethodForEditor.MethodFilename = str(path.absolute())

    for measurement in measurements:
        session.AddMeasurement(measurement._psmeasurement)

    with stream_writer(str(path), False, Encoding.Unicode) as stream:
        session.Save(stream.BaseStream, str(path))