ROOT logo
AliRoot » PHOS » AliPHOSv1

class AliPHOSv1: public AliPHOSv0

 Implementation version v1 of PHOS Manager class


 Layout EMC + CPV  has name IHEP:
 Produces hits for CPV, cumulated hits


*-- Author: Yves Schutz (SUBATECH)

Function Members (Methods)

public:
AliPHOSv1()
AliPHOSv1(const char* name, const char* title = "")
virtual~AliPHOSv1()
voidTObject::AbstractMethod(const char* method) const
virtual voidAliPHOSv0::AddAlignableVolumes() const
virtual voidAliModule::AddDigit(Int_t*, Int_t*)
virtual voidAddHit(Int_t shunt, Int_t primary, Int_t id, Float_t* hits)
virtual AliTrackReference*AliModule::AddTrackReference(Int_t label, Int_t id = -999)
virtual voidAliModule::AliGetMaterial(Int_t imat, char* name, Float_t& a, Float_t& z, Float_t& dens, Float_t& radl, Float_t& absl) const
virtual voidAliModule::AliMaterial(Int_t imat, const char* name, Float_t a, Float_t z, Float_t dens, Float_t radl, Float_t absl, Float_t* buf = 0, Int_t nwbuf = 0) const
virtual voidAliModule::AliMatrix(Int_t& nmat, Float_t theta1, Float_t phi1, Float_t theta2, Float_t phi2, Float_t theta3, Float_t phi3) const
virtual voidAliModule::AliMedium(Int_t numed, const char* name, Int_t nmat, Int_t isvol, Int_t ifield, Float_t fieldm, Float_t tmaxfd, Float_t stemax, Float_t deemax, Float_t epsil, Float_t stmin, Float_t* ubuf = 0, Int_t nbuf = 0) const
virtual voidAliModule::AliMixture(Int_t imat, const char* name, Float_t* a, Float_t* z, Float_t dens, Int_t nlmat, Float_t* wmat) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidAliDetector::Browse(TBrowser* b)
virtual voidAliModule::BuildGeometry()
virtual voidAliModule::CheckQA()
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidTNamed::Copy(TObject& named) const
Double_tCPVCumulPadResponse(Double_t x, Double_t y)
voidCPVDigitize(TLorentzVector p, Float_t* xy, TClonesArray* digits)
Float_tCPVPadResponseFunction(Float_t qhit, Float_t zg, Float_t xg)
virtual AliDigitizer*AliPHOS::CreateDigitizer(AliDigitizationInput* digInput) const
virtual voidAliPHOSv0::CreateGeometry()
voidAliPHOSv0::CreateGeometryforCPV()
voidAliPHOSv0::CreateGeometryforEMC()
voidAliPHOSv0::CreateGeometryforSupport()
virtual voidAliPHOS::CreateMaterials()
virtual AliTriggerDetector*AliPHOS::CreateTriggerDetector() const
virtual voidAliModule::DefineOpticalProperties()
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual TClonesArray*AliDetector::Digits() const
virtual voidAliPHOS::Digits2Raw()
virtual voidAliModule::Digits2Reco()
virtual voidAliModule::DisableStepManager()
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidAliDetector::DrawModule() const
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual voidFinishEvent()
virtual voidFinishPrimary()
virtual voidAliPHOS::FinishRun()
virtual AliHit*AliDetector::FirstHit(Int_t track)
static Float_tAliModule::GetDensityFactor()
AliDigitizationInput*AliModule::GetDigitizationInput() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual AliPHOSGeometry*AliPHOS::GetGeometry() const
virtual const char*TObject::GetIconName() const
virtual TArrayI*AliModule::GetIdtmed() const
virtual Int_tAliDetector::GetIshunt() const
virtual AliLoader*AliDetector::GetLoader() const
virtual const char*TNamed::GetName() const
virtual intAliDetector::GetNdigits() const
virtual intAliDetector::GetNhits() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual Float_tAliDetector::GetTimeGate() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
virtual Int_t&AliModule::HiMedium()
virtual TClonesArray*AliDetector::Hits() const
virtual voidAliModule::Hits2Digits()
virtual voidAliPHOS::Hits2SDigits()
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidAliPHOSv0::Init()
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tAliModule::IsActive() const
virtual Bool_tAliDetector::IsDetector() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tAliModule::IsFolder() const
virtual Bool_tAliDetector::IsModule() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
virtual Int_tIsVersion() const
Bool_tTObject::IsZombie() const
virtual voidAliModule::LoadPoints(Int_t)
virtual Int_t&AliModule::LoMedium()
virtual voidTNamed::ls(Option_t* option = "") const
virtual voidAliDetector::MakeBranch(Option_t* opt = " ")
virtual TBranch*AliDetector::MakeBranchInTree(TTree* tree, const char* cname, void* address, Int_t size = 32000, const char* file = 0)
virtual TBranch*AliDetector::MakeBranchInTree(TTree* tree, const char* cname, const char* name, void* address, Int_t size = 32000, Int_t splitlevel = 99, const char* file = 0)
virtual AliLoader*AliPHOS::MakeLoader(const char* topfoldername)
virtual voidAliDetector::MakeTree(Option_t* option)
voidTObject::MayNotUse(const char* method) const
virtual AliHit*AliDetector::NextHit()
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
virtual voidAliModule::Paint(Option_t*)
virtual TObjArray*AliModule::Points() const
virtual voidTObject::Pop()
virtual voidAliModule::PostTrack()
virtual voidAliModule::PreTrack()
virtual voidTNamed::Print(Option_t* option = "") const
virtual voidAliDetector::Publish(const char* dir, void* c, const char* name = 0) const
virtual voidAliModule::QADataMaker(const char*)
virtual voidAliModule::Raw2Digits()
virtual Bool_tAliPHOS::Raw2SDigits(AliRawReader* rawReader)
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual voidAliDetector::RemapTrackHitIDs(Int_t*)
voidTObject::ResetBit(UInt_t f)
virtual voidAliDetector::ResetDigits()
virtual voidAliDetector::ResetHits()
virtual voidAliModule::ResetSDigits()
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
virtual voidAliModule::SDigits2Digits()
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidAliDetector::SetBufferSize(Int_t bufsize = 8000)
static voidAliModule::SetDensityFactor(Float_t density)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidAliDetector::SetIshunt(Int_t ishunt)
voidAliDetector::SetLoader(AliLoader* loader)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
voidAliModule::SetRunLoader(AliRunLoader* runLoader)
virtual voidAliDetector::SetTimeGate(Float_t gate)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidAliPHOS::SetTreeAddress()
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() const
virtual voidStepManager()
virtual Bool_tAliModule::StepManagerIsEnabled() const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
TTree*AliModule::TreeTR()
virtual voidAliModule::UpdateInternalGeometry()
virtual voidTObject::UseCurrentStyle()
virtual const TStringVersion() const
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
virtual Float_tAliPHOSv0::ZMax() const
virtual Float_tAliPHOSv0::ZMin() const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

