Class SurfaceFileLoader

java.lang.Object
mgui.io.FileLoader
mgui.io.domestic.shapes.InterfaceShapeLoader
mgui.io.domestic.shapes.SurfaceFileLoader
All Implemented Interfaces:
InterfaceIO, IconObject
Direct Known Subclasses:
CaretSurfaceLoader, DuffSurfaceLoader, FreesurferSurfaceLoader, FSLSurfaceLoader, GiftiSurfaceLoader, Mesh3DLoader, MincSurfaceLoader, WavefrontSurfaceLoader

public abstract class SurfaceFileLoader
extends InterfaceShapeLoader
Abstract loader class for all loaders which load Mesh3DInt objects.
Since:
1.0
Version:
1.0
Author:
Andrew Reid
  • Constructor Details

    • SurfaceFileLoader

      public SurfaceFileLoader()
  • Method Details

    • load

      public boolean load​(InterfaceIOOptions options, ProgressUpdater progress_bar)
      Description copied from class: FileLoader
      Loads data from the set of files or URLs specified by options. Loading is controlled by the specifications of options. If loaded object is of type PersistentObject, this method should also set the file loader and reference URL for the object.

      This method should also set the URL reference and writer and loader attributes to match this one and its complement.

      Overrides:
      load in class InterfaceShapeLoader
      progress_bar - An optional progress updater. Can be null.
      Returns:
    • getSuccessMessage

      public java.lang.String getSuccessMessage()
      Description copied from class: FileLoader
      Returns a message to indicate that loading was successful.
      Specified by:
      getSuccessMessage in interface InterfaceIO
      Overrides:
      getSuccessMessage in class FileLoader
      Returns:
      Progress message
    • getFailureMessage

      public java.lang.String getFailureMessage()
      Description copied from class: FileLoader
      Returns a message to indicate that loading failed.
      Overrides:
      getFailureMessage in class FileLoader
      Returns:
      Progress message
    • getTitle

      public java.lang.String getTitle()
      Specified by:
      getTitle in interface InterfaceIO
      Overrides:
      getTitle in class FileLoader
    • loadObject

      public java.lang.Object loadObject​(ProgressUpdater progress_bar, InterfaceIOOptions options) throws java.io.IOException
      Description copied from class: FileLoader
      Loads data into an instance of the object corresponding to this loader. If loaded object is of type PersistentObject, this method should also set the file loader and reference URL for the object. TODO: make generic?
      Overrides:
      loadObject in class InterfaceShapeLoader
      Parameters:
      progress_bar - An optional progress updater. Can be null.
      options - Options defining the loading process
      Returns:
      Throws:
      java.io.IOException
    • loadShape

      public InterfaceShape loadShape​(ShapeInputOptions options, ProgressUpdater progress_bar) throws java.io.IOException
      Description copied from class: InterfaceShapeLoader
      Loads a shape with the given options.
      Specified by:
      loadShape in class InterfaceShapeLoader
      Returns:
      Throws:
      java.io.IOException
    • loadSurface

      public Mesh3DInt loadSurface() throws java.io.IOException
      Loads a single surface from the appropriate source. Returns a Mesh3DInt object if load was successful, or null otherwise. This method should also set the file loader and reference URL for the object.
      Returns:
      Throws:
      java.io.IOException
    • loadSurface

      public Mesh3DInt loadSurface​(ProgressUpdater progress_bar) throws java.io.IOException
      Loads a single surface from the appropriate source. Returns a Mesh3DInt object if load was successful, or null otherwise. This method should also set the file loader and reference URL for the object.
      Returns:
      Mesh3DInt mesh representing the surface being loaded
      Throws:
      java.io.IOException
    • loadSurface

      public abstract Mesh3DInt loadSurface​(ProgressUpdater progress_bar, InterfaceIOOptions options) throws java.io.IOException
      Loads a single surface from the appropriate source. Returns a Mesh3DInt object if load was successful, or null otherwise. This method should also set the file loader and reference URL for the object.
      Returns:
      Mesh3DInt mesh representing the surface being loaded
      Throws:
      java.io.IOException
    • loadSurfaces

      public java.util.ArrayList<Mesh3DInt> loadSurfaces() throws java.io.IOException
      Loads a set of surfaces from the appropriate source. Returns an ArrayList of Mesh3DInt objects if load was successful, or null otherwise. This method should also set the file loader and reference URL for the object.
      Returns:
      Mesh3DInt mesh representing the surface being loaded
      Throws:
      java.io.IOException
    • getObjectIcon

      public javax.swing.Icon getObjectIcon()
      Description copied from interface: IconObject
      Returns the Icon associated with this object.
      Specified by:
      getObjectIcon in interface IconObject
      Overrides:
      getObjectIcon in class FileLoader
      Returns:
    • getSupportedObjects

      public java.util.ArrayList<java.lang.Class<?>> getSupportedObjects()
      Description copied from interface: InterfaceIO
      Returns a list of classes for objects which are supported by this I/O interface
      Specified by:
      getSupportedObjects in interface InterfaceIO
      Overrides:
      getSupportedObjects in class FileLoader
      Returns: