added code documentation for BASE, SampleLib, TPCLib and build system
[u/mrichter/AliRoot.git] / HLT / BASE / AliHLTProcessor.cxx
1 // $Id$
2
3 /**************************************************************************
4  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  *                                                                        *
6  * Authors: Matthias Richter <Matthias.Richter@ift.uib.no>                *
7  *          Timm Steinbeck <timm@kip.uni-heidelberg.de>                   *
8  *          for The ALICE Off-line Project.                               *
9  *                                                                        *
10  * Permission to use, copy, modify and distribute this software and its   *
11  * documentation strictly for non-commercial purposes is hereby granted   *
12  * without fee, provided that the above copyright notice appears in all   *
13  * copies and that both the copyright notice and this permission notice   *
14  * appear in the supporting documentation. The authors make no claims     *
15  * about the suitability of this software for any purpose. It is          *
16  * provided "as is" without express or implied warranty.                  *
17  **************************************************************************/
18
19 /** @file   AliHLTProcessor.cxx
20     @author Matthias Richter, Timm Steinbeck
21     @date   
22     @brief  Base class implementation for HLT analysis components. */
23
24 #if __GNUC__>= 3
25 using namespace std;
26 #endif
27
28 #include "AliHLTProcessor.h"
29 #include <string.h>
30
31 /** ROOT macro for the implementation of ROOT specific class methods */
32 ClassImp(AliHLTProcessor)
33
34 AliHLTProcessor::AliHLTProcessor()
35
36 }
37
38 AliHLTProcessor::~AliHLTProcessor()
39
40 }
41
42 int AliHLTProcessor::Init( AliHLTComponentEnvironment* environ, void* environ_param, int argc, const char** argv )
43 {
44   int iResult=0;
45   iResult=AliHLTComponent::Init(environ, environ_param, argc, argv);
46   return iResult;
47 }
48
49 int AliHLTProcessor::Deinit()
50 {
51   int iResult=0;
52   iResult=AliHLTComponent::Deinit();
53   return iResult;
54 }
55
56 int AliHLTProcessor::ProcessEvent( const AliHLTComponent_EventData& evtData, const AliHLTComponent_BlockData* blocks, 
57                             AliHLTComponent_TriggerData& trigData, AliHLTUInt8_t* outputPtr, 
58                             AliHLTUInt32_t& size, AliHLTUInt32_t& outputBlockCnt, 
59                             AliHLTComponent_BlockData*& outputBlocks,
60                             AliHLTComponent_EventDoneData*& edd )
61 {
62   int iResult=0;
63   vector<AliHLTComponent_BlockData> blockData;
64   iResult=DoEvent(evtData, blocks, trigData, outputPtr, size, blockData);
65   if (iResult>=0) {
66     iResult=MakeOutputDataBlockList(blockData, &outputBlockCnt, &outputBlocks);
67   }
68   edd = NULL;
69   return iResult;
70 }