Class VariableAdapter

    • Constructor Detail

      • VariableAdapter

        public VariableAdapter​(NetCDFImageReader reader,
                               Name coverageName,
                               VariableDS variable)
                        throws Exception
        Throws:
        Exception
    • Method Detail

      • getRank

        public int getRank()
      • updateMapping

        public void updateMapping​(SimpleFeatureType indexSchema,
                                  List<DimensionDescriptor> descriptors)
                           throws IOException
        Update the dimensionDescriptor attributes mapping by checking the actual attribute names from the schema
        Throws:
        IOException
      • getNumBands

        public int getNumBands()
      • getSampleModel

        public SampleModel getSampleModel()
      • getWidth

        public int getWidth()
        Returns:
      • getHeight

        public int getHeight()
        Returns:
      • getNDimensionIndex

        public int getNDimensionIndex​(int n)
        Utility method to retrieve the index of a specific dimension index, for constructing the range
        Parameters:
        n - the dimension to retrieve the index for (0=Z, 1=T, 2+=Additional)
        Returns:
        the index
      • getNIndex

        public int getNIndex​(int n,
                             int imageIndex)
        Utility method to retrieve the n-index of a Variable coverageDescriptor stored on NetCDFImageReader NetCDF Flat Reader HashMap indexMap.
        Parameters:
        n - int the dimension
        imageIndex - int the image index
        Returns:
        n-index int -1 if not present
      • splitIndex

        public int[] splitIndex​(int imageIndex)
        Utility method to split the index of a Variable coverageDescriptor stored on NetCDFImageReader NetCDF Flat Reader HashMap indexMap into dimensions.
        Parameters:
        imageIndex - int the index
        Returns:
        splitted index
      • mapIndex

        public Map<String,​Integer> mapIndex​(int[] splittedIndex)
      • getNumberOfSlices

        public int getNumberOfSlices()
        Returns:
        the numberOfSlices
      • getShape

        public int[] getShape()
        Returns:
        the shape
      • getFeatures

        public int getFeatures​(int startIndex,
                               int limit,
                               ListFeatureCollection collection)
        Return features for that variable adapter, starting from slices with index = "startIndex", and up to "limit" elements. This allows for paging. Put the created features inside the provided collection
        Parameters:
        startIndex - the first slice to be returned
        limit - the max number of features to be created
        collection - the feature collection where features need to be stored
      • clearCache

        public static void clearCache()
        Clear the parsed unit cache