84 def __getValidation( self, valType, name, alignments, config, options ):
85 if valType ==
"compare":
86 alignmentsList = alignments.split(
"," )
87 firstAlignList = alignmentsList[0].
split()
88 firstAlignName = firstAlignList[0].strip()
89 if firstAlignName ==
"IDEAL":
90 raise AllInOneError, (
"'IDEAL' has to be the second (reference)"
91 " alignment in 'compare <val_name>: "
92 "<alignment> <reference>'.")
93 if len( firstAlignList ) > 1:
94 firstRun = firstAlignList[1]
97 firstAlign = Alignment( firstAlignName, self.
__config, firstRun )
98 secondAlignList = alignmentsList[1].
split()
99 secondAlignName = secondAlignList[0].strip()
100 if len( secondAlignList ) > 1:
101 secondRun = secondAlignList[1]
104 if secondAlignName ==
"IDEAL":
105 secondAlign = secondAlignName
107 secondAlign = Alignment( secondAlignName, self.
__config,
111 randomWorkdirPart = \
112 globalDictionaries.alignRandDict[firstAlignName]
114 randomWorkdirPart =
None
116 validation = GeometryComparison( name, firstAlign, secondAlign,
118 self.__commandLineOptions.getImages,
120 globalDictionaries.alignRandDict[firstAlignName] = \
121 validation.randomWorkdirPart
122 if not secondAlignName ==
"IDEAL":
123 globalDictionaries.alignRandDict[secondAlignName] = \
124 validation.randomWorkdirPart
125 elif valType ==
"offline":
126 validation = OfflineValidation( name,
128 elif valType ==
"offlineDQM":
129 validation = OfflineValidationDQM( name,
131 elif valType ==
"mcValidate":
132 validation = MonteCarloValidation( name,
134 elif valType ==
"split":
135 validation = TrackSplittingValidation( name,
137 elif valType ==
"zmumu":
138 validation = ZMuMuValidation( name,
141 raise AllInOneError,
"Unknown validation mode '%s'"%valType