class TreeSearch::WirePlane: public THaSubDetector

Function Members (Methods)

public:
virtual~WirePlane()
voidTObject::AbstractMethod(const char* method) const
TreeSearch::FitCoord*AddFitCoord(const TreeSearch::FitCoord& coord)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual Int_tTHaAnalysisObject::Begin(THaRunBase* r = 0)
virtual voidTObject::Browse(TBrowser* b)
voidCheckCrosstalk()
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidClear(Option_t* opt = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
Bool_tContains(const TVector2& point) const
Bool_tContains(Double_t x, Double_t y) const
virtual voidTNamed::Copy(TObject& named) const
virtual Int_tDecode(const THaEvData&)
static Int_tTHaAnalysisObject::DefineVarsFromList(const void* list, THaAnalysisObject::EType type, THaAnalysisObject::EMode mode, const char* var_prefix, const TObject* obj, const char* prefix, const char* here)
virtual voidTObject::Delete(Option_t* option = "")
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() const
virtual TObject*TObject::DrawClone(Option_t* option = "") const
virtual voidTObject::Dump() const
voidEnableCalibration(Bool_t enable = true)
virtual Int_tTHaAnalysisObject::End(THaRunBase* r = 0)
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)
Int_tTHaDetectorBase::FillDetMap(const vector<Int_t>& values, UInt_t flags = 0, const char* here = "FillDetMap")
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
static voidTHaAnalysisObject::GeoToSph(Double_t th_geo, Double_t ph_geo, Double_t& th_sph, Double_t& ph_sph)
THaApparatus*THaSubDetector::GetApparatus() const
const char*THaAnalysisObject::GetConfig() const
TSeqCollection*GetCoords() const
Int_tTHaAnalysisObject::GetDebug() const
THaDetectorBase*THaSubDetector::GetDetector() const
THaDetMap*THaDetectorBase::GetDetMap() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
TSeqCollection*GetHits() const
virtual const char*TObject::GetIconName() const
TDatimeTHaAnalysisObject::GetInitDate() const
THaDetector*THaSubDetector::GetMainDetector() const
virtual Double_tGetMaxLRdist() const
Double_tGetMaxSlope() const
TreeSearch::MWDC*GetMWDC() const
virtual const char*TNamed::GetName() const
Int_tGetNcoords() const
Int_tTHaDetectorBase::GetNelem() const
Int_tGetNhits() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
const TVector3&THaDetectorBase::GetOrigin() const
THaDetectorBase*THaSubDetector::GetParent() const
TreeSearch::WirePlane*GetPartner() const
UInt_tGetPlaneNum() const
const char*THaAnalysisObject::GetPrefix() const
TreeSearch::Projection*GetProjection() const
Double_tGetResolution() const
const Float_t*THaDetectorBase::GetSize() const
virtual const char*TNamed::GetTitle() const
TreeSearch::TimeToDistConv*GetTTDConv() const
TreeSearch::EProjTypeGetType() const
virtual UInt_tTObject::GetUniqueID() const
Double_tGetWireSpacing() const
Double_tGetWireStart() const
Float_tTHaDetectorBase::GetXSize() const
Float_tTHaDetectorBase::GetYSize() const
Double_tGetZ() const
Float_tTHaDetectorBase::GetZSize() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
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 THaAnalysisObject::EStatusInit(const TDatime& date)
virtual Int_tTHaAnalysisObject::InitOutput(THaOutput*)
virtual voidTObject::Inspect() const
static Bool_tTHaAnalysisObject::IntersectPlaneWithRay(const TVector3& xax, const TVector3& yax, const TVector3& org, const TVector3& ray_start, const TVector3& ray_vect, Double_t& length, TVector3& intersect)
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
Bool_tIsCalibrating() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTHaAnalysisObject::IsInit() const
Bool_tTHaAnalysisObject::IsOK() const
Bool_tTHaAnalysisObject::IsOKOut()
Bool_tTObject::IsOnHeap() const
Bool_tIsRequired() const
virtual Bool_tTNamed::IsSortable() const
UInt_tIsSpecial() const
Bool_tTObject::IsZombie() const
static Int_tTHaAnalysisObject::LoadDB(FILE* file, const TDatime& date, const DBRequest* request, const char* prefix = "", Int_t search = 0)
static Int_tTHaAnalysisObject::LoadDB(FILE* file, const TDatime& date, const TagDef* tags, const char* prefix = "", Int_t search = 0)
static Int_tTHaAnalysisObject::LoadDBvalue(FILE* file, const TDatime& date, const char* tag, Double_t& value)
static Int_tTHaAnalysisObject::LoadDBvalue(FILE* file, const TDatime& date, const char* tag, Int_t& value)
static Int_tTHaAnalysisObject::LoadDBvalue(FILE* file, const TDatime& date, const char* tag, string& text)
static Int_tTHaAnalysisObject::LoadDBvalue(FILE* file, const TDatime& date, const char* tag, TString& text)
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
static FILE*THaAnalysisObject::OpenFile(const char* name, const TDatime& date, const char* here = "OpenFile()", const char* filemode = "r", const int debug_flag = 1)
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)
TNamed&TNamed::operator=(const TNamed& rhs)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidPrint(Option_t* opt = "") const
voidTHaDetectorBase::PrintDetMap(Option_t* opt = "") 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 = "") const
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
static Int_tTHaAnalysisObject::SeekDBconfig(FILE* file, const char* tag, const char* label = "config", Bool_t end_on_tag = false)
static Int_tTHaAnalysisObject::SeekDBdate(FILE* file, const TDatime& date, Bool_t end_on_tag = false)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidTHaAnalysisObject::SetConfig(const char* label)
virtual voidTHaAnalysisObject::SetDebug(Int_t level)
voidTHaSubDetector::SetDetector(THaDetectorBase* det)
virtual voidTObject::SetDrawOption(Option_t* option = "")
static voidTObject::SetDtorOnly(void* obj)
virtual voidTHaAnalysisObject::SetName(const char* name)
virtual voidTHaAnalysisObject::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTHaSubDetector::SetParent(THaDetectorBase*)
voidSetPartner(TreeSearch::WirePlane* p)
voidSetPlaneNum(UInt_t n)
voidSetProjection(TreeSearch::Projection* p)
voidSetRequired(Bool_t enable = true)
voidSetSpecial(UInt_t temp)
virtual voidTNamed::SetTitle(const char* title = "")
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual Int_tTNamed::Sizeof() const
static voidTHaAnalysisObject::SphToGeo(Double_t th_sph, Double_t ph_sph, Double_t& th_geo, Double_t& ph_geo)
THaAnalysisObject::EStatusTHaAnalysisObject::Status() const
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
virtual voidTObject::UseCurrentStyle()
static vector<std::string>THaAnalysisObject::vsplit(const string& s)
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
TreeSearch::WirePlaneWirePlane()
TreeSearch::WirePlaneWirePlane(const char* name, const char* description = "", THaDetectorBase* parent = 0)
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 Int_tDefineVariables(THaAnalysisObject::EMode mode = kDefine)
Int_tTHaAnalysisObject::DefineVarsFromList(const VarDef* list, THaAnalysisObject::EMode mode = kDefine, const char* var_prefix = "") const
Int_tTHaAnalysisObject::DefineVarsFromList(const RVarDef* list, THaAnalysisObject::EMode mode = kDefine, const char* var_prefix = "") const
Int_tTHaAnalysisObject::DefineVarsFromList(const void* list, THaAnalysisObject::EType type, THaAnalysisObject::EMode mode, const char* var_prefix = "") const
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
THaAnalysisObject*THaAnalysisObject::FindModule(const char* name, const char* classname, bool do_error = true)
static vector<std::string>THaAnalysisObject::GetDBFileList(const char* name, const TDatime& date, const char* here = "GetDBFileList()")
virtual const char*THaSubDetector::GetDBFileName() const
virtual const char*THaAnalysisObject::Here(const char*) const
virtual voidTHaSubDetector::MakePrefix()
voidTObject::MakeZombie()
virtual FILE*THaAnalysisObject::OpenFile(const TDatime& date)
virtual FILE*THaAnalysisObject::OpenRunDBFile(const TDatime& date)
static char*THaAnalysisObject::ReadComment(FILE* fp, char* buf, const int len)
virtual Int_tReadDatabase(const TDatime& date)
virtual Int_tTHaDetectorBase::ReadGeometry(FILE* file, const TDatime& date, Bool_t required = kFALSE)
virtual Int_tTHaAnalysisObject::ReadRunDatabase(const TDatime& date)
virtual Int_tTHaAnalysisObject::RemoveVariables()

