Interface Detector<SectorType extends Sector>

Type Parameters:
SectorType - the specific type of Sector contained by the Detector
All Superinterfaces:
Showable
All Known Implementing Classes:
AbstractDetector, AlertDCDetector, AlertTOFDetector, BSTDetector, BSTRing, CNDDetector, DCDetector, ECDetector, FMTDetector, FTCALDetector, FTOFDetector, FTOFDetectorMesh

public interface Detector<SectorType extends Sector> extends Showable
One complete CLAS12 detector, such as the entire Central Neutron Detector (CND) or the combined set of all Drift Chambers (DC).

The primary purpose of a Detector object is to provide convenient methods for accessing to the Sector objects it contains. If grouping components by sector is inconvenient for a particular type of detector, then the Detector implementation may have only one sector, in which case requisite sector-related information will be made available through other mechanisms.

Factory: Factory
Hierarchy: DetectorSectorSuperlayerLayerComponent

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

Author:
jnhankins
  • Method Summary Link icon

    Modifier and Type
    Method
    Description
    Returns an unmodifiable list of all of the sectors contained in this detector.
    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 this detector.
    Returns a list of DetecorHits which store information about intersections with components in this detector.
    Returns a list of DetecorHits which store information about intersections with layer surface boundaries in this detector.
    int
    Returns the number of sectors contained in this detector.
    getSector(int sectorId)
    Returns the sector associated with the given sector id.
    Returns a string that identifies the specific subtype of this detector.
    void
    Invokes System.out.println(this).
  • Method Details Link icon

    • getDetectorId Link icon

      DetectorId getDetectorId()
      Returns the id of this detector. This id is a DetectorID which is an enumeration type that uniquely identifies this detector. To find an integer id associated with this detector, call getDetectorId.getIdNumber().
      Returns:
      the id of this detector
    • getNumSectors Link icon

      int getNumSectors()
      Returns the number of sectors contained in this detector.
      Returns:
      the number of sectors
    • getSector Link icon

      SectorType getSector(int sectorId)
      Returns the sector associated with the given sector id.
      Parameters:
      sectorId - the sector id
      Returns:
      the sector with the specified id
    • getAllSectors Link icon

      List<SectorType> getAllSectors()
      Returns an unmodifiable list of all of the sectors contained in this detector.
      Returns:
      an unmodifiable list of all sectors
    • 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 new Plane3D object in the xy-plane and applies the transformation to the plane. The intersection of the detector'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 detector. 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 detector.
      Parameters:
      path - the path
      Returns:
      a list of detector hits
    • getType Link icon

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

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