#include <cerrno>
#include "AliHLTConfiguration.h"
#include "AliHLTConfigurationHandler.h"
#include "AliHLTTask.h"
#include "AliHLTComponent.h"
#include "AliHLTComponentHandler.h"
#include <iostream>
#include <string>
#include "TList.h"
using std::vector;
ClassImp(AliHLTConfiguration)
AliHLTConfiguration::AliHLTConfiguration()
:
fID(""),
fComponent(""),
fStringSources(""),
fNofSources(-1),
fListSources(),
fListSrcElementIdx(-1),
fArguments(""),
fArgc(-1),
fArgv(NULL),
fBufferSize(-1)
{
}
AliHLTConfiguration::AliHLTConfiguration(const char* id, const char* component, const char* sources,
const char* arguments, const char* bufsize)
:
fID(id),
fComponent(component),
fStringSources(sources),
fNofSources(-1),
fListSources(),
fListSrcElementIdx(-1),
fArguments(arguments),
fArgc(-1),
fArgv(NULL),
fBufferSize(-1)
{
if (bufsize) fBufferSize=ConvertSizeString(bufsize);
if (id && component) {
if (AliHLTConfigurationHandler::Instance()) {
AliHLTConfigurationHandler::Instance()->RegisterConfiguration(this);
} else {
AliHLTConfigurationHandler::MissedRegistration(id);
}
}
}
AliHLTConfiguration::AliHLTConfiguration(const AliHLTConfiguration& src)
:
TObject(),
AliHLTLogging(),
fID(src.fID),
fComponent(src.fComponent),
fStringSources(src.fStringSources),
fNofSources(-1),
fListSources(),
fListSrcElementIdx(-1),
fArguments(src.fArguments),
fArgc(-1),
fArgv(NULL),
fBufferSize(src.fBufferSize)
{
}
AliHLTConfiguration& AliHLTConfiguration::operator=(const AliHLTConfiguration& src)
{
if (this==&src) return *this;
fID=src.fID;
fComponent=src.fComponent;
fStringSources=src.fStringSources;
fNofSources=-1;
fArguments=src.fArguments;
fArgc=-1;
fArgv=NULL;
fBufferSize=src.fBufferSize;
return *this;
}
AliHLTConfiguration::~AliHLTConfiguration()
{
if (AliHLTConfigurationHandler::Instance()) {
if (AliHLTConfigurationHandler::Instance()->FindConfiguration(fID.Data())!=NULL) {
AliHLTConfigurationHandler::Instance()->RemoveConfiguration(this);
}
}
if (fArgv != NULL) {
if (fArgc>0) {
for (int i=0; i<fArgc; i++) {
delete[] fArgv[i];
}
}
delete[] fArgv;
fArgv=NULL;
}
vector<AliHLTConfiguration*>::iterator element=fListSources.begin();
while (element!=fListSources.end()) {
fListSources.erase(element);
element=fListSources.begin();
}
}
const char* AliHLTConfiguration::GetName() const
{
if (!fID.IsNull())
return fID.Data();
return TObject::GetName();
}
AliHLTConfiguration* AliHLTConfiguration::GetSource(const char* id)
{
AliHLTConfiguration* pSrc=NULL;
if (id) {
if (fListSrcElementIdx>=0 && fListSrcElementIdx<(int)fListSources.size() &&
strcmp(id, (fListSources[fListSrcElementIdx])->GetName())==0) {
pSrc=fListSources[fListSrcElementIdx];
} else {
pSrc=GetFirstSource();
while (pSrc) {
if (strcmp(id, pSrc->GetName())==0)
break;
pSrc=GetNextSource();
}
}
}
return pSrc;
}
AliHLTConfiguration* AliHLTConfiguration::GetFirstSource() const
{
AliHLTConfiguration* pSrc=NULL;
if (fNofSources>0) {
const_cast<AliHLTConfiguration*>(this)->fListSrcElementIdx=-1;
pSrc=GetNextSource();
}
return pSrc;
}
AliHLTConfiguration* AliHLTConfiguration::GetNextSource() const
{
AliHLTConfiguration* pSrc=NULL;
if (fNofSources>0) {
if (fListSrcElementIdx+1<(int)fListSources.size()) {
const_cast<AliHLTConfiguration*>(this)->fListSrcElementIdx++;
pSrc=fListSources[fListSrcElementIdx];
}
}
return pSrc;
}
int AliHLTConfiguration::SourcesResolved() const
{
int iResult=0;
if (fNofSources>=0) {
iResult=fNofSources==(int)fListSources.size();
}
return iResult;
}
int AliHLTConfiguration::InvalidateSource(AliHLTConfiguration* pConf)
{
int iResult=0;
if (pConf) {
vector<AliHLTConfiguration*>::iterator element=fListSources.begin();
while (element!=fListSources.end()) {
if (*element==pConf) {
fListSources.erase(element);
fListSrcElementIdx=fListSources.size();
break;
}
element++;
}
} else {
iResult=-EINVAL;
}
return iResult;
}
void AliHLTConfiguration::PrintStatus() const
{
HLTLogKeyword("configuration status");
HLTMessage("status of configuration \"%s\" (%p)", GetName(), this);
if (!fComponent.IsNull()) HLTMessage(" - component: \"%s\"", fComponent.Data());
else HLTMessage(" - component string invalid");
if (!fStringSources.IsNull()) HLTMessage(" - sources: \"%s\"", fStringSources.Data());
else HLTMessage(" - no sources");
if (SourcesResolved()!=1)
HLTMessage(" there are unresolved sources");
AliHLTConfiguration* pSrc=GetFirstSource();
while (pSrc) {
HLTMessage(" source \"%s\" (%p) resolved", pSrc->GetName(), pSrc);
pSrc=GetNextSource();
}
}
void AliHLTConfiguration::Print(const char* option) const
{
if (option && strcmp(option, "status")==0) {
PrintStatus();
return;
}
HLTLogKeyword("configuration");
HLTMessage("configuration %s: component %s, sources %s, arguments %s",
GetName(),
GetComponentID(),
GetSourceSettings(),
GetArgumentSettings()
);
}
int AliHLTConfiguration::GetArguments(const char*** pArgv) const
{
int iResult=0;
if (pArgv) {
if (fArgc==-1) {
if ((iResult=const_cast<AliHLTConfiguration*>(this)->ExtractArguments())<0) {
HLTError("error extracting arguments for configuration %s", GetName());
}
} else if (fArgc<0) {
HLTError("previous argument extraction failed");
}
iResult=fArgc;
*pArgv=(const char**)fArgv;
} else {
HLTError("invalid parameter");
iResult=-EINVAL;
}
return iResult;
}
int AliHLTConfiguration::ExtractSources(AliHLTConfigurationHandler* pHandler)
{
int iResult=0;
fNofSources=0;
fListSources.clear();
if (!pHandler) {
HLTError("configuration handler missing, can not resolve sources");
return -EFAULT;
}
if (!fStringSources.IsNull()) {
vector<char*> tgtList;
if ((iResult=InterpreteString(fStringSources.Data(), tgtList))>=0) {
fNofSources=tgtList.size();
vector<char*>::iterator element=tgtList.begin();
while ((element=tgtList.begin())!=tgtList.end()) {
AliHLTConfiguration* pConf=pHandler->FindConfiguration(*element);
if (pConf) {
fListSources.push_back(pConf);
} else {
HLTError("can not find source \"%s\"", (*element));
iResult=-ENOENT;
}
delete[] (*element);
tgtList.erase(element);
}
}
}
fListSrcElementIdx=-1;
return iResult<0?iResult:SourcesResolved();
}
int AliHLTConfiguration::ExtractArguments()
{
int iResult=0;
if (!fArguments.IsNull()) {
vector<char*> tgtList;
if ((iResult=InterpreteString(fArguments, tgtList))>=0) {
fArgc=tgtList.size();
if (fArgc>0) {
fArgv = new char*[fArgc];
if (fArgv) {
vector<char*>::iterator element=tgtList.begin();
int i=0;
while (element!=tgtList.end()) {
fArgv[i++]=(*element);
element++;
}
} else {
iResult=-ENOMEM;
}
}
}
} else {
fArgc=0;
}
if (iResult<0) fArgc=iResult;
return iResult;
}
int AliHLTConfiguration::InterpreteString(const char* arg, vector<char*>& argList)
{
int iResult=0;
if (arg) {
int i=0;
int prec=-1;
int bQuote=0;
do {
if (arg[i]=='\'' && bQuote==0) {
bQuote=1;
} else if (arg[i]==0 ||
(arg[i]==' ' && bQuote==0) ||
(arg[i]=='\'' && bQuote==1)) {
bQuote=0;
if (prec>=0) {
char* pEntry= new char[i-prec+1];
if (pEntry) {
strncpy(pEntry, &arg[prec], i-prec);
pEntry[i-prec]=0;
argList.push_back(pEntry);
} else
iResult=-ENOMEM;
prec=-1;
}
} else if (prec==-1) prec=i;
} while (arg[i++]!=0 && iResult>=0);
} else {
iResult=-EINVAL;
}
return iResult;
}
int AliHLTConfiguration::ConvertSizeString(const char* strSize) const
{
int size=0;
if (!strSize) return -1;
char* endptr=NULL;
size=strtol(strSize, &endptr, 10);
if (size>=0) {
if (endptr) {
if (endptr==strSize) {
HLTWarning("ignoring unrecognized buffer size '%s'", strSize);
size=-1;
} else if (*endptr==0) {
} else if (*endptr=='k') {
size*=1014;
} else if (*endptr=='M') {
size*=1024*1024;
} else {
HLTWarning("ignoring buffer size of unknown unit '%c'", endptr[0]);
}
} else {
HLTWarning("ignoring negative buffer size specifier '%s'", strSize);
size=-1;
}
}
return size;
}
int AliHLTConfiguration::FollowDependency(const char* id, TList* pTgtList)
{
int iResult=0;
if (id) {
AliHLTConfiguration* pDep=NULL;
if ((pDep=GetSource(id))!=NULL) {
if (pTgtList) pTgtList->Add(pDep);
iResult++;
} else {
pDep=GetFirstSource();
while (pDep && iResult==0) {
if ((iResult=pDep->FollowDependency(id, pTgtList))>0) {
if (pTgtList) pTgtList->AddFirst(pDep);
iResult++;
}
pDep=GetNextSource();
}
}
} else {
iResult=-EINVAL;
}
return iResult;
}
AliHLTConfiguration.cxx:1 AliHLTConfiguration.cxx:2 AliHLTConfiguration.cxx:3 AliHLTConfiguration.cxx:4 AliHLTConfiguration.cxx:5 AliHLTConfiguration.cxx:6 AliHLTConfiguration.cxx:7 AliHLTConfiguration.cxx:8 AliHLTConfiguration.cxx:9 AliHLTConfiguration.cxx:10 AliHLTConfiguration.cxx:11 AliHLTConfiguration.cxx:12 AliHLTConfiguration.cxx:13 AliHLTConfiguration.cxx:14 AliHLTConfiguration.cxx:15 AliHLTConfiguration.cxx:16 AliHLTConfiguration.cxx:17 AliHLTConfiguration.cxx:18 AliHLTConfiguration.cxx:19 AliHLTConfiguration.cxx:20 AliHLTConfiguration.cxx:21 AliHLTConfiguration.cxx:22 AliHLTConfiguration.cxx:23 AliHLTConfiguration.cxx:24 AliHLTConfiguration.cxx:25 AliHLTConfiguration.cxx:26 AliHLTConfiguration.cxx:27 AliHLTConfiguration.cxx:28 AliHLTConfiguration.cxx:29 AliHLTConfiguration.cxx:30 AliHLTConfiguration.cxx:31 AliHLTConfiguration.cxx:32 AliHLTConfiguration.cxx:33 AliHLTConfiguration.cxx:34 AliHLTConfiguration.cxx:35 AliHLTConfiguration.cxx:36 AliHLTConfiguration.cxx:37 AliHLTConfiguration.cxx:38 AliHLTConfiguration.cxx:39 AliHLTConfiguration.cxx:40 AliHLTConfiguration.cxx:41 AliHLTConfiguration.cxx:42 AliHLTConfiguration.cxx:43 AliHLTConfiguration.cxx:44 AliHLTConfiguration.cxx:45 AliHLTConfiguration.cxx:46 AliHLTConfiguration.cxx:47 AliHLTConfiguration.cxx:48 AliHLTConfiguration.cxx:49 AliHLTConfiguration.cxx:50 AliHLTConfiguration.cxx:51 AliHLTConfiguration.cxx:52 AliHLTConfiguration.cxx:53 AliHLTConfiguration.cxx:54 AliHLTConfiguration.cxx:55 AliHLTConfiguration.cxx:56 AliHLTConfiguration.cxx:57 AliHLTConfiguration.cxx:58 AliHLTConfiguration.cxx:59 AliHLTConfiguration.cxx:60 AliHLTConfiguration.cxx:61 AliHLTConfiguration.cxx:62 AliHLTConfiguration.cxx:63 AliHLTConfiguration.cxx:64 AliHLTConfiguration.cxx:65 AliHLTConfiguration.cxx:66 AliHLTConfiguration.cxx:67 AliHLTConfiguration.cxx:68 AliHLTConfiguration.cxx:69 AliHLTConfiguration.cxx:70 AliHLTConfiguration.cxx:71 AliHLTConfiguration.cxx:72 AliHLTConfiguration.cxx:73 AliHLTConfiguration.cxx:74 AliHLTConfiguration.cxx:75 AliHLTConfiguration.cxx:76 AliHLTConfiguration.cxx:77 AliHLTConfiguration.cxx:78 AliHLTConfiguration.cxx:79 AliHLTConfiguration.cxx:80 AliHLTConfiguration.cxx:81 AliHLTConfiguration.cxx:82 AliHLTConfiguration.cxx:83 AliHLTConfiguration.cxx:84 AliHLTConfiguration.cxx:85 AliHLTConfiguration.cxx:86 AliHLTConfiguration.cxx:87 AliHLTConfiguration.cxx:88 AliHLTConfiguration.cxx:89 AliHLTConfiguration.cxx:90 AliHLTConfiguration.cxx:91 AliHLTConfiguration.cxx:92 AliHLTConfiguration.cxx:93 AliHLTConfiguration.cxx:94 AliHLTConfiguration.cxx:95 AliHLTConfiguration.cxx:96 AliHLTConfiguration.cxx:97 AliHLTConfiguration.cxx:98 AliHLTConfiguration.cxx:99 AliHLTConfiguration.cxx:100 AliHLTConfiguration.cxx:101 AliHLTConfiguration.cxx:102 AliHLTConfiguration.cxx:103 AliHLTConfiguration.cxx:104 AliHLTConfiguration.cxx:105 AliHLTConfiguration.cxx:106 AliHLTConfiguration.cxx:107 AliHLTConfiguration.cxx:108 AliHLTConfiguration.cxx:109 AliHLTConfiguration.cxx:110 AliHLTConfiguration.cxx:111 AliHLTConfiguration.cxx:112 AliHLTConfiguration.cxx:113 AliHLTConfiguration.cxx:114 AliHLTConfiguration.cxx:115 AliHLTConfiguration.cxx:116 AliHLTConfiguration.cxx:117 AliHLTConfiguration.cxx:118 AliHLTConfiguration.cxx:119 AliHLTConfiguration.cxx:120 AliHLTConfiguration.cxx:121 AliHLTConfiguration.cxx:122 AliHLTConfiguration.cxx:123 AliHLTConfiguration.cxx:124 AliHLTConfiguration.cxx:125 AliHLTConfiguration.cxx:126 AliHLTConfiguration.cxx:127 AliHLTConfiguration.cxx:128 AliHLTConfiguration.cxx:129 AliHLTConfiguration.cxx:130 AliHLTConfiguration.cxx:131 AliHLTConfiguration.cxx:132 AliHLTConfiguration.cxx:133 AliHLTConfiguration.cxx:134 AliHLTConfiguration.cxx:135 AliHLTConfiguration.cxx:136 AliHLTConfiguration.cxx:137 AliHLTConfiguration.cxx:138 AliHLTConfiguration.cxx:139 AliHLTConfiguration.cxx:140 AliHLTConfiguration.cxx:141 AliHLTConfiguration.cxx:142 AliHLTConfiguration.cxx:143 AliHLTConfiguration.cxx:144 AliHLTConfiguration.cxx:145 AliHLTConfiguration.cxx:146 AliHLTConfiguration.cxx:147 AliHLTConfiguration.cxx:148 AliHLTConfiguration.cxx:149 AliHLTConfiguration.cxx:150 AliHLTConfiguration.cxx:151 AliHLTConfiguration.cxx:152 AliHLTConfiguration.cxx:153 AliHLTConfiguration.cxx:154 AliHLTConfiguration.cxx:155 AliHLTConfiguration.cxx:156 AliHLTConfiguration.cxx:157 AliHLTConfiguration.cxx:158 AliHLTConfiguration.cxx:159 AliHLTConfiguration.cxx:160 AliHLTConfiguration.cxx:161 AliHLTConfiguration.cxx:162 AliHLTConfiguration.cxx:163 AliHLTConfiguration.cxx:164 AliHLTConfiguration.cxx:165 AliHLTConfiguration.cxx:166 AliHLTConfiguration.cxx:167 AliHLTConfiguration.cxx:168 AliHLTConfiguration.cxx:169 AliHLTConfiguration.cxx:170 AliHLTConfiguration.cxx:171 AliHLTConfiguration.cxx:172 AliHLTConfiguration.cxx:173 AliHLTConfiguration.cxx:174 AliHLTConfiguration.cxx:175 AliHLTConfiguration.cxx:176 AliHLTConfiguration.cxx:177 AliHLTConfiguration.cxx:178 AliHLTConfiguration.cxx:179 AliHLTConfiguration.cxx:180 AliHLTConfiguration.cxx:181 AliHLTConfiguration.cxx:182 AliHLTConfiguration.cxx:183 AliHLTConfiguration.cxx:184 AliHLTConfiguration.cxx:185 AliHLTConfiguration.cxx:186 AliHLTConfiguration.cxx:187 AliHLTConfiguration.cxx:188 AliHLTConfiguration.cxx:189 AliHLTConfiguration.cxx:190 AliHLTConfiguration.cxx:191 AliHLTConfiguration.cxx:192 AliHLTConfiguration.cxx:193 AliHLTConfiguration.cxx:194 AliHLTConfiguration.cxx:195 AliHLTConfiguration.cxx:196 AliHLTConfiguration.cxx:197 AliHLTConfiguration.cxx:198 AliHLTConfiguration.cxx:199 AliHLTConfiguration.cxx:200 AliHLTConfiguration.cxx:201 AliHLTConfiguration.cxx:202 AliHLTConfiguration.cxx:203 AliHLTConfiguration.cxx:204 AliHLTConfiguration.cxx:205 AliHLTConfiguration.cxx:206 AliHLTConfiguration.cxx:207 AliHLTConfiguration.cxx:208 AliHLTConfiguration.cxx:209 AliHLTConfiguration.cxx:210 AliHLTConfiguration.cxx:211 AliHLTConfiguration.cxx:212 AliHLTConfiguration.cxx:213 AliHLTConfiguration.cxx:214 AliHLTConfiguration.cxx:215 AliHLTConfiguration.cxx:216 AliHLTConfiguration.cxx:217 AliHLTConfiguration.cxx:218 AliHLTConfiguration.cxx:219 AliHLTConfiguration.cxx:220 AliHLTConfiguration.cxx:221 AliHLTConfiguration.cxx:222 AliHLTConfiguration.cxx:223 AliHLTConfiguration.cxx:224 AliHLTConfiguration.cxx:225 AliHLTConfiguration.cxx:226 AliHLTConfiguration.cxx:227 AliHLTConfiguration.cxx:228 AliHLTConfiguration.cxx:229 AliHLTConfiguration.cxx:230 AliHLTConfiguration.cxx:231 AliHLTConfiguration.cxx:232 AliHLTConfiguration.cxx:233 AliHLTConfiguration.cxx:234 AliHLTConfiguration.cxx:235 AliHLTConfiguration.cxx:236 AliHLTConfiguration.cxx:237 AliHLTConfiguration.cxx:238 AliHLTConfiguration.cxx:239 AliHLTConfiguration.cxx:240 AliHLTConfiguration.cxx:241 AliHLTConfiguration.cxx:242 AliHLTConfiguration.cxx:243 AliHLTConfiguration.cxx:244 AliHLTConfiguration.cxx:245 AliHLTConfiguration.cxx:246 AliHLTConfiguration.cxx:247 AliHLTConfiguration.cxx:248 AliHLTConfiguration.cxx:249 AliHLTConfiguration.cxx:250 AliHLTConfiguration.cxx:251 AliHLTConfiguration.cxx:252 AliHLTConfiguration.cxx:253 AliHLTConfiguration.cxx:254 AliHLTConfiguration.cxx:255 AliHLTConfiguration.cxx:256 AliHLTConfiguration.cxx:257 AliHLTConfiguration.cxx:258 AliHLTConfiguration.cxx:259 AliHLTConfiguration.cxx:260 AliHLTConfiguration.cxx:261 AliHLTConfiguration.cxx:262 AliHLTConfiguration.cxx:263 AliHLTConfiguration.cxx:264 AliHLTConfiguration.cxx:265 AliHLTConfiguration.cxx:266 AliHLTConfiguration.cxx:267 AliHLTConfiguration.cxx:268 AliHLTConfiguration.cxx:269 AliHLTConfiguration.cxx:270 AliHLTConfiguration.cxx:271 AliHLTConfiguration.cxx:272 AliHLTConfiguration.cxx:273 AliHLTConfiguration.cxx:274 AliHLTConfiguration.cxx:275 AliHLTConfiguration.cxx:276 AliHLTConfiguration.cxx:277 AliHLTConfiguration.cxx:278 AliHLTConfiguration.cxx:279 AliHLTConfiguration.cxx:280 AliHLTConfiguration.cxx:281 AliHLTConfiguration.cxx:282 AliHLTConfiguration.cxx:283 AliHLTConfiguration.cxx:284 AliHLTConfiguration.cxx:285 AliHLTConfiguration.cxx:286 AliHLTConfiguration.cxx:287 AliHLTConfiguration.cxx:288 AliHLTConfiguration.cxx:289 AliHLTConfiguration.cxx:290 AliHLTConfiguration.cxx:291 AliHLTConfiguration.cxx:292 AliHLTConfiguration.cxx:293 AliHLTConfiguration.cxx:294 AliHLTConfiguration.cxx:295 AliHLTConfiguration.cxx:296 AliHLTConfiguration.cxx:297 AliHLTConfiguration.cxx:298 AliHLTConfiguration.cxx:299 AliHLTConfiguration.cxx:300 AliHLTConfiguration.cxx:301 AliHLTConfiguration.cxx:302 AliHLTConfiguration.cxx:303 AliHLTConfiguration.cxx:304 AliHLTConfiguration.cxx:305 AliHLTConfiguration.cxx:306 AliHLTConfiguration.cxx:307 AliHLTConfiguration.cxx:308 AliHLTConfiguration.cxx:309 AliHLTConfiguration.cxx:310 AliHLTConfiguration.cxx:311 AliHLTConfiguration.cxx:312 AliHLTConfiguration.cxx:313 AliHLTConfiguration.cxx:314 AliHLTConfiguration.cxx:315 AliHLTConfiguration.cxx:316 AliHLTConfiguration.cxx:317 AliHLTConfiguration.cxx:318 AliHLTConfiguration.cxx:319 AliHLTConfiguration.cxx:320 AliHLTConfiguration.cxx:321 AliHLTConfiguration.cxx:322 AliHLTConfiguration.cxx:323 AliHLTConfiguration.cxx:324 AliHLTConfiguration.cxx:325 AliHLTConfiguration.cxx:326 AliHLTConfiguration.cxx:327 AliHLTConfiguration.cxx:328 AliHLTConfiguration.cxx:329 AliHLTConfiguration.cxx:330 AliHLTConfiguration.cxx:331 AliHLTConfiguration.cxx:332 AliHLTConfiguration.cxx:333 AliHLTConfiguration.cxx:334 AliHLTConfiguration.cxx:335 AliHLTConfiguration.cxx:336 AliHLTConfiguration.cxx:337 AliHLTConfiguration.cxx:338 AliHLTConfiguration.cxx:339 AliHLTConfiguration.cxx:340 AliHLTConfiguration.cxx:341 AliHLTConfiguration.cxx:342 AliHLTConfiguration.cxx:343 AliHLTConfiguration.cxx:344 AliHLTConfiguration.cxx:345 AliHLTConfiguration.cxx:346 AliHLTConfiguration.cxx:347 AliHLTConfiguration.cxx:348 AliHLTConfiguration.cxx:349 AliHLTConfiguration.cxx:350 AliHLTConfiguration.cxx:351 AliHLTConfiguration.cxx:352 AliHLTConfiguration.cxx:353 AliHLTConfiguration.cxx:354 AliHLTConfiguration.cxx:355 AliHLTConfiguration.cxx:356 AliHLTConfiguration.cxx:357 AliHLTConfiguration.cxx:358 AliHLTConfiguration.cxx:359 AliHLTConfiguration.cxx:360 AliHLTConfiguration.cxx:361 AliHLTConfiguration.cxx:362 AliHLTConfiguration.cxx:363 AliHLTConfiguration.cxx:364 AliHLTConfiguration.cxx:365 AliHLTConfiguration.cxx:366 AliHLTConfiguration.cxx:367 AliHLTConfiguration.cxx:368 AliHLTConfiguration.cxx:369 AliHLTConfiguration.cxx:370 AliHLTConfiguration.cxx:371 AliHLTConfiguration.cxx:372 AliHLTConfiguration.cxx:373 AliHLTConfiguration.cxx:374 AliHLTConfiguration.cxx:375 AliHLTConfiguration.cxx:376 AliHLTConfiguration.cxx:377 AliHLTConfiguration.cxx:378 AliHLTConfiguration.cxx:379 AliHLTConfiguration.cxx:380 AliHLTConfiguration.cxx:381 AliHLTConfiguration.cxx:382 AliHLTConfiguration.cxx:383 AliHLTConfiguration.cxx:384 AliHLTConfiguration.cxx:385 AliHLTConfiguration.cxx:386 AliHLTConfiguration.cxx:387 AliHLTConfiguration.cxx:388 AliHLTConfiguration.cxx:389 AliHLTConfiguration.cxx:390 AliHLTConfiguration.cxx:391 AliHLTConfiguration.cxx:392 AliHLTConfiguration.cxx:393 AliHLTConfiguration.cxx:394 AliHLTConfiguration.cxx:395 AliHLTConfiguration.cxx:396 AliHLTConfiguration.cxx:397 AliHLTConfiguration.cxx:398 AliHLTConfiguration.cxx:399 AliHLTConfiguration.cxx:400 AliHLTConfiguration.cxx:401 AliHLTConfiguration.cxx:402 AliHLTConfiguration.cxx:403 AliHLTConfiguration.cxx:404 AliHLTConfiguration.cxx:405 AliHLTConfiguration.cxx:406 AliHLTConfiguration.cxx:407 AliHLTConfiguration.cxx:408 AliHLTConfiguration.cxx:409 AliHLTConfiguration.cxx:410 AliHLTConfiguration.cxx:411 AliHLTConfiguration.cxx:412 AliHLTConfiguration.cxx:413 AliHLTConfiguration.cxx:414 AliHLTConfiguration.cxx:415 AliHLTConfiguration.cxx:416 AliHLTConfiguration.cxx:417 AliHLTConfiguration.cxx:418 AliHLTConfiguration.cxx:419 AliHLTConfiguration.cxx:420 AliHLTConfiguration.cxx:421 AliHLTConfiguration.cxx:422 AliHLTConfiguration.cxx:423 AliHLTConfiguration.cxx:424 AliHLTConfiguration.cxx:425 AliHLTConfiguration.cxx:426 AliHLTConfiguration.cxx:427 AliHLTConfiguration.cxx:428 AliHLTConfiguration.cxx:429 AliHLTConfiguration.cxx:430 AliHLTConfiguration.cxx:431 AliHLTConfiguration.cxx:432 AliHLTConfiguration.cxx:433 AliHLTConfiguration.cxx:434 AliHLTConfiguration.cxx:435 AliHLTConfiguration.cxx:436 AliHLTConfiguration.cxx:437 AliHLTConfiguration.cxx:438 AliHLTConfiguration.cxx:439 AliHLTConfiguration.cxx:440 AliHLTConfiguration.cxx:441 AliHLTConfiguration.cxx:442 AliHLTConfiguration.cxx:443 AliHLTConfiguration.cxx:444 AliHLTConfiguration.cxx:445 AliHLTConfiguration.cxx:446 AliHLTConfiguration.cxx:447 AliHLTConfiguration.cxx:448 AliHLTConfiguration.cxx:449 AliHLTConfiguration.cxx:450 AliHLTConfiguration.cxx:451