00001
00013 #ifndef _FINAL_STATE_H_
00014 #define _FINAL_STATE_H_
00015
00016 #include <string>
00017 #include <ostream>
00018
00019 #include <TObject.h>
00020
00021 using std::string;
00022 using std::ostream;
00023
00024 class final_state : public TObject {
00025
00026 public:
00027
00028 final_state();
00029 final_state(const char * name);
00030 final_state(int proton, int neutron, int piplus, int piminus, int pizero);
00031 final_state(int neugenID);
00032 ~final_state();
00033
00034 void setFinalState(int proton, int neutron, int piplus, int piminus, int pizero);
00035 void setNeugenID(int neugenID);
00036
00037 int getProton (void) const { return _proton; }
00038 int getNeutron (void) const { return _neutron; }
00039 int getPiplus (void) const { return _piplus; }
00040 int getPiminus (void) const { return _piminus; }
00041 int getPizero (void) const { return _pizero; }
00042 int getNeugenID (void) const { return _neugenID;}
00043 int getMultiplicity (void) const { return _multiplicity;}
00044
00045 void print(ostream & stream) const;
00046
00047 friend ostream & operator << (ostream & stream, const final_state & final);
00048
00049 private:
00050
00051 string _name;
00052 int _proton;
00053 int _neutron;
00054 int _piplus;
00055 int _piminus;
00056 int _pizero;
00057 int _neugenID;
00058 int _multiplicity;
00059
00060 ClassDef(final_state, 1)
00061 };
00062
00063 #endif
00064