00001 // -*- C++ -*- 00002 /*************************************************************************** 00003 * 00004 * The IPPL Framework 00005 * 00006 * This program was prepared by PSI. 00007 * All rights in the program are reserved by PSI. 00008 * Neither PSI nor the author(s) 00009 * makes any warranty, express or implied, or assumes any liability or 00010 * responsibility for the use of this software 00011 * 00012 * Visit http://www.acl.lanl.gov/POOMS for more details 00013 * 00014 ***************************************************************************/ 00015 00016 // -*- C++ -*- 00017 /*************************************************************************** 00018 * 00019 * The IPPL Framework 00020 * 00021 * 00022 * Visit http://people.web.psi.ch/adelmann/ for more details 00023 * 00024 ***************************************************************************/ 00025 00026 // include files 00027 #include "DataSource/PtclAttribDataSource.h" 00028 #include "DataSource/PtclBaseDataSource.h" 00029 #include "Utility/Pstring.h" 00030 #include "Profile/Profiler.h" 00031 00032 00034 // constructor: the name, the connection, the transfer method, the attrib 00035 ParticleAttribDataSource::ParticleAttribDataSource(const char *nm, 00036 DataConnect *dc, int tm, ParticleAttribBase *pa, DataSource *ds) 00037 : DataSourceObject(nm, ds, dc, tm) { 00038 00039 TAU_PROFILE("ParticleAttribDataSource::ParticleAttribDataSource()", 00040 "void (char *, DataConnect *, int, ParticleAttribBase *, DataSource *)", 00041 TAU_VIZ); 00042 00043 // find a particlebase object which contains this attribute; if none 00044 // found, it is an error 00045 PBase = ParticleBaseDataSource::find_particle_base(this, pa); 00046 00047 // if we did find it ... 00048 if (PBase != 0) { 00049 // change our name to include the particle base's name 00050 string newname = PBase->name(); 00051 newname += ":"; 00052 newname += name(); 00053 setName(newname.c_str()); 00054 } 00055 } 00056 00057 00059 // destructor 00060 ParticleAttribDataSource::~ParticleAttribDataSource() { } 00061 00062 00063 00064 /*************************************************************************** 00065 * $RCSfile: PtclAttribDataSource.cpp,v $ $Author: adelmann $ 00066 * $Revision: 1.1.1.1 $ $Date: 2003/01/23 07:40:25 $ 00067 * IPPL_VERSION_ID: $Id: PtclAttribDataSource.cpp,v 1.1.1.1 2003/01/23 07:40:25 adelmann Exp $ 00068 ***************************************************************************/