00001 #include "dcrawformats.h"
00002
00003 #include <QSet>
00004 #include <QString>
00005
00006 namespace {
00007
00008 QSet<QString> composeFormats()
00009 {
00010 QSet<QString> formats;
00011 formats << "arw" << "ARW";
00012 formats << "bay" << "BAY";
00013 formats << "bmq" << "BMQ";
00014 formats << "cr2" << "CR2";
00015 formats << "crw" << "CRW";
00016 formats << "cs1" << "CS1";
00017 formats << "dc2" << "DC2";
00018 formats << "dcr" << "DCR";
00019 formats << "dng" << "DNG";
00020 formats << "fff" << "FFF";
00021 formats << "k25" << "K25";
00022 formats << "kdc" << "KDC";
00023 formats << "mos" << "MOS";
00024 formats << "mrw" << "MRW";
00025 formats << "nef" << "NEF";
00026 formats << "orf" << "ORF";
00027 formats << "pef" << "PEF";
00028 formats << "raf" << "RAF";
00029 formats << "raw" << "RAW";
00030 formats << "rdc" << "RDC";
00031 formats << "srf" << "SRF";
00032 formats << "x3f" << "X3F";
00033 return formats;
00034 }
00035
00036 }
00037
00038 QSet<QString> DcrawFormats::getFormats()
00039 {
00040 static QSet<QString> formats(composeFormats());
00041 return formats;
00042 }
00043
00044 QStringList DcrawFormats::getFilters()
00045 {
00046 QSet<QString> formats(getFormats());
00047 QStringList filters;
00048 for (QSet<QString>::iterator i = formats.begin(); i != formats.end(); ++i)
00049 filters << ("*." + *i);
00050 return filters;
00051 }
00052