1717import ast
1818import copy
1919from itertools import chain
20+ import logging
2021import os
2122import re
2223from types import FunctionType
5455
5556from CPAC .resources .templates .lookup_table import lookup_identifier
5657
57- logger = getLogger ('nipype.workflow' )
58+ logger = logging .getLogger ('nipype.workflow' )
59+ verbose_logger = logging .getLogger ('engine' )
5860
5961
6062class ResourcePool :
@@ -437,6 +439,7 @@ def flatten_prov(self, prov):
437439 return flat_prov
438440
439441 def get_strats (self , resources , debug = False ):
442+
440443 # TODO: NOTE: NOT COMPATIBLE WITH SUB-RPOOL/STRAT_POOLS
441444 # TODO: (and it doesn't have to be)
442445
@@ -445,7 +448,6 @@ def get_strats(self, resources, debug=False):
445448 linked_resources = []
446449 resource_list = []
447450 if debug :
448- verbose_logger = getLogger ('engine' )
449451 verbose_logger .debug ('\n resources: %s' , resources )
450452 for resource in resources :
451453 # grab the linked-input tuples
@@ -469,7 +471,6 @@ def get_strats(self, resources, debug=False):
469471 variant_pool = {}
470472 len_inputs = len (resource_list )
471473 if debug :
472- verbose_logger = getLogger ('engine' )
473474 verbose_logger .debug ('linked_resources: %s' ,
474475 linked_resources )
475476 verbose_logger .debug ('resource_list: %s' , resource_list )
@@ -482,8 +483,7 @@ def get_strats(self, resources, debug=False):
482483 continue
483484 sub_pool = []
484485 if debug :
485- verbose_logger = getLogger ('engine' )
486- verbose_logger .debug ('%s len(rp_dct): %s\n ' , resource , len (rp_dct ))
486+ verbose_logger .debug ('len(rp_dct): %s\n ' , len (rp_dct ))
487487 for strat in rp_dct .keys ():
488488 json_info = self .get_json (fetched_resource , strat )
489489 cpac_prov = json_info ['CpacProvenance' ]
@@ -496,6 +496,7 @@ def get_strats(self, resources, debug=False):
496496 variant_pool [fetched_resource ] += val
497497 variant_pool [fetched_resource ].append (
498498 f'NO-{ val [0 ]} ' )
499+
499500 if debug :
500501 verbose_logger .debug ('%s sub_pool: %s\n ' , resource , sub_pool )
501502 total_pool .append (sub_pool )
@@ -1014,6 +1015,7 @@ def gather_pipes(self, wf, cfg, all=False, add_incl=None, add_excl=None):
10141015
10151016 unique_id = out_dct ['unique_id' ]
10161017 resource_idx = resource
1018+
10171019 if isinstance (num_variant , int ):
10181020 if True in cfg ['functional_preproc' ,
10191021 'motion_estimates_and_correction' ,
@@ -1131,7 +1133,7 @@ def gather_pipes(self, wf, cfg, all=False, add_incl=None, add_excl=None):
11311133 nii_name .inputs .keep_ext = True
11321134 wf .connect (id_string , 'out_filename' ,
11331135 nii_name , 'format_string' )
1134-
1136+
11351137 node , out = self .rpool [resource ][pipe_idx ]['data' ]
11361138 try :
11371139 wf .connect (node , out , nii_name , 'in_file' )
@@ -1439,7 +1441,6 @@ def connect_block(self, wf, cfg, rpool):
14391441 node_name = f'{ node_name } _{ opt ["Name" ]} '
14401442
14411443 if debug :
1442- verbose_logger = getLogger ('engine' )
14431444 verbose_logger .debug ('\n =======================' )
14441445 verbose_logger .debug ('Node name: %s' , node_name )
14451446 prov_dct = \
@@ -1684,7 +1685,9 @@ def ingress_raw_anat_data(wf, rpool, cfg, data_paths, unique_id, part_id,
16841685 rpool .set_data ('T2w' , anat_flow_T2 , 'outputspec.anat' , {},
16851686 "" , "anat_ingress" )
16861687
1687- if 'freesurfer_dir' in data_paths ['anat' ]:
1688+ ingress_fs = cfg .surface_analysis ['freesurfer' ]['ingress_reconall' ]
1689+
1690+ if 'freesurfer_dir' in data_paths ['anat' ] and ingress_fs :
16881691 anat ['freesurfer_dir' ] = data_paths ['anat' ]['freesurfer_dir' ]
16891692
16901693 fs_ingress = create_general_datasource ('gather_freesurfer_dir' )
@@ -1697,27 +1700,27 @@ def ingress_raw_anat_data(wf, rpool, cfg, data_paths, unique_id, part_id,
16971700 {}, "" , "freesurfer_config_ingress" )
16981701
16991702 recon_outs = {
1700- 'raw -average' : 'mri/rawavg.mgz' ,
1701- 'subcortical -seg' : 'mri/aseg.mgz' ,
1702- 'brainmask ' : 'mri/brainmask.mgz' ,
1703- 'wmparc ' : 'mri/wmparc.mgz' ,
1704- 'T1 ' : 'mri/T1.mgz' ,
1705- 'hemi -L_desc-surface_curv' : 'surf/lh.curv' ,
1706- 'hemi -R_desc-surface_curv' : 'surf/rh.curv' ,
1707- 'hemi -L_desc-surfaceMesh_pial' : 'surf/lh.pial' ,
1708- 'hemi -R_desc-surfaceMesh_pial' : 'surf/rh.pial' ,
1709- 'hemi -L_desc-surfaceMesh_smoothwm' : 'surf/lh.smoothwm' ,
1710- 'hemi -R_desc-surfaceMesh_smoothwm' : 'surf/rh.smoothwm' ,
1711- 'hemi -L_desc-surfaceMesh_sphere' : 'surf/lh.sphere' ,
1712- 'hemi -R_desc-surfaceMesh_sphere' : 'surf/rh.sphere' ,
1713- 'hemi -L_desc-surfaceMap_sulc' : 'surf/lh.sulc' ,
1714- 'hemi -R_desc-surfaceMap_sulc' : 'surf/rh.sulc' ,
1715- 'hemi -L_desc-surfaceMap_thickness' : 'surf/lh.thickness' ,
1716- 'hemi -R_desc-surfaceMap_thickness' : 'surf/rh.thickness' ,
1717- 'hemi -L_desc-surfaceMap_volume' : 'surf/lh.volume' ,
1718- 'hemi -R_desc-surfaceMap_volume' : 'surf/rh.volume' ,
1719- 'hemi -L_desc-surfaceMesh_white' : 'surf/lh.white' ,
1720- 'hemi -R_desc-surfaceMesh_white' : 'surf/rh.white' ,
1703+ 'pipeline-fs_raw -average' : 'mri/rawavg.mgz' ,
1704+ 'pipeline-fs_subcortical -seg' : 'mri/aseg.mgz' ,
1705+ 'pipeline-fs_brainmask ' : 'mri/brainmask.mgz' ,
1706+ 'pipeline-fs_wmparc ' : 'mri/wmparc.mgz' ,
1707+ 'pipeline-fs_T1 ' : 'mri/T1.mgz' ,
1708+ 'pipeline-fs_hemi -L_desc-surface_curv' : 'surf/lh.curv' ,
1709+ 'pipeline-fs_hemi -R_desc-surface_curv' : 'surf/rh.curv' ,
1710+ 'pipeline-fs_hemi -L_desc-surfaceMesh_pial' : 'surf/lh.pial' ,
1711+ 'pipeline-fs_hemi -R_desc-surfaceMesh_pial' : 'surf/rh.pial' ,
1712+ 'pipeline-fs_hemi -L_desc-surfaceMesh_smoothwm' : 'surf/lh.smoothwm' ,
1713+ 'pipeline-fs_hemi -R_desc-surfaceMesh_smoothwm' : 'surf/rh.smoothwm' ,
1714+ 'pipeline-fs_hemi -L_desc-surfaceMesh_sphere' : 'surf/lh.sphere' ,
1715+ 'pipeline-fs_hemi -R_desc-surfaceMesh_sphere' : 'surf/rh.sphere' ,
1716+ 'pipeline-fs_hemi -L_desc-surfaceMap_sulc' : 'surf/lh.sulc' ,
1717+ 'pipeline-fs_hemi -R_desc-surfaceMap_sulc' : 'surf/rh.sulc' ,
1718+ 'pipeline-fs_hemi -L_desc-surfaceMap_thickness' : 'surf/lh.thickness' ,
1719+ 'pipeline-fs_hemi -R_desc-surfaceMap_thickness' : 'surf/rh.thickness' ,
1720+ 'pipeline-fs_hemi -L_desc-surfaceMap_volume' : 'surf/lh.volume' ,
1721+ 'pipeline-fs_hemi -R_desc-surfaceMap_volume' : 'surf/rh.volume' ,
1722+ 'pipeline-fs_hemi -L_desc-surfaceMesh_white' : 'surf/lh.white' ,
1723+ 'pipeline-fs_hemi -R_desc-surfaceMesh_white' : 'surf/rh.white' ,
17211724 }
17221725
17231726 for key , outfile in recon_outs .items ():
@@ -1772,7 +1775,6 @@ def ingress_raw_func_data(wf, rpool, cfg, data_paths, unique_id, part_id,
17721775 # pylint: disable=protected-access
17731776 wf ._local_func_scans = local_func_scans
17741777 if cfg .pipeline_setup ['Debugging' ]['verbose' ]:
1775- verbose_logger = getLogger ('engine' )
17761778 verbose_logger .debug ('local_func_scans: %s' , local_func_scans )
17771779 del local_func_scans
17781780
0 commit comments