00001 //-------------------------------------------------------------------------- 00002 // 00003 // Environment: 00004 // This software is part of the EvtGen package developed jointly 00005 // for the BaBar and CLEO collaborations. If you use all or part 00006 // of it, please give an appropriate acknowledgement. 00007 // 00008 // Copyright Information: See EvtGen/COPYRIGHT 00009 // Copyright (C) 2002 Caltech, LLNL 00010 // 00011 // Module: EvtGen/EvtModelAlias.cc 00012 // 00013 // Description:Class to keep track of model aliases 00014 // read in from the decay table 00015 // 00016 // Modification history: 00017 // 00018 // Lange January 19, 2002 Module created 00019 // 00020 //------------------------------------------------------------------------ 00021 #include "EvtGenBase/EvtPatches.hh" 00022 00023 #include "EvtGenBase/EvtModelAlias.hh" 00024 00025 EvtModelAlias::EvtModelAlias(std::string alias, std::string model, std::vector<std::string> args): 00026 00027 _aliasName(alias) 00028 ,_model(model) 00029 00030 { 00031 00032 if ( args.size() > 0 ) { 00033 int i; 00034 for ( i=0; i<args.size(); i++) { 00035 std::string tempStr=args[i]; 00036 _modelArgs.push_back(tempStr); 00037 } 00038 } 00039 } 00040 00041 EvtModelAlias::EvtModelAlias(const EvtModelAlias ©Me) : 00042 00043 _aliasName(copyMe._aliasName) 00044 ,_model(copyMe._model) 00045 { 00046 if ( copyMe._modelArgs.size() > 0 ) { 00047 int i; 00048 for ( i=0; i<copyMe._modelArgs.size(); i++) _modelArgs.push_back(copyMe._modelArgs[i]); 00049 } 00050 } 00051 00052 EvtModelAlias EvtModelAlias::operator=(const EvtModelAlias ©Me) { 00053 00054 _aliasName=copyMe._aliasName; 00055 _model=copyMe._model; 00056 00057 if ( copyMe._modelArgs.size() > 0 ) { 00058 int i; 00059 for ( i=0; i<copyMe._modelArgs.size(); i++) _modelArgs.push_back(copyMe._modelArgs[i]); 00060 } 00061 return *this; 00062 } 00063 00064 std::vector<std::string> EvtModelAlias::getArgList() { 00065 00066 return _modelArgs; 00067 }