[373] | 1 | #include "DMM/MCParticle.h"
|
---|
| 2 |
|
---|
| 3 |
|
---|
| 4 | MEMPHYS::DMM::MCParticle::MCParticle(MEMPHYS::DMM::IDataServices& aService)
|
---|
| 5 | :MEMPHYS::DMM::Particle(aService)
|
---|
| 6 | ,m_isPrimary(false)
|
---|
| 7 | ,m_startTime(0.)
|
---|
| 8 | {
|
---|
| 9 | std::cout << "Create MCParticle("<<this<<")"<<std::endl;
|
---|
| 10 | }//Ctor
|
---|
| 11 | //----------------------------------------------------------
|
---|
| 12 | MEMPHYS::DMM::MCParticle::MCParticle(const MEMPHYS::DMM::MCParticle& aMCParticle)
|
---|
| 13 | :MEMPHYS::DMM::Particle(aMCParticle)
|
---|
| 14 | ,m_isPrimary(aMCParticle.m_isPrimary)
|
---|
| 15 | ,m_startTime(aMCParticle.m_startTime)
|
---|
| 16 | {
|
---|
| 17 | std::cout << "Copy Create MCParticle("<<this<<") from ("<< &aMCParticle <<")" <<std::endl;
|
---|
| 18 | }//CCtor
|
---|
| 19 | //----------------------------------------------------------
|
---|
| 20 | MEMPHYS::DMM::MCParticle& MEMPHYS::DMM::MCParticle::operator=(const MEMPHYS::DMM::MCParticle& aMCParticle) {
|
---|
| 21 | std::cout << "Assign ("<<&aMCParticle<<") to (" << this << ")" <<std::endl;
|
---|
| 22 | if (&aMCParticle != this) {
|
---|
| 23 | MEMPHYS::DMM::Particle::operator=(aMCParticle);
|
---|
| 24 | m_isPrimary = aMCParticle.m_isPrimary;
|
---|
| 25 | m_startTime = aMCParticle.m_startTime;
|
---|
| 26 | }
|
---|
| 27 | return *this;
|
---|
| 28 | }//op=
|
---|
| 29 | //----------------------------------------------------------
|
---|
| 30 | void* MEMPHYS::DMM::MCParticle::cast(const std::string& aClass) const {
|
---|
| 31 | if(aClass=="Slash::Store::IStorable") {
|
---|
| 32 | return (void*)static_cast<const Slash::Store::IStorable*>(this);
|
---|
| 33 | } else if(aClass=="MEMPHYS::DMM::MCParticle") {
|
---|
| 34 | return (void*)static_cast<const MEMPHYS::DMM::MCParticle*>(this);
|
---|
| 35 | } else if(aClass=="MEMPHYS:DMM::Particle") {
|
---|
| 36 | return (void*)static_cast<const MEMPHYS::DMM::Particle*>(this);
|
---|
| 37 | } else if(aClass=="MEMPHYS:DMM::BaseData") {
|
---|
| 38 | return (void*)static_cast<const MEMPHYS::DMM::BaseData*>(this);
|
---|
| 39 | } else {
|
---|
| 40 | return 0;
|
---|
| 41 | }
|
---|
| 42 | }//cast
|
---|
| 43 | //----------------------------------------------------------
|
---|
| 44 | bool MEMPHYS::DMM::MCParticle::visit(Slash::Store::IConstVisitor&) const {
|
---|
| 45 | return true;
|
---|
| 46 | }//visit
|
---|
| 47 | //----------------------------------------------------------
|
---|
| 48 | bool MEMPHYS::DMM::MCParticle::read(Slash::Store::IVisitor&) {
|
---|
| 49 | return true;
|
---|
| 50 | }//read
|
---|
| 51 | //----------------------------------------------------------
|
---|
| 52 | void MEMPHYS::DMM::MCParticle::dump(std::ostream& f,
|
---|
| 53 | const std::string& option) {
|
---|
| 54 | MEMPHYS::DMM::Particle::dump(f,option);
|
---|
| 55 | if(m_isPrimary) {
|
---|
| 56 | f << " primary particle ";
|
---|
| 57 | } else {
|
---|
| 58 | f << " non-primary particle ";
|
---|
| 59 | }
|
---|
| 60 | f << " Start time " << m_startTime
|
---|
| 61 | << std::endl;
|
---|
| 62 | }//dump
|
---|
| 63 |
|
---|
| 64 |
|
---|