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

commonMain.aws.sdk.kotlin.services.rekognition.model.SearchedFaceDetails.kt Maven / Gradle / Ivy

// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.rekognition.model

import aws.smithy.kotlin.runtime.SdkDsl

/**
 * Contains data regarding the input face used for a search.
 */
public class SearchedFaceDetails private constructor(builder: Builder) {
    /**
     * Structure containing attributes of the face that the algorithm detected.
     *
     * A `FaceDetail` object contains either the default facial attributes or all facial attributes. The default attributes are `BoundingBox`, `Confidence`, `Landmarks`, `Pose`, and `Quality`.
     *
     * GetFaceDetection is the only Amazon Rekognition Video stored video operation that can return a `FaceDetail` object with all attributes. To specify which attributes to return, use the `FaceAttributes` input parameter for StartFaceDetection. The following Amazon Rekognition Video operations return only the default attributes. The corresponding Start operations don't have a `FaceAttributes` input parameter:
     * + GetCelebrityRecognition
     * + GetPersonTracking
     * + GetFaceSearch
     *
     * The Amazon Rekognition Image DetectFaces and IndexFaces operations can return all facial attributes. To specify which attributes to return, use the `Attributes` input parameter for `DetectFaces`. For `IndexFaces`, use the `DetectAttributes` input parameter.
     */
    public val faceDetail: aws.sdk.kotlin.services.rekognition.model.FaceDetail? = builder.faceDetail

    public companion object {
        public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.rekognition.model.SearchedFaceDetails = Builder().apply(block).build()
    }

    override fun toString(): kotlin.String = buildString {
        append("SearchedFaceDetails(")
        append("faceDetail=$faceDetail")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = faceDetail?.hashCode() ?: 0
        return result
    }

    override fun equals(other: kotlin.Any?): kotlin.Boolean {
        if (this === other) return true
        if (other == null || this::class != other::class) return false

        other as SearchedFaceDetails

        if (faceDetail != other.faceDetail) return false

        return true
    }

    public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.rekognition.model.SearchedFaceDetails = Builder(this).apply(block).build()

    @SdkDsl
    public class Builder {
        /**
         * Structure containing attributes of the face that the algorithm detected.
         *
         * A `FaceDetail` object contains either the default facial attributes or all facial attributes. The default attributes are `BoundingBox`, `Confidence`, `Landmarks`, `Pose`, and `Quality`.
         *
         * GetFaceDetection is the only Amazon Rekognition Video stored video operation that can return a `FaceDetail` object with all attributes. To specify which attributes to return, use the `FaceAttributes` input parameter for StartFaceDetection. The following Amazon Rekognition Video operations return only the default attributes. The corresponding Start operations don't have a `FaceAttributes` input parameter:
         * + GetCelebrityRecognition
         * + GetPersonTracking
         * + GetFaceSearch
         *
         * The Amazon Rekognition Image DetectFaces and IndexFaces operations can return all facial attributes. To specify which attributes to return, use the `Attributes` input parameter for `DetectFaces`. For `IndexFaces`, use the `DetectAttributes` input parameter.
         */
        public var faceDetail: aws.sdk.kotlin.services.rekognition.model.FaceDetail? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.rekognition.model.SearchedFaceDetails) : this() {
            this.faceDetail = x.faceDetail
        }

        @PublishedApi
        internal fun build(): aws.sdk.kotlin.services.rekognition.model.SearchedFaceDetails = SearchedFaceDetails(this)

        /**
         * construct an [aws.sdk.kotlin.services.rekognition.model.FaceDetail] inside the given [block]
         */
        public fun faceDetail(block: aws.sdk.kotlin.services.rekognition.model.FaceDetail.Builder.() -> kotlin.Unit) {
            this.faceDetail = aws.sdk.kotlin.services.rekognition.model.FaceDetail.invoke(block)
        }

        internal fun correctErrors(): Builder {
            return this
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy