BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnMwpc Class Reference

#include <BmnMwpc.h>

Inheritance diagram for BmnMwpc:
Collaboration diagram for BmnMwpc:

Public Member Functions

 BmnMwpc (const char *name, Bool_t active)
 BmnMwpc ()
virtual ~BmnMwpc ()
virtual Bool_t ProcessHits (FairVolume *vol=0)
virtual void EndOfEvent ()
virtual void Register ()
virtual TClonesArray * GetCollection (Int_t iColl) const
virtual void Print (Option_t *) const
virtual void Reset ()
virtual void CopyClones (TClonesArray *cl1, TClonesArray *cl2, Int_t offset)
virtual void ConstructGeometry ()
virtual void ConstructAsciiGeometry ()
virtual void ConstructGDMLGeometry (TGeoMatrix *)
void ExpandNodeForGdml (TGeoNode *node)
virtual Bool_t CheckIfSensitive (std::string name)
 BmnMwpc (const char *name, Bool_t active)
 BmnMwpc ()
virtual ~BmnMwpc ()
virtual Bool_t ProcessHits (FairVolume *vol=0)
virtual void EndOfEvent ()
virtual void Register ()
virtual TClonesArray * GetCollection (Int_t iColl) const
virtual void Print (Option_t *) const
virtual void Reset ()
virtual void CopyClones (TClonesArray *cl1, TClonesArray *cl2, Int_t offset)
virtual void ConstructGeometry ()
virtual void ConstructAsciiGeometry ()
virtual void ConstructGDMLGeometry (TGeoMatrix *)
void ExpandNodeForGdml (TGeoNode *node)
virtual Bool_t CheckIfSensitive (std::string name)

Static Public Member Functions

static Int_t GetWheel (Int_t uid)
static Int_t GetProj (Int_t uid)
static Int_t GetGasGap (Int_t uid)
static Int_t GetWheel (Int_t uid)
static Int_t GetProj (Int_t uid)
static Int_t GetGasGap (Int_t uid)

Public Attributes

map< TString, TGeoMedium * > fFixedMedia

Private Member Functions

int DistAndPoints (TVector3 p3, TVector3 p4, TVector3 &pa, TVector3 &pb)
 Hit collection.
TVector3 GlobalToLocal (TVector3 &global)
TVector3 LocalToGlobal (TVector3 &local)
BmnMwpcPoint * AddHit (Int_t trackID, Int_t detID, TVector3 pos, Double_t radius, TVector3 mom, Double_t time, Double_t length, Double_t eLoss, Int_t isPrimary, Double_t charge, Int_t fPdgId, TVector3 trackPos)
void ResetParameters ()
 BmnMwpc (const BmnMwpc &)=delete
BmnMwpc operator= (const BmnMwpc &)=delete
int DistAndPoints (TVector3 p3, TVector3 p4, TVector3 &pa, TVector3 &pb)
 Hit collection.
TVector3 GlobalToLocal (TVector3 &global)
TVector3 LocalToGlobal (TVector3 &local)
BmnMwpcPoint * AddHit (Int_t trackID, Int_t detID, TVector3 pos, Double_t radius, TVector3 mom, Double_t time, Double_t length, Double_t eLoss, Int_t isPrimary, Double_t charge, Int_t fPdgId, TVector3 trackPos)
void ResetParameters ()
 BmnMwpc (const BmnMwpc &)=delete
BmnMwpc operator= (const BmnMwpc &)=delete

Private Attributes

Int_t fTrackID
Int_t fVolumeID
 track index
TVector3 fPos
 volume id
TVector3 fPosLocal
 position
TLorentzVector fMom
 position local to gas chamber
Double32_t fTime
 momentum
Double32_t fLength
 time
Double32_t fELoss
 length
Int_t fIsPrimary
 energy loss
Double_t fCharge
 is track primary?
Double_t fRadius
 track charge
Int_t fPdgId
 hit radius
Int_t fwheel
 pdg id of particle
