Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::Experimental::RFrame Class Reference

Holds an area where drawing on user coordinate-system can be performed.

Authors
Axel Naumann axel@.nosp@m.cern.nosp@m..ch Sergey Linev s.lin.nosp@m.ev@g.nosp@m.si.de
Date
2017-09-26
Warning
This is part of the ROOT 7 prototype! It will change without notice. It might trigger earthquakes. Feedback is welcome!

Definition at line 38 of file RFrame.hxx.

Classes

class  RUserRanges
 
class  RZoomRequest
 

Public Member Functions

 RFrame (TRootIOCtor *)
 
void GetClientRanges (unsigned connid, RUserRanges &ranges)
 Return ranges configured for the client.
 
- Public Member Functions inherited from ROOT::Experimental::RDrawable
 RDrawable (const char *csstype)
 
virtual ~RDrawable ()
 
void ClearStyle ()
 
const std::string & GetCssClass () const
 
const char * GetCssType () const
 
const std::string & GetId () const
 
void SetCssClass (const std::string &cl)
 
void SetId (const std::string &id)
 
virtual void UseStyle (const std::shared_ptr< RStyle > &style)
 

Public Attributes

RAttrBorder border {this, "border"}
 ! frame border attributes
 
RAttrValue< booldrawAxes {this, "drawAxes", false}
 ! draw axes by frame
 
RAttrFill fill {this, "fill"}
 ! frame fill attributes
 
RAttrValue< boolgridX {this, "gridX", false}
 ! show grid for X axis
 
RAttrValue< boolgridY {this, "gridY", false}
 ! show grid for Y axis
 
RAttrMargins margins {this, "margins"}
 ! frame margins relative to pad
 
RAttrValue< boolswapX {this, "swapX", false}
 ! swap position of X axis
 
RAttrValue< boolswapY {this, "swapY", false}
 ! swap position of Y axis
 
RAttrValue< intticksX {this, "ticksX", 1}
 ! X ticks drawing: 0 - off, 1 - normal, 2 - both sides, 3 - both sides with labels
 
RAttrValue< intticksY {this, "ticksY", 1}
 ! Y ticks drawing: 0 - off, 1 - normal, 2 - both sides, 3 - both sides with labels
 
RAttrAxis x {this, "x"}
 ! drawing attributes for X axis
 
RAttrAxis x2 {this, "x2"}
 ! drawing attributes for X2 axis
 
RAttrAxis y {this, "y"}
 ! drawing attributes for Y axis
 
RAttrAxis y2 {this, "y2"}
 ! drawing attributes for Y2 axis
 
RAttrAxis z {this, "z"}
 ! drawing attributes for Z axis
 

Protected Member Functions

void AssignZoomRange (unsigned ndim, RAttrAxis &axis, const RUserRanges &ranges)
 Internal - assign client zoomed range to specified axis.
 
void GetAxisRanges (unsigned ndim, const RAttrAxis &axis, RUserRanges &ranges) const
 Internal - extract range for specified axis.
 
void PopulateMenu (RMenuItems &) override
 Provide context menu items.
 
- Protected Member Functions inherited from ROOT::Experimental::RDrawable
 RDrawable (const RDrawable &)=delete
 
virtual void CollectShared (Internal::RIOSharedVector_t &)
 
virtual std::unique_ptr< RDisplayItemDisplay (const RDisplayContext &)
 Creates display item for drawable By default item contains drawable data itself.
 
virtual void Execute (const std::string &)
 
RAttrMapGetAttrMap ()
 
const RAttrMapGetAttrMap () const
 
Version_t GetVersion () const
 
virtual bool IsFrameRequired () const
 
bool MatchSelector (const std::string &selector) const
 Preliminary method which checks if drawable matches with given selector Following selector are allowed: "type" or "#id" or ".class_name" Here type is drawable kind like 'rect' or 'pad' id is drawable identifier, specified with RDrawable::SetId() method class_name is drawable class name, specified with RDrawable::SetCssClass() method.
 
virtual void OnDisplayItemDestroyed (RDisplayItem *) const
 
RDrawableoperator= (const RDrawable &)=delete
 
void SetCssType (const char *csstype)
 
virtual void SetDrawableVersion (Version_t vers)
 

Private Member Functions

 RFrame ()
 
 RFrame (const RFrame &)=delete
 
RFrameoperator= (const RFrame &)=delete
 
void SetClientRanges (unsigned connid, const RUserRanges &ranges, bool ismainconn)
 Remember client range, can be used for drawing or stats box calculations.
 

Private Attributes

std::map< unsigned, RUserRangesfClientRanges
 ! individual client ranges
 

Friends

class RPadBase
 

Additional Inherited Members

- Public Types inherited from ROOT::Experimental::RDrawable
using Version_t = uint64_t
 

#include <ROOT/RFrame.hxx>

Inheritance diagram for ROOT::Experimental::RFrame:
[legend]

Constructor & Destructor Documentation

◆ RFrame() [1/3]

ROOT::Experimental::RFrame::RFrame ( const RFrame )
privatedelete

