ALIROOT-5433 Transition to CDHv3 in HLT
[u/mrichter/AliRoot.git] / HLT / BASE / AliHLTTask.cxx
index db18aa4..2fd75b7 100644 (file)
@@ -1,6 +1,6 @@
 // $Id$
 //**************************************************************************
-//* This file is property of and copyright by the ALICE HLT Project        * 
+//* This file is property of and copyright by the                          * 
 //* ALICE Experiment at CERN, All rights reserved.                         *
 //*                                                                        *
 //* Primary Authors: Matthias Richter <Matthias.Richter@ift.uib.no>        *
 /// @brief  Implementation of HLT tasks.
 ///
 
-// see header file for class documentation
-// or
-// refer to README to build package
-// or
-// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
-
-#if __GNUC__>= 3
-using namespace std;
-#endif
-
 #include <cerrno>
 #include <cassert>
 #include <iostream>
@@ -44,6 +34,8 @@ using namespace std;
 #include "TList.h"
 #include "AliHLTErrorGuard.h"
 
+using std::cout;
+
 /** ROOT macro for the implementation of ROOT specific class methods */
 ClassImp(AliHLTTask)
 
@@ -413,8 +405,8 @@ int AliHLTTask::StartRun()
              if ((iResult=fpDataBuffer->SetConsumer(pTgtTask->GetComponent()))>=0) {
              }
            } else {
-             break;
              iResult=-EFAULT;
+             break;
            }
            lnk=lnk->Next();
          }
@@ -450,7 +442,7 @@ int AliHLTTask::EndRun()
   return iResult;
 }
 
-int AliHLTTask::ProcessTask(Int_t eventNo, AliHLTUInt32_t eventType, AliHLTUInt64_t trgMask,
+int AliHLTTask::ProcessTask(Int_t eventNo, AliHLTUInt32_t eventType, AliHLTTriggerMask_t trgMask,
                            AliHLTUInt32_t timestamp, AliHLTUInt32_t participatingDetectors)
 {
   // see header file for function documentation
@@ -573,7 +565,7 @@ int AliHLTTask::ProcessTask(Int_t eventNo, AliHLTUInt32_t eventType, AliHLTUInt6
       AliHLTComponent::FillEventData(evtData);
       if (eventNo>=0)
        evtData.fEventID=(AliHLTEventID_t)eventNo;
-      if (timestamp) evtData.fEventCreation_s=timestamp;
+      if (timestamp < kMaxUInt) evtData.fEventCreation_s=timestamp;
       else
       evtData.fEventCreation_s=static_cast<AliHLTUInt32_t>(time(NULL));
       AliHLTComponentTriggerData trigData;
@@ -596,8 +588,11 @@ int AliHLTTask::ProcessTask(Int_t eventNo, AliHLTUInt32_t eventType, AliHLTUInt6
       }
       evtTrigData.fCommonHeader[1] = AliHLTUInt32_t(l1msg) << 14;
       evtTrigData.fCommonHeader[3] = ((l1msg & 0x1) == 0x1) ? (participatingDetectors & 0xFFFFFF) : 0x0;
-      evtTrigData.fCommonHeader[5]=trgMask&0xffffffff;
-      evtTrigData.fCommonHeader[6]=(trgMask>>32)&0x3ffff;
+      evtTrigData.fCommonHeader[5] = (trgMask & AliHLTTriggerMask_t(0xffffffff)).to_ulong();
+      evtTrigData.fCommonHeader[6] = ((trgMask>>32) & AliHLTTriggerMask_t(0x3ffff)).to_ulong();
+      evtTrigData.fCommonHeader[7] = ((trgMask>>50) & AliHLTTriggerMask_t(0xffffffff)).to_ulong();
+      evtTrigData.fCommonHeader[8] = ((trgMask>>72) & AliHLTTriggerMask_t(0x3ffff)).to_ulong();
+
       trigData.fData=&evtTrigData;
       iLastOutputDataSize=iOutputDataSize;
       AliHLTUInt32_t size=iOutputDataSize;
@@ -803,7 +798,6 @@ int AliHLTTask::SubscribeSourcesAndSkip()
     if (!pSrcTask) continue;
     unsigned iPosition=fBlockDataArray.size();
     if ((iResult=pSrcTask->Subscribe(this, fBlockDataArray))>0) {
-      AliHLTComponentBlockDataList::iterator block=fBlockDataArray.begin();
       for (unsigned i=iPosition; i<fBlockDataArray.size(); i++) {
        subscribedTaskList.push_back(pSrcTask);
       }