# All Classes and Interfaces

Class
Description
AuxiliaryAxis
Define an auxiliary axis, i.e.
Cell
Very generic Cell class.
CellSink
Defines an object accepting cells.
CompassPoint
Utility class simply defining enums.
CompassPoint.Cardinal
Enum defining the compass cardinal points.
CompassPoint.MainWind
Enum defining the compass main wind points.
CompassPoint.Ordinal
Enum defining the compass ordinal points.
Cone
Defines a cone on the unit sphere.
CooXYZ
Defines a coordinates on the unit-sphere, internally both Euclidean and Spherical coordinates are stored.
EllipticalCone
This class defines an elliptical cone.
FastMath
Comes from the Apache FastMath class, and is thus under the Apache licence.
FillingCurve2D
Interface defining a two-dimensional space-filling curve.
FillingCurve2DType
FillingCurve3D
Interface defining a 3-dimensional space-filling curve.
FlatHashIterable
Equivalent of `Iterable` but for `FlatHashIterator`.
FlatHashIterator
Define an iterator over the primitive type 'long'.
FlatHashList
This class is used when the number of Hash returned y a function is not necessarily known in advance but has an upper bound.
HackersDelight
Utility class which takes its name from the book "Hacker's Delight" by Henry S.
HashComputer
Computing a hash value may implies objects creations.
HashComputerWithAux
Compute an HEALPix hash value additionaly taking a 3rd dimension (the auxiliary axis).
Healpix
Utility class containing HEALPix constants and operations which are independent of the depth.
HealpixCLI
Simple and Basic CLI (Command Line Interface) for quick testing.
HealpixNested
Implementation of the HEALPix tessellation using the NESTED scheme: the NESTED scheme consists in the concatenation of 12 z-order curves, one by HEALPix base cell.
The hash value in the NESTED scheme is build as follow: 0...0bbbb112233...
With
0...0: unused bits bbbb: the 4 bits coding the base cell, in [0, 11] 11: the 2 bits of the z-order curve coding depth 1 22: the 2 bits of the z-order curve coding depth 2 33: the 2 bits of the z-order curve coding depth 3 ... The constructor is `protected`.
HealpixNestedBMOC
A BMOC is a MOC storing for each element a binary value telling if the cell is PARTIALY or FULLY covered by a region.
Internally, a long is made of bits:
BBBBxx...xxS00...00F if depth < depthMax
BBBBxx...xxxx...xxSF if depth = dephtMax
With:
B: the 4 bits coding the base hash [0- 11] xx: the 2 bits of level x S: the sentinel bit coding the depth 00: if (depth != depthMax) those bits are unused bits F; the flag bit (0: partial, 1: full) WARNING: not tested yet at depth 29, may not work because of Java signed long (all 64 bits of a long are used: 62 + 1 sentinel + 1 flag)
HealpixNestedBMOC.CurrentValueAccessor
Provides informations on the current element of the BMOC while iterating over it.
HealpixNestedBMOC.Status
Tells if an element of the MOC is covered or not by a region and, if covered, it tells is the element is partially or fully covered.
HealpixNestedFast
A faster, thread-safe, but ugly (sorry: less readable) version of `HealpixNested`.
HealpixNestedFixedRadiusCone4XMatch
The idea of this class is to avoid making multiple time the same operations (like selecting the optimal starting depth) in case of fixed radius cross-match.
HealpixNestedFixedRadiusConeComputer
The idea of this interface is to avoid making multiple time the same operations (like selecting the optimal starting depth) in case of fixed radius cross-match.
HealpixNestedFixedRadiusConeComputer.ReturnedCells
HealpixNestedPolygonComputer
HealpixNestedUltraCompactMOC
The idea is to use an implicit datastructure, encoding the natural tree traversal on bits with: - 0 bit: cell not in the MOC, go to the next sibling cell or go up if all siblings already explored - 1 bit: cell contains information, go deeper - 0000 bits: parent cell is in the MOC, no need to go deeper (ony for cells of depth < depthMax) (DISCLAIMER: for a more recent and slightly more compact version, see the CDS HEALPix Rust)
HierarchyItem
The interface defines an item which is part of a Hierarchy.
Interpolator
Interface use for interpolation, i.e.
ListOfHash
Interface defining a simple flat list of hash values (we do not use a Java List to avoid autoboxing.
Math
Utility class to easily switch between java.lang.Math and another Math librarie like FastMath, and to define new functions like sinc (sinus cardinal = sin(x) / x).
MbtTest
NeighbourList
Class storing the hash values of the neighbour cells of a cell of given hash, together with the direction of each neighbour with respect to the central cell.
NeighbourSelector
In this interface methods, we do not used an `EnumMap` of `CompassPoint.MainWind` but a `NeighbourList` because: 1 - we want to avoid autoboxing (a map storing Long and not long).
NestedEllipticalConeComputerApprox
NestedEllipticalConeComputerApprox.Mode
Polygon
Class defining (and storing the vertices of) a polygon on the unit sphere.
Polygon.ContainsSouthPoleComputer
Defines the method used to know if the south pole is in the polygon or in its complement.
Projection
Define a projection of spherical coordinates (in the unit sphere) to the Euclidean plane, together with the reverse operation.
Range
Defines an Hash Range at the deeper depth.
TaylorSeries
Utility class continaing the Taylor expansion of a few trigonometric functions.
Tile2HPX
Tile2HPX.WCSFrame
ToCellItDecorator
Range iterator to cell iterator decorator.
ToRangeItDecorator
WARNING: this is so far dim = 2 specific!
Vect3D
Three dimensional vector.
VerticesAndPathComputer
Interface defining methods used to compute the position (on the unit sphere) of HEALPix cells center and vertices, and paths along HEALPix cells sides and edge.
ZOrderCurve2DImpls
Utility class containing several implementations of the z-order curve in two dimension.
ZOrderCurve3D
Implementation of the 3d z-order curve based on lookup tables.