added Huffman compression stuff for ALTRO data (Jenny)
[u/mrichter/AliRoot.git] / HLT / comp / AliHLTCompAgent.cxx
CommitLineData
ae51a735 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 AliHLTCompAgent.cxx
20 @author Matthias Richter
21 @date
a183f221 22 @brief Agent of the libAliHLTComp library
ae51a735 23*/
24
25// see header file for class documentation
26// or
27// refer to README to build package
28// or
29// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
30
31#include <cassert>
32#include <cerrno>
33#include "AliHLTCompAgent.h"
34#include "AliHLTConfiguration.h"
35
36// header files of library components
c2440081 37#include "AliHLTCOMPHuffmanAltroComponent.h"
38#include "AliHLTCOMPHuffmanAltroCalibComponent.h"
ae51a735 39
40/** global instance for agent registration */
41AliHLTCompAgent gAliHLTCompAgent;
42
43/** ROOT macro for the implementation of ROOT specific class methods */
44ClassImp(AliHLTCompAgent)
45
46AliHLTCompAgent::AliHLTCompAgent()
47{
48 // see header file for class documentation
49 // or
50 // refer to README to build package
51 // or
52 // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
53}
54
55AliHLTCompAgent::~AliHLTCompAgent()
56{
57 // see header file for class documentation
58}
59
60int AliHLTCompAgent::CreateConfigurations(AliHLTConfigurationHandler* /*handler*/,
61 AliRawReader* /*rawReader*/,
62 AliRunLoader* /*runloader*/) const
63{
64 // see header file for class documentation
65 return 0;
66}
67
68const char* AliHLTCompAgent::GetReconstructionChains(AliRawReader* /*rawReader*/,
69 AliRunLoader* /*runloader*/) const
70{
71 // see header file for class documentation
72 return NULL;
73}
74
75const char* AliHLTCompAgent::GetRequiredComponentLibraries() const
76{
77 // see header file for class documentation
c2440081 78
79 // libAliHLTUtil.so for AliRawReaderPublisher
80 //return "libAliHLTUtil.so";
ae51a735 81 return NULL;
82}
83
84int AliHLTCompAgent::RegisterComponents(AliHLTComponentHandler* pHandler) const
85{
86 // see header file for class documentation
87 assert(pHandler);
88 if (!pHandler) return -EINVAL;
c2440081 89 // use fCompressionSwitch = true for decompressed inputtype (i.e. compressed output)
90 pHandler->AddComponent(new AliHLTCOMPHuffmanAltroComponent(true));
91 // use fCompressionSwitch = false for compressed inputtype (i.e. decompressed output)
92 pHandler->AddComponent(new AliHLTCOMPHuffmanAltroComponent(false));
93 pHandler->AddComponent(new AliHLTCOMPHuffmanAltroCalibComponent);
94
ae51a735 95 return 0;
96}