Interface Superlayer<LayerType extends Layer>

Type Parameters:
LayerType - the specific type of Layer contained by the Superlayer
All Superinterfaces:
Showable
All Known Implementing Classes:
AbstractSuperlayer, AlertDCSuperlayer, AlertTOFSuperlayer, BSTSuperlayer, CNDSuperlayer, DCSuperlayer, ECSuperlayer, FMTSuperlayer, FTCALSuperlayer, FTOFSuperlayer, FTOFSuperlayerMesh

public interface Superlayer<LayerType extends Layer> extends Showable
One superlayer of a detector.

The primary purpose of a Superlayer object is to provide convenient methods for accessing to the Layer objects it contains.

Factory: Factory
Hierarchy: DetectorSectorSuperlayerLayerComponent

To learn how to create a Superlayer and find much more information see Factory.

Author:
jnhankins
  • Method Summary Link icon

    Modifier and Type
    Method
    Description
    Returns an unmodifiable list of all layers contained in this superlayer.
    Returns a list of lists of lines such that each of the inner lists contains the cross section lines for a single component.
    Returns the id of the detector that this superlayer is contained in.
    Returns a list of DetecorHits which store information about intersections with components in this superlayer.
    getLayer(int layerId)
    Returns the layer associated with the given layer id.
    Returns a list of DetecorHits which store information about intersections with layer surface boundaries in this superlayer.
    int
    Returns the number of layers contained in this sector.
    int
    Returns the id of the sector that this superlayer is contained in.
    int
    Returns the id of this superlayer.
    Returns a string that identifies the specific subtype of this superlayer.
    void
    Sets the transformation of all layers contained in this superlayer.
    void
    Invokes System.out.println(this).
  • Method Details Link icon

    • getDetectorId Link icon

      DetectorId getDetectorId()
      Returns the id of the detector that this superlayer is contained in.
      Returns:
      the id of this superlayer's detector
    • getSectorId Link icon

      int getSectorId()
      Returns the id of the sector that this superlayer is contained in.
      Returns:
      the id of this superlayer's sector
    • getSuperlayerId Link icon

      int getSuperlayerId()
      Returns the id of this superlayer.
      Returns:
      the id of this superlayer
    • getNumLayers Link icon

      int getNumLayers()
      Returns the number of layers contained in this sector.
      Returns:
      the number of layers
    • getLayer Link icon

      LayerType getLayer(int layerId)
      Returns the layer associated with the given layer id.
      Parameters:
      layerId - the layer id
      Returns:
      the layer with the specified id
    • getAllLayers Link icon

      List<LayerType> getAllLayers()
      Returns an unmodifiable list of all layers contained in this superlayer.
      Returns:
      an unmodifiable list of layers
    • getCrossSections Link icon

      List<List<Line3D>> getCrossSections(Transformation3D transformation)
      Returns a list of lists of lines such that each of the inner lists contains the cross section lines for a single component.

      This method takes a Transformation3D object as an argument, then constructs a Plane3D object in the xy-plane and applies the transformation to the plane. The intersection of the superlayer's component's shapes with the transformed plane is then calculated and stored in a list of lists of lines of lines. The inverse of the transformation is then applied to each line ensuring that each returned line is in the xy-plane

      Parameters:
      transformation - the transformation
      Returns:
      a list of list of lines representing the cross section
      See Also:
    • getLayerHits Link icon

      List<DetectorHit> getLayerHits(Path3D path)
      Returns a list of DetecorHits which store information about intersections with layer surface boundaries in this superlayer. The component ids stored in the detector hits will all be set to -1 to indicate that detector hit does not specify a specific component.
      Parameters:
      path - the path
      Returns:
      a list of detector hits
    • getHits Link icon

      List<DetectorHit> getHits(Path3D path)
      Returns a list of DetecorHits which store information about intersections with components in this superlayer.
      Parameters:
      path - the path
      Returns:
      a list of detector hits
    • setTransformation Link icon

      void setTransformation(Transformation3D transform)
      Sets the transformation of all layers contained in this superlayer. In most cases layers within a superlayer are "bolted" together and cannot move independently of one another, so this method is intended to provide a mechanism for moving groups of layers together.
      Parameters:
      transform - the new transform
      See Also:
    • getType Link icon

      String getType()
      Returns a string that identifies the specific subtype of this superlayer.
      Returns:
      a string naming this superlayer's type
    • show Link icon

      void show()
      Invokes System.out.println(this).
      Specified by:
      show in interface Showable