+ } else if ( iDet != AliQAv1::kCORR ) {
+
+ // load the QA data maker object
+ TPluginManager* pluginManager = gROOT->GetPluginManager() ;
+ TString detName = AliQAv1::GetDetName(iDet) ;
+ TString qadmName = "Ali" + detName + "QADataMaker" + GetMode() ;
+
+ // first check if a plugin is defined for the quality assurance data maker
+ TPluginHandler* pluginHandler = pluginManager->FindHandler("AliQADataMaker", detName) ;
+ // if not, add a plugin for it
+ if (!pluginHandler) {
+ AliDebug(AliQAv1::GetQADebugLevel(), Form("defining plugin for %s", qadmName.Data())) ;
+ TString libs = gSystem->GetLibraries() ;
+ TString temp(GetMode()) ;
+ temp.ToLower() ;
+ if (libs.Contains("lib" + detName + GetMode() + ".so") || (gSystem->Load("lib" + detName + temp.Data() + ".so") >= 0)) {
+ pluginManager->AddHandler("AliQADataMaker", detName, qadmName, detName + "qadm", qadmName + "()") ;
+ } else {
+ pluginManager->AddHandler("AliQADataMaker", detName, qadmName, detName, qadmName + "()") ;
+ }
+ pluginHandler = pluginManager->FindHandler("AliQADataMaker", detName) ;
+ }
+ if (pluginHandler && (pluginHandler->LoadPlugin() == 0)) {
+ qadm = (AliQADataMaker *) pluginHandler->ExecPlugin(0) ;
+ }
+ if (qadm) {
+ qadm->SetName(AliQAv1::GetDetName(iDet));
+ qadm->SetUniqueID(iDet);
+ fQADataMaker[iDet] = qadm ;
+ qadm->SetEventSpecie(fEventSpecie) ;
+ if ( qadm->GetRecoParam() )
+ if ( AliRecoParam::Convert(qadm->GetRecoParam()->GetEventSpecie()) != AliRecoParam::kDefault)
+ qadm->SetEventSpecie(qadm->GetRecoParam()->GetEventSpecie()) ;
+ }
+ }