52 PlainContactlessStationary = 24,
53 RolledContactlessStationary = 25,
55 RolledContactlessMoving = 41,
56 PlainContactlessMoving = 42
63 ScannedInkOnPaper = 2,
67 Electroluminescent = 11,
118 const uint16_t
width,
121 const std::vector<std::byte> &
pixels,
124 FrictionRidgeCaptureTechnology::Unknown,
126 FrictionRidgeGeneralizedPosition::Unknown);
154 FrictionRidgeCaptureTechnology::Unknown};
157 FrictionRidgeGeneralizedPosition::Unknown};
189 const std::string &
message =
"");
224 const std::string &
message =
"");
238 const std::string &
message =
"");
262 const std::string &
message =
"");
287 const std::string &
message =
"");
354 const std::tuple<std::string, bool>
356 std::make_tuple(
"",
false),
357 const std::tuple<std::string, bool>
359 std::make_tuple(
"",
false),
360 const std::tuple<uint16_t, bool>
362 std::make_tuple(0x0000,
false),
363 const std::tuple<uint16_t, bool>
365 std::make_tuple(0x0000,
false),
366 const std::tuple<uint16_t, bool>
367 &cbeffComparisoinAlgorithmProductOwner =
368 std::make_tuple(0x0000,
false),
369 const std::tuple<uint16_t, bool>
371 std::make_tuple(0x0000,
false));
391 std::tuple<std::string, bool>
400 std::tuple<std::string, bool>
416 std::tuple<uint16_t, bool>
426 std::tuple<uint16_t, bool>
438 std::tuple<uint16_t, bool>
525 std::tuple<FingerImageStatus, CreateProprietaryTemplateResult>
571 std::tuple<CompareProprietaryTemplatesStatus, double>
573 const std::vector<std::byte> &probeTemplate,
574 const std::vector<std::byte> &referenceTemplate) = 0;
605 std::shared_ptr<Interface>
607 const std::filesystem::path &configurationDirectory);
625 #ifdef NIST_EXTERN_API_VERSION
645 static_assert(std::is_same_v<std::underlying_type_t<std::byte>,
646 uint8_t>,
"std::byte not represented as unsigned 8 bit type");
static std::shared_ptr< Interface > getImplementation(const std::filesystem::path &configurationDirectory)
Obtain a managed pointer to an object implementing PFTIII::Interface.
virtual std::tuple< FingerImageStatus, CreateProprietaryTemplateResult > createProprietaryTemplate(const FingerImage &fingerImage)=0
Create a proprietary biometric template from a fingerprint image.
virtual SubmissionIdentification getIdentification() const =0
Obtain identification and version information for this submission.
Interface()
Default constructor.
virtual ~Interface()
Destructor.
virtual std::tuple< CompareProprietaryTemplatesStatus, double > compareProprietaryTemplates(const std::vector< std::byte > &probeTemplate, const std::vector< std::byte > &referenceTemplate)=0
Perform a one-to-one comparison of proprietary templates.
Proprietary Fingerprint Template Evaluation III namespace.
FrictionRidgeGeneralizedPosition
Friction positions codes from ANSI/NIST-ITL 1-2011 (2015).
uint16_t API_MAJOR_VERSION
API major version number.
uint16_t API_PATCH_VERSION
API patch version number.
Result
Possible outcomes when performing operations.
@ Success
Successfully performed operation.
@ Failure
Failed to perform operation.
FrictionRidgeCaptureTechnology
Capture device codes from ANSI/NIST-ITL 1-2011 (2015).
Impression
Friction ridge impression types from ANSI/NIST-ITL 1-2011 (2015).
uint16_t API_MINOR_VERSION
API minor version number.
Information about the execution of template comparison.
CompareProprietaryTemplatesStatus(const Result result=Result::Success, const std::string &message="")
CompareProprietaryTemplatesStatus constructor.
static CompareProprietaryTemplatesStatus failure(const std::string &message="")
Convenience method for comparison failures.
Result result
Outcome of comparing two proprietary templates.
static CompareProprietaryTemplatesStatus success()
Convenience method for comparison success.
std::string message
Explanatory message (optional).
Output from extracting features into a proprietary template .
static CreateProprietaryTemplateResult success(const std::vector< std::byte > &proprietaryTemplate, const std::string &message="")
Convenience method for creation success.
Result result
Result of extracting features and creating a template.
std::vector< std::byte > proprietaryTemplate
Contents of the proprietary template.
static CreateProprietaryTemplateResult failure(const std::string &message="")
Convenience method for creation failures.
std::string message
Explanatory message (optional).
Data and metadata for an image containing a single fingerprint.
FingerImage()
Default constructor.
uint16_t ppi
Resolution of the image in pixels per inch.
FrictionRidgeCaptureTechnology frct
Capture technology that created this image.
std::vector< std::byte > pixels
Raw pixel data of image.
Impression imp
Impression type of the depicted finger.
FrictionRidgeGeneralizedPosition frgp
Position of the depicted finger.
uint16_t width
Width of the image.
uint16_t height
Height of the image.
Information about whether a FingerImage is supported.
Code code
Indication of if a FingerImage is supported.
FingerImageStatus(const Code code=Code::Supported, const std::string &message="")
FingerImageStatus constructor.
Code
Possible scenarios affecting input image data that could cause createProprietaryTemplates() to fail b...
@ Supported
Image is supported.
std::string message
Explanatory message.
Identifying information about this submission that will be included in reports.
std::tuple< std::string, bool > featureExtractionAlgorithmMarketingIdentifier
Non-infringing marketing name of the feature extraction algorithm included in this submission.
std::string libraryIdentifier
Non-infringing identifier of this submission.
std::tuple< uint16_t, bool > cbeffFeatureExtractionAlgorithmProductOwner
CBEFF Product Owner of the feature extraction algorithm, if registered.
std::tuple< uint16_t, bool > cbeffComparisonAlgorithmProductOwner
CBEFF Product Owner of the template comparison algorithm, if registered.
std::tuple< uint16_t, bool > cbeffComparisonAlgorithmIdentifier
CBEFF Comparison Algorithm Identifier, if registered.
std::tuple< uint16_t, bool > cbeffFeatureExtractionAlgorithmIdentifier
CBEFF Feature Extraction Algorithm Identifier, if registered.
uint16_t versionNumber
Version number of this submission.
std::tuple< std::string, bool > comparisonAlgorithmMarketingIdentifier
Non-infringing marketing name of the comparison algorithm included in this submission.
SubmissionIdentification()
Default constructor.