TVector3 fPosIn
TVector3 fPosOut
 entry position in global frame
TVector3 fPosInTmp
 exit position in global frame
Int_t fTrackIDTmp
 entry position in global frame
Int_t fwheelTmp
 track index
Int_t fPosIndex
TClonesArray * fPointCollection

Detailed Description

Definition at line 24 of file BmnMwpc.h.

Constructor & Destructor Documentation

◆ BmnMwpc() [1/6]

BmnMwpc::BmnMwpc ( const char * name,
Bool_t active )

Definition at line 46 of file BmnMwpc.cxx.

References fPointCollection, fPosIndex, and ResetParameters().

Referenced by BmnMwpc(), and operator=().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ BmnMwpc() [2/6]

BmnMwpc::BmnMwpc ( )

Definition at line 37 of file BmnMwpc.cxx.

References fPointCollection, fPosIndex, and ResetParameters().

Here is the call graph for this function:

◆ ~BmnMwpc() [1/2]

BmnMwpc::~BmnMwpc ( )
virtual

Definition at line 55 of file BmnMwpc.cxx.

References fPointCollection.

◆ BmnMwpc() [3/6]

BmnMwpc::BmnMwpc ( const BmnMwpc & )
privatedelete

References BmnMwpc().

Here is the call graph for this function:

◆ BmnMwpc() [4/6]

BmnMwpc::BmnMwpc ( const char * name,
Bool_t active )

◆ BmnMwpc() [5/6]

BmnMwpc::BmnMwpc ( )

◆ ~BmnMwpc() [2/2]

virtual BmnMwpc::~BmnMwpc ( )
virtual

◆ BmnMwpc() [6/6]

BmnMwpc::BmnMwpc ( const BmnMwpc & )
privatedelete

References BmnMwpc().

Here is the call graph for this function:

Member Function Documentation

◆ AddHit() [1/2]

BmnMwpcPoint * BmnMwpc::AddHit ( Int_t trackID,
Int_t detID,
TVector3 pos,
Double_t radius,
TVector3 mom,
Double_t time,
Double_t length,
Double_t eLoss,
Int_t isPrimary,
Double_t charge,
Int_t fPdgId,
TVector3 trackPos )
private

Definition at line 542 of file BmnMwpc.cxx.

References fPointCollection, and TObjArray::GetEntriesFast().

Referenced by ProcessHits().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddHit() [2/2]

BmnMwpcPoint * BmnMwpc::AddHit ( Int_t trackID,
Int_t detID,
TVector3 pos,
Double_t radius,
TVector3 mom,
Double_t time,
Double_t length,
Double_t eLoss,
Int_t isPrimary,
Double_t charge,
Int_t fPdgId,
TVector3 trackPos )
private

References fPdgId.

◆ CheckIfSensitive() [1/2]

Bool_t BmnMwpc::CheckIfSensitive ( std::string name)
virtual

Definition at line 526 of file BmnMwpc.cxx.

References TString::Contains().

Here is the call graph for this function:

◆ CheckIfSensitive() [2/2]

virtual Bool_t BmnMwpc::CheckIfSensitive ( std::string name)
virtual

◆ ConstructAsciiGeometry() [1/2]

void BmnMwpc::ConstructAsciiGeometry ( )
virtual

Definition at line 231 of file BmnMwpc.cxx.

References TObjArray::AddLast(), BmnMwpcGeoPar::GetGeoPassiveNodes(), BmnMwpcGeoPar::GetGeoSensitiveNodes(), and TListIter::Next().

Referenced by ConstructGeometry().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ConstructAsciiGeometry() [2/2]

virtual void BmnMwpc::ConstructAsciiGeometry ( )
virtual

◆ ConstructGDMLGeometry() [1/2]

void BmnMwpc::ConstructGDMLGeometry ( TGeoMatrix * )
virtual

Definition at line 371 of file BmnMwpc.cxx.

References ExpandNodeForGdml(), TGDMLParse::GDMLReadFile(), TGeoMedium::GetId(), TNamed::GetName(), and m.

