view src/name/blackcap/exifwasher/exiv2/ExifData.kt @ 13:a59d84674fb0

Make it seamlessly work on IPTC and XMP metadata, too.
author David Barts <davidb@stashtea.com>
date Sat, 11 Apr 2020 09:14:31 -0700
parents db63d01a23c6
children 959fa9014deb
line wrap: on
line source

/*
 * Some image EXIF metadata.
 */
package name.blackcap.exifwasher.exiv2

import kotlin.collections.Iterable
import kotlin.collections.Iterator

public class ExifData(ptr: Long) {
    init {
        Initialize.libraries()
    }

    private external fun _erase(key: String): Unit
    private external fun _value(key: String): Value
    private external fun _keys(): Array<String>

    private val pointer = ptr

    val keys: Array<String>
    get() {
        return _keys()
    }

    fun erase(key: String): Unit = _erase(key)

    public data class Value(val type: String, val value: String)

    operator fun get(key: String): Value = _value(key)
}