Class AbstractBuffer

java.lang.Object
org.gvsig.tools.observer.impl.BaseWeakReferencingObservable
org.gvsig.raster.lib.buffer.impl.AbstractBuffer
All Implemented Interfaces:
Cloneable, Iterable<org.gvsig.raster.lib.buffer.api.Band>, org.gvsig.raster.lib.buffer.api.Buffer, org.gvsig.raster.lib.buffer.api.statistics.StatisticsCapable, org.gvsig.tools.dispose.Disposable, org.gvsig.tools.observer.ComplexObservable, org.gvsig.tools.observer.ComplexWeakReferencingObservable, org.gvsig.tools.observer.Observable, org.gvsig.tools.observer.Observer, org.gvsig.tools.observer.WeakReferencingObservable
Direct Known Subclasses:
ClippedBuffer, ConvertedTypeBuffer, DefaultBuffer

public abstract class AbstractBuffer extends org.gvsig.tools.observer.impl.BaseWeakReferencingObservable implements org.gvsig.raster.lib.buffer.api.Buffer
Author:
fdiaz
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected List<org.gvsig.raster.lib.buffer.api.Band>
     
    protected org.gvsig.raster.lib.buffer.api.BufferDimensions
     
    protected static final org.slf4j.Logger
     
    protected org.gvsig.crs.projection.lib.Projection
     
    protected org.gvsig.raster.lib.buffer.api.statistics.Statistics
     

    Fields inherited from interface org.gvsig.raster.lib.buffer.api.Buffer

    INTERPOLATION_BicubicSpline, INTERPOLATION_Bilinear, INTERPOLATION_BSpline, INTERPOLATION_InverseDistance, INTERPOLATION_NearestNeighbour, INTERPOLATION_Undefined
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addBand(org.gvsig.raster.lib.buffer.api.Band band)
     
    boolean
     
    org.gvsig.raster.lib.buffer.api.Buffer
    clip(org.gvsig.fmap.geom.primitive.Envelope envelope)
     
    org.gvsig.raster.lib.buffer.api.Buffer
    convert(org.gvsig.crs.projection.lib.CoordinateTransformation ct, org.gvsig.tools.task.SimpleTaskStatus status)
     
    org.gvsig.raster.lib.buffer.api.Buffer
    createInterpolated(int rows, int columns, int interpolationMode, org.gvsig.tools.task.SimpleTaskStatus status)
     
    final void
     
    void
    Internal implementation for the dispose() method.
    org.gvsig.raster.lib.buffer.api.Band
    getBand(int pos)
     
    org.gvsig.raster.lib.buffer.api.Band.BandByte
    getBandByte(int pos)
     
    int
     
    org.gvsig.raster.lib.buffer.api.Band.BandDouble
    getBandDouble(int pos)
     
    org.gvsig.raster.lib.buffer.api.Band.BandFloat
    getBandFloat(int pos)
     
    org.gvsig.raster.lib.buffer.api.Band.BandInt
    getBandInt(int pos)
     
    org.gvsig.raster.lib.buffer.api.NoData[]
     
    org.gvsig.raster.lib.buffer.api.Band[]
     
    org.gvsig.raster.lib.buffer.api.Band.BandShort
    getBandShort(int pos)
     
    org.gvsig.raster.lib.buffer.api.BandInfo[]
     
    int[]
     
    int
     
    org.gvsig.raster.lib.buffer.api.BufferDimensions
     
    org.gvsig.fmap.geom.primitive.Envelope
     
    double
     
    double
     
    org.gvsig.crs.projection.lib.Projection
     
    getRenderedImage(int... bands)
     
    int
     
    org.gvsig.raster.lib.buffer.api.statistics.Statistics
    getStatistics(org.gvsig.tools.task.SimpleTaskStatus status)
     
    boolean
    isInside(int cellX, int cellY)
     
    boolean
    isInside(org.gvsig.fmap.geom.primitive.Point point)
     
    Iterator<org.gvsig.raster.lib.buffer.api.Band>
     
    void
    removeBand(int pos)
     
    void
    setBand(int pos, org.gvsig.raster.lib.buffer.api.Band band)
     
    void
    switchBands(int[] positions)
     
    void
    switchBands(int pos1, int pos2)
     
    void
    update(org.gvsig.tools.observer.Observable observable, Object notification)
     

    Methods inherited from class org.gvsig.tools.observer.impl.BaseWeakReferencingObservable

    addObserver, addObserver, addObservers, beginComplexNotification, clearChanged, clone, countObservers, deleteObserver, deleteObserver, deleteObservers, disableNotifications, enableNotifications, endComplexNotification, hasChanged, inComplex, isEnabledNotifications, notify, notifyObservers, notifyObservers, setChanged

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface java.lang.Iterable

    forEach, spliterator

    Methods inherited from interface org.gvsig.tools.observer.Observable

    addObserver, deleteObserver, deleteObservers
  • Field Details

    • logger

      protected static final org.slf4j.Logger logger
    • bands

      protected List<org.gvsig.raster.lib.buffer.api.Band> bands
    • projection

      protected org.gvsig.crs.projection.lib.Projection projection
    • statistics

      protected org.gvsig.raster.lib.buffer.api.statistics.Statistics statistics
    • dimensions

      protected org.gvsig.raster.lib.buffer.api.BufferDimensions dimensions
  • Constructor Details

    • AbstractBuffer

      public AbstractBuffer()
  • Method Details

    • getStatistics

      public org.gvsig.raster.lib.buffer.api.statistics.Statistics getStatistics(org.gvsig.tools.task.SimpleTaskStatus status)
      Specified by:
      getStatistics in interface org.gvsig.raster.lib.buffer.api.statistics.StatisticsCapable
    • iterator

      public Iterator<org.gvsig.raster.lib.buffer.api.Band> iterator()
      Specified by:
      iterator in interface Iterable<org.gvsig.raster.lib.buffer.api.Band>
    • update

      public void update(org.gvsig.tools.observer.Observable observable, Object notification)
      Specified by:
      update in interface org.gvsig.tools.observer.Observer
    • getBandCount

      public int getBandCount()
      Specified by:
      getBandCount in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getBands

      public org.gvsig.raster.lib.buffer.api.Band[] getBands()
      Specified by:
      getBands in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getColumns

      public int getColumns()
      Specified by:
      getColumns in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getRows

      public int getRows()
      Specified by:
      getRows in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getEnvelope

      public org.gvsig.fmap.geom.primitive.Envelope getEnvelope()
      Specified by:
      getEnvelope in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getDimensions

      public org.gvsig.raster.lib.buffer.api.BufferDimensions getDimensions()
      Specified by:
      getDimensions in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getProjection

      public org.gvsig.crs.projection.lib.Projection getProjection()
      Specified by:
      getProjection in interface org.gvsig.raster.lib.buffer.api.Buffer
    • isInside

      public boolean isInside(int cellX, int cellY)
      Specified by:
      isInside in interface org.gvsig.raster.lib.buffer.api.Buffer
    • isInside

      public boolean isInside(org.gvsig.fmap.geom.primitive.Point point)
      Specified by:
      isInside in interface org.gvsig.raster.lib.buffer.api.Buffer
    • addBand

      public void addBand(org.gvsig.raster.lib.buffer.api.Band band)
      Specified by:
      addBand in interface org.gvsig.raster.lib.buffer.api.Buffer
    • setBand

      public void setBand(int pos, org.gvsig.raster.lib.buffer.api.Band band) throws org.gvsig.raster.lib.buffer.api.exceptions.BandException
      Specified by:
      setBand in interface org.gvsig.raster.lib.buffer.api.Buffer
      Throws:
      org.gvsig.raster.lib.buffer.api.exceptions.BandException
    • removeBand

      public void removeBand(int pos)
      Specified by:
      removeBand in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getBand

      public org.gvsig.raster.lib.buffer.api.Band getBand(int pos)
      Specified by:
      getBand in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getBandByte

      public org.gvsig.raster.lib.buffer.api.Band.BandByte getBandByte(int pos)
      Specified by:
      getBandByte in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getBandShort

      public org.gvsig.raster.lib.buffer.api.Band.BandShort getBandShort(int pos)
      Specified by:
      getBandShort in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getBandInt

      public org.gvsig.raster.lib.buffer.api.Band.BandInt getBandInt(int pos)
      Specified by:
      getBandInt in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getBandFloat

      public org.gvsig.raster.lib.buffer.api.Band.BandFloat getBandFloat(int pos)
      Specified by:
      getBandFloat in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getBandDouble

      public org.gvsig.raster.lib.buffer.api.Band.BandDouble getBandDouble(int pos)
      Specified by:
      getBandDouble in interface org.gvsig.raster.lib.buffer.api.Buffer
    • switchBands

      public void switchBands(int[] positions)
      Specified by:
      switchBands in interface org.gvsig.raster.lib.buffer.api.Buffer
    • switchBands

      public void switchBands(int pos1, int pos2)
      Specified by:
      switchBands in interface org.gvsig.raster.lib.buffer.api.Buffer
    • createInterpolated

      public org.gvsig.raster.lib.buffer.api.Buffer createInterpolated(int rows, int columns, int interpolationMode, org.gvsig.tools.task.SimpleTaskStatus status) throws org.gvsig.raster.lib.buffer.api.exceptions.BufferException
      Specified by:
      createInterpolated in interface org.gvsig.raster.lib.buffer.api.Buffer
      Throws:
      org.gvsig.raster.lib.buffer.api.exceptions.BufferException
    • convert

      public org.gvsig.raster.lib.buffer.api.Buffer convert(org.gvsig.crs.projection.lib.CoordinateTransformation ct, org.gvsig.tools.task.SimpleTaskStatus status) throws org.gvsig.raster.lib.buffer.api.exceptions.BufferException
      Specified by:
      convert in interface org.gvsig.raster.lib.buffer.api.Buffer
      Throws:
      org.gvsig.raster.lib.buffer.api.exceptions.BufferException
    • getBandTypes

      public int[] getBandTypes()
      Specified by:
      getBandTypes in interface org.gvsig.raster.lib.buffer.api.Buffer
    • areAllBandsOfTheSameType

      public boolean areAllBandsOfTheSameType()
      Specified by:
      areAllBandsOfTheSameType in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getBandNoData

      public org.gvsig.raster.lib.buffer.api.NoData[] getBandNoData()
      Specified by:
      getBandNoData in interface org.gvsig.raster.lib.buffer.api.Buffer
    • clip

      public org.gvsig.raster.lib.buffer.api.Buffer clip(org.gvsig.fmap.geom.primitive.Envelope envelope) throws org.gvsig.raster.lib.buffer.api.exceptions.BufferException
      Specified by:
      clip in interface org.gvsig.raster.lib.buffer.api.Buffer
      Throws:
      org.gvsig.raster.lib.buffer.api.exceptions.BufferException
    • getPixelSizeX

      public double getPixelSizeX()
      Specified by:
      getPixelSizeX in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getPixelSizeY

      public double getPixelSizeY()
      Specified by:
      getPixelSizeY in interface org.gvsig.raster.lib.buffer.api.Buffer
    • dispose

      public final void dispose()
      Specified by:
      dispose in interface org.gvsig.tools.dispose.Disposable
    • doDispose

      public void doDispose() throws org.gvsig.tools.exception.BaseException
      Internal implementation for the dispose() method.
      Throws:
      org.gvsig.tools.exception.BaseException
      See Also:
    • getBandsInfo

      public org.gvsig.raster.lib.buffer.api.BandInfo[] getBandsInfo()
      Specified by:
      getBandsInfo in interface org.gvsig.raster.lib.buffer.api.Buffer
    • getRenderedImage

      public RenderedImage getRenderedImage(int... bands)
      Specified by:
      getRenderedImage in interface org.gvsig.raster.lib.buffer.api.Buffer