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

CalorimeterHit.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 // AID-GENERATED
00003 // =========================================================================
00004 // This class was generated by AID - Abstract Interface Definition          
00005 // DO NOT MODIFY, but use the org.freehep.aid.Aid utility to regenerate it. 
00006 // =========================================================================
00007 #ifndef EVENT_CALORIMETERHIT_H
00008 #define EVENT_CALORIMETERHIT_H 1
00009 
00010 #include "EVENT/LCObject.h"
00011 #include "empty_ignore.h"
00012 
00013 #include <vector>
00014 
00015 namespace EVENT {
00016 
00017 class LCObject;
00018 
00019 
00020 class CalorimeterHit ;
00021 /**Vector of (pointers to) CalorimeterHits.*/
00022 typedef std::vector<CalorimeterHit*> CalorimeterHitVec ;
00023 /** The generic calorimeter hit - created from SimCalorimeterHit or
00024  *  RawCalorimeterHit. The difference to RawCalorimeterHit is that amplitude
00025  *  ( energy) and time are now float and an optional position (x,y,z) can be stored
00026  *  with the hit.
00027  *  In order to suppress a (32-bit) pointer tag stored with every hit set
00028  *  flag(LCIO::RCHBIT_NO_PTR)==1. 
00029  *  
00030  * @author gaede
00031  * @version $Id: CalorimeterHit.aid,v 1.15 2006/08/03 16:53:34 gaede Exp $
00032  */
00033 
00034 class CalorimeterHit : public LCObject {
00035 
00036 public: 
00037     /// Destructor.
00038     virtual ~CalorimeterHit() { /* nop */; }
00039 
00040 
00041     /** Useful typedef for template programming with LCIO */
00042     typedef CalorimeterHit lcobject_type ;
00043 
00044     /** Returns the detector specific (geometrical) cell id.
00045      */
00046     virtual int getCellID0() const = 0;
00047 
00048     /** Returns the second detector specific (geometrical) cell id. Optional, check/set 
00049      *  flag(LCIO::RCHBIT_ID1)==1.
00050      */
00051     virtual int getCellID1() const = 0;
00052 
00053     /** Returns the energy of the hit in [GeV].
00054      */
00055     virtual float getEnergy() const = 0;
00056 
00057     /** Returns the time of the hit in [ns]. Optional, check/set 
00058      *  flag(LCIO::RCHBIT_TIME)==1.
00059      */
00060     virtual float getTime() const = 0;
00061 
00062     /** Returns the position of the hit in world coordinates.
00063      *  NULL if information is not stored - check 
00064      *  flag(LCIO::RCHBIT_LONG)==1.
00065      */
00066     virtual const float* getPosition() const = 0;
00067 
00068     /** Type of hit. Mapping of integer types to type names
00069      * through collection parameters "CalorimeterHitTypeNames"
00070      * and "CalorimeterHitTypeValues".
00071      */
00072     virtual int getType() const = 0;
00073 
00074     /** The RawCalorimeterHit. As in the future there might be other types of 
00075      *  raw calorimeter hits the return type is LCObject.
00076      */
00077     virtual LCObject * getRawHit() const = 0;
00078 }; // class
00079 } // namespace EVENT
00080 #endif /* ifndef EVENT_CALORIMETERHIT_H */

Generated on Sun Jun 3 06:31:59 2007 for A TPC Tracking Environment by  doxygen 1.3.9.1