Go to the documentation of this file.00001 #ifndef RPCOBJECTS_RPCDIGISIMLINK_H
00002 #define RPCOBJECTS_RPCDIGISIMLINK_H
00003
00004 #include "boost/cstdint.hpp"
00005 #include <map>
00006 #include "DataFormats/GeometryVector/interface/LocalPoint.h"
00007 #include "DataFormats/GeometryVector/interface/LocalVector.h"
00008 #include "SimDataFormats/EncodedEventId/interface/EncodedEventId.h"
00009
00010 class RPCDigiSimLink {
00011 public:
00012 RPCDigiSimLink(std::pair<unsigned int,int> digi,Local3DPoint entryPoint,
00013 LocalVector momentumAtEntry,float timeOfFlight,float energyLoss,
00014 int particleType,unsigned int detUnitId,unsigned int trackId,
00015 EncodedEventId eventId,unsigned short processType)
00016 {
00017
00018 _entryPoint=entryPoint;
00019 _momentumAtEntry=momentumAtEntry;
00020 _timeOfFlight=timeOfFlight;
00021 _energyLoss=energyLoss;
00022 _particleType=particleType;
00023 _detUnitId=detUnitId;
00024 _trackId=trackId;
00025 _eventId=eventId;
00026 _processType=processType;
00027 _digi = digi;
00028 }
00029
00030 RPCDigiSimLink(){;}
00031
00032 ~RPCDigiSimLink(){;}
00033
00034 unsigned int getStrip() const {return _digi.first;}
00035 unsigned int getBx() const {return _digi.second;}
00036 Local3DPoint getEntryPoint() const{return _entryPoint;}
00037 LocalVector getMomentumAtEntry() const{return _momentumAtEntry;}
00038 float getTimeOfFlight() const{return _timeOfFlight;}
00039 float getEnergyLoss() const{return _energyLoss;}
00040 int getParticleType() const{return _particleType;}
00041 unsigned int getDetUnitId() const{return _detUnitId;}
00042 unsigned int getTrackId() const{return _trackId;}
00043 EncodedEventId getEventId() const{return _eventId;}
00044 unsigned short getProcessType() const{return _processType;}
00045
00046 inline bool operator< ( const RPCDigiSimLink& other ) const { return getStrip() < other.getStrip(); }
00047
00048 private:
00049 std::pair<unsigned int,int> _digi;
00050
00051 Local3DPoint _entryPoint;
00052 LocalVector _momentumAtEntry;
00053 float _timeOfFlight;
00054 float _energyLoss;
00055 int _particleType;
00056 unsigned int _detUnitId;
00057 unsigned int _trackId;
00058 EncodedEventId _eventId;
00059 unsigned short _processType;
00060
00061 };
00062 #endif
00063
00064
00065