43 void HandleSocket(TSocket *s);
47void SpyServ::HandleSocket(
TSocket *s)
58 if (s->
Recv(request,
sizeof(request)) <= 0) {
68 if (!strcmp(request,
"get hpx"))
69 answer.WriteObject(fHpx);
70 else if (!strcmp(request,
"get hpxpy"))
71 answer.WriteObject(fHpxpy);
72 else if (!strcmp(request,
"get hprof"))
73 answer.WriteObject(fHprof);
75 Error(
"SpyServ::HandleSocket",
"unexpected message");
90 if (!fServ->IsValid())
102 fCanvas =
new TCanvas(
"SpyServ",
"SpyServ",200,10,700,500);
103 fCanvas->SetFillColor(42);
104 fCanvas->GetFrame()->SetFillColor(21);
105 fCanvas->GetFrame()->SetBorderSize(6);
106 fCanvas->GetFrame()->SetBorderMode(-1);
109 fHpx =
new TH1F(
"hpx",
"This is the px distribution",100,-4,4);
110 fHpxpy =
new TH2F(
"hpxpy",
"py vs px",40,-4,4,40,-4,4);
111 fHprof =
new TProfile(
"hprof",
"Profile of pz versus px",100,-4,4,0,20);
114 fHpx->SetFillColor(48);
120 for (
Int_t i = 0; ; i++) {
127 if (i ==
kUPDATE) fHpx->Draw();
134 if ((s = fMon->Select(20)) != (
TSocket*)-1)
138 if (
gROOT->IsInterrupted())
int Int_t
Signed integer 4 bytes (int).
float Float_t
Float 4 bytes (float).
Error("WriteTObject","The current directory (%s) is not associated with a file. The object (%s) has not been written.", GetName(), objname)
1-D histogram with a float per channel (see TH1 documentation)
2-D histogram with a float per channel (see TH1 documentation)
const char * GetHostName() const
virtual void Add(TSocket *sock, Int_t interest=kRead)
Add socket to the monitor's active list.
This class implements server sockets.
This class implements client sockets.
virtual Int_t Recv(TMessage *&mess)
Receive a TMessage object.
TInetAddress GetInetAddress() const
TClass * IsA() const override
virtual Int_t Send(const TMessage &mess)
Send a TMessage object.
bool HasBeenDeleted(const TObject *obj)
Check if the TObject's memory has been deleted.