Referenced by ConstructGeometry().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ConstructGDMLGeometry() [2/2]

virtual void BmnMwpc::ConstructGDMLGeometry ( TGeoMatrix * )
virtual

◆ ConstructGeometry() [1/2]

void BmnMwpc::ConstructGeometry ( )
virtual

Definition at line 212 of file BmnMwpc.cxx.

References ConstructAsciiGeometry(), ConstructGDMLGeometry(), TString::Data(), and TString::EndsWith().

Here is the call graph for this function:

◆ ConstructGeometry() [2/2]

virtual void BmnMwpc::ConstructGeometry ( )
virtual

◆ CopyClones() [1/2]

void BmnMwpc::CopyClones ( TClonesArray * cl1,
TClonesArray * cl2,
Int_t offset )
virtual

Definition at line 194 of file BmnMwpc.cxx.

References TObjArray::At(), fPosIndex, TObjArray::GetEntriesFast(), and i.

Here is the call graph for this function:

◆ CopyClones() [2/2]

virtual void BmnMwpc::CopyClones ( TClonesArray * cl1,
TClonesArray * cl2,
Int_t offset )
virtual

◆ DistAndPoints() [1/2]

int BmnMwpc::DistAndPoints ( TVector3 p3,
TVector3 p4,
TVector3 & pa,
TVector3 & pb )
private

Definition at line 63 of file BmnMwpc.cxx.

Referenced by ProcessHits().

Here is the caller graph for this function:

◆ DistAndPoints() [2/2]

int BmnMwpc::DistAndPoints ( TVector3 p3,
TVector3 p4,
TVector3 & pa,
TVector3 & pb )
private

◆ EndOfEvent() [1/2]

void BmnMwpc::EndOfEvent ( )
virtual

Definition at line 157 of file BmnMwpc.cxx.

References fPointCollection, fPosIndex, and Print().

Here is the call graph for this function:

◆ EndOfEvent() [2/2]

virtual void BmnMwpc::EndOfEvent ( )
virtual

◆ ExpandNodeForGdml() [1/2]

void BmnMwpc::ExpandNodeForGdml ( TGeoNode * node)

This should not happen. This means that somebody uses material in GDML that is not in the media.geo file. Most probably this is the sign to the user to check materials' names in the CATIA model.

Recursevly go down the tree of nodes

Definition at line 415 of file BmnMwpc.cxx.

References TObjArray::At(), ExpandNodeForGdml(), fFixedMedia, TObjArray::GetEntriesFast(), TGeoMedium::GetId(), TGeoMaterial::GetIndex(), TGeoMedium::GetMaterial(), TGeoVolume::GetMaterial(), TGeoVolume::GetMedium(), TNamed::GetName(), TGeoVolume::GetNdaughters(), TGeoVolume::GetNodes(), TGeoNode::GetVolume(), i, TGeoVolume::IsAssembly(), m, and TGeoVolume::SetMedium().

Referenced by ConstructGDMLGeometry(), and ExpandNodeForGdml().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ExpandNodeForGdml() [2/2]

void BmnMwpc::ExpandNodeForGdml ( TGeoNode * node)

References fFixedMedia.

◆ GetCollection() [1/2]

TClonesArray * BmnMwpc::GetCollection ( Int_t iColl) const
virtual

Definition at line 170 of file BmnMwpc.cxx.

References fPointCollection.

◆ GetCollection() [2/2]

virtual TClonesArray * BmnMwpc::GetCollection ( Int_t iColl) const
virtual

◆ GetGasGap() [1/2]

Int_t BmnMwpc::GetGasGap ( Int_t uid)
inlinestatic

Definition at line 78 of file BmnMwpc.h.

◆ GetGasGap() [2/2]

Int_t BmnMwpc::GetGasGap ( Int_t uid)
inlinestatic

Definition at line 78 of file BmnMwpc.h.

◆ GetProj() [1/2]

Int_t BmnMwpc::GetProj ( Int_t uid)
inlinestatic

