mirror of
https://gitlab.gnome.org/GNOME/gparted
synced 2024-11-05 20:46:55 +00:00
795a92f5b2
This commit only adds a remove() method to every file system and an optional call to it in the relevant operations. All remove() methods are no operations and not enabled. The remove() method provides explicit controlled removal of a file system before the partition is deleted or overwritten by being formatted or pasted into. When implemented, it appears as an extra step in the relevant operation. The file system specific remove() method is explicitly allowed to fail and stop the operations currently being applied. This is different to the existing erase_filesystem_signatures() which wipes any previous file system signatures immediately before a new file system is written to ensure there is no possibility of the partition containing two or more different file system signatures. It never fails or reports anything to the user. NOTE: Most file systems should NOT implement a remove() method as it will prevent recovery from accidental partition deletion. Bug #670171 - Add LVM PV read-write support
55 lines
2.1 KiB
C++
55 lines
2.1 KiB
C++
/* Copyright (C) 2004 Bart
|
|
* Copyright (C) 2008, 2009, 2010 Curtis Gedak
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU Library General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the Free Software
|
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
*/
|
|
|
|
|
|
#ifndef DEFINE_NTFS
|
|
#define DEFINE_NTFS
|
|
|
|
#include "../include/FileSystem.h"
|
|
|
|
namespace GParted
|
|
{
|
|
|
|
class ntfs : public FileSystem
|
|
{
|
|
public:
|
|
const Glib::ustring get_custom_text( CUSTOM_TEXT ttype, int index = 0 ) ;
|
|
FS get_filesystem_support() ;
|
|
void set_used_sectors( Partition & partition ) ;
|
|
void read_label( Partition & partition ) ;
|
|
bool write_label( const Partition & partition, OperationDetail & operationdetail ) ;
|
|
void read_uuid( Partition & partition ) ;
|
|
bool write_uuid( const Partition & partition, OperationDetail & operationdetail ) ;
|
|
bool create( const Partition & new_partition, OperationDetail & operationdetail ) ;
|
|
bool resize( const Partition & partition_new, OperationDetail & operationdetail, bool fill_partition = false ) ;
|
|
bool move( const Partition & partition_new
|
|
, const Partition & partition_old
|
|
, OperationDetail & operationdetail
|
|
) ;
|
|
bool copy( const Glib::ustring & src_part_path,
|
|
const Glib::ustring & dest_part_path,
|
|
OperationDetail & operationdetail ) ;
|
|
bool check_repair( const Partition & partition, OperationDetail & operationdetail ) ;
|
|
bool remove( const Partition & partition, OperationDetail & operationdetail ) ;
|
|
|
|
static const Glib::ustring Change_UUID_Warning [] ;
|
|
};
|
|
|
|
} //GParted
|
|
|
|
#endif //NTFS
|