Package heronarts.lx

Interface LXPath

All Known Subinterfaces:
LXCompoundModulation.Target, LXNormalizedParameter, LXParameter
All Known Implementing Classes:
AbstractDmxModulator, Accelerator, Accumulator, AddBlend, ADM, ADM.Obj, AggregateParameter, AHDSREnvelope, AlternatingPattern, ArcFixture, ArtNetDatagram, ArtSyncDatagram, BandGate, BlurEffect, BooleanLogic, BooleanParameter, BoundedFunctionalParameter, BoundedParameter, BurnBlend, ChasePattern, ChevronPattern, Click, ColorizeEffect, ColorMaskEffect, ColorParameter, ComparatorModulator, CompoundDiscreteParameter, CompoundEnumParameter, CompoundObjectParameter, CompoundParameter, DampedParameter, Damper, DarkestBlend, DDPDatagram, DDPOutputGroup, DecibelMeter, DifferenceBlend, DiscreteColorParameter, DiscreteParameter, DissolveBlend, DmxColorModulator, DmxModulator, DmxPattern, DodgeBlend, DynamicsEffect, EnumParameter, Envelop, Envelop.Decode, Envelop.MultiMeter, Envelop.Source, FadecandySocket, FixedParameter, FocusedPatternControls, FunctionalModulator, FunctionalParameter, GateEffect, GeometryTestPattern, GradientPattern, GraphicEqualizerPattern, GraphicMeter, GridFixture, HighlightBlend, HistoryBuffer, HueSaturationEffect, ImageMaskEffect, ImagePattern, ImagePattern.Image, Interval, InvertEffect, JsonFixture, KinetDatagram, LifePattern, LifePattern, LightestBlend, LinearEnvelope, LinkedColorParameter, LXAbstractChannel, LXAbstractChannelClip, LXAudioComponent, LXAudioEngine, LXAudioEngine.Meter, LXAudioInput, LXAudioOutput, LXBasicFixture, LXBlend, LXBlend.FunctionalBlend, LXBufferOutput, LXBus, LXChannel, LXChannelClip, LXClip, LXClipEngine, LXClipEngine.FocusedClipParameter, LXClipSnapshot, LXComponent, LXCompoundModulation, LXDatagram, LXDeviceComponent, LXDmxEngine, LXDynamicColor, LXEffect, LXEffect.Placeholder, LXEngine, LXEngine.Output, LXFixture, LXGlobalSnapshot, LXGroup, LXGroupClip, LXLayer, LXLayeredComponent, LXListenableNormalizedParameter, LXListenableParameter, LXMasterBus, LXMasterClip, LXMidiEngine, LXMixerEngine, LXModelComponent, LXModelEffect, LXModelLayer, LXModelPattern, LXModulationEngine, LXModulator, LXModulator.Placeholder, LXModulatorComponent, LXOscEngine, LXOutput, LXOutputGroup, LXPalette, LXPalette.IndexSelector, LXParameterModulation, LXPattern, LXPattern.Placeholder, LXPeriodicModulator, LXProtocolFixture, LXRangeModulator, LXRunnableComponent, LXScheduledProject, LXScheduler, LXSnapshot, LXSnapshotEngine, LXSocket, LXStructure, LXStructureOutput, LXSwatch, LXTriggerModulation, LXVariablePeriodModulator, LXViewDefinition, LXViewEngine, LXViewEngine.Selector, LXViewEngine.SelectorNormal, LXViewEngine.SelectorPriority, LXVirtualParameter, MacroKnobs, MacroSwitches, MacroTriggers, MidiFilterParameter, MidiNoteTrigger, MultiModeEnvelope, MultiplyBlend, MultiStageEnvelope, MultiTrig, MutableParameter, NoiseModulator, NoisePattern, NormalBlend, NormalizedParameter, ObjectParameter, OPCDatagram, OPCSocket, OperatorModulator, OrboxPattern, PlanesPattern, PlanesPattern.Plane, PointFixture, PointListFixture, QuadraticEnvelope, Randomizer, Reaper, SawLFO, Scaler, ScreenBlend, ScriptEffect, ScriptPattern, SinLFO, SlideshowPattern, SlideshowPattern.Image, Smoother, SolidPattern, SoundObject, SoundObject.Selector, SoundObjectEffect, SoundObjectPattern, SoundStage, SparkleEffect, SparklePattern, SpiralFixture, SpotlightBlend, Spring, SquareLFO, StepSequencer, StreamingACNDatagram, StringParameter, StripFixture, StrobeEffect, SubtractBlend, Tempo, TestPattern, TimeParameter, Timer, TriangleLFO, TriggerParameter, VariableLFO

