Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 16 additions & 3 deletions src/components/forms.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ const formDataSPA: { [key: string]: any } = {
particle_diameter: null,
extract_downscale: true,
eer_fractionation: 20,
run_class3d: true,
}

const formDataTomo: { [key: string]: any } = {
Expand All @@ -36,12 +37,18 @@ const SpaForm = (submissionCallback: (arg0: any) => void) => {
}
const [symmetryType, setSymmetryType] = React.useState('C')
const [particleDetection, setParticleDetection] = React.useState(true)
const [runClass3D, setRunClass3D] = React.useState(true)
const handleChange = (event: React.ChangeEvent<HTMLSelectElement>) => {
setSymmetryType(event.target.value)
}
const handleSwitchChange = (event: React.ChangeEvent<HTMLInputElement>) => {
setParticleDetection(!particleDetection)
}
const handleClass3DSwitchChange = (
event: React.ChangeEvent<HTMLInputElement>
) => {
setRunClass3D(!runClass3D)
}
const setFormElement = (
event: React.FormEvent<HTMLFormElement>,
callback: (arg0: any) => void
Expand All @@ -55,10 +62,11 @@ const SpaForm = (submissionCallback: (arg0: any) => void) => {
? (formData.get('symmetry1') as string)
: (((formData.get('symmetry1') as string) +
formData.get('symmetry2')) as string)
formDataSPA.particle_diameter = formData.get('detect-particle-size')
formDataSPA.particle_diameter = particleDetection
? null
: formData.get('particle-diameter')
formDataSPA.eer_fractionation = formData.get('eer-grouping')
formDataSPA.run_class3d = runClass3D
callback(formDataSPA)
}

Expand Down Expand Up @@ -127,8 +135,13 @@ const SpaForm = (submissionCallback: (arg0: any) => void) => {
)}
<VStack align="start" width="100%" display="flex">
<HStack>
<FormLabel>Downscale in extraction</FormLabel>
<Switch defaultChecked colorScheme="murfey" name="downscale" />
<FormLabel>Run 3D classification</FormLabel>
<Switch
defaultChecked
colorScheme="murfey"
onChange={handleClass3DSwitchChange}
name="run-class3d"
/>
</HStack>
</VStack>
</VStack>
Expand Down
1 change: 1 addition & 0 deletions src/loaders/processingParameters.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ export const updateSessionProcessingParameters = async (
dose_per_frame: params['dosePerFrame'] ?? null,
eer_fractionation_file: params['eerFractionationFile'] ?? '',
symmetry: params['symmetry'] ?? '',
run_class3d: params['run_class3d'] ?? null,
}
)
if (response.status !== 200) {
Expand Down
6 changes: 4 additions & 2 deletions src/routes/SessionParameters.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ const nameLabelMap: Map<string, string> = new Map([
['gain_ref', 'Gain Reference'],
['symmetry', 'Symmetry'],
['eer_fractionation_file', 'EER fractionation file (for motion correction)'],
['run_class3d', 'Run 3D classification?'],
])

export const SessionParameters = () => {
Expand Down Expand Up @@ -70,14 +71,15 @@ export const SessionParameters = () => {
| 'dose_per_frame'
| 'eer_fractionation_file'
| 'symmetry'
| 'run_class3d'
| ''
const [paramName, setParamName] = React.useState('')
const [paramValue, setParamValue] = React.useState('')
const [paramKey, setParamKey] = React.useState<EditableParameter>('')
Object.entries(sessionParams ? sessionParams : {}).forEach(([key, value]) =>
tableRows.push({
parameterName: nameLabelMap.get(key) ?? key,
parameterValue: value,
parameterValue: value.toString(),
parameterKey: key,
} as ProcessingRow)
)
Expand All @@ -91,6 +93,7 @@ export const SessionParameters = () => {
eerFractionationFile:
paramKey === 'eer_fractionation_file' ? paramValue : '',
symmetry: paramKey === 'symmetry' ? paramValue : '',
run_class3d: paramKey === 'run_class3d' ? paramValue : null,
}
await updateSessionProcessingParameters(sessid ?? '0', data)
queryClient.refetchQueries({ queryKey: ['processingParameters', sessid] })
Expand Down Expand Up @@ -166,7 +169,6 @@ export const SessionParameters = () => {
data={table.processingRows}
headers={[
{ key: 'parameterName', label: 'Parameter' },
{ key: 'parameterKey', label: 'Parameter internal name' },
{ key: 'parameterValue', label: 'Value' },
]}
label={'sessionParameterData'}
Expand Down
10 changes: 10 additions & 0 deletions src/schema/main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -888,6 +888,11 @@ export interface components {
* @default
*/
symmetry?: string
/**
* Run 3D classification?
* @default
*/
run_class3d?: boolean
}
/** File */
File: {
Expand Down Expand Up @@ -1557,6 +1562,11 @@ export interface components {
* @default 20
*/
eer_fractionation?: number
/**
* Run 3D classification?
* @default true
*/
run_class3d?: boolean
}
/** RSyncerInfo */
RSyncerInfo: {
Expand Down