Definition at line 77 of file BmnMwpc.h.

◆ GetProj() [2/2]

Int_t BmnMwpc::GetProj ( Int_t uid)
inlinestatic

Definition at line 77 of file BmnMwpc.h.

◆ GetWheel() [1/2]

Int_t BmnMwpc::GetWheel ( Int_t uid)
inlinestatic

Definition at line 76 of file BmnMwpc.h.

◆ GetWheel() [2/2]

Int_t BmnMwpc::GetWheel ( Int_t uid)
inlinestatic

Definition at line 76 of file BmnMwpc.h.

◆ GlobalToLocal() [1/2]

TVector3 BmnMwpc::GlobalToLocal ( TVector3 & global)
private

Definition at line 73 of file BmnMwpc.cxx.

References TVector3::GetXYZ().

Here is the call graph for this function:

◆ GlobalToLocal() [2/2]

TVector3 BmnMwpc::GlobalToLocal ( TVector3 & global)
private

◆ LocalToGlobal() [1/2]

TVector3 BmnMwpc::LocalToGlobal ( TVector3 & local)
private

Definition at line 82 of file BmnMwpc.cxx.

References TVector3::GetXYZ().

Referenced by ProcessHits().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ LocalToGlobal() [2/2]

TVector3 BmnMwpc::LocalToGlobal ( TVector3 & local)
private

◆ operator=() [1/2]

BmnMwpc BmnMwpc::operator= ( const BmnMwpc & )
privatedelete

References BmnMwpc().

Here is the call graph for this function:

◆ operator=() [2/2]

BmnMwpc BmnMwpc::operator= ( const BmnMwpc & )
privatedelete

References BmnMwpc().

Here is the call graph for this function:

◆ Print() [1/2]

void BmnMwpc::Print ( Option_t * ) const
virtual

Definition at line 178 of file BmnMwpc.cxx.

References fPointCollection, and i.

Referenced by EndOfEvent().

Here is the caller graph for this function:

◆ Print() [2/2]

virtual void BmnMwpc::Print ( Option_t * ) const
virtual

◆ ProcessHits() [1/2]

Bool_t BmnMwpc::ProcessHits ( FairVolume * vol = 0)
virtual

Definition at line 91 of file BmnMwpc.cxx.

References AddHit(), TMath::ATan2(), TParticlePDG::Charge(), DistAndPoints(), fCharge, fELoss, fIsPrimary, fLength, fMom, fPdgId, fPos, fPosIn, fPosOut, fTime, fTrackID, fVolumeID, TParticle::GetPDG(), TParticle::GetPdgCode(), TParticle::IsPrimary(), kMWPC, LocalToGlobal(), ResetParameters(), BmnMwpcPoint::SetPhi(), TLorentzVector::X(), TVector3::X(), TLorentzVector::Y(), TVector3::Y(), and TLorentzVector::Z().

Here is the call graph for this function:

◆ ProcessHits() [2/2]

virtual Bool_t BmnMwpc::ProcessHits ( FairVolume * vol = 0)
virtual

◆ Register() [1/2]

void BmnMwpc::Register ( )
virtual

Definition at line 165 of file BmnMwpc.cxx.

References fPointCollection.

◆ Register() [2/2]

virtual void BmnMwpc::Register ( )
virtual

◆ Reset() [1/2]

void BmnMwpc::Reset ( )
virtual

Definition at line 188 of file BmnMwpc.cxx.

References fPointCollection, and ResetParameters().

Here is the call graph for this function:

◆ Reset() [2/2]

virtual void BmnMwpc::Reset ( )
virtual

◆ ResetParameters() [1/2]

void BmnMwpc::ResetParameters ( )
inlineprivate

Definition at line 132 of file BmnMwpc.h.

References fELoss, fLength, fMom, fPos, fPosIndex, fPosInTmp, fTime, fTrackID, fTrackIDTmp, fVolumeID, fwheel, and fwheelTmp.

Referenced by BmnMwpc(), BmnMwpc(), ProcessHits(), and Reset().

