File indexing completed on 2024-06-09 05:01:54
0001 /* 0002 SPDX-FileCopyrightText: 2002 Thomas Baumgart <tbaumgart@kde.org> 0003 SPDX-FileCopyrightText: 2002 Kevin Tambascio <ktambascio@users.sourceforge.net> 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #ifndef IMYMONEYSTORAGEFORMAT_H 0008 #define IMYMONEYSTORAGEFORMAT_H 0009 0010 0011 /** 0012 * @author Kevin Tambascio (ktambascio@yahoo.com) 0013 */ 0014 0015 #include "kmm_mymoney_export.h" 0016 0017 // ---------------------------------------------------------------------------- 0018 // QT Includes 0019 0020 class QString; 0021 class QIODevice; 0022 0023 // ---------------------------------------------------------------------------- 0024 // Project Includes 0025 0026 class MyMoneyStorageMgr; 0027 class MyMoneyFile; 0028 0029 class KMM_MYMONEY_EXPORT IMyMoneyOperationsFormat 0030 { 0031 public: 0032 IMyMoneyOperationsFormat(); 0033 virtual ~IMyMoneyOperationsFormat(); 0034 0035 enum fileVersionDirectionType { 0036 Reading = 0, /**< version of file to be read */ 0037 Writing = 1, /**< version to be used when writing a file */ 0038 }; 0039 0040 /// @todo port to new model code 0041 virtual void readFile(QIODevice* qf, MyMoneyFile* file) = 0; 0042 // virtual void readStream(QDataStream& s, IMyMoneySerialization* storage) = 0; 0043 0044 virtual void writeFile(QIODevice* qf, MyMoneyFile* file) = 0; 0045 //virtual void writeStream(QDataStream& s, IMyMoneySerialization* storage) = 0; 0046 0047 virtual void setProgressCallback(void(*callback)(int, int, const QString&)) = 0; 0048 /** 0049 * This member is used to store the file version information 0050 * obtained while reading a file. 0051 */ 0052 static unsigned int fileVersionRead; 0053 0054 /** 0055 * This member is used to store the file version information 0056 * to be used when writing a file. 0057 */ 0058 static unsigned int fileVersionWrite; 0059 }; 0060 0061 #endif