]>
Commit | Line | Data |
---|---|---|
1388e0c7 | 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 AliHLTComponentConfiguration.cxx | |
20 | /// @author Matthias Richter | |
21 | /// @date 2010-11-26 | |
22 | /// @brief HLT configuration description for a single component. | |
23 | /// @note The class is used in Offline (AliRoot) context | |
24 | ||
25 | #include "AliHLTComponentConfiguration.h" | |
26 | ||
27 | /** ROOT macro for the implementation of ROOT specific class methods */ | |
28 | ClassImp(AliHLTConfiguration) | |
29 | ||
30 | AliHLTComponentConfiguration::AliHLTComponentConfiguration() | |
31 | : AliHLTConfiguration() | |
32 | , fLibrary() | |
33 | , fNodeNames() | |
34 | , fOnlineCommand() | |
35 | { | |
36 | // see header file for class documentation | |
37 | // or | |
38 | // refer to README to build package | |
39 | // or | |
40 | // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt | |
41 | } | |
42 | ||
43 | AliHLTComponentConfiguration::AliHLTComponentConfiguration(const char* id, | |
44 | const char* component, | |
45 | const char* sources, | |
46 | const char* arguments) | |
47 | : AliHLTConfiguration(id, component, sources, arguments) | |
48 | , fLibrary() | |
49 | , fNodeNames() | |
50 | , fOnlineCommand() | |
51 | { | |
52 | // constructor | |
53 | } | |
54 | ||
55 | AliHLTComponentConfiguration::AliHLTComponentConfiguration(const AliHLTComponentConfiguration& src) | |
56 | : AliHLTConfiguration(src) | |
57 | , fLibrary(src.fLibrary) | |
58 | , fNodeNames(src.fNodeNames) | |
59 | , fOnlineCommand(src.fOnlineCommand) | |
60 | { | |
61 | // copy constructor | |
62 | } | |
63 | ||
64 | AliHLTComponentConfiguration& AliHLTComponentConfiguration::operator=(const AliHLTComponentConfiguration& src) | |
65 | { | |
66 | // assignment operator | |
67 | if (this==&src) return *this; | |
68 | AliHLTConfiguration::operator=(src); | |
69 | fLibrary=src.fLibrary; | |
70 | fNodeNames=src.fNodeNames; | |
71 | fOnlineCommand=src.fOnlineCommand; | |
72 | return *this; | |
73 | } | |
74 | ||
75 | AliHLTComponentConfiguration::~AliHLTComponentConfiguration() | |
76 | { | |
77 | // destructor | |
78 | } | |
79 | ||
80 | void AliHLTComponentConfiguration::SetOnlineCommand(const char* cmd) | |
81 | { | |
82 | // set the online command string | |
83 | ||
1388e0c7 | 84 | fOnlineCommand=cmd; |
85 | } | |
86 | ||
f84fefa5 | 87 | void AliHLTComponentConfiguration::PrintStatus() const |
88 | { | |
89 | // see header file for function documentation | |
90 | HLTLogKeyword("configuration status"); | |
91 | if (!fLibrary.IsNull()) HLTMessage(" - component library: \"%s\"", | |
92 | fLibrary.Data()); | |
93 | else HLTMessage(" - component library missing"); | |
94 | if (!fOnlineCommand.IsNull()) HLTMessage(" - online command: \"%s\"", | |
95 | fOnlineCommand.Data()); | |
96 | else HLTMessage(" - online command missing"); | |
97 | if (!fNodeNames.IsNull()) HLTMessage(" - online nodes: \"%s\"", | |
98 | fNodeNames.Data()); | |
99 | else HLTMessage(" - no online nodes"); | |
100 | } | |
101 | ||
1388e0c7 | 102 | void AliHLTComponentConfiguration::Print(const char* option) const |
103 | { | |
104 | // print information | |
1388e0c7 | 105 | AliHLTConfiguration::Print(option); |
f84fefa5 | 106 | if (option && strcmp(option, "status")==0) { |
107 | PrintStatus(); | |
108 | } | |
109 | else { | |
110 | HLTLogKeyword("configuration"); | |
111 | HLTMessage("component library %s, online command %s, online nodes %s", | |
112 | GetComponentLibrary(), | |
113 | GetOnlineCommand(), | |
114 | GetNodeSettings() | |
115 | ); | |
116 | } | |
1388e0c7 | 117 | } |