1 TMap* GetValues(const char* host, Int_t port, const char* request,
2 UInt_t startTime, UInt_t endTime)
4 AliDCSClient client(host, port, 1000, 20, 1);
5 // The last parameter switches from single alias to multi aliases!
9 TTimeStamp currentTime;
12 TString rString(request);
14 TObjArray* requests = rString.Tokenize(",");
16 cout<<"Requests: "<<requests->GetEntries()<<endl;
23 if(requests->GetEntries() == 0) return NULL;
25 // TIter iter(requests);
26 // TObjString* aString;
27 // TObjArray* valueSet;
28 // while ((aString = (TObjString*) iter.Next())) {
29 // cout<<" Querying: "<<aString->GetName()<<endl;
30 // valueSet = new TObjArray();
31 // valueSet->SetOwner(1);
33 // result = client.GetAliasValues(aString->GetName(), startTime,
34 // endTime, valueSet);
35 // values.Add(aString->Clone(), valueSet);
38 values = client.GetAliasValues(requests, startTime, endTime);
41 cout<<"Communication failure: "<<
42 client.GetServerError().Data() <<endl;
47 cout<<"Elapsed time: "<<sw.RealTime()<<endl;
49 cout<<"Time per alias: "<<sw.RealTime()/requests->GetEntries()<<endl;
51 cout<<"Received values: "<<endl;
57 while ((aRequest = (TObjString*) iter.Next())) {
59 TObjArray* valueSet = (TObjArray*) values->GetValue(aRequest);
61 cout<<" '"<<aRequest->String()<<"' values: "
62 <<valueSet->GetEntriesFast()<<endl;
64 TIter valIter(valueSet);
66 while ((aValue = (AliDCSValue*) valIter.Next())) {
67 cout<<aValue->ToString()<<endl;
72 cout<<"Number of received values: "<< nValues <<endl;
76 TFile file("dump.root", "UPDATE");
78 values.Write("DCSAliasMap", TObject::kSingleKey);
85 cout<<"All values returned in runrange: "<<endl;
86 cout<<"StartTime: "<<TTimeStamp(startTime).AsString()<<endl;
87 cout<<"EndTime: "<<TTimeStamp(endTime).AsString()<<endl;
92 TMap* TestClientAlias(const char* host, Int_t port, const char* request,
93 UInt_t startShift, UInt_t endShift) {
95 gSystem->Load("$ALICE_ROOT/SHUTTLE/DCSClient/AliDCSClient");
97 // AliLog::EnableDebug(kFALSE);
98 // AliLog::SetGlobalDebugLevel(3);
100 TTimeStamp currentTime;
102 TMap* values = GetValues(host, port, request,
103 currentTime.GetSec() - startShift,
104 currentTime.GetSec() - endShift);
106 if(values) values->Print();
109 cout <<"Client done"<<endl;