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

Last change on this file since 233 was 233, checked in by barrand, 17 years ago
  • Property svn:eol-style set to native
File size: 1.3 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;
13
14namespace Slash {namespace Core {class ISession;}}
15namespace Slash {namespace Core {class IWriter;}}
16
17#include <map>
18#include <G4AttDef.hh>
19#include <G4String.hh>
20
21namespace G4Lab {
22
23class HitsCollectionAccessor : public OnX::InventorAccessor {
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: //Slash::Data::IVisualizer
29  virtual void beginVisualize();
30  virtual void visualize(Slash::Data::IAccessor::Data,void*);
31public:
32  HitsCollectionAccessor(Slash::Core::ISession&,const std::string& = "");
33  virtual ~HitsCollectionAccessor();
34  const std::string& HCName() const;
35protected:
36  static G4LogicalVolume* hitLogicalVolume(const G4VHit&); 
37  static G4Transform3D* hitTransform3D(const G4VHit&); 
38  static bool hitColor(const G4VHit&,G4Colour&); 
39  static G4VHitsCollection* getCollection(Slash::Core::IWriter&,const std::string&);
40private:
41  std::string fType;
42  std::map<G4String,G4AttDef>* fAttDefs;
43  std::string fHC;
44};
45
46}
47
48#endif
Note: See TracBrowser for help on using the repository browser.