ROOT logo
HYDRA - THE HADES ANALYSIS PACKAGE » (UNKNOWN) » HRich700DigiPar

class HRich700DigiPar: public HParCond


 $Id: $

*-- Author  : S. Lebedev

_HADES_CLASS_DESCRIPTION


  HRich700DigiPar

  This class handles parameters for RICH digitizer


Function Members (Methods)

public:
HRich700DigiPar(const HRich700DigiPar&)
HRich700DigiPar(const Char_t* name = "Rich700DigiPar", const Char_t* title = "Digitizer parameters for RICH", const Char_t* context = "Rich700DigiParProduction")
virtual~HRich700DigiPar()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidclear()
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
voidHParSet::copyComment(HParSet& r)
virtual voidTObject::Delete(Option_t* option = "")MENU
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 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
voidgetAlignedThetaPhi(const Float_t theta, const Float_t phi, Float_t& thetaCor, Float_t& phiCor)
voidgetAlignedThetaPhiInv(const Float_t theta, const Float_t phi, Float_t& thetaCor, Float_t& phiCor)
const Char_t*HParSet::getAuthor() const
Double_tgetCollectionEfficiency()
Double_tgetCrossTalkProbability()
const Char_t*HParSet::getDescription() const
const Text_t*HParSet::getDetectorName()
vector<pair<Int_t,Int_t> >getDiagonalNeighbourPixels(Int_t col, Int_t row)
vector<pair<Int_t,Int_t> >getDirectNeighbourPixels(Int_t col, Int_t row)
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
Int_tHParSet::getInputVersion(Int_t i)
Int_tgetInterpolatedSectorThetaPhi(Float_t x, Float_t y, Float_t& theta, Float_t& phi)
Int_tgetInterpolatedSectorThetaPhi(Float_t x, Float_t y, Float_t zv, Float_t& theta, Float_t& phi)
Int_tgetInterpolatedSectorThetaPhiAnalytical(Float_t x, Float_t y, Float_t zv, Float_t& theta, Float_t& phi)
Bool_tgetInterpolatedThetaPhiPMT(Float_t x, Float_t y, Float_t& theta, Float_t& phi)
voidgetLocation(Int_t pmtId, Float_t x, Float_t y, Int_t* loc, Bool_t silent = kTRUE)
virtual const char*TNamed::GetName() const
Int_tgetNofNoiseHits()
vector<pair<Int_t,Int_t> >getNoisePixels(UInt_t nofNoisePixels)
Int_tgetNPixelInRow()
Int_tgetNPmts()
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
const Char_t*HParSet::getParamContext() const
virtual Bool_tgetParams(HParamList*)
pair<Double_t,Double_t>getPmtCenter(Int_t pmtId)
vector<pair<Double_t,Double_t> >getPmtCenters()
HRich700PmtData*getPMTData(Int_t pmtid)
map<Int_t,HRich700PmtData>getPmtDataMapPmtId()
Double_tgetPmtGap()
Int_tgetPMTId(Float_t x, Float_t y)
Int_tgetPMTId(Int_t col, Int_t row)
Double_tgetPmtSensSize()
Double_tgetPmtSize()
voidgetRingCenterXY(Float_t theta, Float_t phi, Float_t zv, Float_t& x, Float_t& y)
Int_tgetSector(Float_t x, Float_t y)
Int_tgetSectorPhiThetaDegPixels(Int_t col, Int_t row, Float_t& phiDeg, Float_t& thetaDeg)
Int_tgetSectorPhiThetaDegPMTId(Int_t pmtid, Float_t& phiDeg, Float_t& thetaDeg)
Int_tgetSectorPhiThetaDegPMTInd(Int_t xind, Int_t yInd, Float_t& phiDeg, Float_t& thetaDeg)
Int_tgetSectorPixels(Int_t col, Int_t row)
Int_tgetSectorPMTId(Int_t pmtid)
Int_tgetSectorPMTInd(Int_t xind, Int_t yInd)
stringgetStringForParTxtFile()
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
pair<Double_t,Double_t>getXY(Int_t* loc, Bool_t silent = kTRUE)
virtual Bool_tTObject::HandleTimer(TTimer* timer)
Bool_tHParSet::hasChanged()
virtual ULong_tTNamed::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 Bool_tinit(HParIo* inp, Int_t* set)
virtual voidTObject::Inspect() constMENU
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_tTNamed::IsSortable() const
Bool_tHParSet::isStatic()
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") 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)
HRich700DigiPar&operator=(const HRich700DigiPar&)
virtual voidTObject::Paint(Option_t* option = "")
voidpmtIdPixelToColRowSec(Int_t pmtId, Int_t pixel, Int_t& sec, Int_t& col, Int_t& row, Bool_t silent = kTRUE)
virtual voidTObject::Pop()
virtual voidHParSet::print()
virtual voidTNamed::Print(Option_t* option = "") const
voidprintParam()
virtual voidHParCond::printParams()
virtual voidputParams(HParamList*)
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
voidHParSet::resetInputVersions()
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidHParSet::setAuthor(const Char_t* s)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidHParSet::setChanged(Bool_t flag = kTRUE)
voidHParSet::setDescription(const Char_t* s)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidHParSet::setInputVersion(Int_t v = -1, Int_t i = 0)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
voidHParSet::setParamContext(const Char_t*)
voidHParSet::setStatic(Bool_t flag = kTRUE)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() 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
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tHParCond::write(HParIo*)
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()
private:
voidfillMaps()

