AliRoot Core  3dc7879 (3dc7879)
AliMUONVPainter Class Referenceabstract

Base class for a graphical object representing some part of the MUON tracking system. More...

#include <AliMUONVPainter.h>

Inheritance diagram for AliMUONVPainter:

Public Member Functions

 AliMUONVPainter (TRootIOCtor *)
 
 AliMUONVPainter (const char *type="")
 
 AliMUONVPainter (const AliMUONVPainter &rhs)
 
AliMUONVPainteroperator= (const AliMUONVPainter &rhs)
 
virtual ~AliMUONVPainter ()
 
void Add (AliMUONVPainter *painter)
 Add a painter to our list of children. We adopt this painter (i.e. we become owner). More...
 
AliMpArea Area () const
 Return the area containing this painter. More...
 
virtual void SetAttributes (const AliMUONAttPainter &attributes)
 
virtual AliMUONAttPainter Validate (const AliMUONAttPainter &attributes) const
 Convert attributes so they are valid ones for us. More...
 
const AliMUONAttPainterAttributes () const
 Get our attributes. More...
 
virtual void ComputeDataRange (const AliMUONVTrackerData &data, Int_t dataIndex, Double_t &dataMin, Double_t &dataMax) const
 
virtual void Copy (TObject &object) const
 
AliMUONVPainterDetach () const
 
virtual Bool_t CanBeDetached () const
 Whether this painter can be detached from the current view. More...
 
virtual Bool_t IsValid () const
 Whether we are valid or not. More...
 
void Invalidate ()
 Mark us as not valid. More...
 
Int_t Depth () const
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 
virtual void Draw (Option_t *opt="")
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 
AliMUONContourContour () const
 Return the contour representing the outline of this object. More...
 
virtual const char * GetName () const
 Get our name. More...
 
virtual TString Name () const
 Get our name. More...
 
virtual TString PathName () const
 Get our path name (aka fullname) More...
 
virtual TString ContourName () const
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 
void GetTypes (TObjArray &types) const
 
AliMUONPainterGroupMotherGroup () const
 Return our mother group. More...
 
virtual TString NameAtPosition (Double_t, Double_t) const
 Return specific name at a given position, if needed. More...
 
AliMUONPainterGroupGroup (const char *type) const
 
AliMUONPainterGroupGroup (Int_t depth) const
 
virtual Bool_t HandleMouseMotion () const
 Whether we handle mouse motion or not. More...
 
Bool_t IsResponder () const
 
Bool_t IsInside (Double_t x, Double_t y) const
 
