3 /**************************************************************************
4 * This file is property of and copyright by the ALICE HLT Project *
5 * ALICE Experiment at CERN, All rights reserved. *
7 * Primary Authors: Matthias Richter <Matthias.Richter@ift.uib.no> *
8 * for The ALICE HLT Project. *
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 **************************************************************************/
19 /** @file AliHLTCompAgent.cxx
20 @author Matthias Richter
22 @brief Agent of the libAliHLTComp library
25 // see header file for class documentation
27 // refer to README to build package
29 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
33 #include "AliHLTCompAgent.h"
34 #include "AliHLTConfiguration.h"
36 // header files of library components
37 #include "AliHLTCOMPHuffmanAltroComponent.h"
38 #include "AliHLTCOMPHuffmanAltroCalibComponent.h"
40 // header file of the module preprocessor
41 #include "AliHLTCompPreprocessor.h"
43 /** global instance for agent registration */
44 AliHLTCompAgent gAliHLTCompAgent;
46 /** ROOT macro for the implementation of ROOT specific class methods */
47 ClassImp(AliHLTCompAgent)
49 AliHLTCompAgent::AliHLTCompAgent()
51 AliHLTModuleAgent("Comp")
53 // see header file for class documentation
55 // refer to README to build package
57 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
60 AliHLTCompAgent::~AliHLTCompAgent()
62 // see header file for class documentation
65 int AliHLTCompAgent::CreateConfigurations(AliHLTConfigurationHandler* /*handler*/,
66 AliRawReader* /*rawReader*/,
67 AliRunLoader* /*runloader*/) const
69 // see header file for class documentation
73 const char* AliHLTCompAgent::GetReconstructionChains(AliRawReader* /*rawReader*/,
74 AliRunLoader* /*runloader*/) const
76 // see header file for class documentation
80 const char* AliHLTCompAgent::GetRequiredComponentLibraries() const
82 // see header file for class documentation
84 // libAliHLTUtil.so for AliRawReaderPublisher
85 //return "libAliHLTUtil.so";
89 int AliHLTCompAgent::RegisterComponents(AliHLTComponentHandler* pHandler) const
91 // see header file for class documentation
93 if (!pHandler) return -EINVAL;
94 // use fCompressionSwitch = true for decompressed inputtype (i.e. compressed output)
95 pHandler->AddComponent(new AliHLTCOMPHuffmanAltroComponent(true));
96 // use fCompressionSwitch = false for compressed inputtype (i.e. decompressed output)
97 pHandler->AddComponent(new AliHLTCOMPHuffmanAltroComponent(false));
98 pHandler->AddComponent(new AliHLTCOMPHuffmanAltroCalibComponent);
103 AliHLTModulePreprocessor* AliHLTCompAgent::GetPreprocessor()
105 // see header file for class documentation
106 return new AliHLTCompPreprocessor;