ROOT logo
AliRoot » HMPID » AliHMPIDDigit

class AliHMPIDDigit: public AliDigit

  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  *                                                                        *
  * Author: The ALICE Off-line Project.                                    *
  * Contributors are mentioned in the code where appropriate.              *
  *                                                                        *
  * Permission to use, copy, modify and distribute this software and its   *
  * documentation strictly for non-commercial purposes is hereby granted   *
  * without fee, provided that the above copyright notice appears in all   *
  * copies and that both the copyright notice and this permission notice   *
  * appear in the supporting documentation. The authors make no claims     *
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *

Function Members (Methods)

public:
AliHMPIDDigit()
AliHMPIDDigit(const AliHMPIDDigit& d)
AliHMPIDDigit(Int_t pad, Int_t q)
AliHMPIDDigit(Int_t pad, Int_t q, Int_t* t)
virtual~AliHMPIDDigit()
voidTObject::AbstractMethod(const char* method) const
voidAddTidOffset(Int_t offset)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
Int_tCh() const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tCompare(const TObject* pObj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidDraw(Option_t* opt = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
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 TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual const char*TObject::GetTitle() const
virtual Int_tAliDigit::GetTrack(Int_t i) const
virtual Int_t*AliDigit::GetTracks()
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
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 voidTObject::Inspect() constMENU
Double_tIntMathieson(Double_t x, Double_t y) const
Double_tIntPartMathiX(Double_t x) const
Double_tIntPartMathiY(Double_t y) const
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tIsSortable() const
Bool_tTObject::IsZombie() const
Float_tLorsX() const
Float_tLorsY() const
virtual voidTObject::ls(Option_t* option = "") const
Double_tMathiesonX(Double_t x) const
Double_tMathiesonY(Double_t y) const
voidTObject::MayNotUse(const char* method) const
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)
AliHMPIDDigit&operator=(const AliHMPIDDigit& d)
Int_tPad() const
Int_tPadChX() const
Int_tPadChY() const
Int_tPadPcX() const
Int_tPadPcY() const
virtual voidTObject::Paint(Option_t* option = "")
Int_tPc() const
virtual voidTObject::Pop()
virtual voidPrint(Option_t* opt = "") const
Float_tQ() const
voidRaw(UInt_t& w32, Int_t& ddl, Int_t& r, Int_t& d, Int_t& a) const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
Bool_tSet(Int_t ch, Int_t pc, Int_t px, Int_t py, Int_t tid = 0)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetPad(Int_t pad)
voidSetQ(Float_t q)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
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
virtual voidTObject::UseCurrentStyle()
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
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

protected:
Int_tfPadabsolute pad number
Float_tfQQDC value, fractions are permitted for summable procedure
Int_tAliDigit::fTracks[3]tracks number making this digit (up to 3)

Class Charts

Inheritance Chart:
TObject
AliDigit
AliHMPIDDigit

Function documentation

void Draw(Option_t* opt = "")
  TMarker *pMark=new TMarker(LorsX(),LorsY(),25); pMark->SetMarkerColor(kGreen);pMark->Draw();
void Print(Option_t* opt = "") const
 Print current digit
 Arguments: option string not used
   Returns: none
Int_t Compare(const TObject* pObj) const
 Used in Sort() method to compare to objects. Note that abs pad structure is first x then y, hence will be sorted on column basis.
 This feature is used in digitizer to facilitate finding of sdigits for the same pad since they all will come together after sorting.
 Arguments: pObj - pointer to object to compare with
   Retunrs: -1 if AbsPad less then in pObj, 1 if more and 0 if they are the same
Double_t MathiesonX(Double_t x) const
 Mathieson function.
 This is the answer to electrostatic problem of charge distrubution in MWPC described elsewhere. (NIM A370(1988)602-603)
 Arguments: x- position of the center of Mathieson distribution
  Returns: value of the Mathieson function
Double_t MathiesonY(Double_t y) const
 Mathieson function.
 This is the answer to electrostatic problem of charge distrubution in MWPC described elsewhere. (NIM A370(1988)602-603)
 Arguments: x- position of the center of Mathieson distribution
  Returns: value of the Mathieson function
Double_t IntPartMathiX(Double_t x) const
 Integration of Mathieson.
 This is the answer to electrostatic problem of charge distrubution in MWPC described elsewhere. (NIM A370(1988)602-603)
 Arguments: x,y- position of the center of Mathieson distribution
  Returns: a charge fraction [0-1] imposed into the pad
Double_t IntPartMathiY(Double_t y) const
 Integration of Mathieson.
 This is the answer to electrostatic problem of charge distrubution in MWPC described elsewhere. (NIM A370(1988)602-603)
 Arguments: x,y- position of the center of Mathieson distribution
  Returns: a charge fraction [0-1] imposed into the pad
Double_t IntMathieson(Double_t x, Double_t y) const
 Integration of Mathieson.
 This is the answer to electrostatic problem of charge distrubution in MWPC described elsewhere. (NIM A370(1988)602-603)
 Arguments: x,y- position of the center of Mathieson distribution
  Returns: a charge fraction [0-1] imposed into the pad
void Raw(UInt_t& w32, Int_t& ddl, Int_t& r, Int_t& d, Int_t& a) const
Bool_t Set(Int_t ch, Int_t pc, Int_t px, Int_t py, Int_t tid = 0)
AliHMPIDDigit()
ctor&dtor
{}
AliHMPIDDigit(Int_t pad, Int_t q, Int_t* t)
{if(fQ>4095) fQ=4095;}
AliHMPIDDigit(Int_t pad, Int_t q)
{if(fQ>4095) fQ=4095;}
AliHMPIDDigit& operator=(const AliHMPIDDigit& d)
AliHMPIDDigit(const AliHMPIDDigit& d)
{}
virtual ~AliHMPIDDigit()
{}
Bool_t IsSortable() const
framework part
{return kTRUE;}
void AddTidOffset(Int_t offset)
private part
{for (Int_t i=0; i<3; i++) if (fTracks[i]>0) fTracks[i]+=offset; }
Int_t Ch() const
{return AliHMPIDParam::A2C(fPad); }
Float_t LorsX() const
Float_t LorsY() const
Int_t PadPcX() const
{return AliHMPIDParam::A2X(fPad);}
Int_t PadPcY() const
{return AliHMPIDParam::A2Y(fPad);}
Int_t PadChX() const
{return (Pc()%2)*AliHMPIDParam::kPadPcX+PadPcX();}
Int_t PadChY() const
{return (Pc()/2)*AliHMPIDParam::kPadPcY+PadPcY();}
Int_t Pad() const
{return fPad;}
Int_t Pc() const
{return AliHMPIDParam::A2P(fPad);}
Float_t Q() const
{return fQ;}
void SetQ(Float_t q)
{fQ=q;if(fQ>4095)fQ=4095;}
void SetPad(Int_t pad)
{fPad=pad;}