00001 // -*- Mode: C++ -*- 00002 // 00003 // DecayMode.h - data class for a single decay mode of a particle 00004 // 00005 // Copyright (C) 1993 The Board of Trustees of The Leland Stanford 00006 // 00007 // History: 00008 // Migration for BESIII MDC 00009 // Junior University. All Rights Reserved. 00010 // 00011 // $Id: DecayMode.h,v 1.2 2009/12/23 02:59:56 zhangy Exp $ 00012 // 00013 // See Also 00014 // AntiPdtEntry, PdtEntry, Pdt, PdtEntry 00015 00016 #ifndef _DECAYMODE_H_ 00017 #define _DECAYMODE_H_ 00018 00019 #include <iostream> 00020 #include <stdio.h> 00021 #include <vector> 00022 using std::vector; 00023 00024 class PdtEntry; 00025 00026 class DecayMode 00027 { 00028 public: 00029 DecayMode(float bf, vector<PdtEntry*> *l ); 00030 00031 virtual ~DecayMode(); 00032 00033 float BF() const { return _branchingFraction; } 00034 const vector<PdtEntry*> *childList() const { return _children; } 00035 00036 void printOn(std::ostream& os) const; 00037 bool operator==(const DecayMode& other) { return this == &other; } 00038 00039 protected: 00040 float _branchingFraction; 00041 vector<PdtEntry*> *_children; // list of child data 00042 }; 00043 00044 #endif 00045 00046