Uploaded image for project: 'ROOT'
  1. ROOT
  2. ROOT-10405

RAxisView does not provide full access to axis properties

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Low
    • Resolution: Fixed
    • Affects Version/s: master
    • Fix Version/s: None
    • Component/s: Core Libraries
    • Labels:
      None
    • Environment:

      Description

      RAxisView is meant to be a way to query an RHist's axis properties. To do this, it must provide a way to access the properties of all ROOT 7 axis types, which are currently RAxisEquidistant, RAxisGrow, RAxisIrregular and RAxisLabels.

      At this point in time, however, an RAxisView may only produce "RAxisEquidistant*" and "RAxisIrregular*" pointers, and given that the RAxis family do not support dynamic_casting and do not use virtual methods, this is not enough:

      • With the current hiding-based design of RAxisXyz::CanGrow, RAxisEquidistant::CanGrow provides a wrong result when one is querying a growable axis. See also issue ROOT-10402 for a possible alternative to this design.
      • There is presently no way to query the labels of an RAxisLabels when one only has an RAxisView of it.

      In an ideal world, it would be possible to go back from RAxisView to an RAxisConfig struct, which would be one possible way to address this issue.

        Attachments

          Activity

            People

            Assignee:
            hgraslan Hadrien Benjamin Grasland
            Reporter:
            hgraslan Hadrien Benjamin Grasland
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: