AliHLTComponentDataTypeList::iterator otype=otypes.begin();
while (otype!=otypes.end() && (*itype)!=(*otype)) otype++;
//if (otype!=otypes.end()) PrintDataTypeContent(*otype, "publisher \'%s\'");
- if (otype!=otypes.end() ||
- (*itype)==kAliHLTAnyDataType) {
+ if (otype!=otypes.end()) {
if (tgtList) tgtList->push_back(*itype);
iResult++;
}
AliHLTUInt32_t firstWord=*((AliHLTUInt32_t*)fpInputBlocks[idx].fPtr);
if (firstWord!=fpInputBlocks[idx].fSize-sizeof(AliHLTUInt32_t)) continue;
}
- if (dt == kAliHLTAnyDataType || fpInputBlocks[idx].fDataType == dt ||
- (memcmp(dt.fID, kAliHLTAnyDataTypeID, kAliHLTComponentDataTypefIDsize)==0 &&
- memcmp(dt.fOrigin, fpInputBlocks[idx].fDataType.fOrigin, kAliHLTComponentDataTypefOriginSize)==0) ||
- (memcmp(dt.fID, fpInputBlocks[idx].fDataType.fID, kAliHLTComponentDataTypefIDsize)==0) &&
- memcmp(dt.fOrigin, kAliHLTDataOriginAny, kAliHLTComponentDataTypefOriginSize)==0) {
+ if (dt==fpInputBlocks[idx].fDataType) {
iResult=idx;
}
}
while (segment!=fSegments.end()) {
AliHLTComponentDataTypeList::iterator type=dtlist.begin();
while (type!=dtlist.end()) {
- if ((*segment).fDataType==(*type) ||
- (*type)==kAliHLTAnyDataType) {
+ if ((*segment).fDataType==(*type)) {
tgtList.push_back(*segment);
iResult++;
break;
if (CheckStatusFlag(kLocked)) return -EPERM;
int iResult=-ENOENT;
while (fCurrent!=fBlockDescList.end() && iResult==-ENOENT) {
- if ((fSearchDataType==kAliHLTAnyDataType || (*fCurrent)==fSearchDataType) &&
+ if ((*fCurrent)==fSearchDataType &&
fSearchSpecification==kAliHLTVoidDataSpec || (*fCurrent)==fSearchSpecification &&
1/*fSearchHandlerType==AliHLTModuleAgent::kUnknownOutput*/) {
iResult=0;
if (argument.CompareTo("-datatype")==0) {
if ((bMissingParam=(i+2>=argc))) break;
- if (rule.fDataType!=kAliHLTAnyDataType) {
+ if (!MatchExactly(rule.fDataType,kAliHLTAnyDataType)) {
// the data type has already been set, add to list
// and reset
fFilterRules.push_back(rule);
break;
}
}
- if (iResult>=0 && (rule.fSpecification!=kAliHLTVoidDataSpec || rule.fDataType!=kAliHLTAnyDataType)) {
+ if (iResult>=0 && (rule.fSpecification!=kAliHLTVoidDataSpec || !MatchExactly(rule.fDataType,kAliHLTAnyDataType))) {
// add the pending rule
fFilterRules.push_back(rule);
FillBlockData(rule);
// 2. data spec match or filter data wpec not set
// 3. either filter data type or spec is set
//HLTDebug("check rule : %s spec %#x", DataType2Text((*desc).fDataType, 2).c_str(), block.fSpecification);
- if (((*desc).fDataType==block.fDataType || (*desc).fDataType==kAliHLTAnyDataType) &&
+ if (((*desc).fDataType==block.fDataType) &&
((*desc).fSpecification==block.fSpecification || (*desc).fSpecification==kAliHLTVoidDataSpec) &&
- ((*desc).fDataType!=kAliHLTAnyDataType || (*desc).fSpecification!=kAliHLTVoidDataSpec)) {
+ (!MatchExactly((*desc).fDataType,kAliHLTAnyDataType) || (*desc).fSpecification!=kAliHLTVoidDataSpec)) {
return 1;
}
} while (++desc!=fFilterRules.end());