Class TfitsDataNode

  • All Implemented Interfaces:
    DataNode

    public class TfitsDataNode
    extends DefaultDataNode
    DataNode class for representing FITS objects. This does not use nom.tam.fits; it understands BINTABLE and TABLE extensions, but not array-type HDUs.
    Since:
    25 Feb 2022
    Author:
    Mark Taylor
    • Constructor Detail

      • TfitsDataNode

        public TfitsDataNode​(uk.ac.starlink.util.DataSource datsrc)
                      throws NoSuchDataException
        Constructor.
        Parameters:
        datsrc - the source of the data
        Throws:
        NoSuchDataException
    • Method Detail

      • getName

        public java.lang.String getName()
        Description copied from interface: DataNode
        Gets the name of this object. This is an intrinsic property of the object.
        Specified by:
        getName in interface DataNode
        Overrides:
        getName in class DefaultDataNode
        Returns:
        the name of the object
      • getDescription

        public java.lang.String getDescription()
        Description copied from interface: DataNode
        Gets a concise description of this object. The form of the description will depend on the type of node, but it might detail the shape or type of data represented, or otherwise give some information additional to the name. It should not include the return value of the getName method, since they may be presented together. It should be on one line, and preferably no longer than around 70 characters. The null value may be returned if there is nothing to say.
        Specified by:
        getDescription in interface DataNode
        Overrides:
        getDescription in class DefaultDataNode
        Returns:
        a short string describing this object
      • allowsChildren

        public boolean allowsChildren()
        Description copied from class: DefaultDataNode
        The DefaultDataNode implementation of this method returns false.
        Specified by:
        allowsChildren in interface DataNode
        Overrides:
        allowsChildren in class DefaultDataNode
        Returns:
        true if the node is of a type which can have child nodes, false otherwise
      • getChildIterator

        public java.util.Iterator getChildIterator()
        Description copied from class: DefaultDataNode
        The DefaultDataNode implementation of this method throws UnsupportedOperationException (DefaultDataNode.allowsChildren() is false).
        Specified by:
        getChildIterator in interface DataNode
        Overrides:
        getChildIterator in class DefaultDataNode
        Returns:
        an Iterator over the children. Each object iterated over should be a DataNode. Behaviour is undefined if this method is called on an object for which allowsChildren returns false.
      • getNodeType

        public java.lang.String getNodeType()
        Description copied from interface: DataNode
        Returns a short sentence indicating what kind of node this is. The return value should be just a few words. As a rough guideline it should indicate what the implementing class is.
        Specified by:
        getNodeType in interface DataNode
        Overrides:
        getNodeType in class DefaultDataNode
        Returns:
        a short description of the type of this DataNode
      • isMagic

        public static boolean isMagic​(byte[] buffer)
        Indicates whether a buffer of bytes looks like the start of a FITS file.
        Parameters:
        buffer - the first few bytes of a potential stream
        Returns:
        true if buffer matches the FITS file magic number