File indexing completed on 2024-05-12 04:51:01

0001 /*
0002     SPDX-FileCopyrightText: 1998-2007 Sebastian Trueg <trueg@k3b.org>
0003     SPDX-License-Identifier: GPL-2.0-or-later
0004 */
0005 
0006 
0007 #ifndef _K3B_AUDIO_JOB_TEMPDATA_H_
0008 #define _K3B_AUDIO_JOB_TEMPDATA_H_
0009 
0010 #include "k3bmsf.h"
0011 #include <QObject>
0012 
0013 namespace K3b {
0014     class AudioTrack;
0015     class AudioDoc;
0016 
0017     class AudioJobTempData : public QObject
0018     {
0019         Q_OBJECT
0020 
0021     public:
0022         explicit AudioJobTempData( AudioDoc* doc, QObject* parent = 0 );
0023         ~AudioJobTempData() override;
0024 
0025         QString bufferFileName( int track );
0026         QString bufferFileName( AudioTrack* track );
0027 
0028         QString infFileName( int track );
0029         QString infFileName( AudioTrack* track );
0030 
0031         QString tocFileName();
0032 
0033         AudioDoc* doc() const;
0034 
0035         /**
0036          * use this if you want
0037          * a specific directory
0038          * it defaults to the default K3b temp dir
0039          */
0040         void prepareTempFileNames( const QString& path = QString() );
0041 
0042         /**
0043          * remove all temp files (this does not include the audio buffer files
0044          * since these are not created and thus not handled by the AudioJobTempData)
0045          */
0046         void cleanup();
0047 
0048     private:
0049         class Private;
0050         Private* d;
0051     };
0052 }
0053 
0054 #endif