104 #ifndef STAR_StEEmcAssociationMaker_HH
105 #define STAR_StEEmcAssociationMaker_HH
111 #include "StMcEvent/StMcCalorimeterHit.hh"
117 #if !defined(ST_NO_NAMESPACES)
163 int getAssociation(
int det) {
return (det>0 && det<=NDETECTORS) ? ((mAssocType&(1<<(det-1)))!=0): 0; }
175 typedef multimap<const StMcTrack*, const StEEmcClusterAssociation*, compEEmcTrack> multiEEmcTrackCluster;
176 typedef multimap<const StEmcCluster*, const StEEmcClusterAssociation*, compEEmcCluster> multiEEmcClusterTrack;
177 typedef multimap<const StMcTrack*, const StEEmcPointAssociation*, compEEmcTrack> multiEEmcTrackPoint;
178 typedef multimap<const StEmcPoint*, const StEEmcPointAssociation*, compEEmcPoint> multiEEmcPointTrack;
180 typedef multiEEmcTrackCluster::iterator multiEEmcTrackClusterIter;
181 typedef multiEEmcClusterTrack::iterator multiEEmcClusterTrackIter;
182 typedef multiEEmcTrackPoint::iterator multiEEmcTrackPointIter;
183 typedef multiEEmcPointTrack::iterator multiEEmcPointTrackIter;
184 typedef multiEEmcTrackCluster::value_type multiEEmcTrackClusterValue;
185 typedef multiEEmcClusterTrack::value_type multiEEmcClusterTrackValue;
186 typedef multiEEmcTrackPoint::value_type multiEEmcTrackPointValue;
187 typedef multiEEmcPointTrack::value_type multiEEmcPointTrackValue;
189 class multiEEmcTrackCluster;
190 class multiEEmcClusterTrack;
191 class multiEEmcTrackPoint;
192 class multiEEmcPointTrack;
193 class multiEEmcTrackClusterIter;
194 class multiEEmcClusterTrackIter;
195 class multiEEmcTrackPointIter;
196 class multiEEmcPointTrackIter;
197 class multiEEmcTrackClusterValue;
198 class multiEEmcClusterTrackValue;
199 class multiEEmcTrackPointValue;
200 class multiEEmcPointTrackValue;
212 void Clear(
const char*);
216 multiEEmcTrackCluster*
getTrackClusterMap(Int_t i) {
if(i>0 && i<=NDETECTORS)
return mTrackCluster[i-1];
else return NULL; }
218 multiEEmcClusterTrack*
getClusterTrackMap(Int_t i) {
if(i>0 && i<=NDETECTORS)
return mClusterTrack[i-1];
else return NULL; }
224 void setPrint(Bool_t a) {mPrint = a;};
232 multiEEmcTrackCluster* mTrackCluster[NDETECTORS];
233 multiEEmcClusterTrack* mClusterTrack[NDETECTORS];
234 multiEEmcTrackPoint* mTrackPoint;
235 multiEEmcPointTrack* mPointTrack;
float getFractionTrack() const
returns the fraction of the energy deposited by the track on the EMC that ended in the reconstructed ...
multiEEmcClusterTrack * getClusterTrackMap(Int_t i)
returns multimap for association betwwen clusters and MC tracks
multiEEmcTrackCluster * getTrackClusterMap(Int_t i)
returns multimap for association betwwen MC tracks and clusters
float getFractionCluster() const
returns the fraction of the energy of the cluster that was deposited by the MC track ...
int getAssociation(int det)
returns bit information (0,1) for each EMC subdetector
const StEmcCluster * getCluster() const
returns pointer to the EMC cluster
void printHits(StEvent *)
Set print log.
int getAssociation() const
returns Association information between MC track and EMC point
Monte Carlo Track class All information on a simulated track is stored in this class: kinematics...
Int_t getDetNum(const char *)
returns detector number for each EMC sub detector
multiEEmcPointTrack * getPointTrackMap()
returns multimap for association betwwen points and MC tracks
multiEEmcTrackPoint * getTrackPointMap()
returns multimap for association betwwen MC tracks and points
const StMcTrack * getTrack() const
returns pointer to the MC track
const StEmcPoint * getPoint() const
returns pointer to the EMC point