Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

PisaDevice Class Reference

Base class for both sensitive and non-sensitive devices in the Pisa geometry. More...

#include <PisaDevice.h>

Inheritance diagram for PisaDevice:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual ~PisaDevice ()
virtual void beginEvent (PHCompositeNode *topNode)
 Called at the beginning of each event.

virtual void createGeometry (PHCompositeNode *topNode)=0
 Build the geometry of the device topNode can be used e.g.

virtual void createMaterials (PHCompositeNode *topNode)=0
 Define the materials and tracking media used by this device.

virtual void finishEvent (PHCompositeNode *topNode)
 Called at the end of each event.

virtual bool isSensitive () const
 Whether this device is a sensitive one.

virtual const char * name () const =0
 Name of the device.

virtual void stepManager ()
 Called at each step of each track.

virtual const char * subsystem () const =0
 Subsystem this device is related to.


Detailed Description

Base class for both sensitive and non-sensitive devices in the Pisa geometry.

Primary responsability of this class is to build the geometry for the device. Then (in case of sensitive volumes), it must handle the hits (and possibly digits too).

Definition at line 14 of file PisaDevice.h.


Constructor & Destructor Documentation

PisaDevice::~PisaDevice  )  [virtual]
 

Definition at line 6 of file PisaDevice.C.


Member Function Documentation

void PisaDevice::beginEvent PHCompositeNode *  topNode  )  [virtual]
 

Called at the beginning of each event.

Reimplemented in PisaBBC, and PisaDetector.

Definition at line 12 of file PisaDevice.C.

virtual void PisaDevice::createGeometry PHCompositeNode *  topNode  )  [pure virtual]
 

Build the geometry of the device topNode can be used e.g.

to fetch the PhnxPar object, containing all subsystem parameters read from phnx.par file

Implemented in PisaBBC, PisaDetector, PisaHALL, and PisaMAG.

virtual void PisaDevice::createMaterials PHCompositeNode *  topNode  )  [pure virtual]
 

Define the materials and tracking media used by this device.

topNode can be used e.g. to fetch the PhnxPar object, containing all subsystem parameters read from phnx.par file

Implemented in PisaBBC, PisaDetector, PisaHALL, and PisaMAG.

void PisaDevice::finishEvent PHCompositeNode *  topNode  )  [virtual]
 

Called at the end of each event.

Reimplemented in PisaBBC, and PisaDetector.

Definition at line 19 of file PisaDevice.C.

bool PisaDevice::isSensitive  )  const [virtual]
 

Whether this device is a sensitive one.

A sensitive device is typically a detector, whereas a non-sensitive one is some structural material (e.g. magnet). If true, must implement stepManager(). Note that a detector might return false here, in case one does not want to use its stepManager.

Reimplemented in PisaDetector.

Definition at line 26 of file PisaDevice.C.

virtual const char* PisaDevice::name  )  const [pure virtual]
 

Name of the device.

Implemented in PisaBBC, PisaDetector, PisaHALL, and PisaMAG.

void PisaDevice::stepManager  )  [virtual]
 

Called at each step of each track.

Reimplemented in PisaBBC, and PisaDetector.

Definition at line 34 of file PisaDevice.C.

virtual const char* PisaDevice::subsystem  )  const [pure virtual]
 

Subsystem this device is related to.

Implemented in PisaBBC, PisaDetector, PisaHALL, and PisaMAG.


The documentation for this class was generated from the following files: