12 #ifndef ROOT_TGeoPatternFinder 13 #define ROOT_TGeoPatternFinder ThreadData_t & operator=(const ThreadData_t &)
virtual Int_t GetDivAxis()
void CreateThreadData(Int_t nthreads)
Create thread data for n threads max.
virtual Int_t GetDivAxis()
void SetVolume(TGeoVolume *vol)
virtual Int_t GetDivAxis()
Geometrical transformation package.
virtual TGeoNode * FindNode(Double_t *, const Double_t *=0)
virtual Int_t GetByteCount() const
TGeoNode * GetNode(const char *name) const
get the pointer to a daughter node
Bool_t TestBit(UInt_t f) const
TGeoNode * GetNodeOffset(Int_t idiv)
TGeoVolume, TGeoVolumeMulti, TGeoVolumeAssembly are the volume classes.
TGeoPatternFinder & operator=(const TGeoPatternFinder &)
assignment operator
ThreadData_t & GetThreadData() const
Class describing translations.
~ThreadData_t()
Destructor.
Matrix class used for computing global transformations Should NOT be used for node definition...
virtual Int_t GetDivAxis()
Int_t GetCurrent()
Return current index.
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
#define ClassDef(name, id)
virtual Int_t GetDivAxis()
virtual Int_t GetDivAxis()
Int_t fThreadSize
Vector of thread private transient data.
TGeoVolume * GetVolume() const
TGeoPatternFinder()
Default constructor.
void SetRange(Double_t start, Double_t step, Int_t ndivisions)
Set division range. Use this method only when dividing an assembly.
Base finder class for patterns.
Int_t fCurrent
generic matrix
virtual Int_t GetDivAxis()
void SetSpacedOut(Bool_t flag)
TGeoPatternFinder * MakeCopy(Bool_t)
virtual TGeoPatternFinder * MakeCopy(Bool_t reflect=kFALSE)=0
virtual Int_t GetDivAxis()
Double_t GetStart() const
Int_t fNextIndex
current division element
virtual Bool_t IsOnBoundary(const Double_t *) const
TGeoPatternCylPhi & operator=(const TGeoPatternCylPhi &pfc)
std::mutex fMutex
Size of the thread vector.
void SetDivIndex(Int_t index)
virtual void UpdateMatrix(Int_t, TGeoHMatrix &) const
virtual TGeoMatrix * CreateMatrix() const =0
TGeoPatternCylPhi(const TGeoPatternCylPhi &pfc)
[2*fNdivisions] table of sines/cosines
Bool_t IsReflected() const
virtual TGeoMatrix * GetMatrix()
Return current matrix.
virtual Int_t GetDivAxis()
Mother of all ROOT objects.
Bool_t IsSpacedOut() const
A node represent a volume positioned inside another.They store links to both volumes and to the TGeoM...
virtual Int_t GetDivAxis()
virtual ~TGeoPatternFinder()
Destructor.
virtual Int_t GetDivAxis()
virtual TGeoNode * CdNext()
Make next node (if any) current.
virtual Int_t GetDivAxis()
void ClearThreadData() const
Int_t GetNext() const
Get index of next division.
void SetNext(Int_t index)
Set index of next division.
virtual Int_t GetDivAxis()
std::vector< ThreadData_t * > fThreadData
ThreadData_t()
index of next node
void Reflect(Bool_t flag=kTRUE)
virtual void SavePrimitive(std::ostream &out, Option_t *option="")
Save a primitive as a C++ statement(s) on output stream "out".