]> git.uio.no Git - u/mrichter/AliRoot.git/blame - AliGeant4/AliSDConstruction.h
Updated class description: added class title, author;
[u/mrichter/AliRoot.git] / AliGeant4 / AliSDConstruction.h
CommitLineData
c926eee0 1// $Id$
2// Category: digits+hits
3//
7005154f 4// Author: I. Hrivnacova
5//
6// Class AliSDConstruction
7// -----------------------
8/// Mandatory (TGeant4) class providing method for creating
c926eee0 9// sensitive detectors.
10// It provides also methods for switching between lego
11// sensitive detectors and the standard ones.
12
13#ifndef ALI_SD_CONSTRUCTION_H
14#define ALI_SD_CONSTRUCTION_H
15
16#include "TG4VSDConstruction.h"
17
18#include <globals.hh>
19
20class AliLego;
21class AliModule;
22
23class G4VPhysicalVolume;
24class G4LogicalVolume;
25
26class AliSDConstruction : public TG4VSDConstruction
27{
28 public:
29 AliSDConstruction();
30 virtual ~AliSDConstruction();
31
32 // methods
33 virtual void Construct();
34
35 void SetLego(AliLego* lego) const;
36 void UnsetLego() const;
37
38 private:
39 // methods
40 void InitializeModules();
41 AliModule* FindAliModule(G4LogicalVolume* lv) const;
42 void CreateSD(G4LogicalVolume* lv, AliModule* module) const;
43 void CreateLegoSD(G4LogicalVolume* lv, AliLego* lego) const;
44 void UnsetLegoSD(G4LogicalVolume* lv) const;
45};
46
47#endif //ALI_SD_CONSTRUCTION_H