# Interface CLNFileWritableType

All Superinterfaces:
  `AutoCloseable`

All Known Implementing Classes:
  `CLN2FileWritable`

public interface CLNFileWritableType extends AutoCloseable
A writable file.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `close()`
  `CLNSectionWritableType`
  `createSection(long identifier)`
  Create a new section with the given identifier.
  `default CLNSectionWritableEndType`
  `createSectionEnd()`
  Create a new end section.
  `default CLNSectionWritableImage2DType`
  `createSectionImage2D()`
  Create a new image 2D section.
  `default CLNSectionWritableImageArrayType`
  `createSectionImageArray()`
  Create a new image array section.
  `default CLNSectionWritableImageCubeType`
  `createSectionImageCube()`
  Create a new image cube section.
  `default CLNSectionWritableImageInfoType`
  `createSectionImageInfo()`
  Create a new image info section.
  `default CLNSectionWritableMetadataType`
  `createSectionMetadata()`
  Create a new metadata section.
  `List<CLNFileSectionDescription>`
  `sections()`
  `CLNVersion`
  `version()`

- ## Method Details

  - ### close

    void close() throws CLNException
    Specified by:
      `close` in interface `AutoCloseable`
    Throws:
      `CLNException`

  - ### sections

    List<CLNFileSectionDescription> sections() throws IOException
    Returns:
      The sections currently declared within the file
    Throws:
      `IOException` - On errors

  - ### version

    CLNVersion version()
    Returns:
      The file version

  - ### createSection

    CLNSectionWritableType createSection(long identifier) throws IOException
    Create a new section with the given identifier.
    Parameters:
      `identifier` - The identifier
    Returns:
      A new section
    Throws:
      `IOException` - On errors

  - ### createSectionImageInfo

    default CLNSectionWritableImageInfoType createSectionImageInfo() throws IOException
    Create a new image info section.
    Returns:
      A new section
    Throws:
      `IOException` - On errors

  - ### createSectionMetadata

    default CLNSectionWritableMetadataType createSectionMetadata() throws IOException
    Create a new metadata section.
    Returns:
      A new section
    Throws:
      `IOException` - On errors

  - ### createSectionEnd

    default CLNSectionWritableEndType createSectionEnd() throws IOException
    Create a new end section.
    Returns:
      A new section
    Throws:
      `IOException` - On errors

  - ### createSectionImage2D

    default CLNSectionWritableImage2DType createSectionImage2D() throws IOException
    Create a new image 2D section.
    Returns:
      A new section
    Throws:
      `IOException` - On errors

  - ### createSectionImageArray

    default CLNSectionWritableImageArrayType createSectionImageArray() throws IOException
    Create a new image array section.
    Returns:
      A new section
    Throws:
      `IOException` - On errors

  - ### createSectionImageCube

    default CLNSectionWritableImageCubeType createSectionImageCube() throws IOException
    Create a new image cube section.
    Returns:
      A new section
    Throws:
      `IOException` - On errors