Data Members

public:
enum { kIsRequired
kCalibrating
};
enum THaAnalysisObject::EStatus { kOK
kNotinit
kInitError
kFileError
};
enum THaAnalysisObject::EType { kVarDef
kRVarDef
};
enum THaAnalysisObject::EMode { kDefine
kDelete
};
enum THaAnalysisObject::EProperties { kNeedsRunDB
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
public:
static const Double_tTHaAnalysisObject::kBig= 1.e38; // default junk value
protected:
UInt_tfClsizStatistics: max cluster size
TStringTHaAnalysisObject::fConfigConfiguration to use from database
Double_tfCoordOffsetWire coord offset wrt MWDC due to fOrigin
Int_tTHaAnalysisObject::fDebugDebug level
THaDetMap*THaDetectorBase::fDetMapHardware channel map for this detector
TClonesArray*fFitCoordsHit coordinates used by good fits in roads
TClonesArray*fHitsHit data
TDatimeTHaAnalysisObject::fInitDateDate passed to Init
Bool_tTHaAnalysisObject::fIsInitFlag indicating that ReadDatabase done
Bool_tTHaAnalysisObject::fIsSetupFlag indicating that DefineVariables done.
TreeSearch::MWDC*fMWDC! Our parent detector
UInt_tfMaxHitsMaximum # hits before flagging decode error
Double_tfMaxTimeMaximum drift time for a hit (s)
Double_tfMinTimeMinimum drift time for a hit (s)
TStringTNamed::fNameobject identifier
UInt_tfNclStatistics: number of hit "clusters"
UInt_tfNdblStatistics: num wires with neighboring hits
Int_tTHaDetectorBase::fNelemNumber of detector elements (paddles, mirrors)
UInt_tfNhitwiresStatistics: wires with one or more hits
UInt_tfNmaxmulStatistics: largest num hits on any wire
UInt_tfNmissStatistics: Decoder channel misses
UInt_tfNmultihitStatistics: wires with multiple hits
UInt_tfNrejStatistics: Rejected hits
Bool_tTHaAnalysisObject::fOKOutFlag indicating object-output prepared
TVector3THaDetectorBase::fOriginCenter position of detector (m)
TreeSearch::WirePlane*fPartner! Partner plane (usually with staggered wires)
UInt_tfPlaneNumOrdinal of this plane within its projection
char*THaAnalysisObject::fPrefixName prefix for global variables
TreeSearch::Projection*fProjection! The projection that we belong to
UInt_tTHaAnalysisObject::fPropertiesProperties of this object (see EProperties)
Double_tfResolutionDrift distance resolution (sigma) (m)
Float_tTHaDetectorBase::fSize[3]Detector size in x,y,z (m) - x,y are half-widths
UInt_tfSpecial
THaAnalysisObject::EStatusTHaAnalysisObject::fStatusInitialization status flag
vector<float,allocator<float> >fTDCOffset[fNelem] TDC offsets for each wire
TreeSearch::TimeToDistConv*fTTDConvDrift time->distance converter
TStringTNamed::fTitleobject title
TreeSearch::EProjTypefTypePlane type (x,y,u,v)
Int_tfWasSortedStatistics: hits were sorted (0/1)
vector<float,allocator<float> >fWireOffset[fNelem] TDC offsets for each wire
Double_tfWireSpacingWire spacing (assumed constant) (m)
Double_tfWireStartPosition of 1st wire (along wire coord) (m)
Double_tftimeoffsettime offset (ns)

Class Charts

Inheritance Chart:
TObject
TNamed
THaAnalysisObject
THaDetectorBase
THaSubDetector
TreeSearch::WirePlane

Function documentation

WirePlane(const char* name, const char* description = "", THaDetectorBase* parent = 0)
 Constructor
~WirePlane()
 Destructor.
FitCoord* AddFitCoord(const TreeSearch::FitCoord& coord)
 Add given fit coordinate data to this plane's array of fit coordinates
void Clear(Option_t* opt = "")
 Clear event-by-event data (hits)
void CheckCrosstalk()
 Utility function to check crosstalk statistics.
 Counts number of wire pairs (=adjacent hits) and max "cluster" size.
 Also, marks mulithits and calculates their time differences
Int_t Decode(const THaEvData& )
 Extract this plane's hit data from the raw evData.

