source: snovis/trunk/source/G4Lab/PhysicsTableAccessor.h@ 260

Last change on this file since 260 was 233, checked in by barrand, 19 years ago
  • Property svn:eol-style set to native
File size: 1.3 KB
Line 
1#ifndef G4Lab_PhysicsTableAccessor_h
2#define G4Lab_PhysicsTableAccessor_h
3
4// Inheritance :
5#include <Lib/BaseAccessor.h>
6#include <Slash/Data/IVisualizer.h>
7
8class G4ParticleDefinition;
9class G4VProcess;
10class G4PhysicsTable;
11
12namespace Slash {namespace Core {class ISession;}}
13
14namespace AIDA {class IAnalysisFactory;}
15
16namespace G4Lab {
17
18class PhysicsTable;
19
20class PhysicsTableAccessor
21:public Lib::BaseAccessor
22,public Slash::Data::IVisualizer
23{
24public: //Slash::Data::IAccessor
25 virtual std::string name() const;
26 virtual Slash::Data::IIterator* iterator();
27 virtual Slash::Core::IValue* findValue(Slash::Data::IAccessor::Data,const std::string&,void*);
28public: //Lib::IVisualizationType
29 virtual void beginVisualize();
30 virtual void visualize(Slash::Data::IAccessor::Data,void*);
31 virtual void endVisualize();
32public:
33 PhysicsTableAccessor(Slash::Core::ISession&,AIDA::IAnalysisFactory*);
34 virtual ~PhysicsTableAccessor();
35private:
36 bool findProcessTables(G4ParticleDefinition*,
37 G4VProcess*,
38 std::vector<std::string>&,
39 std::vector<G4PhysicsTable*>&);
40private:
41 Slash::Core::ISession& fSession;
42 std::string fType;
43 std::vector<PhysicsTable*> fTables;
44 AIDA::IAnalysisFactory* fAIDA;
45};
46
47}
48
49#endif
Note: See TracBrowser for help on using the repository browser.