AliMUONVPainterMother () const
 Return our mother (0 if we're the top node) More...
 
virtual void Paint (Option_t *opt="")
 
virtual void Print (Option_t *opt="") const
 
AliMUONPainterGroupPlotterGroup () const
 Return the plotter group. More...
 
AliMUONPainterGroupResponderGroup () const
 Return the responder group. More...
 
void SetContour (AliMUONContour *contour)
 Set out contour. More...
 
void SetData (const char *pattern, AliMUONVTrackerData *data, Int_t dataIndex)
 
void SetLine (Int_t depth, Int_t lineColor, Int_t lineWidth)
 
void SetMotherGroup (AliMUONPainterGroup *group)
 Set our mother group. More...
 
void SetMother (AliMUONVPainter *painter)
 
void SetOutlined (const char *pattern, Bool_t flag)
 
virtual void SetResponder (const char *pattern)
 
virtual void SetResponder (Int_t depth)
 
void SetVisible (const char *pattern, Bool_t flag)
 
const char * Type () const
 Return our type (e.g. PCB, Chamber, DE, MANU, etc...) More...
 
void Clicked (AliMUONVPainter *painter, Double_t *pos)
 
void ShiftClicked (AliMUONVPainter *painter, Double_t *pos)
 
void DoubleClicked (AliMUONVPainter *painter, Double_t *pos)
 
virtual void PaintOutline (Int_t color=-1, Int_t width=-1, Double_t x=FLT_MAX, Double_t y=FLT_MAX)
 
virtual void PaintArea (Int_t fillColor)
 
virtual void PaintArea (const AliMUONVTrackerData &data, Int_t dataIndex, Double_t min, Double_t max)
 
TVirtualPad * Pad () const
 Get the pad in which we are plotted. More...
 
Int_t GetLineColor () const
 Get our line color. More...
 
Int_t GetLineWidth () const
 Get our line width. More...
 
void SetLineColor (Int_t lineColor)
 Set our line color. More...
 
void SetLineWidth (Int_t lineWidth)
 Set our line width. More...
 
void SetName (const char *name)
 Set our name. More...
 
void SetPathName (const char *pathName)
 Set our path name (aka fullname) More...
 
Int_t ID0 () const
 Get our first ID. More...
 
Int_t ID1 () const
 Get our second ID. More...
 
void SetID (Int_t id0, Int_t id1)
 Set our IDs. More...
 
virtual TString Describe (const AliMUONVTrackerData &data, Int_t dataIndex, Double_t x=FLT_MAX, Double_t y=FLT_MAX)
 
void UpdateGroupsFrom (const AliMUONVPainter &painter)
 
AliMUONVPainterMaster () const
 
virtual void DrawHistogram (Double_t *values=0x0) const
 
void DrawHistogram0 () const
 To avoid getting a popup asking for the parameter in the GUI... More...
 
void DrawHistogramClone0 () const
 To avoid getting a popup asking for the parameter in the GUI... More...
 
virtual void DrawHistogramClone (Double_t *values=0x0) const
 
virtual void DrawInternalHistogram (Int_t dim) const
 
virtual void DrawInternalHistogramClone (Int_t dim) const
 
virtual void FillManuList (TObjArray &manuList) const
 Append (i.e. don't have the right to clear the array !) our list of manus to manuList. More...
 
void DrawInternalHistogramClone0 ()
 
void DrawInternalHistogramClone1 ()
 SL. More...
 
void DrawInternalHistogramClone2 ()
 SL. More...
 
void DrawInternalHistogramClone3 ()
 SL. More...
 
void DrawInternalHistogramClone4 ()
 SL. More...
 
void DrawInternalHistogramClone5 ()
 SL. More...
 
void DrawInternalHistogramClone6 ()
 SL. More...
 
void DrawInternalHistogramClone7 ()
 SL. More...
 
void DrawInternalHistogramClone8 ()
 SL. More...
 
void DrawInternalHistogramClone9 ()
 SL. More...
 
virtual Bool_t IsIncluded () const =0
 Whether or not the part of the detector represented by this painter should be included in readout. More...
 
Bool_t IsExcluded () const
 Whether or not the part of the detector represented by this painter should be excluded from readout. More...
 
virtual void Include ()
 
virtual void Exclude ()
 

Static Public Member Functions

static void PixelToPad (Int_t px, Int_t py, Double_t &x, Double_t &y)
 
static AliMUONVPainterCreatePainter (const char *className, const AliMUONAttPainter &att, Int_t id1, Int_t id2)
 

Protected Member Functions

virtual TCollection * Children () const
 
void CreateGroups ()
 
AliMUONVTrackerDataInteractiveReadOutConfig () const
 

Protected Attributes

TH1 * fHistogram
 ! histogram More...
 
TMap * fPainterGroups
 map of groups More...
 
AliMUONPainterGroupfResponderGroup
 the responder group More...
 

Private Member Functions

void FlatList (TList &list)
 
AliMUONPainterGroupCreateGroup (const char *type, Int_t depth)
 
void GetBoundingBox (Double_t &x1, Double_t &y1, Double_t &x2, Double_t &y2) const
 
AliMUONVPainterGetPainter (Int_t px, Int_t py, Double_t &x, Double_t &y) const
 
void WriteIROC (Double_t value)
 
void GetIROCManuList (TObjArray &manuList)
 

Private Attributes

TString fName
 our (short) name More...
 
TString fPathName
 our long name More...
 
TString fType
 our type (DE, Chamber, MANU, etc...) More...
 
AliMUONVPainterfMother
 our mother More...
 
AliMUONPainterGroupfGroup
 our group More...
 
AliMUONContourfContour
 our contour More...
 
TObjArrayfChildren
 our children More...
 
AliMUONPainterGroupfPlotterGroup
 the plotter group More...
 
Double_t fBorderFactor
 border factor for visu More...
 
TVirtualPad * fPad
 the pad we're drawn in More...
 
AliMUONAttPainter fAttributes
 our attributes (e.g. view type) More...
 
Int_t fLineColor
 our outline color More...
 
Int_t fLineWidth
 our outline width More...
 
Int_t fID [2]
 our ids More...
 
Bool_t fIsValid
 whether we were properly initialized More...
 

Detailed Description

Base class for a graphical object representing some part of the MUON tracking system.

Base class for a graphical object representing some part of the MUON tracking system.

A painter is a graphical representation of some part (e.g. detection element, full chamber, one manu, etc...) of the MUON tracking system.

A painter is a double fold hierarchical structure.

First, a painter is part of a tree (mother->childrens), that describe the natural organization of the spectrometer. For instance, a chamber painter has children that are the detection element, the detection elements themselves contain manus, which in turn contain channels.

Second, a painter contains a number of "painter groups" (see AliMUONPainterGroup). A group gather all the painters of the same type, where the type is a string identifying which part of system we're dealing with (chamber, DE, manu, etc...)

The groups are there to ease the manipulation of similar painters, e.g. if we want to hide all detection elements, we hide the "detection element group" Some special groups are the responder and the plotter groups. The responder group is the group which is currently responding to mouse events. The plotter group is the group which is supposed to represent some data.

There are two ways to represent the painter on screen. In any case, we can outline the painter (i.e. draw its borders) (see AliMUONVPainter::PaintOutline). In the cases where the painter is attached to some data source (i.e. it is used to represent some data about its type, e.g. the mean charge on some manu), we can draw the full area of the contour, using some color (see AliMUONVPainter::PaintArea).

Note that you can outline several types of painters (aka groups) at the same time, but you cannot plot several groups at the same time.

Painters are TQObject so they can emit signals.

Currently emitted signal are :

void Clicked(AliMUONVPainter* painter, Double_t*); DoubleClicked(AliMUONVPainter* painter, Double_t*);

to know which and where a painter was (double-) clicked.

Author
Laurent Aphecetche, Subatech

Definition at line 44 of file AliMUONVPainter.h.

Constructor & Destructor Documentation

AliMUONVPainter::AliMUONVPainter ( TRootIOCtor *  )

streamer ctor

Definition at line 102 of file AliMUONVPainter.cxx.

AliMUONVPainter::AliMUONVPainter ( const char *  type = "")

ctor

Definition at line 127 of file AliMUONVPainter.cxx.

AliMUONVPainter::AliMUONVPainter ( const AliMUONVPainter rhs)

copy ctor

Definition at line 153 of file AliMUONVPainter.cxx.

AliMUONVPainter::~AliMUONVPainter ( )
virtual

dtor

Definition at line 191 of file AliMUONVPainter.cxx.

Member Function Documentation

void AliMUONVPainter::Add ( AliMUONVPainter painter)

Add a painter to our list of children. We adopt this painter (i.e. we become owner).

Add a child painter

Definition at line 216 of file AliMUONVPainter.cxx.

Referenced by AliMUONBusPatchPainter::AliMUONBusPatchPainter(), AliMUONChamberPainter::AliMUONChamberPainter(), AliMUONDEPainter::AliMUONDEPainter(), AliMUONManuPainter::AliMUONManuPainter(), AliMUONPCBPainter::AliMUONPCBPainter(), and Copy().

AliMpArea AliMUONVPainter::Area ( ) const

Return the area containing this painter.

Return the area covered by this painter

Definition at line 200 of file AliMUONVPainter.cxx.

Referenced by AliMUONBusPatchPainter::AliMUONBusPatchPainter(), AliMUONChamberPainter::AliMUONChamberPainter(), GetBoundingBox(), and AliMUONPainterMasterFrame::ShiftClicked().

virtual Bool_t AliMUONVPainter::CanBeDetached ( ) const
inlinevirtual

Whether this painter can be detached from the current view.

Reimplemented in AliMUONManuPadPainter.

Definition at line 76 of file AliMUONVPainter.h.

Referenced by AliMUONPainterMasterFrame::Clicked(), and AliMUONPainterMasterFrame::ShiftClicked().

TCollection * AliMUONVPainter::Children ( ) const
protectedvirtual

Return the list of childrens

Definition at line 227 of file AliMUONVPainter.cxx.

Referenced by AliMUONChamberPainter::AliMUONChamberPainter(), AliMUONDEPainter::FillManuList(), FillManuList(), and IsExcluded().

void AliMUONVPainter::Clicked ( AliMUONVPainter painter,
Double_t *  pos 
)

Let our mother emit the signal as clients are probably connected to our (grand)mother, not to us

Definition at line 235 of file AliMUONVPainter.cxx.

Referenced by Clicked(), ExecuteEvent(), and Type().

void AliMUONVPainter::ComputeDataRange ( const AliMUONVTrackerData data,
Int_t  dataIndex,
Double_t &  dataMin,
Double_t &  dataMax 
) const
virtual

Should compute the min and max of a given data source

Reimplemented in AliMUONPCBPainter, AliMUONBusPatchPainter, AliMUONChamberPainter, AliMUONManuPadPainter, AliMUONManuPainter, and AliMUONDEPainter.

Definition at line 273 of file AliMUONVPainter.cxx.

Referenced by Attributes(), and AliMUONPainterGroup::ComputeDataRange().

AliMUONContour* AliMUONVPainter::Contour ( ) const
inline
TString AliMUONVPainter::ContourName ( ) const
virtual
AliMUONPainterGroup * AliMUONVPainter::CreateGroup ( const char *  type,
Int_t  depth 
)
private

Create a painter group at a given depth

Definition at line 352 of file AliMUONVPainter.cxx.

Referenced by CreateGroups().

void AliMUONVPainter::CreateGroups ( )
protected

Groups our children into groups

Definition at line 370 of file AliMUONVPainter.cxx.

Referenced by Draw(), IsExcluded(), SetData(), SetOutlined(), AliMUONDEPainter::SetResponder(), SetResponder(), SetVisible(), and UpdateGroupsFrom().

AliMUONVPainter * AliMUONVPainter::CreatePainter ( const char *  className,
const AliMUONAttPainter att,
Int_t  id1,
Int_t  id2 
)
static

Create a painter (factory method)

Definition at line 1322 of file AliMUONVPainter.cxx.

Referenced by AliMUONPainterMatrix::Clone(), GetIROCManuList(), SetPathName(), and AliMUONPainterMasterFrame::ShiftClicked().

Int_t AliMUONVPainter::Depth ( ) const

Return our depth in the hierarchy

Definition at line 416 of file AliMUONVPainter.cxx.

Referenced by AliMUONPainterGroup::Add(), CreateGroups(), Depth(), Invalidate(), and Print().

TString AliMUONVPainter::Describe ( const AliMUONVTrackerData data,
Int_t  dataIndex,
Double_t  x = FLT_MAX,
Double_t  y = FLT_MAX 
)
virtual

Default implementation (must be overriden)

Reimplemented in AliMUONChamberPainter, AliMUONBusPatchPainter, AliMUONManuPadPainter, AliMUONDEPainter, AliMUONManuPainter, and AliMUONPCBPainter.

Definition at line 761 of file AliMUONVPainter.cxx.

Referenced by AliMUONPainterMatrixFrame::ChangeTitle(), and SetID().

AliMUONVPainter * AliMUONVPainter::Detach ( ) const

Make this a new top painter (i.e. a master)

Definition at line 398 of file AliMUONVPainter.cxx.

Referenced by Attributes(), and AliMUONPainterMasterFrame::Clicked().

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

See TObject::DistancetoPrimitive

Definition at line 432 of file AliMUONVPainter.cxx.

Referenced by Invalidate().

void AliMUONVPainter::DoubleClicked ( AliMUONVPainter painter,
Double_t *  pos 
)

Should emit the DoubleClicked signal (if I knew how to detect those events...)

Definition at line 453 of file AliMUONVPainter.cxx.

Referenced by ExecuteEvent(), and Type().

void AliMUONVPainter::Draw ( Option_t *  opt = "")
virtual

Append ourselves to the current pad

Definition at line 475 of file AliMUONVPainter.cxx.

Referenced by Draw(), AliMUONPainterMatrix::Draw(), Invalidate(), and AliMUONPainterMatrixFrame::Use().

void AliMUONVPainter::DrawHistogram ( Double_t *  values = 0x0) const
virtual

Draw histogram (and delete the previous one)

Definition at line 1008 of file AliMUONVPainter.cxx.

Referenced by AliMUONPainterMasterFrame::Clicked(), DrawHistogram0(), and SetID().

void AliMUONVPainter::DrawHistogram0 ( ) const
inline

To avoid getting a popup asking for the parameter in the GUI...

Definition at line 223 of file AliMUONVPainter.h.

void AliMUONVPainter::DrawHistogramClone ( Double_t *  values = 0x0) const
virtual

Draw histogram

Reimplemented in AliMUONManuPadPainter.

Definition at line 1020 of file AliMUONVPainter.cxx.

Referenced by DrawHistogram(), and DrawHistogramClone0().

void AliMUONVPainter::DrawHistogramClone0 ( ) const
inline

To avoid getting a popup asking for the parameter in the GUI...

Definition at line 225 of file AliMUONVPainter.h.

void AliMUONVPainter::DrawInternalHistogram ( Int_t  dim) const
virtual

Draw histogram (and delete the previous one)

Definition at line 981 of file AliMUONVPainter.cxx.

Referenced by DrawHistogramClone0().

void AliMUONVPainter::DrawInternalHistogramClone0 ( )
inline

following kind of stupid lines (SL), because I don't know how to pass parameters to TClassMenuItem for context menu (don't even know if that's possible at all) SL

Definition at line 240 of file AliMUONVPainter.h.

void AliMUONVPainter::DrawInternalHistogramClone1 ( )
inline

SL.

Definition at line 242 of file AliMUONVPainter.h.

void AliMUONVPainter::DrawInternalHistogramClone2 ( )
inline

SL.

Definition at line 244 of file AliMUONVPainter.h.

void AliMUONVPainter::DrawInternalHistogramClone3 ( )
inline

SL.

Definition at line 246 of file AliMUONVPainter.h.

void AliMUONVPainter::DrawInternalHistogramClone4 ( )
inline

SL.

Definition at line 248 of file AliMUONVPainter.h.

void AliMUONVPainter::DrawInternalHistogramClone5 ( )
inline

SL.

Definition at line 250 of file AliMUONVPainter.h.

void AliMUONVPainter::DrawInternalHistogramClone6 ( )
inline

SL.

Definition at line 252 of file AliMUONVPainter.h.

void AliMUONVPainter::DrawInternalHistogramClone7 ( )
inline

SL.

Definition at line 254 of file AliMUONVPainter.h.

void AliMUONVPainter::DrawInternalHistogramClone8 ( )
inline

SL.

Definition at line 256 of file AliMUONVPainter.h.

void AliMUONVPainter::DrawInternalHistogramClone9 ( )
inline

SL.

Definition at line 258 of file AliMUONVPainter.h.

void AliMUONVPainter::Exclude ( )
virtual

Exclude this painter

Update the global interactive read out configuration

Definition at line 1303 of file AliMUONVPainter.cxx.

Referenced by IsExcluded().

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

Handle graphics events

Definition at line 517 of file AliMUONVPainter.cxx.

Referenced by AliMUONPainterMatrixFrame::EventInfo(), and Invalidate().

void AliMUONVPainter::FillManuList ( TObjArray manuList) const
virtual

Append (i.e. don't have the right to clear the array !) our list of manus to manuList.

Append to manulist This is the default implementation, which just calls the FillManuList of all our children. Some derived class might need to override this in order to exclude some children from the fill.

Reimplemented in AliMUONManuPainter, and AliMUONDEPainter.

Definition at line 1035 of file AliMUONVPainter.cxx.

Referenced by AliMUONTrackerDataHistogrammer::CreateHisto(), DrawHistogramClone0(), AliMUONDEPainter::FillManuList(), FillManuList(), and GetIROCManuList().

void AliMUONVPainter::FlatList ( TList &  list)
private

Make a flat list of our children (and ourselves)

Definition at line 548 of file AliMUONVPainter.cxx.

Referenced by CreateGroups(), FlatList(), and SetData().

void AliMUONVPainter::GetBoundingBox ( Double_t &  x1,
Double_t &  y1,
Double_t &  x2,
Double_t &  y2 
) const
private

Get the bounding box = our area

Definition at line 564 of file AliMUONVPainter.cxx.

Referenced by Draw().

void AliMUONVPainter::GetIROCManuList ( TObjArray manuList)
private

Get the list of manus spanned by this painter AND by its dual

Definition at line 1254 of file AliMUONVPainter.cxx.

Referenced by WriteIROC().

Int_t AliMUONVPainter::GetLineColor ( ) const
inline

Get our line color.

Definition at line 184 of file AliMUONVPainter.h.

Referenced by AliMUONManuPadPainter::PaintOutline(), and PaintOutline().

Int_t AliMUONVPainter::GetLineWidth ( ) const
inline

Get our line width.

Definition at line 187 of file AliMUONVPainter.h.

Referenced by PaintOutline().

virtual const char* AliMUONVPainter::GetName ( void  ) const
inlinevirtual
char * AliMUONVPainter::GetObjectInfo ( Int_t  px,
Int_t  py 
) const
virtual

See TObject::GetObjectInfo

Reimplemented in AliMUONManuPadPainter.

Definition at line 581 of file AliMUONVPainter.cxx.

Referenced by PathName().

AliMUONVPainter * AliMUONVPainter::GetPainter ( Int_t  px,
Int_t  py,
Double_t &  x,
Double_t &  y 
) const
private

Get the responder painter at integer position (px,py), and get back its absolute position (x,y)

Definition at line 589 of file AliMUONVPainter.cxx.

Referenced by DistancetoPrimitive(), ExecuteEvent(), and GetPainter().

void AliMUONVPainter::GetTypes ( TObjArray types) const

Get the list of types (as a TObjArray of TObjString) of our hierarchy, sorted alphabetically

Definition at line 617 of file AliMUONVPainter.cxx.

Referenced by AliMUONPainterMatrix::GetTypes(), PathName(), and UpdateGroupsFrom().

AliMUONPainterGroup * AliMUONVPainter::Group ( const char *  type) const

Returns a group of a given type

Definition at line 665 of file AliMUONVPainter.cxx.

Referenced by CreateGroups(), GetTypes(), NameAtPosition(), Print(), SetLine(), UpdateGroupsFrom(), and AliMUONPainterMatrixFrame::UpdateInterface().

AliMUONPainterGroup * AliMUONVPainter::Group ( Int_t  depth) const

Returns a group of a given depth

Definition at line 674 of file AliMUONVPainter.cxx.

virtual Bool_t AliMUONVPainter::HandleMouseMotion ( ) const
inlinevirtual

Whether we handle mouse motion or not.

Reimplemented in AliMUONManuPadPainter.

Definition at line 121 of file AliMUONVPainter.h.

Referenced by AliMUONPainterMatrixFrame::EventInfo().

Int_t AliMUONVPainter::ID0 ( ) const
inline
Int_t AliMUONVPainter::ID1 ( ) const
inline

Get our second ID.

Definition at line 208 of file AliMUONVPainter.h.

Referenced by AliMUONPainterMatrix::Clone(), GetIROCManuList(), Print(), and AliMUONPainterMasterFrame::ShiftClicked().

void AliMUONVPainter::Include ( )
virtual

Include this painter

Update the global interactive read out configuration

Definition at line 1243 of file AliMUONVPainter.cxx.

Referenced by IsExcluded().

void AliMUONVPainter::Invalidate ( )
inline

Mark us as not valid.

Definition at line 82 of file AliMUONVPainter.h.

Referenced by AliMUONBusPatchPainter::AliMUONBusPatchPainter(), and AliMUONManuPainter::AliMUONManuPainter().

Bool_t AliMUONVPainter::IsExcluded ( ) const
inline

Whether or not the part of the detector represented by this painter should be excluded from readout.

Definition at line 264 of file AliMUONVPainter.h.

Referenced by Paint().

virtual Bool_t AliMUONVPainter::IsIncluded ( ) const
pure virtual

Whether or not the part of the detector represented by this painter should be included in readout.

Implemented in AliMUONManuPadPainter, AliMUONChamberPainter, AliMUONManuPainter, AliMUONDEPainter, AliMUONBusPatchPainter, and AliMUONPCBPainter.

Referenced by DrawInternalHistogramClone9(), and IsExcluded().

Bool_t AliMUONVPainter::IsInside ( Double_t  x,
Double_t  y 
) const

Whether point (x,y) is inside our contour

Definition at line 694 of file AliMUONVPainter.cxx.

Referenced by GetPainter(), and HandleMouseMotion().

Bool_t AliMUONVPainter::IsResponder ( ) const

Whether we're responding to mouse events

Definition at line 703 of file AliMUONVPainter.cxx.

Referenced by AliMUONPainterMatrixFrame::EventInfo(), and HandleMouseMotion().

virtual Bool_t AliMUONVPainter::IsValid ( ) const
inlinevirtual

Whether we are valid or not.

Definition at line 79 of file AliMUONVPainter.h.

Referenced by AliMUONDEPainter::AliMUONDEPainter(), CreatePainter(), and Print().

AliMUONVPainter * AliMUONVPainter::Master ( ) const
AliMUONVPainter* AliMUONVPainter::Mother ( ) const
inline

Return our mother (0 if we're the top node)

Definition at line 128 of file AliMUONVPainter.h.

Referenced by Add(), Clicked(), CreateGroups(), Depth(), Master(), Print(), and ShiftClicked().

AliMUONPainterGroup* AliMUONVPainter::MotherGroup ( ) const
inline

Return our mother group.

Definition at line 111 of file AliMUONVPainter.h.

Referenced by IsResponder(), Paint(), and Print().

virtual TString AliMUONVPainter::Name ( ) const
inlinevirtual

Get our name.

Definition at line 99 of file AliMUONVPainter.h.

Referenced by AliMUONDEPainter::AliMUONDEPainter(), and AliMUONPainterMasterFrame::Clicked().

virtual TString AliMUONVPainter::NameAtPosition ( Double_t  ,
Double_t   
) const
inlinevirtual

Return specific name at a given position, if needed.

Reimplemented in AliMUONManuPadPainter.

Definition at line 114 of file AliMUONVPainter.h.

Referenced by AliMUONPainterMatrixFrame::MouseMotion().

AliMUONVPainter & AliMUONVPainter::operator= ( const AliMUONVPainter rhs)

assignment operator

Definition at line 180 of file AliMUONVPainter.cxx.

TVirtualPad* AliMUONVPainter::Pad ( ) const
inline

Get the pad in which we are plotted.

Definition at line 181 of file AliMUONVPainter.h.

Referenced by AliMUONPainterMatrixFrame::EventInfo().

void AliMUONVPainter::Paint ( Option_t *  opt = "")
virtual

Paint ourselves of screen If we have some data (i.e. we're belonging to the plotter group) we use PaintArea. And if must be outlined, then we do that too.

Definition at line 731 of file AliMUONVPainter.cxx.

Referenced by Mother().

void AliMUONVPainter::PaintArea ( const AliMUONVTrackerData data,
Int_t  dataIndex,
Double_t  min,
Double_t  max 
)
virtual

Default implementation (must be overriden)

Reimplemented in AliMUONManuPadPainter, AliMUONChamberPainter, AliMUONManuPainter, AliMUONPCBPainter, AliMUONBusPatchPainter, and AliMUONDEPainter.

Definition at line 770 of file AliMUONVPainter.cxx.

void AliMUONVPainter::PaintOutline ( Int_t  color = -1,
Int_t  width = -1,
Double_t  x = FLT_MAX,
Double_t  y = FLT_MAX 
)
virtual

Default implementation is simply a drawing of the contour lines, not using the optional (x,y)

Reimplemented in AliMUONManuPadPainter.

Definition at line 779 of file AliMUONVPainter.cxx.

Referenced by AliMUONPainterHighlighter::Paint(), Paint(), and Type().

virtual TString AliMUONVPainter::PathName ( ) const
inlinevirtual
void AliMUONVPainter::PixelToPad ( Int_t  px,
Int_t  py,
Double_t &  x,
Double_t &  y 
)
static

convert (px,py) into pad position (x,y)

Definition at line 791 of file AliMUONVPainter.cxx.

Referenced by AliMUONPainterMatrixFrame::EventInfo(), GetPainter(), and Type().

void AliMUONVPainter::Print ( Option_t *  opt = "") const
virtual

Printout

Definition at line 801 of file AliMUONVPainter.cxx.

Referenced by Mother(), AliMUONPainterGroup::Print(), and Print().

AliMUONPainterGroup* AliMUONVPainter::ResponderGroup ( ) const
inline

Return the responder group.

Definition at line 138 of file AliMUONVPainter.h.

Referenced by UpdateGroupsFrom(), and AliMUONPainterMatrixFrame::UpdateInterface().

void AliMUONVPainter::SetData ( const char *  pattern,
AliMUONVTrackerData data,
Int_t  dataIndex 
)

Tell all painters which type matches pattern that they should monitor a given data source

Definition at line 885 of file AliMUONVPainter.cxx.

Referenced by ResponderGroup(), AliMUONPainterMatrix::SetData(), and UpdateGroupsFrom().

void AliMUONVPainter::SetLine ( Int_t  depth,
Int_t  lineColor,
Int_t  lineWidth 
)

Set the line attributes of painters at a given depth

Definition at line 1055 of file AliMUONVPainter.cxx.

Referenced by AliMUONMchViewApplication::AliMUONMchViewApplication(), AliMUONMchViewApplication::GenerateStartupMatrix(), ResponderGroup(), and UpdateGroupsFrom().

void AliMUONVPainter::SetLineColor ( Int_t  lineColor)
inline

Set our line color.

Definition at line 190 of file AliMUONVPainter.h.

Referenced by AliMUONPainterGroup::SetLine().

void AliMUONVPainter::SetLineWidth ( Int_t  lineWidth)
inline

Set our line width.

Definition at line 193 of file AliMUONVPainter.h.

Referenced by AliMUONPainterGroup::SetLine().

void AliMUONVPainter::SetMother ( AliMUONVPainter painter)

Set our mother

Definition at line 1067 of file AliMUONVPainter.cxx.

Referenced by Add(), and SetMotherGroup().

void AliMUONVPainter::SetMotherGroup ( AliMUONPainterGroup group)
inline

Set our mother group.

Definition at line 148 of file AliMUONVPainter.h.

Referenced by AliMUONPainterGroup::Add().

void AliMUONVPainter::SetOutlined ( const char *  pattern,
Bool_t  flag 
)
void AliMUONVPainter::SetResponder ( Int_t  depth)
virtual

Select as responder the first group that has a given depth

Reimplemented in AliMUONDEPainter.

Definition at line 1131 of file AliMUONVPainter.cxx.

void AliMUONVPainter::SetVisible ( const char *  pattern,
Bool_t  flag 
)

Decide whether the painters matching pattern should be visible or not

Definition at line 1163 of file AliMUONVPainter.cxx.

Referenced by SetMotherGroup(), and UpdateGroupsFrom().

void AliMUONVPainter::ShiftClicked ( AliMUONVPainter painter,
Double_t *  pos 
)

Let our mother emit the signal as clients are probably connected to our (grand)mother, not to us

Definition at line 254 of file AliMUONVPainter.cxx.

Referenced by ExecuteEvent(), ShiftClicked(), and Type().

const char* AliMUONVPainter::Type ( ) const
inline

Return our type (e.g. PCB, Chamber, DE, MANU, etc...)

Definition at line 161 of file AliMUONVPainter.h.

Referenced by AliMUONPainterGroup::Add(), CreateGroups(), and Print().

void AliMUONVPainter::UpdateGroupsFrom ( const AliMUONVPainter painter)

(re)Create groups

Definition at line 1187 of file AliMUONVPainter.cxx.

Referenced by AliMUONPainterMatrix::Clone(), Copy(), Detach(), SetID(), and AliMUONPainterMasterFrame::ShiftClicked().

virtual AliMUONAttPainter AliMUONVPainter::Validate ( const AliMUONAttPainter attributes) const
inlinevirtual

Convert attributes so they are valid ones for us.

Reimplemented in AliMUONChamberPainter, AliMUONBusPatchPainter, AliMUONManuPainter, and AliMUONDEPainter.

Definition at line 63 of file AliMUONVPainter.h.

Referenced by AliMUONPainterMatrix::Validate().

void AliMUONVPainter::WriteIROC ( Double_t  value)
private

Update the interactive readout configuration

Definition at line 1279 of file AliMUONVPainter.cxx.

Referenced by Exclude(), and Include().

Member Data Documentation

AliMUONAttPainter AliMUONVPainter::fAttributes
private

our attributes (e.g. view type)

Definition at line 308 of file AliMUONVPainter.h.

Referenced by Attributes(), ContourName(), Copy(), and SetAttributes().

Double_t AliMUONVPainter::fBorderFactor
private

border factor for visu

Definition at line 306 of file AliMUONVPainter.h.

Referenced by Copy(), and GetBoundingBox().

TObjArray* AliMUONVPainter::fChildren
private

our children

Definition at line 304 of file AliMUONVPainter.h.

Referenced by Add(), Children(), Copy(), Draw(), FlatList(), GetPainter(), Print(), and ~AliMUONVPainter().

AliMUONContour* AliMUONVPainter::fContour
private

our contour

Definition at line 303 of file AliMUONVPainter.h.

Referenced by Area(), Contour(), Copy(), IsInside(), Paint(), PaintOutline(), and SetContour().

AliMUONPainterGroup* AliMUONVPainter::fGroup
private

our group

Definition at line 302 of file AliMUONVPainter.h.

Referenced by Copy(), GetPainter(), MotherGroup(), and SetMotherGroup().

TH1* AliMUONVPainter::fHistogram
mutableprotected
Int_t AliMUONVPainter::fID[2]
private

our ids

Definition at line 311 of file AliMUONVPainter.h.

Referenced by Copy(), ID0(), ID1(), and SetID().

Bool_t AliMUONVPainter::fIsValid
private

whether we were properly initialized

Definition at line 312 of file AliMUONVPainter.h.

Referenced by Copy(), Invalidate(), and IsValid().

Int_t AliMUONVPainter::fLineColor
private

our outline color

Definition at line 309 of file AliMUONVPainter.h.

Referenced by Copy(), GetLineColor(), and SetLineColor().

Int_t AliMUONVPainter::fLineWidth
private

our outline width

Definition at line 310 of file AliMUONVPainter.h.

Referenced by Copy(), GetLineWidth(), and SetLineWidth().

AliMUONVPainter* AliMUONVPainter::fMother
private

our mother

Definition at line 301 of file AliMUONVPainter.h.

Referenced by Copy(), Draw(), Mother(), and SetMother().

TString AliMUONVPainter::fName
private

our (short) name

Definition at line 298 of file AliMUONVPainter.h.

Referenced by Copy(), GetName(), Name(), and SetName().

TVirtualPad* AliMUONVPainter::fPad
private

the pad we're drawn in

Definition at line 307 of file AliMUONVPainter.h.

Referenced by Copy(), Draw(), and Pad().

TMap* AliMUONVPainter::fPainterGroups
protected
TString AliMUONVPainter::fPathName
private

our long name

Definition at line 299 of file AliMUONVPainter.h.

Referenced by Copy(), PathName(), and SetPathName().

AliMUONPainterGroup* AliMUONVPainter::fPlotterGroup
private

the plotter group

Definition at line 305 of file AliMUONVPainter.h.

Referenced by Copy(), PlotterGroup(), Print(), and SetData().

AliMUONPainterGroup* AliMUONVPainter::fResponderGroup
protected

the responder group

Definition at line 281 of file AliMUONVPainter.h.

Referenced by Copy(), Print(), ResponderGroup(), AliMUONDEPainter::SetResponder(), and SetResponder().

TString AliMUONVPainter::fType
private

our type (DE, Chamber, MANU, etc...)

Definition at line 300 of file AliMUONVPainter.h.

Referenced by Copy(), and Type().


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