protected:
Bool_tAliModule::fActiveDetector activity flag
Int_tAliDetector::fBufferSize!buffer size for Tree detector branches
Int_tAliDetector::fCurIterHit!Counter for the hit iterator
Int_tAliModule::fCurrentIterTrackRef!for track refernce iterator routines
AliDigitizationInput*AliModule::fDigInput! input for sdigits -> digits
TClonesArray*AliDetector::fDigits!List of digits for this detector
Bool_tAliModule::fEnableStepManager enabling flag
Int_tAliModule::fHiMedium!Maximum tracking medium ID for this Module
TClonesArray*AliDetector::fHits!List of hits for one track only
TArrayI*AliModule::fIdmate!List of material numbers
TArrayI*AliModule::fIdtmed!List of tracking medium numbers
Int_tAliDetector::fIshunt1 if the hit is attached to the primary
Int_tAliModule::fLoMedium!Minimum tracking medium ID for this Module
AliLoader*AliDetector::fLoader! pointer to getter for this module skowron
Int_tAliDetector::fMaxIterHit!Limit for the hit iterator
Int_tAliModule::fMaxIterTrackRef!for track refernce iterator routines
TStringTNamed::fNameobject identifier
Int_tAliDetector::fNdigits!Number of digits
Int_tAliDetector::fNhits!Number of hits
AliRunLoader*AliModule::fRunLoader!local pointer to run loader
Float_tAliDetector::fTimeGateTime gate in seconds
TStringTNamed::fTitleobject title
AliPHOSCalibData*AliPHOS::fgCalibData! Pointer to Calibration DB
static Float_tAliModule::fgDensityFactor! factor that is multiplied to all material densities (ONLY for systematic studies)
private:
TClonesArrayfCPVDigits! Array of CPV digits per current CPV hit

Class Charts

Inheritance Chart:
TNamed
AliModule
AliDetector
AliPHOS
AliPHOSv0
AliPHOSv1
AliPHOSv2
AliPHOSvImpacts

Function documentation

AliPHOSv1()
Def ctor.
AliPHOSv1(const char* name, const char* title = "")
 We store hits :
   - fHits (the "normal" one), which retains the hits associated with
     the current primary particle being tracked
     (this array is reset after each primary has been tracked).

~AliPHOSv1()
 dtor
void AddHit(Int_t shunt, Int_t primary, Int_t id, Float_t* hits)
 Add a hit to the hit list.
 A PHOS hit is the sum of all hits in a single crystal from one primary and within some time gate
void FinishPrimary()
 called at the end of each track (primary) by AliRun
 hits are reset for each new track
 accumulate the total hit-multiplicity
void FinishEvent()
 called at the end of each event by AliRun
 accumulate the hit-multiplicity and total energy per block
 if the values have been updated check it
void StepManager(void)
 Accumulates hits as long as the track stays in a single crystal or CPV gas Cell
void CPVDigitize(TLorentzVector p, Float_t* xy, TClonesArray* digits)
 Digitize one CPV hit:
 On input take exact 4-momentum p and position zxhit of the hit,
 find the pad response around this hit and
 put the amplitudes in the pads into array digits

 Author: Yuri Kharlov (after Serguei Sadovsky)
 2 October 2000

Float_t CPVPadResponseFunction(Float_t qhit, Float_t zg, Float_t xg)
 Calculate the amplitude in one CPV pad using the
 cumulative pad response function
 Author: Yuri Kharlov (after Serguei Sadovski)
 3 October 2000

Double_t CPVCumulPadResponse(Double_t x, Double_t y)
 Cumulative pad response function
 It includes several terms from the CF decomposition in electrostatics
 Note: this cumulative function is wrong since omits some terms
       but the cell amplitude obtained with it is correct because
       these omitting terms cancel
 Author: Yuri Kharlov (after Serguei Sadovski)
 3 October 2000

AliPHOSv1(AliPHOSv1& phos)
Int_t IsVersion(void)
 Gives the version number
const TString Version(void)
{ return TString("v1") ; }