◆ RFrame() [2/3]

ROOT::Experimental::RFrame::RFrame ( )
inlineprivate

Definition at line 153 of file RFrame.hxx.

◆ RFrame() [3/3]

ROOT::Experimental::RFrame::RFrame ( TRootIOCtor )
inline

Definition at line 196 of file RFrame.hxx.

Member Function Documentation

◆ AssignZoomRange()

void RFrame::AssignZoomRange ( unsigned  ndim,
RAttrAxis axis,
const RUserRanges ranges 
)
protected

Internal - assign client zoomed range to specified axis.

Definition at line 36 of file RFrame.cxx.

◆ GetAxisRanges()

void RFrame::GetAxisRanges ( unsigned  ndim,
const RAttrAxis axis,
RUserRanges ranges 
) const
protected

Internal - extract range for specified axis.

Definition at line 24 of file RFrame.cxx.

◆ GetClientRanges()

void RFrame::GetClientRanges ( unsigned  connid,
RUserRanges ranges 
)

Return ranges configured for the client.

Definition at line 94 of file RFrame.cxx.

◆ operator=()

RFrame & ROOT::Experimental::RFrame::operator= ( const RFrame )
privatedelete

◆ PopulateMenu()

void RFrame::PopulateMenu ( RMenuItems )
overrideprotectedvirtual

Provide context menu items.

Reimplemented from ROOT::Experimental::RDrawable.

Definition at line 52 of file RFrame.cxx.

◆ SetClientRanges()

void RFrame::SetClientRanges ( unsigned  connid,
const RUserRanges ranges,
bool  ismainconn 
)
private

Remember client range, can be used for drawing or stats box calculations.

Definition at line 72 of file RFrame.cxx.

Friends And Related Symbol Documentation

◆ RPadBase

friend class RPadBase
friend

Definition at line 40 of file RFrame.hxx.

Member Data Documentation

◆ border

RAttrBorder ROOT::Experimental::RFrame::border {this, "border"}

! frame border attributes

Definition at line 181 of file RFrame.hxx.

◆ drawAxes

RAttrValue<bool> ROOT::Experimental::RFrame::drawAxes {this, "drawAxes", false}

! draw axes by frame

Definition at line 188 of file RFrame.hxx.

◆ fClientRanges

std::map<unsigned, RUserRanges> ROOT::Experimental::RFrame::fClientRanges
private

! individual client ranges

Definition at line 147 of file RFrame.hxx.

◆ fill

RAttrFill ROOT::Experimental::RFrame::fill {this, "fill"}

! frame fill attributes

Definition at line 182 of file RFrame.hxx.

◆ gridX

RAttrValue<bool> ROOT::Experimental::RFrame::gridX {this, "gridX", false}

! show grid for X axis

Definition at line 189 of file RFrame.hxx.

◆ gridY

RAttrValue<bool> ROOT::Experimental::RFrame::gridY {this, "gridY", false}

! show grid for Y axis

Definition at line 190 of file RFrame.hxx.

◆ margins

RAttrMargins ROOT::Experimental::RFrame::margins {this, "margins"}

! frame margins relative to pad

Definition at line 180 of file RFrame.hxx.

◆ swapX

RAttrValue<bool> ROOT::Experimental::RFrame::swapX {this, "swapX", false}

! swap position of X axis

Definition at line 191 of file RFrame.hxx.

◆ swapY

RAttrValue<bool> ROOT::Experimental::RFrame::swapY {this, "swapY", false}

! swap position of Y axis

Definition at line 192 of file RFrame.hxx.

◆ ticksX

RAttrValue<int> ROOT::Experimental::RFrame::ticksX {this, "ticksX", 1}

! X ticks drawing: 0 - off, 1 - normal, 2 - both sides, 3 - both sides with labels

Definition at line 193 of file RFrame.hxx.

◆ ticksY

RAttrValue<int> ROOT::Experimental::RFrame::ticksY {this, "ticksY", 1}

! Y ticks drawing: 0 - off, 1 - normal, 2 - both sides, 3 - both sides with labels

Definition at line 194 of file RFrame.hxx.

◆ x

RAttrAxis ROOT::Experimental::RFrame::x {this, "x"}

! drawing attributes for X axis

Definition at line 183 of file RFrame.hxx.

◆ x2

RAttrAxis ROOT::Experimental::RFrame::x2 {this, "x2"}

! drawing attributes for X2 axis

Definition at line 186 of file RFrame.hxx.

◆ y

RAttrAxis ROOT::Experimental::RFrame::y {this, "y"}

! drawing attributes for Y axis

Definition at line 184 of file RFrame.hxx.

◆ y2

RAttrAxis ROOT::Experimental::RFrame::y2 {this, "y2"}

! drawing attributes for Y2 axis

Definition at line 187 of file RFrame.hxx.

◆ z

RAttrAxis ROOT::Experimental::RFrame::z {this, "z"}

! drawing attributes for Z axis

Definition at line 185 of file RFrame.hxx.

Libraries for ROOT::Experimental::RFrame:

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