00001 #ifndef CORRBASE_H 00002 #define CORRBASE_H 00003 00004 #include <string> 00005 #include "parametermap.h" 00006 00007 using namespace std; 00008 00009 //------------------------------------------------------------------------ 00010 // Base class for all correlations 00011 //------------------------------------------------------------------------ 00012 class CCorrFtnBase { 00013 00014 public: 00015 // public member data 00016 string particle1; 00017 string particle2; 00018 bool bigQ; 00019 00020 // create 00021 CCorrFtnBase(string p1 = "", string p2 = "", bool bQ = false) : 00022 particle1(p1), particle2(p2), bigQ(bQ) {} 00023 CCorrFtnBase(const CCorrFtnBase& m) : 00024 particle1(m.particle1), particle2(m.particle2), bigQ(m.bigQ){} 00025 virtual ~CCorrFtnBase(void){} 00026 00027 00028 // read/write to parameterMap map 00029 virtual bool Read(const parameterMap& s); 00030 virtual bool Write(parameterMap& s); 00031 00032 bool likepair(void) const{return particle1 == particle2;} 00033 00034 // CopyState 00035 virtual void CopyState(const CCorrFtnBase& A) 00036 {particle1=A.particle1; particle2=A.particle2; bigQ=A.bigQ;} 00037 00038 }; 00039 00040 #endif