source: snovis/trunk/source/G4Lab/HitsCollectionAccessor.h@ 302

Last change on this file since 302 was 288, checked in by barrand, 18 years ago
  • Property svn:eol-style set to native
File size: 1.4 KB
Line 
1#ifndef G4Lab_HitsCollectionAccessor_h
2#define G4Lab_HitsCollectionAccessor_h
3
4// Inheritance :
5#include <OnX/Inventor/InventorAccessor.h>
6
7#include <G4Transform3D.hh>
8
9class G4VHitsCollection;
10class G4VHit;
11class G4LogicalVolume;
12class G4Colour;
13class G4RunManager;
14
15namespace Slash {namespace Core {class ISession;}}
16namespace Slash {namespace Core {class IWriter;}}
17
18#include <map>
19#include <G4AttDef.hh>
20#include <G4String.hh>
21
22namespace G4Lab {
23
24class HitsCollectionAccessor : public OnX::InventorAccessor {
25public: //Slash::Data::IAccessor
26 virtual std::string name() const;
27 virtual Slash::Data::IIterator* iterator();
28 virtual Slash::Core::IValue* findValue(Slash::Data::IAccessor::Data,const std::string&,void*);
29public: //Slash::Data::IVisualizer
30 virtual void beginVisualize();
31 virtual void visualize(Slash::Data::IAccessor::Data,void*);
32public:
33 HitsCollectionAccessor(Slash::Core::ISession&,G4RunManager*,
34 const std::string& = "");
35 virtual ~HitsCollectionAccessor();
36 const std::string& HCName() const;
37protected:
38 static G4LogicalVolume* hitLogicalVolume(const G4VHit&);
39 static G4Transform3D* hitTransform3D(const G4VHit&);
40 static bool hitColor(const G4VHit&,G4Colour&);
41protected:
42 G4VHitsCollection* getCollection(Slash::Core::IWriter&,const std::string&);
43private:
44 std::string fType;
45 G4RunManager* fRunManager;
46 std::map<G4String,G4AttDef>* fAttDefs;
47 std::string fHC;
48};
49
50}
51
52#endif
Note: See TracBrowser for help on using the repository browser.