Data Members

protected:
TStringHParSet::authorAuthor of parameters
Bool_tHParSet::changed! flag is kTRUE if parameters have changed
TStringHParSet::descriptionDescription of parameters
Text_tHParSet::detName[20]! name of the detector the container belongs to
TStringTNamed::fNameobject identifier
TStringTNamed::fTitleobject title
TStringHParSet::paramContextContext/purpose for parameters and conditions
Bool_tHParSet::status! static flag
Int_tHParSet::versions[3]! versions of container in the 2 possible inputs
private:
TArrayDfArrayInvPhiAlignarray for inverse alignment ThetaPhi -> Phi
TArrayDfArrayInvThetaAlignarray for inverse alignment ThetaPhi -> Theta
TArrayDfArrayPhiAlignarray for alignment ThetaPhi -> Phi
TArrayDfArrayPmtlinearized pmt info fArrayPmt[pmyindex*(x,y,z,indx,indy,pmtid)]
TArrayDfArrayThetaAlignarray for alignment ThetaPhi -> Theta
vector<TArrayD>fArrayThetaMeanxy->theta hist
TArrayDfArrayThetaTransParamsGeogeo parameters
TArrayDfArrayThetaTransParamsPolypolynomial parameters
TArrayDfArrayZVertices
Double_tfCollectionEfficiencycollection efficiency. Final QE = QE * fCollectionEfficiency
Double_tfCrossTalkProbabilitycross talk probability for direct neighbour pixel
Float_tfMaxX! remember dimensions to calculate indX+indY from x+y
Float_tfMaxY! remember dimensions to calculate indX+indY from x+y
Int_tfNofNoiseHitsnumber of noise hits per event
Int_tfNofPixelsInRow
map<Int_t,HRich700PmtData>fPmtDataMapPmtIdpmtid -> (x,y,z,indx,indy,pmtid)
map<pair<Int_t,Int_t>,HRich700PmtData>fPmtDataMapXY(xind,yind) -> (x,y,z,indx,indy,pmtid)
Double_tfPmtGapin mm, gap betweem PMTs
Double_tfPmtSensSizein mm, sensitive area of PMT
Double_tfPmtSizein mm
TH2D*fhInvPhiAlign! hist for inverse alignment ThetaPhi -> Phi
TH2D*fhInvThetaAlign! hist for inverse alignment ThetaPhi -> Theta
TH2D*fhPhiAlign! hist for alignment ThetaPhi -> Phi
TH2D*fhThetaAlign! hist for alignment ThetaPhi -> Theta
vector<TH2F*>fhxyThetaMean! hist for mapping xy -> Theta [deg]

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

