42 void TGridJDL::Clear(
const Option_t*)
50 void TGridJDL::SetValue(
const char *key,
const char *value)
52 TObject *
object = fMap.FindObject(key);
53 TPair *pair =
dynamic_cast<TPair*
>(object);
55 TObject *oldObject = pair->Key();
57 TObject *oldValue = pair->Value();
59 fMap.Remove(oldObject);
70 fMap.Add(
new TObjString(key),
new TObjString(value));
77 const char *TGridJDL::GetValue(
const char *key)
82 TObject *
object = fMap.FindObject(key);
86 TPair *pair =
dynamic_cast<TPair*
>(object);
90 TObject *value = pair->Value();
94 TObjString *
string =
dynamic_cast<TObjString*
>(value);
98 return string->GetName();
104 void TGridJDL::SetDescription(
const char *key,
const char* description)
106 TObject *
object = fDescriptionMap.FindObject(key);
107 TPair *pair =
dynamic_cast<TPair*
>(object);
109 TObject *oldObject = pair->Key();
111 TObject *oldValue = pair->Value();
113 fDescriptionMap.Remove(oldObject);
124 fDescriptionMap.Add(
new TObjString(key),
new TObjString(description));
131 const char *TGridJDL::GetDescription(
const char *key)
136 TObject *
object = fDescriptionMap.FindObject(key);
140 TPair *pair =
dynamic_cast<TPair*
>(object);
144 TObject *value = pair->Value();
148 TObjString *
string =
dynamic_cast<TObjString*
>(value);
152 return string->GetName();
159 TString TGridJDL::AddQuotes(
const char *value)
161 TString temp = TString(
"\"");
172 void TGridJDL::AddToSet(
const char *key,
const char *value)
174 const char *oldValue = GetValue(key);
177 newString = oldValue;
178 if (newString.IsNull()) {
181 newString.Remove(newString.Length()-1);
185 newString += AddQuotes(value);
188 SetValue(key, newString);
195 void TGridJDL::AddToSetDescription(
const char *key,
const char *description)
197 const char *oldValue = GetDescription(key);
200 newString = oldValue;
201 newString += description;
203 SetDescription(key, newString);
208 TString TGridJDL::Generate()
213 TIter nextDescription(&fDescriptionMap);
215 TObject *objectD = 0;
216 while ((
object = next())) {
217 TObjString *key =
dynamic_cast<TObjString*
>(object);
219 TObject *value = fMap.GetValue(
object);
220 TObjString *valueobj =
dynamic_cast<TObjString*
>(value);
223 nextDescription.Reset();
224 while ((objectD = nextDescription())) {
225 TObjString *keyD =
dynamic_cast<TObjString*
>(objectD);
227 TObject *valueD = fDescriptionMap.GetValue(objectD);
228 TObjString *valueobjD =
dynamic_cast<TObjString*
>(valueD);
229 if (valueobjD && !strcmp(key->GetName(), keyD->GetName())){
232 output += valueobjD->GetName();
237 output += key->GetName();
239 output += valueobj->GetName();