• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeutils API Reference
  • KDE Home
  • Contact Us
 

kfloppy

  • sources
  • kde-4.12
  • kdeutils
  • kfloppy
format.h
Go to the documentation of this file.
1 /*
2 
3  This file is part of the KFloppy program, part of the KDE project
4 
5  Copyright (C) 2002 Adriaan de Groot <groot@kde.org>
6  Copyright (C) 2004, 2005 Nicolas GOUTTE <goutte@kde.org>
7 
8 
9  This program is free software; you can redistribute it and/or modify
10  it under the terms of the GNU General Public License as published by
11  the Free Software Foundation, version 2.
12 
13  This program is distributed in the hope that it will be useful,
14  but WITHOUT ANY WARRANTY; without even the implied warranty of
15  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  GNU General Public License for more details.
17 
18  You should have received a copy of the GNU General Public License
19  along with this program; if not, write to the Free Software
20  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21 
22 */
23 
24 #ifndef FORMAT_H
25 #define FORMAT_H
26 
56 #include "debug.h"
57 #include <QObject>
58 
66 class KFAction : public QObject
67 {
68 Q_OBJECT
69 
70 public:
71  KFAction(QObject *parent = 0L);
72  virtual ~KFAction();
73 
74 public slots:
79  virtual void exec();
84  virtual void quit();
85 
86 signals:
93  void done(KFAction *me,bool success);
94 
102  void status(const QString &msg, int progress);
103 
107  void error(const QString &msg, const QString &details);
108 } ;
109 
110 
115 class KFActionQueue : public KFAction
116 {
117 Q_OBJECT
118 
119 public:
120  KFActionQueue(QObject *parent = 0L);
121  virtual ~KFActionQueue();
122 
131  void queue(KFAction *);
132 
133  virtual void exec();
134 
135 protected slots:
136  void actionDone(KFAction *,bool);
137 
138 private:
139  class KFActionQueue_p *d;
140 } ;
141 
142 
143 /*
144 ** The remainder of the Actions are concrete ones and
145 ** might better go off to live in another header file,
146 ** but this is only needed if the number of supported
147 ** formats grows enormously.
148 */
149 
162 typedef struct { const char * const * devices;
163  int drive;
164  int blocks;
165  int tracks;
166  int flags; } fdinfo;
167 
168 class K3Process;
169 
174 class FloppyAction : public KFAction
175 {
176 Q_OBJECT
177 
178 public:
179  FloppyAction(QObject *parent = 0L);
180 
184  virtual void quit();
185 
199  bool configureDevice(int driveno, int density );
200 
209  bool configureDevice( const QString& newDeviceName );
210 
211 protected:
212  const fdinfo *deviceInfo;
213  QString deviceName;
214 
215 protected slots:
219  virtual void processDone(K3Process *);
223  virtual void processStdOut(K3Process *, char *, int);
231  virtual void processStdErr(K3Process *, char *, int);
232 
233 protected:
234  K3Process *theProcess;
235  QString theProcessName;
236 
242  bool startProcess();
243 } ;
244 
249 class FDFormat : public FloppyAction
250 {
251 public:
252  FDFormat(QObject *parent = 0L);
253 
254  virtual void exec();
255 
256 
265  static bool runtimeCheck();
266 
271  bool configure(bool verify);
272 
273  virtual void processStdOut(K3Process *, char *,int);
274 
275 protected:
276  static QString fdformatName;
277  int formatTrackCount;
278  bool doVerify;
279 } ;
280 
285 class DDZeroOut : public FloppyAction
286 {
287 public:
288  DDZeroOut(QObject *parent = 0L);
289 
290  virtual void exec();
291 
300  static bool runtimeCheck();
301 
302 protected:
306  virtual void processDone(K3Process *);
307 protected:
308  static QString m_ddName;
309 } ;
310 
311 
315 class FATFilesystem : public FloppyAction
316 {
317 public:
318  FATFilesystem(QObject *parent = 0L);
319 
320  virtual void exec();
321 
322  static bool runtimeCheck();
323 
330  bool configure(bool verify, bool label, const QString &l);
331 
333  virtual void processStdOut(K3Process*, char* b, int l);
334 
335 protected:
336  static QString newfs_fat;
337 
338  bool doVerify,doLabel;
339  QString label;
340 
341 } ;
342 
346 class Ext2Filesystem : public FloppyAction
347 {
348 public:
349  Ext2Filesystem(QObject *parent = 0L);
350 
351  virtual void exec();
352 
353  static bool runtimeCheck();
354 
356  bool configure(bool verify, bool label, const QString &l);
357 
359  virtual void processStdOut(K3Process*, char* b, int l);
360 
361 protected:
362  static QString newfs;
363 
364  bool doVerify,doLabel;
365  QString label;
366 } ;
367 
368 #ifdef ANY_BSD
369 
374 class UFSFilesystem : public FloppyAction
375 {
376 public:
377  UFSFilesystem(QObject *parent = 0L);
378 
379  virtual void exec();
380 
381  static bool runtimeCheck();
382 
383 protected:
384  static QString newfs;
385 
386  bool doVerify,doLabel;
387  QString label;
388 } ;
389 #endif
390 
391 #ifdef ANY_LINUX
392 
396 class MinixFilesystem : public FloppyAction
397 {
398 public:
399  MinixFilesystem(QObject *parent = 0L);
400 
401  virtual void exec();
402 
403  static bool runtimeCheck();
404 
406  bool configure(bool verify, bool label, const QString &l);
407 
409  virtual void processStdOut(K3Process*, char* b, int l);
410 protected:
411  static QString newfs;
412 
413  bool doVerify,doLabel;
414  QString label;
415 } ;
416 #endif
417 
423 QString findExecutable(const QString &);
424 
425 #endif
426 
FloppyAction::processStdOut
virtual void processStdOut(K3Process *, char *, int)
Provide handling of stdout.
Definition: format.cpp:354
KFActionQueue::actionDone
void actionDone(KFAction *, bool)
Definition: format.cpp:110
KFAction::quit
virtual void quit()
Quit aborts the action.
Definition: format.cpp:64
FATFilesystem::processStdOut
virtual void processStdOut(K3Process *, char *b, int l)
Parse output.
Definition: format.cpp:713
FATFilesystem::doLabel
bool doLabel
Definition: format.h:338
FloppyAction::quit
virtual void quit()
Kills the running process, if one exists.
Definition: format.cpp:240
KFActionQueue::queue
void queue(KFAction *)
Add a KFAction to the queue.
Definition: format.cpp:95
KFAction::error
void error(const QString &msg, const QString &details)
error() displays a box.
debug.h
Debugging definitions for KFloppy.
KFAction::done
void done(KFAction *me, bool success)
done() should always be emitted with this as first parameter, to avoid sender() magic and the like...
fdinfo::devices
const char *const * devices
Definition: format.h:162
KFAction::KFAction
KFAction(QObject *parent=0L)
Definition: format.cpp:52
FloppyAction::processDone
virtual void processDone(K3Process *)
Provide handling of the exit of the external program.
Definition: format.cpp:324
DDZeroOut::processDone
virtual void processDone(K3Process *)
Provide handling of the exit of the external program.
Definition: format.cpp:601
FloppyAction::startProcess
bool startProcess()
Sets up connections, calls K3Process::run().
Definition: format.cpp:366
FDFormat::processStdOut
virtual void processStdOut(K3Process *, char *, int)
Provide handling of stdout.
Definition: format.cpp:464
DDZeroOut::m_ddName
static QString m_ddName
path to executable.
Definition: format.h:308
FATFilesystem::configure
bool configure(bool verify, bool label, const QString &l)
newfs_msdos(1) doesn't support an additional verify, but Linux mkdosfs(1) does.
Definition: format.cpp:648
QObject
Ext2Filesystem::doVerify
bool doVerify
Definition: format.h:364
Ext2Filesystem::doLabel
bool doLabel
Definition: format.h:364
KFActionQueue::~KFActionQueue
virtual ~KFActionQueue()
Definition: format.cpp:87
FloppyAction::processStdErr
virtual void processStdErr(K3Process *, char *, int)
Provide handling stderr.
Definition: format.cpp:361
Ext2Filesystem::Ext2Filesystem
Ext2Filesystem(QObject *parent=0L)
Definition: format.cpp:803
FATFilesystem::label
QString label
Definition: format.h:339
KFActionQueue::exec
virtual void exec()
Exec() should return quickly to ensire that the GUI thread stays alive.
Definition: format.cpp:103
fdinfo::blocks
int blocks
Definition: format.h:164
fdinfo
Description structure for floppy devices.
Definition: format.h:162
FDFormat::formatTrackCount
int formatTrackCount
How many tracks formatted.
Definition: format.h:277
fdinfo::drive
int drive
Definition: format.h:163
DDZeroOut::DDZeroOut
DDZeroOut(QObject *parent=0L)
Definition: format.cpp:553
KFAction::~KFAction
virtual ~KFAction()
Definition: format.cpp:58
FDFormat::configure
bool configure(bool verify)
verify instructs fdformat(1) to verify the medium as well.
Definition: format.cpp:400
KFAction::status
void status(const QString &msg, int progress)
Emit this signal to inform the user of interesting changes; setting msg to an empty string doesn't ch...
Ext2Filesystem
Format with Ext2.
Definition: format.h:346
FloppyAction::deviceName
QString deviceName
Name of the device.
Definition: format.h:213
KFActionQueue
Acts as a queue and executes the actions in the queue in FIFO order.
Definition: format.h:115
FloppyAction::configureDevice
bool configureDevice(int driveno, int density)
ConfigureDevice() needs to be called prior to exec() or exec() will fail; this indicates which drive ...
Definition: format.cpp:256
FATFilesystem::runtimeCheck
static bool runtimeCheck()
Definition: format.cpp:633
Ext2Filesystem::label
QString label
Definition: format.h:365
Ext2Filesystem::processStdOut
virtual void processStdOut(K3Process *, char *b, int l)
Parse output.
Definition: format.cpp:876
FloppyAction::theProcess
K3Process * theProcess
Definition: format.h:234
FATFilesystem::newfs_fat
static QString newfs_fat
Definition: format.h:336
FloppyAction::deviceInfo
const fdinfo * deviceInfo
Configuration info (Pointer into list of "/dev/..." entries)
Definition: format.h:212
FloppyAction::FloppyAction
FloppyAction(QObject *parent=0L)
Definition: format.cpp:232
KFAction::exec
virtual void exec()
Exec() should return quickly to ensire that the GUI thread stays alive.
Definition: format.cpp:69
DDZeroOut
Zero out disk by runnind dd(1)
Definition: format.h:285
FATFilesystem::doVerify
bool doVerify
Definition: format.h:338
KFActionQueue::KFActionQueue
KFActionQueue(QObject *parent=0L)
Definition: format.cpp:80
FDFormat::FDFormat
FDFormat(QObject *parent=0L)
Definition: format.cpp:385
fdinfo::tracks
int tracks
Definition: format.h:165
FATFilesystem::exec
virtual void exec()
Exec() should return quickly to ensire that the GUI thread stays alive.
Definition: format.cpp:660
Ext2Filesystem::newfs
static QString newfs
Definition: format.h:362
FloppyAction
Concrete action for running a single external program.
Definition: format.h:174
Ext2Filesystem::runtimeCheck
static bool runtimeCheck()
Definition: format.cpp:812
FDFormat
Concrete class that runs fdformat(1)
Definition: format.h:249
Ext2Filesystem::configure
bool configure(bool verify, bool label, const QString &l)
Same args as FATFilesystem::configure.
Definition: format.cpp:821
FloppyAction::theProcessName
QString theProcessName
human-readable
Definition: format.h:235
Ext2Filesystem::exec
virtual void exec()
Exec() should return quickly to ensire that the GUI thread stays alive.
Definition: format.cpp:837
FATFilesystem::FATFilesystem
FATFilesystem(QObject *parent=0L)
Definition: format.cpp:624
fdinfo::flags
int flags
Definition: format.h:166
FATFilesystem
Create an msdos (FAT) filesystem on the floppy.
Definition: format.h:315
KFAction
Abstract base class of actions to be undertaken.
Definition: format.h:66
DDZeroOut::exec
virtual void exec()
Exec() should return quickly to ensire that the GUI thread stays alive.
Definition: format.cpp:567
FDFormat::fdformatName
static QString fdformatName
path to executable.
Definition: format.h:276
FDFormat::exec
virtual void exec()
Exec() should return quickly to ensire that the GUI thread stays alive.
Definition: format.cpp:406
FDFormat::runtimeCheck
static bool runtimeCheck()
Concrete classes can provide a runtimeCheck function (heck, this is static, so the name is up to you)...
Definition: format.cpp:394
findExecutable
QString findExecutable(const QString &)
Utility function that looks for executables in $PATH and in /sbin and /usr/sbin.
Definition: format.cpp:38
DDZeroOut::runtimeCheck
static bool runtimeCheck()
Concrete classes can provide a runtimeCheck function (heck, this is static, so the name is up to you)...
Definition: format.cpp:561
FDFormat::doVerify
bool doVerify
Definition: format.h:278
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 23:08:02 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kfloppy

Skip menu "kfloppy"
  • Main Page
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeutils API Reference

Skip menu "kdeutils API Reference"
  • ark
  • filelight
  • kcalc
  • kcharselect
  • kdf
  • kfloppy
  • kgpg
  • kremotecontrol
  • ktimer
  • kwallet
  • superkaramba
  • sweeper

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal