StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
TVolumePosition Class Reference
Inheritance diagram for TVolumePosition:

Public Types

enum  EPositionBits { kIsOwn = BIT(23) }
 

Public Member Functions

 TVolumePosition (TVolume *node=0, Double_t x=0, Double_t y=0, Double_t z=0, TRotMatrix *matrix=0)
 
 TVolumePosition (TVolume *node, Double_t x, Double_t y, Double_t z, const char *matrixname)
 
 TVolumePosition (const TVolumePosition *oldPosition, const TVolumePosition *curPosition)
 Pick the "old" position by pieces.
 
 TVolumePosition (const TVolumePosition &pos)
 
virtual ~TVolumePosition ()
 to be documented
 
virtual void Browse (TBrowser *b)
 to be documented
 
virtual Float_t * Errmx2Local (const Float_t *masterError, Float_t *localError) const
 to be documented
 
virtual Double_t * Errmx2Local (const Double_t *masterError, Double_t *localError) const
 to be documented
 
virtual Float_t * Errmx2Master (const Float_t *localError, Float_t *masterError) const
 to be documented
 
virtual Double_t * Errmx2Master (const Double_t *localError, Double_t *masterError) const
 to be documented
 
virtual Double_t * Cormx2Local (const Double_t *masterCorr, Double_t *localCorr) const
 to be documented
 
virtual Float_t * Cormx2Local (const Float_t *masterCorr, Float_t *localCorr) const
 to be documented
 
virtual Double_t * Cormx2Master (const Double_t *localCorr, Double_t *masterCorr) const
 to be documented
 
virtual Float_t * Cormx2Master (const Float_t *localCorr, Float_t *masterCorr) const
 to be documented
 
virtual Double_t * Master2Local (const Double_t *master, Double_t *local, Int_t nPoints=1) const
 
virtual Float_t * Master2Local (const Float_t *master, Float_t *local, Int_t nPoints=1) const
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 
virtual TDataSetDefineSet ()
 
virtual void Draw (Option_t *depth="3")
 Draw Referenced node with current parameters.
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 
virtual TVolumeGetNode () const
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 to be documented
 
const Option_t * GetOption () const
 
virtual const Char_t * GetName () const
 return VolumePosition name
 
const TRotMatrix * GetMatrix () const
 
TRotMatrix * GetMatrix ()
 
Int_t GetVisibility () const
 
virtual Double_t GetX (Int_t indx=0) const
 
virtual const Double_t * GetXYZ () const
 
virtual Double_t GetY () const
 
virtual Double_t GetZ () const
 
virtual UInt_t GetId () const
 
Bool_t IsMatrixOwner () const
 
Bool_t SetMatrixOwner (Bool_t ownerShips=kTRUE)
 
Bool_t IsFolder () const
 
virtual Bool_t Is3D () const
 
virtual Double_t * Local2Master (const Double_t *local, Double_t *master, Int_t nPoints=1) const
 
virtual Float_t * Local2Master (const Float_t *local, Float_t *master, Int_t nPoints=1) const
 
virtual TVolumePositionMult (const TVolumePosition &position)
 
virtual void Paint (Option_t *option="")
 Paint Referenced node with current parameters.
 
virtual void Print (Option_t *option="") const
 to be documented
 
virtual void UpdatePosition (Option_t *option="")
 to be documented
 
virtual TVolumePositionReset (TVolume *node=0, Double_t x=0, Double_t y=0, Double_t z=0, TRotMatrix *matrix=0)
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 to be documented
 
virtual void SetLineAttributes ()
 to be documented
 
virtual void SetMatrix (TRotMatrix *matrix=0)
 to be documented
 
virtual void SetNode (TVolume *node)
 
virtual void SetPosition (Double_t x=0, Double_t y=0, Double_t z=0)
 
virtual void SetVisibility (Int_t vis=1)
 to be documented
 
virtual void SetX (Double_t x)
 
virtual void SetY (Double_t y)
 
virtual void SetZ (Double_t z)
 
virtual void SetXYZ (Double_t *xyz=0)
 to be documented
 
virtual void SetId (UInt_t id)
 
TVolumePositionoperator= (const TVolumePosition &rhs)
 

Protected Member Functions

void DeleteOwnMatrix ()
 

Protected Attributes

Double_t fX [3]
 
