// Author: Rafael D. de Souza 18/07/2014 (rderradi@ifi.unicamp.br) // exercício criar uma função na area pública #ifndef MYPARTICLE_H // classe objeto #define MYPARTICLE_H // /****************************************************************************** MyParticle.h - Class definition of MyParticle Description: Simple class to handle particle information such as id, momentum, dE/dx, etc. It also allows the access to TDatabasePDG ____________________________________________________________________ Last modified: 18/07/2014 - Rafael D. de Souza - first version release *******************************************************************************/ #include "Riostream.h" // include carrega bibliotecas #include "TObject.h" #include "TMath.h" using namespace::std; class MyParticle : public TObject { //sintax de classe private: Double_t fPx; // particle px Double_t fPy; // particle py Double_t fPz; // particle pz public: MyParticle(); // construtor veja funções do Objeto TParticle root.cern.ch MyParticle(Double_t px,Double_t py,Double_t pz); virtual ~MyParticle(); // destrutor da classe "~" Double_t Px(); //funções que devolve uma variável Double_t Py(); Double_t Pz(); Double_t Pt(); void SetPx(Double_t px); void SetPy(Double_t py); void SetPz(Double_t pz); void PrintInfo(); ClassDef(MyParticle,1) // MyParticle class }; inline void MyParticle::SetPx(Double_t px) { fPx = px; } inline void MyParticle::SetPy(Double_t py) { fPy = py; } inline void MyParticle::SetPz(Double_t pz) { fPz = pz; } inline void MyParticle::PrintInfo() { cout << fPx << "\t" << fPy << "\t" << fPz << endl; } inline Double_t MyParticle::Px() { return fPx; } inline Double_t MyParticle::Py() { return fPy; } inline Double_t MyParticle::Pz() { return fPz; } inline Double_t MyParticle::Pt() { return TMath::Sqrt(fPx*fPx+fPy*fPy); } #endif