org.sunflow.core.parser

## Class SCAbstractParser

- java.lang.Object
- - org.sunflow.core.parser.SCAbstractParser

All Implemented Interfaces:
  SceneParser

Direct Known Subclasses:
  SCAsciiParser, SCBinaryParser

    public abstract class SCAbstractParser
    extends java.lang.Object
    implements SceneParser

### Nested Class Summary

Nested Classes
`static class` `SCAbstractParser.Keyword`

### Constructor Summary

Constructors
Constructor and Description
`SCAbstractParser()`

### Method Summary

Methods
`protected abstract void` `closeParser()`
`protected abstract void` `openParser(java.lang.String filename)`
`boolean` `parse(java.lang.String filename, SunflowAPIInterface api)` Parse the specified file to create a scene description into the provided `SunflowAPI` object.
`protected abstract boolean` `parseBoolean()`
`protected abstract float` `parseFloat()`
`protected float[]` `parseFloatArray(int size)`
`protected abstract int` `parseInt()`
`protected abstract ParameterList.InterpolationType` `parseInterpolationType()`
`protected abstract SCAbstractParser.Keyword` `parseKeyword()`
`protected abstract Matrix4` `parseMatrix()`
`protected abstract java.lang.String` `parseString()`
`protected abstract java.lang.String` `parseVerbatimString()`

### Methods inherited from class java.lang.Object

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

### Constructor Detail

#### SCAbstractParser

    public SCAbstractParser()

### Method Detail

#### parse

    public boolean parse(java.lang.String filename,
                SunflowAPIInterface api)

Description copied from interface: `SceneParser`
Parse the specified file to create a scene description into the provided `SunflowAPI` object.

Specified by:
  `parse` in interface `SceneParser`
Parameters:
  `filename` - filename to parse
  `api` - scene to parse the file into
Returns:
  `true` upon sucess, or `false` if errors have occured.

#### parseFloatArray

    protected float[] parseFloatArray(int size)
                               throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseInterpolationType

    protected abstract ParameterList.InterpolationType parseInterpolationType()
                                                                       throws java.io.IOException

Throws:
  `java.io.IOException`

#### openParser

    protected abstract void openParser(java.lang.String filename)
                                throws java.io.IOException

Throws:
  `java.io.IOException`

#### closeParser

    protected abstract void closeParser()
                                 throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseKeyword

    protected abstract SCAbstractParser.Keyword parseKeyword()
                                                      throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseBoolean

    protected abstract boolean parseBoolean()
                                     throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseInt

    protected abstract int parseInt()
                             throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseFloat

    protected abstract float parseFloat()
                                 throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseString

    protected abstract java.lang.String parseString()
                                             throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseVerbatimString

    protected abstract java.lang.String parseVerbatimString()
                                                     throws java.io.IOException

Throws:
  `java.io.IOException`

#### parseMatrix

    protected abstract Matrix4 parseMatrix()
                                    throws java.io.IOException

Throws:
  `java.io.IOException`