00001 #ifndef HSCPCaloInfo_H 00002 #define HSCPCaloInfo_H 00003 #include "DataFormats/Common/interface/AssociationVector.h" 00004 #include "DataFormats/Common/interface/AssociationMap.h" 00005 #include "DataFormats/MuonReco/interface/MuonFwd.h" 00006 #include "DataFormats/MuonReco/interface/Muon.h" 00007 #include "DataFormats/TrackReco/interface/Track.h" 00008 #include <vector> 00009 #include "DataFormats/Common/interface/ValueMap.h" 00010 00011 namespace susybsm { 00012 00013 00014 class HSCPCaloInfo 00015 { 00016 public: 00017 float hcalCrossedEnergy, ecalCrossedEnergy, hoCrossedEnergy; 00018 float ecal3by3dir, ecal5by5dir; 00019 float hcal3by3dir, hcal5by5dir; 00020 float ecalBeta, ecalBetaError; 00021 float ecalDeDx; 00022 float trkIsoDr; 00023 float ecalTime, ecalTimeError; 00024 float ecalInvBetaError; 00025 int ecalCrysCrossed; 00026 std::vector<float> ecalSwissCrossKs; 00027 std::vector<float> ecalE1OverE9s; 00028 std::vector<float> ecalTrackLengths; 00029 std::vector<float> ecalEnergies; 00030 std::vector<float> ecalTimes; 00031 std::vector<float> ecalTimeErrors; 00032 std::vector<float> ecalChi2s; 00033 std::vector<float> ecalOutOfTimeChi2s; 00034 std::vector<float> ecalOutOfTimeEnergies; 00035 std::vector<DetId> ecalDetIds; 00036 std::vector<GlobalPoint> ecalTrackExitPositions; 00037 00038 HSCPCaloInfo() 00039 { 00040 hcalCrossedEnergy = -9999; 00041 ecalCrossedEnergy = -9999; 00042 hoCrossedEnergy = -9999; 00043 ecal3by3dir = -9999; 00044 ecal5by5dir = -9999; 00045 hcal3by3dir = -9999; 00046 hcal5by5dir = -9999; 00047 ecalBeta = -9999; 00048 ecalBetaError = -9999; 00049 ecalDeDx = -9999; 00050 trkIsoDr = -9999; 00051 ecalTime = -9999; 00052 ecalTimeError = -9999; 00053 ecalInvBetaError = -9999; 00054 ecalCrysCrossed = 0; 00055 } 00056 }; 00057 00058 typedef std::vector<HSCPCaloInfo> HSCPCaloInfoCollection; 00059 typedef edm::ValueMap<HSCPCaloInfo> HSCPCaloInfoValueMap; 00060 typedef edm::Ref<HSCPCaloInfoCollection> HSCPCaloInfoRef; 00061 typedef edm::RefProd<HSCPCaloInfoCollection> HSCPCaloInfoRefProd; 00062 typedef edm::RefVector<HSCPCaloInfoCollection> HSCPCaloInfoRefVector; 00063 00064 } 00065 00066 #endif