Here is the caller graph for this function:

◆ ResetParameters() [2/2]

void BmnMwpc::ResetParameters ( )
private

Member Data Documentation

◆ fCharge

Double_t BmnMwpc::fCharge
private

Definition at line 91 of file BmnMwpc.h.

Referenced by ProcessHits().

◆ fELoss

Double32_t BmnMwpc::fELoss
private

Definition at line 89 of file BmnMwpc.h.

Referenced by ProcessHits(), and ResetParameters().

◆ fFixedMedia

map< TString, TGeoMedium * > BmnMwpc::fFixedMedia

Definition at line 67 of file BmnMwpc.h.

Referenced by ExpandNodeForGdml().

◆ fIsPrimary

Int_t BmnMwpc::fIsPrimary
private

Definition at line 90 of file BmnMwpc.h.

Referenced by ProcessHits().

◆ fLength

Double32_t BmnMwpc::fLength
private

Definition at line 88 of file BmnMwpc.h.

Referenced by ProcessHits(), and ResetParameters().

◆ fMom

TLorentzVector BmnMwpc::fMom
private

Definition at line 86 of file BmnMwpc.h.

Referenced by ProcessHits(), and ResetParameters().

◆ fPdgId

Int_t BmnMwpc::fPdgId
private

Definition at line 93 of file BmnMwpc.h.

Referenced by AddHit(), and ProcessHits().

◆ fPointCollection

TClonesArray * BmnMwpc::fPointCollection
private

Definition at line 103 of file BmnMwpc.h.

Referenced by BmnMwpc(), BmnMwpc(), ~BmnMwpc(), AddHit(), EndOfEvent(), GetCollection(), Print(), Register(), and Reset().

◆ fPos

TVector3 BmnMwpc::fPos
private

Definition at line 84 of file BmnMwpc.h.

Referenced by ProcessHits(), and ResetParameters().

◆ fPosIn

TVector3 BmnMwpc::fPosIn
private

Definition at line 95 of file BmnMwpc.h.

Referenced by ProcessHits().

◆ fPosIndex

Int_t BmnMwpc::fPosIndex
private

Definition at line 102 of file BmnMwpc.h.

Referenced by BmnMwpc(), BmnMwpc(), CopyClones(), EndOfEvent(), and ResetParameters().

◆ fPosInTmp

TVector3 BmnMwpc::fPosInTmp
private

Definition at line 98 of file BmnMwpc.h.

Referenced by ResetParameters().

◆ fPosLocal

TVector3 BmnMwpc::fPosLocal
private

Definition at line 85 of file BmnMwpc.h.

◆ fPosOut

TVector3 BmnMwpc::fPosOut
private

Definition at line 96 of file BmnMwpc.h.

Referenced by ProcessHits().

◆ fRadius

Double_t BmnMwpc::fRadius
private

Definition at line 92 of file BmnMwpc.h.

◆ fTime

Double32_t BmnMwpc::fTime
private

Definition at line 87 of file BmnMwpc.h.

Referenced by ProcessHits(), and ResetParameters().

◆ fTrackID

Int_t BmnMwpc::fTrackID
private

Definition at line 82 of file BmnMwpc.h.

Referenced by ProcessHits(), and ResetParameters().

◆ fTrackIDTmp

Int_t BmnMwpc::fTrackIDTmp
private

Definition at line 99 of file BmnMwpc.h.

Referenced by ResetParameters().

◆ fVolumeID

Int_t BmnMwpc::fVolumeID
private

Definition at line 83 of file BmnMwpc.h.

Referenced by ProcessHits(), and ResetParameters().

◆ fwheel

Int_t BmnMwpc::fwheel
private

Definition at line 94 of file BmnMwpc.h.

Referenced by ResetParameters().

◆ fwheelTmp

Int_t BmnMwpc::fwheelTmp
private

Definition at line 100 of file BmnMwpc.h.

Referenced by ResetParameters().


The documentation for this class was generated from the following files: