# Hierarchy For All Packages

Package Hierarchies:

- com.io7m.smfj.blender,
- com.io7m.smfj.cmdline,
- com.io7m.smfj.core,
- com.io7m.smfj.format.binary2,
- com.io7m.smfj.format.binary2.internal,
- com.io7m.smfj.format.binary2.internal.serial,
- com.io7m.smfj.format.binary2.internal.serial.be,
- com.io7m.smfj.format.binary2.internal.serial.le,
- com.io7m.smfj.format.obj,
- com.io7m.smfj.format.support,
- com.io7m.smfj.format.text,
- com.io7m.smfj.format.text.implementation,
- com.io7m.smfj.format.text.v1,
- com.io7m.smfj.format.xml,
- com.io7m.smfj.format.xml.internal,
- com.io7m.smfj.frontend,
- com.io7m.smfj.parser.api,
- com.io7m.smfj.probe.api,
- com.io7m.smfj.processing.api,
- com.io7m.smfj.processing.main,
- com.io7m.smfj.serializer.api,
- com.io7m.smfj.validation.api,
- com.io7m.smfj.validation.main

## Class Hierarchy

- java.lang.Object
  - com.io7m.smfj.cmdline.CommandRoot
    - com.io7m.smfj.cmdline.CommandFilter
    - com.io7m.smfj.cmdline.CommandListFilters
    - com.io7m.smfj.cmdline.CommandProbe (implements com.io7m.smfj.parser.api.SMFParserEventsHeaderType, com.io7m.smfj.parser.api.SMFParserEventsType)
  - com.io7m.smfj.format.text.implementation.Flags
  - com.io7m.smfj.cmdline.Main (implements java.lang.Runnable)
  - com.io7m.smfj.core.SMFAttribute (implements com.io7m.smfj.core.SMFAttributeType)
  - com.io7m.smfj.core.SMFAttribute.Builder
  - com.io7m.smfj.processing.api.SMFAttributeArrayFloating1 (implements com.io7m.smfj.processing.api.SMFAttributeArrayFloating1Type)
  - com.io7m.smfj.processing.api.SMFAttributeArrayFloating1.Builder
  - com.io7m.smfj.processing.api.SMFAttributeArrayFloating2 (implements com.io7m.smfj.processing.api.SMFAttributeArrayFloating2Type)
  - com.io7m.smfj.processing.api.SMFAttributeArrayFloating2.Builder
  - com.io7m.smfj.processing.api.SMFAttributeArrayFloating3 (implements com.io7m.smfj.processing.api.SMFAttributeArrayFloating3Type)
  - com.io7m.smfj.processing.api.SMFAttributeArrayFloating3.Builder
  - com.io7m.smfj.processing.api.SMFAttributeArrayFloating4 (implements com.io7m.smfj.processing.api.SMFAttributeArrayFloating4Type)
  - com.io7m.smfj.processing.api.SMFAttributeArrayFloating4.Builder
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned1 (implements com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned1Type)
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned1.Builder
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned2 (implements com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned2Type)
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned2.Builder
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned3 (implements com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned3Type)
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned3.Builder
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned4 (implements com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned4Type)
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned4.Builder
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned1 (implements com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned1Type)
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned1.Builder
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned2 (implements com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned2Type)
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned2.Builder
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned3 (implements com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned3Type)
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned3.Builder
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned4 (implements com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned4Type)
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned4.Builder
  - com.io7m.smfj.core.SMFAttributeName (implements com.io7m.smfj.core.SMFAttributeNameType)
  - com.io7m.smfj.core.SMFAttributeName.Builder
  - com.io7m.smfj.core.SMFAttributeNames
  - com.io7m.smfj.format.binary2.internal.SMFB2Alignment
  - com.io7m.smfj.format.binary2.internal.SMFB2ParseErrors
  - com.io7m.smfj.format.binary2.internal.SMFB2ParserRandomAccess (implements com.io7m.smfj.parser.api.SMFParserRandomAccessType)
  - com.io7m.smfj.format.binary2.internal.SMFB2ParserSequential (implements com.io7m.smfj.parser.api.SMFParserSequentialType)
  - com.io7m.smfj.format.binary2.internal.SMFB2ParsingAttribute (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureParserType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2ParsingAttributeList (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureParserType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2ParsingContexts
  - com.io7m.smfj.format.binary2.internal.SMFB2ParsingCoordinateSystem (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureParserType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2ParsingFile (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureParserType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2ParsingFileHeader (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureParserType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2ParsingSchemaIdentifier (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureParserType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2ParsingSectionEnd (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureParserType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2ParsingSectionHeader (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureParserType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2ParsingSectionMetadata (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureParserType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2ParsingSectionSMF (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureParserType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2ParsingSectionTriangles (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureParserType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2ParsingSectionVertexDataNI (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureParserType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2Section (implements com.io7m.smfj.format.binary2.internal.SMFB2SectionType)
  - com.io7m.smfj.format.binary2.internal.SMFB2Section.Builder
  - com.io7m.smfj.format.binary2.internal.SMFB2Serializer (implements com.io7m.smfj.serializer.api.SMFSerializerType)
  - com.io7m.smfj.format.binary2.internal.serial.SMFB2SerializerDataAttributeNonInterleavedBE
  - com.io7m.smfj.format.binary2.internal.serial.SMFB2SerializerDataAttributeNonInterleavedLE
  - com.io7m.smfj.format.binary2.internal.serial.SMFB2SerializerDataAttributesNonInterleaved (implements com.io7m.smfj.serializer.api.SMFSerializerDataAttributesNonInterleavedType)
  - com.io7m.smfj.format.binary2.internal.SMFB2WritingBoundedString (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureWriterType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2WritingCoordinateSystem (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureWriterType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2WritingFileHeader (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureWriterType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2WritingSchemaIdentifier (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureWriterType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2WritingSectionEnd (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureWriterType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2WritingSectionHeader (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureWriterType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2WritingSectionMetadata (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureWriterType<T>)
  - com.io7m.smfj.format.binary2.internal.SMFB2WritingSectionSMF (implements com.io7m.smfj.format.binary2.internal.SMFB2StructureWriterType<T>)
  - com.io7m.smfj.format.text.SMFBase64Lines
  - com.io7m.smfj.blender.SMFBlender
  - com.io7m.smfj.core.SMFCoordinateSystem (implements com.io7m.smfj.core.SMFCoordinateSystemType)
  - com.io7m.smfj.core.SMFCoordinateSystem.Builder
  - com.io7m.smfj.frontend.SMFFCopier (implements com.io7m.smfj.frontend.SMFFCopierType, com.io7m.smfj.parser.api.SMFParserEventsBodyType, com.io7m.smfj.parser.api.SMFParserEventsDataAttributesNonInterleavedType, com.io7m.smfj.parser.api.SMFParserEventsDataAttributeValuesType, com.io7m.smfj.parser.api.SMFParserEventsDataMetaType, com.io7m.smfj.parser.api.SMFParserEventsDataTrianglesType, com.io7m.smfj.parser.api.SMFParserEventsHeaderType)
  - com.io7m.smfj.processing.api.SMFFilterCommandChecks
  - com.io7m.smfj.processing.api.SMFFilterCommandContext (implements com.io7m.smfj.processing.api.SMFFilterCommandContextType)
  - com.io7m.smfj.processing.api.SMFFilterCommandContext.Builder
  - com.io7m.smfj.frontend.SMFFilterCommandFile
  - com.io7m.smfj.processing.api.SMFFilterCommandModule (implements com.io7m.smfj.processing.api.SMFFilterCommandModuleType)
  - com.io7m.smfj.processing.api.SMFFilterCommandModule.Builder
  - com.io7m.smfj.processing.api.SMFFilterCommandModuleProviderAbstract (implements com.io7m.smfj.processing.api.SMFFilterCommandModuleProviderType)
    - com.io7m.smfj.processing.main.SMFProcessingMainCommands
  - com.io7m.smfj.processing.api.SMFFilterCommandModuleResolver (implements com.io7m.smfj.processing.api.SMFFilterCommandModuleResolverType)
  - com.io7m.smfj.processing.api.SMFFilterCommandParsing
  - com.io7m.smfj.format.binary2.SMFFormatBinary2 (implements com.io7m.smfj.parser.api.SMFParserProviderType, com.io7m.smfj.serializer.api.SMFSerializerProviderType, com.io7m.smfj.probe.api.SMFVersionProbeProviderType)
  - com.io7m.smfj.core.SMFFormatDescription (implements com.io7m.smfj.core.SMFFormatDescriptionType)
  - com.io7m.smfj.core.SMFFormatDescription.Builder
  - com.io7m.smfj.format.obj.SMFFormatOBJ (implements com.io7m.smfj.parser.api.SMFParserProviderType)
  - com.io7m.smfj.format.text.SMFFormatText (implements com.io7m.smfj.parser.api.SMFParserProviderType, com.io7m.smfj.serializer.api.SMFSerializerProviderType, com.io7m.smfj.probe.api.SMFVersionProbeProviderType)
  - com.io7m.smfj.core.SMFFormatVersion (implements com.io7m.smfj.core.SMFFormatVersionType)
  - com.io7m.smfj.core.SMFFormatVersion.Builder
  - com.io7m.smfj.core.SMFFormatVersionMutable (implements com.io7m.smfj.core.SMFFormatVersionType)
  - com.io7m.smfj.format.xml.SMFFormatXML (implements com.io7m.smfj.parser.api.SMFParserProviderType, com.io7m.smfj.serializer.api.SMFSerializerProviderType, com.io7m.smfj.probe.api.SMFVersionProbeProviderType)
  - com.io7m.smfj.core.SMFHeader (implements com.io7m.smfj.core.SMFHeaderType)
  - com.io7m.smfj.core.SMFHeader.Builder
  - com.io7m.smfj.cmdline.SMFLogLevelConverter (implements com.beust.jcommander.IStringConverter<T>)
  - com.io7m.smfj.processing.api.SMFMemoryMesh (implements com.io7m.smfj.processing.api.SMFMemoryMeshType)
  - com.io7m.smfj.processing.api.SMFMemoryMesh.Builder
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterApplicationInfoAdd (implements com.io7m.smfj.processing.api.SMFMemoryMeshFilterType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterAttributeRemove (implements com.io7m.smfj.processing.api.SMFMemoryMeshFilterType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterAttributeRename (implements com.io7m.smfj.processing.api.SMFMemoryMeshFilterType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterAttributeResample (implements com.io7m.smfj.processing.api.SMFMemoryMeshFilterType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterAttributeTrim (implements com.io7m.smfj.processing.api.SMFMemoryMeshFilterType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterCheck (implements com.io7m.smfj.processing.api.SMFMemoryMeshFilterType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterCheckConfiguration (implements com.io7m.smfj.processing.main.SMFMemoryMeshFilterCheckConfigurationType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterCheckConfiguration.Builder
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterEndiannessSet (implements com.io7m.smfj.processing.api.SMFMemoryMeshFilterType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterMetadataAdd (implements com.io7m.smfj.processing.api.SMFMemoryMeshFilterType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterMetadataRemove (implements com.io7m.smfj.processing.api.SMFMemoryMeshFilterType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterMetadataRemove.Version
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterSchemaCheck (implements com.io7m.smfj.processing.api.SMFMemoryMeshFilterType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterSchemaSet (implements com.io7m.smfj.processing.api.SMFMemoryMeshFilterType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterSchemaValidate (implements com.io7m.smfj.processing.api.SMFMemoryMeshFilterType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterTrianglesOptimize (implements com.io7m.smfj.processing.api.SMFMemoryMeshFilterType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterTrianglesOptimizeConfiguration (implements com.io7m.smfj.processing.main.SMFMemoryMeshFilterTrianglesOptimizeConfigurationType)
  - com.io7m.smfj.processing.main.SMFMemoryMeshFilterTrianglesOptimizeConfiguration.Builder
  - com.io7m.smfj.processing.api.SMFMemoryMeshParser
  - com.io7m.smfj.processing.api.SMFMemoryMeshProducer (implements com.io7m.smfj.processing.api.SMFMemoryMeshProducerType, com.io7m.smfj.parser.api.SMFParserEventsBodyType, com.io7m.smfj.parser.api.SMFParserEventsDataAttributesNonInterleavedType, com.io7m.smfj.parser.api.SMFParserEventsDataAttributeValuesType, com.io7m.smfj.parser.api.SMFParserEventsDataMetaType, com.io7m.smfj.parser.api.SMFParserEventsDataTrianglesType, com.io7m.smfj.parser.api.SMFParserEventsHeaderType)
  - com.io7m.smfj.processing.api.SMFMemoryMeshSerializer
  - com.io7m.smfj.processing.api.SMFMetadata (implements com.io7m.smfj.processing.api.SMFMetadataType)
  - com.io7m.smfj.processing.api.SMFMetadata.Builder
  - com.io7m.smfj.core.SMFMetadataValue (implements com.io7m.smfj.core.SMFMetadataValueType)
  - com.io7m.smfj.core.SMFMetadataValue.Builder
  - com.io7m.smfj.format.obj.SMFOBJImporter (implements com.io7m.smfj.format.obj.SMFOBJImporterType)
  - com.io7m.smfj.parser.api.SMFParseError (implements com.io7m.smfj.parser.api.SMFParseErrorType)
  - com.io7m.smfj.parser.api.SMFParseError.Builder
  - com.io7m.smfj.parser.api.SMFParseErrors
  - com.io7m.smfj.parser.api.SMFParserEventsBodyIgnoringReceiver (implements com.io7m.smfj.parser.api.SMFParserEventsBodyType)
  - com.io7m.smfj.parser.api.SMFParserEventsDataAttributesNonInterleavedIgnoringReceiver (implements com.io7m.smfj.parser.api.SMFParserEventsDataAttributesNonInterleavedType)
  - com.io7m.smfj.parser.api.SMFParserEventsDataAttributeValuesIgnoringReceiver (implements com.io7m.smfj.parser.api.SMFParserEventsDataAttributeValuesType)
  - com.io7m.smfj.parser.api.SMFParserEventsDataTrianglesIgnoringReceiver (implements com.io7m.smfj.parser.api.SMFParserEventsDataTrianglesType)
  - com.io7m.smfj.parser.api.SMFParserEventsHeaderIgnoringReceiver (implements com.io7m.smfj.parser.api.SMFParserEventsHeaderType)
  - com.io7m.smfj.frontend.SMFParserProviders
  - com.io7m.smfj.parser.api.SMFParseWarning (implements com.io7m.smfj.parser.api.SMFParseWarningType)
  - com.io7m.smfj.parser.api.SMFParseWarning.Builder
  - com.io7m.smfj.parser.api.SMFParseWarnings
  - com.io7m.smfj.core.SMFPartial<A>
  - com.io7m.smfj.core.SMFPartialLogged<A>
  - com.io7m.smfj.processing.api.SMFProcessingError (implements com.io7m.smfj.processing.api.SMFProcessingErrorType)
  - com.io7m.smfj.processing.api.SMFProcessingError.Builder
  - com.io7m.smfj.validation.api.SMFSchema (implements com.io7m.smfj.validation.api.SMFSchemaType)
  - com.io7m.smfj.validation.api.SMFSchema.Builder
  - com.io7m.smfj.validation.api.SMFSchemaAttribute (implements com.io7m.smfj.validation.api.SMFSchemaAttributeType)
  - com.io7m.smfj.validation.api.SMFSchemaAttribute.Builder
  - com.io7m.smfj.core.SMFSchemaIdentifier (implements com.io7m.smfj.core.SMFSchemaIdentifierType)
  - com.io7m.smfj.core.SMFSchemaIdentifier.Builder
  - com.io7m.smfj.core.SMFSchemaName (implements com.io7m.smfj.core.SMFSchemaNameType)
  - com.io7m.smfj.core.SMFSchemaName.Builder
  - com.io7m.smfj.core.SMFSchemaNames
  - com.io7m.smfj.validation.main.SMFSchemaParserProvider (implements com.io7m.smfj.validation.api.SMFSchemaParserProviderType)
  - com.io7m.smfj.validation.main.SMFSchemaSerializerProvider (implements com.io7m.smfj.validation.api.SMFSchemaSerializerProviderType)
  - com.io7m.smfj.validation.api.SMFSchemaValidationError (implements com.io7m.smfj.validation.api.SMFSchemaValidationErrorType)
  - com.io7m.smfj.validation.api.SMFSchemaValidationError.Builder
  - com.io7m.smfj.validation.api.SMFSchemaValidator (implements com.io7m.smfj.validation.api.SMFSchemaValidatorType)
  - com.io7m.smfj.validation.api.SMFSchemaVersion (implements com.io7m.smfj.validation.api.SMFSchemaVersionType)
  - com.io7m.smfj.validation.api.SMFSchemaVersion.Builder
  - com.io7m.smfj.frontend.SMFSerializerProviders
  - com.io7m.smfj.core.SMFSupportedSizes
  - com.io7m.smfj.format.text.SMFTLineLexer
  - com.io7m.smfj.format.text.SMFTLineReaderList
  - com.io7m.smfj.format.text.SMFTLineReaderStreamIO
  - com.io7m.smfj.core.SMFTriangles (implements com.io7m.smfj.core.SMFTrianglesType)
  - com.io7m.smfj.core.SMFTriangles.Builder
  - com.io7m.smfj.format.support.SMFTriangleTracker
  - com.io7m.smfj.format.text.v1.SMFTV1BodySectionParserMetadata (implements com.io7m.smfj.format.text.SMFTBodySectionParserType)
  - com.io7m.smfj.format.text.v1.SMFTV1BodySectionParserTriangles (implements com.io7m.smfj.format.text.SMFTBodySectionParserType)
  - com.io7m.smfj.format.text.v1.SMFTV1BodySectionParserVerticesNonInterleaved (implements com.io7m.smfj.format.text.SMFTBodySectionParserType)
  - com.io7m.smfj.format.text.v1.SMFTV1HeaderCommandAttribute (implements com.io7m.smfj.format.text.SMFTHeaderCommandParserType)
  - com.io7m.smfj.format.text.v1.SMFTV1HeaderCommandCoordinates (implements com.io7m.smfj.format.text.SMFTHeaderCommandParserType)
  - com.io7m.smfj.format.text.v1.SMFTV1HeaderCommandEndianness (implements com.io7m.smfj.format.text.SMFTHeaderCommandParserType)
  - com.io7m.smfj.format.text.v1.SMFTV1HeaderCommandSchema (implements com.io7m.smfj.format.text.SMFTHeaderCommandParserType)
  - com.io7m.smfj.format.text.v1.SMFTV1HeaderCommandTriangles (implements com.io7m.smfj.format.text.SMFTHeaderCommandParserType)
  - com.io7m.smfj.format.text.v1.SMFTV1HeaderCommandVertices (implements com.io7m.smfj.format.text.SMFTHeaderCommandParserType)
  - com.io7m.smfj.format.text.v1.SMFTV1Parser (implements com.io7m.smfj.parser.api.SMFParserSequentialType)
  - com.io7m.smfj.format.text.v1.SMFTV1Serializer (implements com.io7m.smfj.serializer.api.SMFSerializerType)
  - com.io7m.smfj.probe.api.SMFVersionProbeControllerOSGi (implements com.io7m.smfj.probe.api.SMFVersionProbeControllerType)
  - com.io7m.smfj.probe.api.SMFVersionProbeControllerServiceLoader (implements com.io7m.smfj.probe.api.SMFVersionProbeControllerType)
  - com.io7m.smfj.probe.api.SMFVersionProbed (implements com.io7m.smfj.probe.api.SMFVersionProbedType)
  - com.io7m.smfj.probe.api.SMFVersionProbed.Builder
  - com.io7m.smfj.core.SMFVoid
  - com.io7m.smfj.format.xml.internal.SMFX (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXAttributeData (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXAttributeFloat1 (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXAttributeFloat2 (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXAttributeFloat3 (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXAttributeFloat4 (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXAttributeIntegerSigned1 (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXAttributeIntegerSigned2 (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXAttributeIntegerSigned3 (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXAttributeIntegerSigned4 (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXAttributeIntegerUnsigned1 (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXAttributeIntegerUnsigned2 (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXAttributeIntegerUnsigned3 (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXAttributeIntegerUnsigned4 (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXHeader (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXHeaderAttribute (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXHeaderAttributes (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXHeaderCoordinateSystem (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXHeaderSchemaIdentifier (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXHeaderTriangles (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXIgnoring (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXMetadata (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXParser (implements com.io7m.smfj.parser.api.SMFParserSequentialType)
  - com.io7m.smfj.format.xml.internal.SMFXProbe
  - com.io7m.smfj.format.xml.internal.SMFXSerializer (implements com.io7m.smfj.serializer.api.SMFSerializerType)
  - com.io7m.smfj.format.xml.internal.SMFXTriangle (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXTriangles (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.xml.internal.SMFXVertexDataNonInterleaved (implements com.io7m.blackthorne.api.BTElementHandlerType<CT,​RT>)
  - com.io7m.smfj.format.binary2.internal.serial.Triangles (implements com.io7m.smfj.serializer.api.SMFSerializerDataTrianglesType)
    - com.io7m.smfj.format.binary2.internal.serial.Triangles8
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBETriangles16
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBETriangles32
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBETriangles64
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLETriangles16
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLETriangles32
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLETriangles64
  - com.io7m.smfj.format.binary2.internal.serial.WriterBase (implements com.io7m.smfj.serializer.api.SMFSerializerDataAttributesValuesType)
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEFloat1_16
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEFloat1_32
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEFloat1_64
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEFloat2_16
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEFloat2_32
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEFloat2_64
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEFloat3_16
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEFloat3_32
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEFloat3_64
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEFloat4_16
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEFloat4_32
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEFloat4_64
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBESigned1_16
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBESigned1_32
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBESigned1_64
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBESigned2_16
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBESigned2_32
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBESigned2_64
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBESigned3_16
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBESigned3_32
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBESigned3_64
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBESigned4_16
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBESigned4_32
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBESigned4_64
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEUnsigned1_16
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEUnsigned1_32
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEUnsigned1_64
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEUnsigned2_16
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEUnsigned2_32
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEUnsigned2_64
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEUnsigned3_16
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEUnsigned3_32
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEUnsigned3_64
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEUnsigned4_16
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEUnsigned4_32
    - com.io7m.smfj.format.binary2.internal.serial.be.WriterBEUnsigned4_64
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEFloat1_16
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEFloat1_32
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEFloat1_64
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEFloat2_16
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEFloat2_32
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEFloat2_64
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEFloat3_16
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEFloat3_32
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEFloat3_64
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEFloat4_16
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEFloat4_32
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEFloat4_64
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLESigned1_16
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLESigned1_32
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLESigned1_64
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLESigned2_16
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLESigned2_32
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLESigned2_64
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLESigned3_16
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLESigned3_32
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLESigned3_64
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLESigned4_16
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLESigned4_32
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLESigned4_64
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEUnsigned1_16
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEUnsigned1_32
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEUnsigned1_64
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEUnsigned2_16
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEUnsigned2_32
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEUnsigned2_64
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEUnsigned3_16
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEUnsigned3_32
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEUnsigned3_64
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEUnsigned4_16
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEUnsigned4_32
    - com.io7m.smfj.format.binary2.internal.serial.le.WriterLEUnsigned4_64

## Interface Hierarchy

- java.lang.AutoCloseable
  - java.io.Closeable
    - com.io7m.smfj.format.binary2.internal.SMFB2ParsingContextType
    - com.io7m.smfj.parser.api.SMFParserType
      - com.io7m.smfj.parser.api.SMFParserRandomAccessType
      - com.io7m.smfj.parser.api.SMFParserSequentialType
        - com.io7m.smfj.format.obj.SMFOBJImporterType (also extends com.io7m.jobj.core.JOParserEventListenerType)
    - com.io7m.smfj.validation.api.SMFSchemaParserType
    - com.io7m.smfj.validation.api.SMFSchemaSerializerType
    - com.io7m.smfj.serializer.api.SMFSerializerDataAttributesNonInterleavedType
    - com.io7m.smfj.serializer.api.SMFSerializerDataAttributesValuesType
    - com.io7m.smfj.serializer.api.SMFSerializerDataTrianglesType
    - com.io7m.smfj.serializer.api.SMFSerializerType
- java.lang.Comparable<T>
  - com.io7m.smfj.core.SMFAttributeNameType
  - com.io7m.smfj.core.SMFFormatVersionType
  - com.io7m.smfj.core.SMFSchemaNameType
  - com.io7m.smfj.validation.api.SMFSchemaVersionType
- com.io7m.jobj.core.JOParserEventListenerType
  - com.io7m.smfj.format.obj.SMFOBJImporterType (also extends com.io7m.smfj.parser.api.SMFParserSequentialType)
- com.io7m.smfj.processing.api.SMFAttributeArrayType
  - com.io7m.smfj.processing.api.SMFAttributeArrayFloating1Type
  - com.io7m.smfj.processing.api.SMFAttributeArrayFloating2Type
  - com.io7m.smfj.processing.api.SMFAttributeArrayFloating3Type
  - com.io7m.smfj.processing.api.SMFAttributeArrayFloating4Type
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned1Type
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned2Type
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned3Type
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerSigned4Type
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned1Type
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned2Type
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned3Type
  - com.io7m.smfj.processing.api.SMFAttributeArrayIntegerUnsigned4Type
- com.io7m.smfj.core.SMFAttributeType
- com.io7m.smfj.format.binary2.internal.SMFB2ParsingContextType.WithReaderFunctionType<T>
- com.io7m.smfj.format.binary2.internal.SMFB2SectionType
- com.io7m.smfj.format.binary2.internal.SMFB2StructureParserType<T>
- com.io7m.smfj.format.binary2.internal.SMFB2StructureWriterType<T>
- com.io7m.smfj.core.SMFCoordinateSystemType
- com.io7m.smfj.core.SMFErrorType
  - com.io7m.smfj.parser.api.SMFParseErrorType
  - com.io7m.smfj.processing.api.SMFProcessingErrorType
  - com.io7m.smfj.validation.api.SMFSchemaValidationErrorType
- com.io7m.smfj.processing.api.SMFFilterCommandContextType
- com.io7m.smfj.processing.api.SMFFilterCommandModuleProviderType
- com.io7m.smfj.processing.api.SMFFilterCommandModuleResolverType
- com.io7m.smfj.processing.api.SMFFilterCommandModuleType
- com.io7m.smfj.processing.api.SMFFilterCommandParserType
- com.io7m.smfj.core.SMFFormatDescriptionType
- com.io7m.smfj.core.SMFHeaderType
- com.io7m.smfj.processing.main.SMFMemoryMeshFilterCheckConfigurationType
- com.io7m.smfj.processing.main.SMFMemoryMeshFilterTrianglesOptimizeConfigurationType
- com.io7m.smfj.processing.api.SMFMemoryMeshFilterType
- com.io7m.smfj.processing.api.SMFMemoryMeshType
- com.io7m.smfj.processing.api.SMFMetadataType
- com.io7m.smfj.core.SMFMetadataValueType
- com.io7m.smfj.parser.api.SMFParserEventsDataMetaOptionalSupplierType
  - com.io7m.smfj.parser.api.SMFParserEventsBodyType (also extends com.io7m.smfj.parser.api.SMFParserEventsErrorType)
- com.io7m.smfj.parser.api.SMFParserEventsErrorType
  - com.io7m.smfj.parser.api.SMFParserEventsBodyType (also extends com.io7m.smfj.parser.api.SMFParserEventsDataMetaOptionalSupplierType)
  - com.io7m.smfj.parser.api.SMFParserEventsDataAttributesNonInterleavedType
  - com.io7m.smfj.parser.api.SMFParserEventsDataAttributeValuesType
  - com.io7m.smfj.parser.api.SMFParserEventsDataMetaType
  - com.io7m.smfj.parser.api.SMFParserEventsDataTrianglesType
  - com.io7m.smfj.parser.api.SMFParserEventsHeaderType
  - com.io7m.smfj.parser.api.SMFParserEventsType
    - com.io7m.smfj.frontend.SMFFCopierType
    - com.io7m.smfj.processing.api.SMFMemoryMeshProducerType
- com.io7m.smfj.parser.api.SMFParserProviderType
- com.io7m.smfj.core.SMFPartialBiFunctionType<A,​B,​C,​E>
- com.io7m.smfj.validation.api.SMFSchemaAttributeType
- com.io7m.smfj.core.SMFSchemaIdentifierType
- com.io7m.smfj.validation.api.SMFSchemaParserProviderType
- com.io7m.smfj.validation.api.SMFSchemaSerializerProviderType
- com.io7m.smfj.validation.api.SMFSchemaType
- com.io7m.smfj.validation.api.SMFSchemaValidatorType
- com.io7m.smfj.serializer.api.SMFSerializerProviderType
- com.io7m.smfj.format.text.SMFTBodySectionParserType
- com.io7m.smfj.format.text.SMFTHeaderCommandParserType
- com.io7m.smfj.format.text.SMFTLineReaderType
- com.io7m.smfj.core.SMFTrianglesType
- com.io7m.smfj.format.support.SMFTriangleTracker.ErrorReceiverType
- com.io7m.smfj.probe.api.SMFVersionProbeControllerType
- com.io7m.smfj.probe.api.SMFVersionProbedType
- com.io7m.smfj.probe.api.SMFVersionProbeProviderType
- com.io7m.smfj.core.SMFWarningType
  - com.io7m.smfj.parser.api.SMFParseWarningType

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - com.io7m.smfj.core.SMFComponentType
    - com.io7m.smfj.core.SMFFaceWindingOrder
    - com.io7m.smfj.cmdline.SMFLogLevel
    - com.io7m.smfj.validation.api.SMFSchemaAllowExtraAttributes
    - com.io7m.smfj.validation.api.SMFSchemaRequireTriangles
    - com.io7m.smfj.validation.api.SMFSchemaRequireVertices
    - com.io7m.smfj.format.text.SMFTParsingStatus