- moving macro to programs folder as it is more a tool then an example
authorrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 7 Jul 2010 08:19:37 +0000 (08:19 +0000)
committerrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 7 Jul 2010 08:19:37 +0000 (08:19 +0000)
- adding initialization argument in order to suppress OCDB access during trigger setup
- adding GRID access for support of remote input files
- updated documentation

HLT/programs/extract-hltout-payload.C [moved from HLT/exa/extract-hltout-payload.C with 80% similarity]

similarity index 80%
rename from HLT/exa/extract-hltout-payload.C
rename to HLT/programs/extract-hltout-payload.C
index fe425a9..c801fc7 100644 (file)
@@ -4,9 +4,17 @@
  * @brief Extraction of data blocks from HLTOUT
  *
  * <pre>
- * Usage: aliroot -b -q extract-hltout-payload.C'("raw.root")' | tee extract-hltout-payload.log
+ * Usage: aliroot -b -q extract-hltout-payload.C'("raw.root", "selection", nofEvents)' \
+ *            | tee extract-hltout-payload.log
+ *
+ * Defaults
+ *     selection=""      -> no data type selection
+ *     nofEvents=-1      -> all events
  * </pre>
  *
+ * The raw input file can be accessed directly from the GRID, e.g
+ * "alien:///alice/data/2010/LHC10b/000115887/raw/10000115887021.20.root"
+ *
  * The macro stores all data blocks from the HLTOUT payload into separated
  * folders for each event. The file names are derived from data type and
  * specification of the block. Data is read from a raw reader. An input
  * </pre>
  *
  * @author Matthias.Richter@ift.uib.no
- * @ingroup alihlt_its
+ * @ingroup alihlt_programs
  */
 void extract_hltout_payload(const char* input, const char* selection="", int maxEvent=-1)
 {
   /////////////////////////////////////////////////////////////////////////
   /////////////////////////////////////////////////////////////////////////
   //
+  // setup GRID if input is not a local file
+  TString strfile=input;
+  if (strfile.Contains("://") && !strfile.Contains("local://")) {
+    TGrid::Connect("alien");
+  }
+
+  /////////////////////////////////////////////////////////////////////////
+  /////////////////////////////////////////////////////////////////////////
+  //
   // setup of the HLT system
   AliHLTSystem* pHLT=AliHLTPluginBase::GetInstance();
   if (!pHLT) {
@@ -59,7 +76,7 @@ void extract_hltout_payload(const char* input, const char* selection="", int max
   // setup of the reconstruction
 
   AliHLTReconstructor hltRec;
-  hltRec.Init("chains=sink1");
+  hltRec.Init("chains=sink1 ignore-ctp");
 
   AliRawReader* rawreader=AliRawReader::Create(input);
   if (!rawreader) {