Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members  

GbmGrb.h

00001 
00015 #ifndef GBM_GRB_H
00016 #define GBM_GRB_H
00017 
00018 #include <vector>
00019 #include <string>
00020 
00021 #include "GRBurst.h"
00022 
00023 class HepRandomEngine;
00024 
00025 
00026 
00027 class GbmGrb  : public GRBurst
00028 {
00029 public:
00033     GbmGrb(HepRandomEngine *engine, const std::string &prefix, 
00034         const std::vector<double> &specnorm, const std::string &dir=0);
00035     
00039     GbmGrb(HepRandomEngine *engine, const double duration, const int npuls, 
00040         const double flux, const double fraction, const double alpha, 
00041         const double beta, const double epeak, const double specnorm, 
00042         const bool flag);
00043     
00047     virtual ~GbmGrb()   {};
00048     
00049     
00050 
00051     // Accessors
00052     static const double emax()   { return s_emax; }
00053   
00054     
00055 
00056     
00060     virtual long calcNphoton(HepRandomEngine *engine);
00061     
00062 private:
00067     void makeEnergies(HepRandomEngine *engine);
00068     
00072     virtual void makeGRB(HepRandomEngine *engine);
00073  
00074     
00075     
00076     // Data Members
00077     static const double  s_emax;
00078     double               m_cjoin;
00079     double               m_norm;
00080 };
00081 
00082 #endif // GBM_GRB_H

Generated on Mon Jan 27 11:43:32 2003 by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001