 This routine can handle both the old Fastbus readout and the new CAEN
 VME pipeline TDCs. The latter require a reference channel map and
 cross-references to reference channels in the regular detector map
 of the plane.
Int_t DefineVariables(THaAnalysisObject::EMode mode = kDefine)
 initialize global variables
THaAnalysisObject::EStatus Init(const TDatime& date)
 Calls its own Init(), then initializes subdetectors, then calculates
 some local geometry data.
Int_t ReadDatabase(const TDatime& date)
 Read database
void SetPartner(TreeSearch::WirePlane* p)
 Partner this plane with plane 'p'. Partner planes are expected to
 be located close to each other and usually to have staggered wires.
void SetProjection(TreeSearch::Projection* p)
 Associate this plane with the given projection.
 Also updates fCoordOffset based on the orientation of the projection
 and this plane's fOrigin.
void Print(Option_t* opt = "") const
 Print plane info
Double_t GetMaxSlope()
WirePlane(const char* name, const char* description = "", THaDetectorBase* parent = 0)
{}
Bool_t Contains(Double_t x, Double_t y) const
Bool_t Contains(const TVector2& point) const
void EnableCalibration(Bool_t enable = true)
EProjType GetType()
{ return fType; }
Double_t GetZ()
{ return fOrigin.Z(); }
Projection* GetProjection()
{ return fProjection; }
WirePlane* GetPartner()
{ return fPartner; }
MWDC* GetMWDC()
{ return fMWDC; }
Double_t GetResolution()
{ return fResolution; }
Double_t GetWireStart()
{ return fWireStart+fCoordOffset; }
Double_t GetWireSpacing()
{ return fWireSpacing; }
Double_t GetMaxLRdist()
{ return GetWireSpacing(); }
TimeToDistConv* GetTTDConv()
{ return fTTDConv; }
TSeqCollection* GetHits()
{ return fHits; }
Int_t GetNhits()
{ return fHits->GetLast()+1; }
TSeqCollection* GetCoords()
{ return fFitCoords; }
Int_t GetNcoords()
{ return fFitCoords->GetLast()+1; }
UInt_t GetPlaneNum()
{ return fPlaneNum; }
void SetSpecial(UInt_t temp)
UInt_t IsSpecial()
{ return fSpecial; }
Bool_t IsCalibrating()
{ return TestBit(kCalibrating); }
Bool_t IsRequired()
void SetPlaneNum(UInt_t n)
{ fPlaneNum = n; }
void SetRequired(Bool_t enable = true)

Last update: Tue Jul 7 19:26:19 2009

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.