TRotMatrix * fMatrix
 
TVolumefNode
 
UInt_t fId
 

Detailed Description

Definition at line 28 of file TVolumePosition.h.

Constructor & Destructor Documentation

TVolumePosition::TVolumePosition ( TVolume node = 0,
Double_t  x = 0,
Double_t  y = 0,
Double_t  z = 0,
TRotMatrix *  matrix = 0 
)

Node normal constructor.

  • name is the name of the node
  • title is title
  • x,y,z are the offsets of the volume with respect to his mother
  • matrix is the pointer to the rotation matrix

This new node is added into the list of sons of the current node

Definition at line 87 of file TVolumePosition.cxx.

References TVolume::GetIdentity().

Referenced by SavePrimitive().

TVolumePosition::TVolumePosition ( TVolume node,
Double_t  x,
Double_t  y,
Double_t  z,
const char *  matrixname 
)

Node normal constructor.

  • name is the name of the node
  • title is title
  • x,y,z are the offsets of the volume with respect to his mother
  • matrixname is the name of the rotation matrix

This new node is added into the list of sons of the current node

Definition at line 61 of file TVolumePosition.cxx.

References TVolume::GetIdentity().

Member Function Documentation

Int_t TVolumePosition::DistancetoPrimitive ( Int_t  px,
Int_t  py 
)
virtual

Compute distance from point px,py to a Node. Compute the closest distance of approach from point px,py to this node. The distance is computed in pixels units.

Definition at line 187 of file TVolumePosition.cxx.

void TVolumePosition::ExecuteEvent ( Int_t  event,
Int_t  px,
Int_t  py 
)
virtual

Execute action corresponding to one event. This member function must be implemented to realize the action corresponding to the mouse click on the object in the window.

Definition at line 207 of file TVolumePosition.cxx.

Double_t * TVolumePosition::Local2Master ( const Double_t *  local,
Double_t *  master,
Int_t  nPoints = 1 
) const
virtual

Convert one point from local system to master reference system.

Note that before invoking this function, the global rotation matrix and translation vector for this node must have been computed. This is automatically done by the Paint functions. Otherwise TVolumePosition::UpdateMatrix should be called before.

Definition at line 352 of file TVolumePosition.cxx.

References TVolume::GetIdentity().

Referenced by TVolumeView::Local2Master().

Float_t * TVolumePosition::Local2Master ( const Float_t *  local,
Float_t *  master,
Int_t  nPoints = 1 
) const
virtual

Convert nPoints points from local system to master reference system.

Note that before invoking this function, the global rotation matrix and translation vector for this node must have been computed. This is automatically done by the Paint functions. Otherwise TVolumePosition::UpdateMatrix should be called before.

Definition at line 377 of file TVolumePosition.cxx.

References TVolume::GetIdentity().

Double_t * TVolumePosition::Master2Local ( const Double_t *  master,
Double_t *  local,
Int_t  nPoints = 1 
) const
virtual

Convert one point from master system to local reference system.

Note that before invoking this function, the global rotation matrix and translation vector for this node must have been computed. This is automatically done by the Paint functions. Otherwise TVolumePosition::UpdateMatrix should be called before.

Definition at line 405 of file TVolumePosition.cxx.

References TVolume::GetIdentity().

Float_t * TVolumePosition::Master2Local ( const Float_t *  master,
Float_t *  local,
Int_t  nPoints = 1 
) const
virtual

Convert nPoints points from master system to local reference system.

Note that before invoking this function, the global rotation matrix and translation vector for this node must have been computed. This is automatically done by the Paint functions. Otherwise TVolumePosition::UpdateMatrix should be called before.

Definition at line 431 of file TVolumePosition.cxx.

References TVolume::GetIdentity().

TVolumePosition * TVolumePosition::Reset ( TVolume node = 0,
Double_t  x = 0,
Double_t  y = 0,
Double_t  z = 0,
TRotMatrix *  matrix = 0 
)
virtual

Reset this position.

  • x,y,z the offsets of the volume with respect to his mother
  • matrix the pointer to the rotation matrix

This method is to re-use the memory this object without delete/create steps

Definition at line 474 of file TVolumePosition.cxx.

References TVolume::GetIdentity(), and SetMatrix().

Referenced by TVolumeViewIter::SetPositionAt().


The documentation for this class was generated from the following files: