]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/TPCLib/AliHLTAltroChannelSelectorComponent.cxx
added DigitDumpComponent and AltroChannelSelector
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTAltroChannelSelectorComponent.cxx
CommitLineData
3e6ec852 1// $Id$
2
3/**************************************************************************
4 * This file is property of and copyright by the ALICE HLT Project *
5 * ALICE Experiment at CERN, All rights reserved. *
6 * *
7 * Primary Authors: Matthias Richter <Matthias.Richter@ift.uib.no> *
8 * for The ALICE HLT 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 AliHLTAltroChannelSelectorComponent.cxx
20 @author Matthias Richter
21 @date
22 @brief A filter/selective readout component for TPC Altro data. */
23
24// see header file for class documentation
25// or
26// refer to README to build package
27// or
28// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
29
30#include "AliHLTAltroChannelSelectorComponent.h"
31
32/** ROOT macro for the implementation of ROOT specific class methods */
33ClassImp(AliHLTAltroChannelSelectorComponent)
34
35AliHLTAltroChannelSelectorComponent::AliHLTAltroChannelSelectorComponent()
36 :
37 AliHLTProcessor()
38{
39 // see header file for class documentation
40 // or
41 // refer to README to build package
42 // or
43 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
44}
45
46AliHLTAltroChannelSelectorComponent::~AliHLTAltroChannelSelectorComponent()
47{
48 // see header file for class documentation
49}
50
51const char* AliHLTAltroChannelSelectorComponent::GetComponentID()
52{
53 // see header file for class documentation
54 return "AltroChannelSelector";
55}
56
57void AliHLTAltroChannelSelectorComponent::GetInputDataTypes(AliHLTComponentDataTypeList& list)
58{
59 // see header file for class documentation
60 list.clear();
61 list.push_back(kAliHLTDataTypeDDLRaw|kAliHLTDataOriginTPC);
62 //list.push_back(channel list);
63}
64
65AliHLTComponentDataType AliHLTAltroChannelSelectorComponent::GetOutputDataType()
66{
67 // see header file for class documentation
68 return kAliHLTDataTypeDDLRaw|kAliHLTDataOriginTPC;
69}
70
71void AliHLTAltroChannelSelectorComponent::GetOutputDataSize(unsigned long& constBase, double& inputMultiplier)
72{
73 // see header file for class documentation
74 constBase=0;
75 inputMultiplier=1.0;
76}
77
78AliHLTComponent* AliHLTAltroChannelSelectorComponent::Spawn()
79{
80 // see header file for class documentation
81 return new AliHLTAltroChannelSelectorComponent;
82}
83
84int AliHLTAltroChannelSelectorComponent::DoInit(int argc, const char** argv)
85{
86 // see header file for class documentation
87 int iResult=0;
88 TString argument="";
89 for (int i=0; i<argc && iResult>=0; i++) {
90 argument=argv[i];
91 if (argument.IsNull()) continue;
92
93 //
94 if (argument.CompareTo("-whatsoever")==0) {
95 } else {
96 iResult=-EINVAL;
97 }
98 }
99
100 return iResult;
101}
102
103int AliHLTAltroChannelSelectorComponent::DoDeinit()
104{
105 // see header file for class documentation
106 return 0;
107}
108
109int AliHLTAltroChannelSelectorComponent::DoEvent(const AliHLTComponentEventData& evtData,
110 const AliHLTComponentBlockData* blocks,
111 AliHLTComponentTriggerData& /*trigData*/,
112 AliHLTUInt8_t* outputPtr,
113 AliHLTUInt32_t& size,
114 AliHLTComponentBlockDataList& outputBlocks )
115{
116 // see header file for class documentation
117 int iResult=0;
118
119 // search for the active pad information
120 for (int n=0; n<(int)evtData.fBlockCnt; n++ ) {
121// if (blocks[n].fDataType == ...) {
122
123// }
124 }
125
126 // process the DLL input
127 for (int n=0; n<(int)evtData.fBlockCnt; n++ ) {
128 if (blocks[n].fDataType != (kAliHLTDataTypeDDLRaw|kAliHLTDataOriginTPC)) continue;
129 }
130
131 return iResult;
132}