00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #include "StPhmdCollection.h"
00018 #include "StPhmdDetector.h"
00019
00020 ClassImp(StPhmdCollection)
00021
00022 StPhmdCollection::StPhmdCollection()
00023 {
00024 mCpvDetector = new StPhmdDetector(kPhmdCpvId);
00025 mDetector = new StPhmdDetector(kPhmdId);
00026 }
00027
00028 StPhmdCollection::~StPhmdCollection()
00029 {
00030 delete mCpvDetector;
00031 delete mDetector;
00032 }
00033
00034 StPhmdDetector*
00035 StPhmdCollection::detector(StDetectorId id)
00036 {
00037 if (id == kPhmdCpvId)
00038 return mCpvDetector;
00039 else if (id == kPhmdId)
00040 return mDetector;
00041 else
00042 return 0;
00043 }
00044
00045 const StPhmdDetector*
00046 StPhmdCollection::detector(StDetectorId id) const
00047 {
00048 if (id == kPhmdCpvId)
00049 return mCpvDetector;
00050 else if (id == kPhmdId)
00051 return mDetector;
00052 else
00053 return 0;
00054 }
00055
00056 void
00057 StPhmdCollection::setDetector(StPhmdDetector* val)
00058 {
00059 if (val) {
00060 if (val->id() == kPhmdCpvId) {
00061 delete mCpvDetector;
00062 mCpvDetector = val;
00063 }
00064 else if (val->id() == kPhmdId) {
00065 delete mDetector;
00066 mDetector = val;
00067 }
00068 }
00069 }
00070
00071
00072