class HMdcPlane: public TObject

_HADES_CLASS_DESCRIPTION


 HMdcPointPlane - poin on the plane
 HMdcTrap - trapeze in vol. is used for mdc cell sensitive volume
 HMdcTrapPlane - polygon on the plane is used for cell projection calculation
 HMdcPlane - param. of project planes

 HMdcPointOnPlane

     This class keep point on the plane HMdcPlane

 HMdcLineParam

     This class keep straight line parameters.
     Parameters are two point on the two planes
     (two HMdcPointOnPlane objects).


Function Members (Methods)

public:
HMdcPlane()
HMdcPlane(const HMdcPlane&)
virtual~HMdcPlane()
Double_tA() const
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
Double_tB() const
virtual voidTObject::Browse(TBrowser* b)
Double_tC() const
voidcalcIntersection(const HGeomVector& r, const HGeomVector& dir, HGeomVector& out) const
voidcalcIntersection(Double_t x1, Double_t y1, Double_t z1, Double_t x2, Double_t y2, Double_t z2, Double_t& x, Double_t& y, Double_t& z) const
voidcalcSegIntersec(Float_t z1, Float_t r, Float_t theta, Float_t phi, Float_t& x, Float_t& y, Float_t& z) const
voidcalcSegIntersec(Double_t z1, Double_t r, Double_t theta, Double_t phi, Double_t& x, Double_t& y, Double_t& z) 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_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
Double_tD() const
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
Double_tdZdX() const
Double_tdZdY() const
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
voidgetPlanePar(HMdcPlane& p) const
voidgetPlanePar(Double_t& a, Double_t& b, Double_t& d) const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
Double_tgetXOnPlane(Double_t y, Double_t z) const
Double_tgetYOnPlane(Double_t x, Double_t z) const
Double_tgetZOnPlane(Double_t x, Double_t y) 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
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_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
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)
HMdcPlane&operator=(const HMdcPlane& p)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
voidprint()
virtual voidTObject::Print(Option_t* option = "") 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 = "")
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)
voidsetPlanePar(const HMdcPlane& p)
voidsetPlanePar(const HGeomTransform& tr)
voidsetPlanePar(Double_t al, Double_t bl, Double_t cl, Double_t dl)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& 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
voidtransFrom(const HGeomTransform* trans)
voidtransTo(const HGeomTransform* trans)
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

public:
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
Double_tparAPlane: parA*x+parB*y+c*z=parD (c=1 !!!)
Double_tparBparA*parA+parB*parB+c*c must be > 0 and c != 0 !!!
Double_tparD

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

void setPlanePar(const HGeomTransform& tr)
void print()
void transTo(const HGeomTransform* trans)
void transFrom(const HGeomTransform* trans)
void calcIntersection(const HGeomVector& r, const HGeomVector& dir, HGeomVector& out) const
 Calculating a cross of line r,dir (point in vol. and direction)
 with plane parA*x+parB*y+z=parD
void calcSegIntersec(Float_t z1,Float_t r,Float_t theta,Float_t phi, Float_t& x, Float_t& y, Float_t& z)
 Calculating a cross of MdcSeg line with plane parA*x+parB*y+z=parD
void calcSegIntersec(Double_t z1,Double_t r,Double_t theta, Double_t phi,Double_t& x, Double_t& y, Double_t& z)
 Calculating a cross of MdcSeg line with plane parA*x+parB*y+z=parD
void calcIntersection(Double_t x1, Double_t y1, Double_t z1, Double_t x2, Double_t y2, Double_t z2, Double_t& x, Double_t& y, Double_t& z) const
 Calcul. a cross of the line with plane parA*x+parB*y+c*z=parD
HMdcPlane()
{parA=parB=parD=0.;}
virtual ~HMdcPlane()
{;}
void setPlanePar(const HMdcPlane& p)
{parA=p.parA; parB=p.parB; parD=p.parD;}
void setPlanePar(Double_t al, Double_t bl, Double_t cl, Double_t dl)
Double_t A() const
{return parA;}
Double_t B() const
{return parB;}
Double_t C() const
{return 1.;}
void getPlanePar(HMdcPlane& p) const
{p.parA=parA; p.parB=parB; p.parD=parD;}
void getPlanePar(Double_t& a, Double_t& b, Double_t& d) const
{a=parA; b=parB; d=parD;}
Double_t getZOnPlane(Double_t x, Double_t y) const
{return parD-parA*x-parB*y;}
Double_t getYOnPlane(Double_t x, Double_t z) const
{return (parB!=0.)?(parD-parA*x-z)/parB:0.;}
Double_t getXOnPlane(Double_t y, Double_t z) const
{return (parA!=0.)?(parD-parB*y-z)/parA:0.;}
Double_t dZdX(void)
{return -parA;}
Double_t dZdY(void)
{return -parB;}

Last change: Sat May 22 13:03:09 2010
Last generated: 2010-05-22 13:03

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.