1 // Copyright (C) 2018 Intel Corporation
3 // SPDX-License-Identifier: Apache-2.0
7 #include <format_reader.h>
9 #include "MnistUbyte.h"
10 #include "opencv_wraper.h"
12 using namespace FormatReader;
14 std::vector<Registry::CreatorFunction> Registry::_data;
16 Register<MnistUbyte> MnistUbyte::reg;
18 Register<OCVReader> OCVReader::reg;
20 Register<BitMap> BitMap::reg;
23 Reader *Registry::CreateReader(const char *filename) {
24 for (auto maker : _data) {
25 Reader *ol = maker(filename);
26 if (ol != nullptr && ol->size() != 0) return ol;
27 if (ol != nullptr) ol->Release();
32 void Registry::RegisterReader(CreatorFunction f) {
36 FORMAT_READER_API(Reader*)CreateFormatReader(const char *filename) {
37 return Registry::CreateReader(filename);