Belle II Software  release-05-01-25
tmemtest.cc
1 
2 #include "daq/rfarm/manager/SharedMem.h"
3 
4 #include "TH1F.h"
5 #include "TMemFile.h"
6 #include "TObject.h"
7 
8 using namespace Belle2;
9 using namespace std;
10 
11 int main(int argc, char** argv)
12 {
13  SharedMem* shm = new SharedMem("testhisto", 2000000);
14  // TMemFile* file = new TMemFile ( "TestHisto", (char*)shm->ptr(), 2000000, "RECREATE", "", 0 );
15  TMemFile* file = new TMemFile("TestHisto", "RECREATE");
16  int cpysize = file->CopyTo(shm->ptr(), 500000);
17 
18  // TMapFile* file = TMapFile::Create("TestHisto", "RECREATE", 2000000);
19  // TFile* file = new TFile ( "testhist.root", "RECREATE" );
20  TH1F* h1 = new TH1F("testhisto", "testhisto", 100, 0.0, 100.0);
21  file->Write(0, TObject::kOverwrite);
22 
23  // file->Add(h1);
24  h1->Fill(5.0, 5.0);
25  // cpysize = file->CopyTo( shm->ptr(), 500000 );
26  // for (int i=0; i<10; i++ ) {
27  for (int i = 0; i < 100; i++) {
28  h1->Fill((float)i, (float)i);
29  sleep(1);
30  // file->Update();
31  // cpysize = file->CopyTo( shm.ptr(), 2000000 );
32  file->Write(0, TObject::kOverwrite);
33  shm->lock();
34  cpysize = file->CopyTo(shm->ptr(), 500000);
35  shm->unlock();
36  printf("Objects copied : cpysize = %d\n", cpysize);
37  }
38  // h1->Reset();
39  // }
40  cpysize = file->CopyTo(shm->ptr(), 500000);
41  file->ls();
42  file->Print();
43  file->Write();
44  file->Close();
45 }
main
int main(int argc, char **argv)
Run all tests.
Definition: test_main.cc:77
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::SharedMem
Definition: SharedMem.h:20