File indexing completed on 2023-03-17 11:24:05
0001 #ifndef SimVertex_H
0002 #define SimVertex_H
0003
0004 #include "SimDataFormats/Vertex/interface/CoreSimVertex.h"
0005 class SimVertex : public CoreSimVertex {
0006 public:
0007 typedef CoreSimVertex Core;
0008
0009 SimVertex();
0010
0011
0012 SimVertex(const CoreSimVertex& t, int it);
0013
0014 SimVertex(const math::XYZVectorD& v, float tof);
0015
0016
0017 SimVertex(const math::XYZVectorD& v, float tof, int it);
0018
0019
0020 SimVertex(const CoreSimVertex& t, int it, unsigned int vId);
0021
0022 SimVertex(const math::XYZVectorD& v, float tof, unsigned int vId);
0023
0024
0025 SimVertex(const math::XYZVectorD& v, float tof, int it, unsigned int vId);
0026
0027
0028
0029 int parentIndex() const { return itrack; }
0030 bool noParent() const { return itrack == -1; }
0031
0032 void setVertexId(unsigned int n) { vtxId = n; }
0033 unsigned int vertexId() const { return vtxId; }
0034
0035 void setProcessType(unsigned int ty) { procType = ty; }
0036 unsigned int processType() const { return procType; }
0037
0038 private:
0039 int itrack;
0040 unsigned int vtxId;
0041 unsigned int procType;
0042 };
0043
0044 #include <iosfwd>
0045 std::ostream& operator<<(std::ostream& o, const SimVertex& v);
0046
0047 #endif