/[PAMELA software]/PamVMC_update/include/PamVMCCutContMgr.h
ViewVC logotype

Annotation of /PamVMC_update/include/PamVMCCutContMgr.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations) (download)
Tue Oct 15 15:52:29 2013 UTC (11 years, 1 month ago) by formato
Branch point for: MAIN, rel
File MIME type: text/plain
Initial revision

1 formato 1.1 #ifndef PAMVMCCUTCONTMGR_H
2     #define PAMVMCCUTCONTMGR_H
3     #include <iostream>
4    
5     #include "TString.h"
6     #include "TObjString.h"
7     #include "TMap.h"
8     #include "TVirtualMC.h"
9     #include "pCutControl.h"
10    
11    
12     class PamVMCCutContMgr: public TObject {
13    
14     private:
15    
16     static PamVMCCutContMgr * fcutcont;
17     TMap fcutcontmap;
18    
19     protected:
20     ~PamVMCCutContMgr() {fcutcontmap.DeleteAll();};
21    
22     public:
23    
24     static PamVMCCutContMgr * Instance();
25    
26     pCutControl * GetCutCont(const char *medname){
27     return (pCutControl*)fcutcontmap(medname);
28     }
29    
30     void SetCutCont(const char *medname, pCutControl * pCC){
31     fcutcontmap.Add(new TObjString(medname),pCC);
32     }
33    
34     void SetCuts(){
35     TMapIter *n= (TMapIter *)fcutcontmap.MakeIterator();
36     TObject *o; while( (o=(TObject *) n->Next())) {
37    
38     ((pCutControl*)fcutcontmap.GetValue(o))->SetCuts();
39    
40     }
41     delete n;
42     }
43    
44     void Print(const Option_t* ="") const{
45    
46     std::cout<<"LIST OF CUTS AND CONTROLS FOR REGISTERED MEDIA"<<std::endl;
47     TMapIter *n= (TMapIter *)fcutcontmap.MakeIterator();
48     TObject *o; while( (o=(TObject *) n->Next())) {
49     TString medname =(*(TObjString*)o).GetString();
50     std::cout<<"MEDIA: "<<medname<<std::endl;
51     ((pCutControl*)fcutcontmap.GetValue(o))->Print();
52     }
53     delete n;
54     }
55    
56     };
57     #endif

  ViewVC Help
Powered by ViewVC 1.1.23