HRich700DigiPar(const Char_t* name = "Rich700DigiPar", const Char_t* title = "Digitizer parameters for RICH", const Char_t* context = "Rich700DigiParProduction")
~HRich700DigiPar()
 destructor
void clear()
void printParam(void)
string getStringForParTxtFile()
Bool_t init(HParIo* inp, Int_t* set)
 intitializes the container from an input
void putParams(HParamList* )
Bool_t getParams(HParamList* )
void fillMaps(void)
Int_t getSector(Float_t x, Float_t y)
 In PMT geometry there are no sectors any more ... lets take it for phi
 phi calculated from x,y on PMT plane
void getLocation(Int_t pmtId, Float_t x, Float_t y, Int_t* loc, Bool_t silent = kTRUE)
void pmtIdPixelToColRowSec(Int_t pmtId, Int_t pixel, Int_t& sec, Int_t& col, Int_t& row, Bool_t silent = kTRUE)
 pmtID
 pixel (1-64)
 sec   (0-5)
 col   (0-192)
 row   (0-192)
pair<Double_t, Double_t> getXY(Int_t* loc, Bool_t silent = kTRUE)
pair<Double_t, Double_t> getPmtCenter(Int_t pmtId)
vector<pair<Double_t, Double_t> > getPmtCenters()
vector<pair<Int_t, Int_t> > getDirectNeighbourPixels(Int_t col, Int_t row)
vector<pair<Int_t, Int_t> > getDiagonalNeighbourPixels(Int_t col, Int_t row)
vector<pair<Int_t, Int_t> > getNoisePixels(UInt_t nofNoisePixels)
Int_t getPMTId(Float_t x, Float_t y)
Int_t getPMTId(Int_t col, Int_t row)
HRich700PmtData* getPMTData(Int_t pmtid)
Int_t getInterpolatedSectorThetaPhi(Float_t x, Float_t y, Float_t& theta, Float_t& phi)
Int_t getInterpolatedSectorThetaPhi(Float_t x, Float_t y, Float_t zv, Float_t& theta, Float_t& phi)
Int_t getInterpolatedSectorThetaPhiAnalytical(Float_t x, Float_t y, Float_t zv, Float_t& theta, Float_t& phi)
void getRingCenterXY(Float_t theta, Float_t phi, Float_t zv, Float_t& x, Float_t& y)
void getAlignedThetaPhi(const Float_t theta, const Float_t phi, Float_t& thetaCor, Float_t& phiCor)
void getAlignedThetaPhiInv(const Float_t theta, const Float_t phi, Float_t& thetaCor, Float_t& phiCor)
Bool_t getInterpolatedThetaPhiPMT(Float_t x, Float_t y, Float_t& theta, Float_t& phi)
Int_t getSectorPixels(Int_t col, Int_t row)
Int_t getSectorPMTInd(Int_t xind, Int_t yInd)
Int_t getSectorPMTId(Int_t pmtid)
Int_t getSectorPhiThetaDegPixels(Int_t col, Int_t row, Float_t& phiDeg, Float_t& thetaDeg)
Int_t getSectorPhiThetaDegPMTInd(Int_t xind, Int_t yInd, Float_t& phiDeg, Float_t& thetaDeg)
Int_t getSectorPhiThetaDegPMTId(Int_t pmtid, Float_t& phiDeg, Float_t& thetaDeg)
HRich700DigiPar(const Char_t* name = "Rich700DigiPar", const Char_t* title = "Digitizer parameters for RICH", const Char_t* context = "Rich700DigiParProduction")
Double_t getPmtSize()
{ return fPmtSize; }
Double_t getPmtSensSize()
{ return fPmtSensSize; }
Double_t getCollectionEfficiency()
Double_t getCrossTalkProbability()
Int_t getNofNoiseHits()
{ return fNofNoiseHits; }
Double_t getPmtGap()
{ return fPmtGap; }
Int_t getNPmts()
{ return fArrayPmt.GetSize()/NPARPMT; }
Int_t getNPixelInRow()
{ return fNofPixelsInRow; }
map<Int_t,HRich700PmtData> getPmtDataMapPmtId()