def GenerateSubjectOutputPattern(subjectid): """ This function generates output path substitutions for workflows and nodes that conform to a common standard. HACK: [('ANTSTemplate/Iteration02_Reshaped.nii.gz', 'SUBJECT_TEMPLATES/0668/T1_RESHAPED.nii.gz'), ('ANTSTemplate/_ReshapeAveragePassiveImageWithShapeUpdate[0-9]*', 'SUBJECT_TEMPLATES/0668')] subs=r'test/\g<project>/\g<subject>/\g<session>' pe.sub(subs,test) pat=r'foo/_uid_(?P<project>PHD_[0-9][0-9][0-9])_(?P<subject>[0-9][0-9][0-9][0-9])_(?P<session>[0-9][0-9][0-9][0-9][0-9])' pe=re.compile(pat) pe.sub(subs,test) test test='foo/_uid_PHD_024_0003_12345' pe.sub(subs,test) pat=r'(?P<modulename>[^/]*)/_uid_(?P<project>PHD_[0-9][0-9][0-9])_(?P<subject>[0-9][0-9][0-9][0-9])_(?P<session>[0-9][0-9][0-9][0-9][0-9])' subs=r'test/\g<project>/\g<subject>/\g<session>/\g<modulename>' pe.sub(subs,test) pe=re.compile(pat) pe.sub(subs,test) """ patternList=[] find_pat=os.path.join('ANTSTemplate','Iteration02_Reshaped.nii.gz') replace_pat=os.path.join('SUBJECT_TEMPLATES',subjectid,r'AVG_T1.nii.gz') patternList.append( (find_pat,replace_pat) ) find_pat=os.path.join('ANTSTemplate',r'_ReshapeAveragePassiveImageWithShapeUpdate[0-9]*/AVG_[A-Z0-9]*WARP_(?P<structure>AVG_[A-Z0-9]*.nii.gz)') replace_pat=os.path.join('SUBJECT_TEMPLATES',subjectid,r'\g<structure>') patternList.append( (find_pat,replace_pat) ) find_pat=os.path.join('ANTSTemplate',r'CLIPPED_AVG_[A-Z]*WARP_(?P<structure>AVG_[A-Z]*.nii.gz)') replace_pat=os.path.join('SUBJECT_TEMPLATES',subjectid,r'\g<structure>') patternList.append( (find_pat,replace_pat) ) print "HACK: ", patternList return patternList
def GenerateSubjectOutputPattern(subjectid): """ This function generates output path substitutions for workflows and nodes that conform to a common standard. HACK: [('ANTSTemplate/Iteration02_Reshaped.nii.gz', 'SUBJECT_TEMPLATES/0668/T1_RESHAPED.nii.gz'), ('ANTSTemplate/_ReshapeAveragePassiveImageWithShapeUpdate[0-9]*', 'SUBJECT_TEMPLATES/0668')] subs=r'test/\g<project>/\g<subject>/\g<session>' pe.sub(subs,test) pat=r'foo/_uid_(?P<project>PHD_[0-9][0-9][0-9])_(?P<subject>[0-9][0-9][0-9][0-9])_(?P<session>[0-9][0-9][0-9][0-9][0-9])' pe=re.compile(pat) pe.sub(subs,test) test test='foo/_uid_PHD_024_0003_12345' pe.sub(subs,test) pat=r'(?P<modulename>[^/]*)/_uid_(?P<project>PHD_[0-9][0-9][0-9])_(?P<subject>[0-9][0-9][0-9][0-9])_(?P<session>[0-9][0-9][0-9][0-9][0-9])' subs=r'test/\g<project>/\g<subject>/\g<session>/\g<modulename>' pe.sub(subs,test) pe=re.compile(pat) pe.sub(subs,test) """ patternList = [] find_pat = os.path.join('ANTSTemplate', 'Iteration02_Reshaped.nii.gz') replace_pat = os.path.join('SUBJECT_TEMPLATES', subjectid, r'AVG_T1.nii.gz') patternList.append((find_pat, replace_pat)) find_pat = os.path.join( 'ANTSTemplate', r'_ReshapeAveragePassiveImageWithShapeUpdate[0-9]*/AVG_[A-Z0-9]*WARP_(?P<structure>AVG_[A-Z0-9]*.nii.gz)' ) replace_pat = os.path.join('SUBJECT_TEMPLATES', subjectid, r'\g<structure>') patternList.append((find_pat, replace_pat)) find_pat = os.path.join( 'ANTSTemplate', r'CLIPPED_AVG_[A-Z]*WARP_(?P<structure>AVG_[A-Z]*.nii.gz)') replace_pat = os.path.join('SUBJECT_TEMPLATES', subjectid, r'\g<structure>') patternList.append((find_pat, replace_pat)) print "HACK: ", patternList return patternList
T1T2WorkupSingle.write_graph() except: pass """ return T1T2WorkupSingle ############# ## The following are just notes, and not really part of this script. ## # T1T2WorkupSingle.connect(myLocalLMIWF, 'outputspec.outputLandmarksInACPCAlignedSpace', T1T2WorkupSingleDataSink,'foo.@outputLandmarksInACPCAlignedSpace') # T1T2WorkupSingle.connect(myLocalLMIWF, 'outputspec.outputResampledVolume', T1T2WorkupSingleDataSink,'foo.@outputResampledVolume') # T1T2WorkupSingle.connect(myLocalLMIWF, 'outputspec.outputLandmarksInInputSpace', T1T2WorkupSingleDataSink,'foo.@outputLandmarksInInputSpace') # T1T2WorkupSingle.connect(myLocalLMIWF, 'outputspec.outputTransform', T1T2WorkupSingleDataSink,'foo.@outputTransform') # T1T2WorkupSingle.connect(myLocalLMIWF, 'outputspec.outputMRML', T1T2WorkupSingleDataSink,'foo.@outputMRML') """ subs=r'test/\g<project>/\g<subject>/\g<session>' pe.sub(subs,test) pat=r'foo/_uid_(?P<project>PHD_[0-9][0-9][0-9])_(?P<subject>[0-9][0-9][0-9][0-9])_(?P<session>[0-9][0-9][0-9][0-9][0-9])' pe=re.compile(pat) pe.sub(subs,test) test test='foo/_uid_PHD_024_0003_12345' pe.sub(subs,test) pat=r'(?P<modulename>[^/]*)/_uid_(?P<project>PHD_[0-9][0-9][0-9])_(?P<subject>[0-9][0-9][0-9][0-9])_(?P<session>[0-9][0-9][0-9][0-9][0-9])' subs=r'test/\g<project>/\g<subject>/\g<session>/\g<modulename>' pe.sub(subs,test) pe=re.compile(pat) pe.sub(subs,test) """
except: pass """ return T1T2WorkupSingle ############# ## The following are just notes, and not really part of this script. ## # T1T2WorkupSingle.connect(myLocalLMIWF, 'outputspec.outputLandmarksInACPCAlignedSpace', T1T2WorkupSingleDataSink,'foo.@outputLandmarksInACPCAlignedSpace') # T1T2WorkupSingle.connect(myLocalLMIWF, 'outputspec.outputResampledVolume', T1T2WorkupSingleDataSink,'foo.@outputResampledVolume') # T1T2WorkupSingle.connect(myLocalLMIWF, 'outputspec.outputLandmarksInInputSpace', T1T2WorkupSingleDataSink,'foo.@outputLandmarksInInputSpace') # T1T2WorkupSingle.connect(myLocalLMIWF, 'outputspec.outputTransform', T1T2WorkupSingleDataSink,'foo.@outputTransform') # T1T2WorkupSingle.connect(myLocalLMIWF, 'outputspec.outputMRML', T1T2WorkupSingleDataSink,'foo.@outputMRML') """ subs=r'test/\g<project>/\g<subject>/\g<session>' pe.sub(subs,test) pat=r'foo/_uid_(?P<project>PHD_[0-9][0-9][0-9])_(?P<subject>[0-9][0-9][0-9][0-9])_(?P<session>[0-9][0-9][0-9][0-9][0-9])' pe=re.compile(pat) pe.sub(subs,test) test test='foo/_uid_PHD_024_0003_12345' pe.sub(subs,test) pat=r'(?P<modulename>[^/]*)/_uid_(?P<project>PHD_[0-9][0-9][0-9])_(?P<subject>[0-9][0-9][0-9][0-9])_(?P<session>[0-9][0-9][0-9][0-9][0-9])' subs=r'test/\g<project>/\g<subject>/\g<session>/\g<modulename>' pe.sub(subs,test) pe=re.compile(pat) pe.sub(subs,test) """