public interface LXPath
Interface for any object in the LX system that can be represented by an abstract path. Typcially this is an LXComponent or an LXParameter
  • Field Details

  • Method Details

    • getPath

      String getPath()
      Returns the immediate path of this component, relative to its parent
      Returns:
      Path of this object relative to its parent component
    • getLabel

      String getLabel()
      Returns the user-facing label of this component
      Returns:
      User-facing label for this component
    • getDescription

      String getDescription()
      Returns a contextual help message explaining the purpose of this parameter or component to the user, or null if none is available.
      Returns:
      Contextual help string explaining purpose of the element
    • getParent

      LXComponent getParent()
      Returns the component that this object belongs to
      Returns:
      Parent component of this path object, or null if it is unowned
    • isDescendant

      default boolean isDescendant(LXComponent root)
      Determines whether this path object is a descendant of a root component
      Parameters:
      root - Root component
      Returns:
      Whether this object descends from the root
    • getCanonicalPath

      default String getCanonicalPath(LXComponent root)
      Gets the canonical path of a Path object up to a given root
      Parameters:
      root - Root component
      Returns:
      Canonical path
    • getCanonicalPath

      default String getCanonicalPath()
      Gets the canonical path of a Path object all the way up its chain
      Returns:
      Canonical path
    • getCanonicalLabel

      default String getCanonicalLabel()
      Returns the canonical user-facing label of this object. The label is different from the path, it's a human-readable name that takes into account how the user may have re-labeled components.
      Returns:
      Canonical label for this component
    • getCanonicalLabel

      default String getCanonicalLabel(LXComponent root)
      Returns the canonical user-facing label of this component. The label is different from the path, it's a human-readable name that takes into account how the user may have re-labeled components.
      Parameters:
      root - Root object to get label relative to
      Returns:
      Canonical label for this component
    • get

      static LXPath get(LX lx, String path)
      Globally retrieves an LX object with a path in the hierarchy
      Parameters:
      lx - LX instance
      path - Canonical path of object
      Returns:
      Object at the given canonical path
    • getComponent

      static LXComponent getComponent(LX lx, String path)
      Globally retrieves an LX component with a path in the hierarchy
      Parameters:
      lx - LX instance
      path - Canonical path of object
      Returns:
      Object at the given canonical path, if it is an LXComponent
    • getParameter

      static LXParameter getParameter(LX lx, String path)
      Globally retrieves an LX parameter with a path in the hierarchy
      Parameters:
      lx - LX instance
      path - Canonical path of object
      Returns:
      Object at the given canonical path, if it is an LXParameter
    • get

      static LXPath get(LXComponent root, String path)
      Globally retrieves an LX parameter at a certain scope in the LX hierarchy
      Parameters:
      root - LX root scope
      path - Canonical path of object
      Returns:
      Object at the given canonical path
    • getComponent

      static LXComponent getComponent(LXComponent root, String path)
      Globally retrieves an LX component at a certain scope in the LX hierarchy
      Parameters:
      root - LX root scope
      path - Canonical path of object
      Returns:
      Object at the given canonical path, if an LXComponent
    • getParameter

      static LXParameter getParameter(LXComponent root, String path)
      Globally retrieves an LX parameter at a certain scope in the LX hierarchy
      Parameters:
      root - LX root scope
      path - Canonical path of object
      Returns:
      Object at the given canonical path, if an LXParameter