#ifndef __IFAA_FP_H__
#define __IFAA_FP_H__

#define BIO_NA     0xFFFFFFFF
#define BIO_AUTH_METHOD_FINGERPRINT_MATCHING 0x01
#define BIO_AUTH_METHOD_IRIS_MATCHING        0x02
#define BIO_AUTH_METHOD_AUTH_METHOD_NUMBER   0x03

typedef struct bio_result_ {
    uint8_t method; // use that one of BIO_AUTH_METHOD_***
    bool result;
    uint64_t user_id;
    uint64_t user_entity_id;
    uint64_t transaction_id;
} __attribute__((aligned(1), packed)) bio_result; // bio_result is same as qcom.

typedef struct bio_buffer_ {
    uint8_t data[512];
    uint32_t size;
} __attribute__((aligned(1), packed)) bio_buffer; // bio_buffer is same as qcom.

typedef struct bio_package_ {
    bio_result bioResult;
    bio_buffer bioBuffer;
} __attribute__((aligned(1), packed)) bio_package; // qcom bio api can handle two argument ( bio_result, bio_buffer ),

#endif /*__IFAA_FP_H__*/
