CosmicEventParser Class Reference

#include <CosmicEventParser.h>

List of all members.

Public Member Functions

 CosmicEventParser ()
const HepLorentzVector & Vertex (void)
const HepLorentzVector & Momentum (void)
int pdgID (void)

Private Member Functions

std::istreamread (std::istream &is)
std::ostreamwrite (std::ostream &os) const

Private Attributes

HepLorentzVector m_vertex
HepLorentzVector m_momentum
int m_eventNumber
int m_pdgId

Friends

std::istreamoperator>> (std::istream &is, CosmicEventParser &ev)
std::ostreamoperator<< (std::ostream &os, const CosmicEventParser &ev)


Detailed Description

Definition at line 8 of file CosmicEventParser.h.


Constructor & Destructor Documentation

CosmicEventParser::CosmicEventParser (  )  [inline]

Definition at line 10 of file CosmicEventParser.h.

00010 {};


Member Function Documentation

const HepLorentzVector& CosmicEventParser::Momentum ( void   )  [inline]

Definition at line 12 of file CosmicEventParser.h.

References m_momentum.

00012 {return m_momentum;}

int CosmicEventParser::pdgID ( void   )  [inline]

Definition at line 13 of file CosmicEventParser.h.

References m_pdgId.

00013 {return m_pdgId;}

std::istream & CosmicEventParser::read ( std::istream is  )  [inline, private]

Definition at line 35 of file CosmicEventParser.h.

References energy, m_eventNumber, m_momentum, m_pdgId, and m_vertex.

Referenced by operator>>().

00036 {
00037   int dummy;
00038   int id;
00039   Hep3Vector vert,mom;
00040   double v_x,v_y,v_z;
00041   is >> m_eventNumber >> dummy >> id >> v_x >> v_y >> v_z >> mom;
00042 
00043   //
00044   // rotate over pi in x-z plane
00045   //
00046   vert.setX(-v_x);
00047   vert.setY( v_y);
00048   vert.setZ(-v_z);
00049 
00050   //
00051   // convert to MeV's and mm units
00052   //
00053   mom = 1000*mom;
00054   vert = 10*vert;
00055 
00056 
00057   m_vertex.setVect(vert);
00058   m_vertex.setE(0.);
00059 
00060 
00061   m_momentum.setVect(mom);
00062   double energy = sqrt(pow(105.66,2)+mom.mag2());
00063   m_momentum.setE(energy);
00064 
00065   if(id == 5) m_pdgId = 13;
00066   else m_pdgId = -13;
00067                 
00068   return is;
00069 }

const HepLorentzVector& CosmicEventParser::Vertex ( void   )  [inline]

Definition at line 11 of file CosmicEventParser.h.

References m_vertex.

00011 {return m_vertex;}

std::ostream & CosmicEventParser::write ( std::ostream os  )  const [inline, private]

Definition at line 72 of file CosmicEventParser.h.

References m_eventNumber, m_momentum, m_pdgId, and m_vertex.

Referenced by operator<<().

00073 {
00074   int dummy(1);
00075   int id(5);
00076   if(m_pdgId == -13) id = 6;
00077   os << m_eventNumber << " " << dummy << " " << id << " " 
00078      << m_vertex.x() << " " << m_vertex.y() << " " << m_vertex.z() << " " 
00079      << m_momentum.x() << " " << m_momentum.y() << " " << m_momentum.z();
00080 
00081   return os;
00082 }


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream os,
const CosmicEventParser ev 
) [friend]

Definition at line 30 of file CosmicEventParser.h.

00030                                                                      {
00031   return ev.write(os);
00032 }

std::istream& operator>> ( std::istream is,
CosmicEventParser ev 
) [friend]

Definition at line 26 of file CosmicEventParser.h.

00026                                                                {
00027   return ev.read(is);
00028 }


Member Data Documentation

int CosmicEventParser::m_eventNumber [private]

Definition at line 17 of file CosmicEventParser.h.

Referenced by read(), and write().

HepLorentzVector CosmicEventParser::m_momentum [private]

Definition at line 16 of file CosmicEventParser.h.

Referenced by Momentum(), read(), and write().

int CosmicEventParser::m_pdgId [private]

Definition at line 18 of file CosmicEventParser.h.

Referenced by pdgID(), read(), and write().

HepLorentzVector CosmicEventParser::m_vertex [private]

Definition at line 15 of file CosmicEventParser.h.

Referenced by read(), Vertex(), and write().


Generated on Tue Nov 29 23:18:09 2016 for BOSS_7.0.2 by  doxygen 1.4.7