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

0001 /*
0002     SPDX-FileCopyrightText: 1998-2008 Sebastian Trueg <trueg@k3b.org>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #ifndef _K3B_BOOT_ITEM_H_
0008 #define _K3B_BOOT_ITEM_H_
0009 
0010 #include "k3bfileitem.h"
0011 #include "k3b_export.h"
0012 
0013 namespace K3b {
0014     class LIBK3B_EXPORT BootItem : public FileItem
0015     {
0016     public:
0017         BootItem( const QString& fileName, DataDoc& doc, const QString& k3bName = 0 );
0018         BootItem( const BootItem& );
0019         ~BootItem() override;
0020 
0021         DataItem* copy() const override;
0022 
0023         bool isHideable() const override { return false; }
0024 
0025         enum ImageType { FLOPPY, HARDDISK, NONE };
0026 
0027         void setNoBoot( bool b ) { m_noBoot = b; }
0028         void setBootInfoTable( bool b ) { m_bootInfoTable = b; }
0029         void setLoadSegment( int s ) { m_loadSegment = s; }
0030         void setLoadSize( int s ) { m_loadSize = s; }
0031         void setImageType( int t ) { m_imageType = t; }
0032 
0033         void setTempPath( const QString& p ) { m_tempPath = p; }
0034 
0035         bool noBoot() const { return m_noBoot; }
0036         bool bootInfoTable() const { return m_bootInfoTable; }
0037         int loadSegment() const { return m_loadSegment; }
0038         int loadSize() const { return m_loadSize; }
0039         int imageType() const { return m_imageType; }
0040 
0041         /**
0042          * mkisofs changes boot images on disk. That is why the iso imager
0043          * buffers them and saves the path to the buffered copy here.
0044          */
0045         QString tempPath() const { return m_tempPath; }
0046 
0047     private:
0048         bool m_noBoot;
0049         bool m_bootInfoTable;
0050         int m_loadSegment;
0051         int m_loadSize;
0052         int m_imageType;
0053 
0054         QString m_tempPath;
0055     };
0056 }
0057 
0058 #endif