#pragma once /*========================================================================= medInria Copyright (c) INRIA 2013 - 2021. All rights reserved. See LICENSE.txt for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. =========================================================================*/ #include #include #include class medAbstractDataReader; class medAbstractDataWrite; class medDataConverter : public QObject { Q_OBJECT public: static medDataConverter * instance(); ~medDataConverter(); medAbstractData* import(QString filePath, QString preferedConv = ""); medAbstractData* import(QByteArray buffer, QString preferedConv = ""); QString exportToFile (medAbstractData* data, QString ext, QString preferedConv = ""); QByteArray exportToStream(medAbstractData* data, QString ext, QString preferedConv = ""); private: medDataConverter(QObject *parent); QMap > m_fileExt2Reader; QMap > m_fileHeader2Reader; QMap > m_fileExt2Writer; QMap > m_fileHeader2Writer; QMap m_Converter2Reader; QMap m_Converter2Writer; static medDataConverter *m_instance; };