1 // Copyright (C) 2018-2019 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
6 #include <format_reader.h>
8 #include "MnistUbyte.h"
9 #include "opencv_wraper.h"
11 using namespace FormatReader;
13 std::vector<Registry::CreatorFunction> Registry::_data;
15 Register<MnistUbyte> MnistUbyte::reg;
17 Register<OCVReader> OCVReader::reg;
19 Register<BitMap> BitMap::reg;
22 Reader *Registry::CreateReader(const char *filename) {
23 for (auto maker : _data) {
24 Reader *ol = maker(filename);
25 if (ol != nullptr && ol->size() != 0) return ol;
26 if (ol != nullptr) ol->Release();
31 void Registry::RegisterReader(CreatorFunction f) {
35 FORMAT_READER_API(Reader*) CreateFormatReader(const char *filename) {
36 return Registry::CreateReader(filename);