Hi Alberto, I guess you got a problem with address space, your Batch producer is likely to be smaller the the root.exe Please consult TMapFile::SetMapAdress Cheers Otto Alberto Baldisseri wrote: > > Hi rooters, > I am trying to use the TMapFile class to do a monitoring. I have a > producer task (batch) > that read the events from the DAQ and store some histograms in a > TMapFile. I would like > to access those histograms with an interactive root session. When I try > to open the TMapFile > from the root session I get a segmentation fault : > > TMapFile* mfile = TMapFile::Create("hsimple.map") > *** Break *** segmentation violation > > I code a simple producer as hprod.C but running in batch as follows > : > > // > // Batch producer > // > #include <TROOT.h> > #include <TH1.h> > #include <TH2.h> > #include <TProfile.h> > #include <TMapFile.h> > #include <TRandom.h> > > int main(int argc, char *argv[]) > > { > TROOT myroot("myroot","ALICE DAQ events"); > TMapFile* mfile = TMapFile::Create("hsimple.map","RECREATE", 100000, > "Demo memory mapped file with histograms"); > > TH1F* hpx = new TH1F("hpx","This is the px distribution",100,-4,4); > > TH2F* hpxpy = new TH2F("hpxpy","py vs px",40,-4,4,40,-4,4); > TProfile* hprof = new TProfile("hprof","Profile of pz versus > px",100,-4,4,0,20); > > // Set a fill color for the TH1F > hpx->SetFillColor(48); > > // Print status of mapped file > mfile->Print(); > > // Endless loop filling histograms with random numbers > Float_t px, py, pz; > int ii = 0; > while (1) { > // gRandom->Rannor(px,py); > pz = px*px + py*py; > hpx->Fill(px); > hpxpy->Fill(px,py); > hprof->Fill(px,pz); > if (!(ii % 10)) { > mfile->Update(); // updates all objects in shared memory > if (!ii) mfile->ls(); // print contents of mapped file after > } // first update > ii++; > } > } > > The interactive examples in the tutorials (hprod.C and hcons.C) > works fine, so > what is the difference with the batch ? Perhaps I miss someting ? I try > this with > root versions 2.23.09 and 2.24.04 on Linux RH6.2. This example have > worked last > year with root version 2.22. > > Anybody have an idea ? > > Regards, > > Alberto > > -- > +-------------------------------+------------------------------------+ > | Alberto BALDISSERI | Tel : (33-1) 69 08 93 33 | > | DAPNIA/SPhN, Bat 703 pièce 42 | Fax : (33-1) 69 08 75 84 | > | CEA Saclay | E-mail : a.baldisseri@cea.fr | > | F 91191 Gif-sur-Yvette cedex | | > +-------------------------------+------------------------------------+ -- Dr. Otto Schaile Sektion Physik, LMU Muenchen Phone: +49 89 289 14070 Am Coulombwall 1, D-85748 Garching, Germany GSM: +49 171 4312031 FAX: +49 89 289 14072 EMail: Otto.Schaile@Physik.Uni-Muenchen.DE
This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:24 MET