avoid warning for the default HLT simulation
[u/mrichter/AliRoot.git] / HLT / BASE / util / AliHLTBlockFilterComponent.cxx
index 46f322b0a2ec1bf1209d79eb408164b90440ee9f..f38102b9f7b732358f5532aafc0e1726e7ca31e1 100644 (file)
@@ -1,4 +1,4 @@
-// @(#) $Id$
+// $Id$
 
 //**************************************************************************
 //* This file is property of and copyright by the ALICE HLT Project        * 
@@ -56,7 +56,7 @@ AliHLTComponentDataType AliHLTBlockFilterComponent::GetOutputDataType()
 {
   // see header file for class documentation
   if (fFilterRules.size()==1) return fFilterRules[0].fDataType;
-  if (fFilterRules.size()==0) return kAliHLTVoidDataType;
+  if (fFilterRules.size()==0) return kAliHLTAnyDataType;
   return kAliHLTMultipleDataType;
 }
 
@@ -109,6 +109,34 @@ int AliHLTBlockFilterComponent::DoInit( int argc, const char** argv )
       SetDataType(rule.fDataType, argv[i+1], argv[i+2]);
       i+=2;
 
+      // -origin
+    } else if (argument.CompareTo("-origin")==0) {
+      if ((bMissingParam=(i+1>=argc))) break;
+
+      if (!MatchExactly(rule.fDataType,kAliHLTAnyDataType)) {
+       // the data type has already been set, add to list
+       // and reset
+       fFilterRules.push_back(rule);
+       FillBlockData(rule);
+      }
+
+      SetDataType(rule.fDataType, NULL, argv[i+1]);
+      i+=1;
+
+      // -typeid
+    } else if (argument.CompareTo("-typeid")==0) {
+      if ((bMissingParam=(i+1>=argc))) break;
+
+      if (!MatchExactly(rule.fDataType,kAliHLTAnyDataType)) {
+       // the data type has already been set, add to list
+       // and reset
+       fFilterRules.push_back(rule);
+       FillBlockData(rule);
+      }
+
+      SetDataType(rule.fDataType, argv[i+1], NULL);
+      i+=1;
+
       // -dataspec
     } else if (argument.CompareTo("-dataspec")==0) {
       if ((bMissingParam=(++i>=argc))) break;