source: DMM/applications/test.cxx@ 448

Last change on this file since 448 was 373, checked in by campagne, 18 years ago

Data Model for MEMPHYS

File size: 1.4 KB
Line 
1#include "DMM/WCHit.h"
2#include "DMM/DataServices.h"
3#include <algorithm>
4
5class xIncreasingSort {
6 public:
7 bool operator()(const MEMPHYS::DMM::WCHit::SharedPtr& a,
8 const MEMPHYS::DMM::WCHit::SharedPtr& b) const {
9 return (a->x() < b->x());
10 }
11};
12
13
14int main () {
15
16 //init les services
17 MEMPHYS::DMM::DataServices* wcHitServices = new MEMPHYS::DMM::DataServices();
18
19 //A vector of WCHits
20 MEMPHYS::DMM::WCHit::Vector v;
21
22
23 //Some Hits
24 //Hit b
25 MEMPHYS::DMM::WCHit::SharedPtr b(new MEMPHYS::DMM::WCHit(*wcHitServices));
26 b->setX(1.0);
27 v.push_back(b);
28
29 //Hit a
30 MEMPHYS::DMM::WCHit::SharedPtr a(new MEMPHYS::DMM::WCHit(*wcHitServices));
31 a->setX(0.5);
32 v.push_back(a);
33
34 std::cout << "(JEC): before sorting" << std::endl;
35 for_each(v.begin(),v.end(),MEMPHYS::DMM::DataDump(std::cout,"deep"));
36
37 sort(v.begin(),v.end(),xIncreasingSort());
38
39 std::cout << "(JEC): after sorting" << std::endl;
40 for_each(v.begin(),v.end(),MEMPHYS::DMM::DataDump(std::cout,"deep"));
41
42
43
44 MEMPHYS::DMM::WCHit::Vector w;
45 MEMPHYS::DMM::WCHit::SharedPtr aa = a;
46 MEMPHYS::DMM::WCHit::SharedPtr bb = b;
47 w.push_back(bb);
48 w.push_back(aa);
49 w.push_back(a);
50
51
52 std::cout << "(JEC): dump w vector" << std::endl;
53 for_each(w.begin(),w.end(),MEMPHYS::DMM::DataDump(std::cout));
54
55 //Clear
56 std::cout << "(JEC): Clear" << std::endl;
57
58 delete wcHitServices;
59
60 //end
61 std::cout << "(JEC): Return" << std::endl;
62 return 0;
63}
Note: See TracBrowser for help on using the repository browser.