27namespace Experimental {
50 if (
src.IsUnzoom(ndim)) {
83 if (ndim*2 >
values.size()) {
85 flags.resize(ndim*2,
false);
108 flags[ndim*2+1] =
true;
113 if (ndim*2+1 <
flags.size())
116 if (ndim*2+1 <
values.size())
123 return (ndim*2+1 <
flags.size()) && (ndim*2+1 <
values.size()) &&
131 for (
auto fl :
flags)
172 std::unique_ptr<RDrawableReply>
Process()
override
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void value
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t src
All supported axes attributes for: line, ticks, labels, title, min/max, log, reverse,...
Drawing line attributes for different objects.
Drawing fill attributes for different objects.
A margins attributes. Only relative and pixel coordinates are allowed.
Base class for requests which can be submitted from the clients.
const RDrawable::RDisplayContext & GetContext() const
Base class for drawable entities: objects that can be painted on a RPad.
bool IsUnzoom(unsigned ndim) const
Returns true if axis configured as unzoomed, can be specified from client.
bool HasMin(unsigned ndim) const
void Update(const RUserRanges &src)
void AssignMin(unsigned ndim, double value)
RUserRanges(double xmin, double xmax, double ymin, double ymax)
bool HasMax(unsigned ndim) const
std::vector< double > values
min/max values for all dimensions
void UpdateDim(unsigned ndim, const RUserRanges &src)
double GetMax(unsigned ndim) const
RUserRanges(double xmin, double xmax)
std::vector< bool > flags
flag if values available
double GetMin(unsigned ndim) const
void AssignMax(unsigned ndim, double value)
void Extend(unsigned ndim=3)
void ClearMinMax(unsigned ndim)
std::unique_ptr< RDrawableReply > Process() override
Holds an area where drawing on user coordinate-system can be performed.
RAttrValue< bool > drawAxes
! draw axes by frame
std::map< unsigned, RUserRanges > fClientRanges
! individual client ranges
RAttrAxis z
! drawing attributes for Z axis
RAttrValue< bool > swapY
! swap position of Y axis
RAttrValue< bool > gridY
! show grid for Y axis
RAttrAxis y
! drawing attributes for Y axis
RFrame(const RFrame &)=delete
RAttrFill fill
! frame fill attributes
void AssignZoomRange(unsigned ndim, RAttrAxis &axis, const RUserRanges &ranges)
Internal - assign client zoomed range to specified axis.
RAttrValue< bool > swapX
! swap position of X axis
void GetAxisRanges(unsigned ndim, const RAttrAxis &axis, RUserRanges &ranges) const
Internal - extract range for specified axis.
void GetClientRanges(unsigned connid, RUserRanges &ranges)
Return ranges configured for the client.
RAttrValue< bool > gridX
! show grid for X axis
RFrame & operator=(const RFrame &)=delete
RAttrBorder border
! frame border attributes
RAttrMargins margins
! frame margins relative to pad
RAttrAxis x2
! drawing attributes for X2 axis
RAttrValue< int > ticksY
! Y ticks drawing: 0 - off, 1 - normal, 2 - both sides, 3 - both sides with labels
RAttrAxis y2
! drawing attributes for Y2 axis
void SetClientRanges(unsigned connid, const RUserRanges &ranges, bool ismainconn)
Remember client range, can be used for drawing or stats box calculations.
RAttrAxis x
! drawing attributes for X axis
RAttrValue< int > ticksX
! X ticks drawing: 0 - off, 1 - normal, 2 - both sides, 3 - both sides with labels
void PopulateMenu(RMenuItems &) override
Provide context menu items.
Base class for graphic containers for RDrawable-s.
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...