All Downloads are FREE. Search and download functionalities are using the official Maven repository.

edu.uci.ics.jung.io.GraphReader Maven / Gradle / Ivy

The newest version!
/*
 * Copyright (c) 2008, The JUNG Authors
 *
 * All rights reserved.
 *
 * This software is open-source under the BSD license; see either
 * "license.txt" or
 * https://github.com/jrtom/jung/blob/master/LICENSE for a description.
 */

package edu.uci.ics.jung.io;

import edu.uci.ics.jung.graph.Hypergraph;

/**
 * Interface for a reader of graph objects
 *
 * @author Nathan Mittler - [email protected]
 * 
 * @param 
 *            the graph type
 * @param  the vertex type
 *            the vertex type
 * @param  the edge type
 *            the edge type
 */
public interface GraphReader, V, E> {

    /**
     * Reads a single graph object, if one is available.
     * 
     * @return the next graph object, or null if none exists.
     * @throws GraphIOException
     *             thrown if an error occurred.
     */
    G readGraph() throws GraphIOException;

    /**
     * Closes this resource and frees any resources.
     * 
     * @throws GraphIOException
     *             thrown if an error occurred.
     */
    void close() throws GraphIOException;
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy