00001 /********************************************** 00002 * 00003 * $Id: StMcHitComparisons.hh,v 2.5 2005/11/22 21:44:52 fisyak Exp $ 00004 * 00005 * Author: Manuel Calderon de la Barca Sanchez 00006 *********************************************** 00007 * Description: Define the comparisons to be used 00008 * in the multimaps 00009 * & sorting of containers 00010 * 00011 *********************************************** 00012 * $Log: StMcHitComparisons.hh,v $ 00013 * Revision 2.5 2005/11/22 21:44:52 fisyak 00014 * Add compress Print for McEvent, add Ssd collections 00015 * 00016 * Revision 2.4 2005/07/06 21:49:51 calderon 00017 * StThreeVector.hh -> StThreeVectorF.hh 00018 * 00019 * Revision 2.3 2005/07/06 20:05:28 calderon 00020 * Remove forward declaration of StThreeVectorF, use #include, and only in 00021 * StMcHit base class. StThreeVectorF is not a class anymore, it is now 00022 * only a typedef, only template version of StThreeVector exists now. 00023 * 00024 * Revision 2.2 2000/06/09 19:52:07 calderon 00025 * No longer use 2 different functions for SVT and TPC that do the same thing, 00026 * just use one function for the base class 00027 * 00028 * Revision 2.1 2000/03/07 15:09:54 calderon 00029 * Initial Revision. 00030 * Comparisons used for sorting the hit containers, and 00031 * for ordering the hits in the multimaps. 00032 * 00033 * 00034 **********************************************/ 00035 #ifndef StMcHitComparisons_HH 00036 #define StMcHitComparisons_HH 00037 class StHit; 00038 class StTpcHit; 00039 class StSvtHit; 00040 class StSsdHit; 00041 class StFtpcHit; 00042 class StRichHit; 00043 00044 class StMcHit; 00045 class StMcTpcHit; 00046 class StMcSvtHit; 00047 class StMcSsdHit; 00048 class StMcFtpcHit; 00049 class StMcRichHit; 00050 #include "StThreeVectorF.hh" 00051 00052 #if (defined __SUNPRO_CC && (__SUNPRO_CC < 0x500)) 00053 // bool is defined in utility for SUNPRO_CC 4.2 00054 #include <utility> 00055 #endif 00056 struct compHit{ 00057 bool operator()(const StHit*, const StHit*) const; 00058 }; 00059 00060 struct compMcHit{ 00061 bool operator()(const StMcHit*, const StMcHit*) const; 00062 }; 00063 00064 // struct compTpcHit{ 00065 // bool operator()(const StTpcHit* h1,const StTpcHit* h2) const; 00066 // }; 00067 00068 // struct compMcTpcHit{ 00069 // bool operator()(const StMcTpcHit* h1,const StMcTpcHit* h2) const; 00070 // }; 00071 00072 // struct compSvtHit{ 00073 // bool operator()(const StSvtHit* h1,const StSvtHit* h2) const; 00074 // }; 00075 00076 // struct compMcSvtHit{ 00077 // bool operator()(const StMcSvtHit* h1,const StMcSvtHit* h2) const; 00078 // }; 00079 00080 struct compRPhi{ 00081 bool operator()(const StThreeVectorF&, const StThreeVectorF&) const; 00082 }; 00083 struct compFtpcHit{ 00084 bool operator()(const StFtpcHit*,const StFtpcHit*) const; 00085 }; 00086 struct compMcFtpcHit{ 00087 bool operator()(const StMcFtpcHit*,const StMcFtpcHit*) const; 00088 }; 00089 00090 #endif
1.5.9