2 Author: Marco Costalba (C) 2005-2007
4 Copyright: See COPYING file that comes with this distribution
17 class UnbufferedTemporaryFile
;
19 // data exchange facility with 'git log' could be based on QProcess or on
20 // a temporary file (default). Uncomment following line to use QProcess
21 // #define USE_QPROCESS
23 class DataLoader
: public QProcess
{
26 DataLoader(Git
* g
, FileHistory
* f
);
28 bool start(const QStringList
& args
, const QString
& wd
, const QString
& buf
);
31 void newDataReady(const FileHistory
*);
32 void loaded(FileHistory
*,ulong
,int,bool,const QString
&,const QString
&);
35 void on_finished(int, QProcess::ExitStatus
);
37 void on_cancel(const FileHistory
*);
41 void parseSingleBuffer(const QByteArray
& ba
);
42 void baAppend(QByteArray
** src
, const char* ascii
, int len
);
43 void addSplittedChunks(const QByteArray
* halfChunk
);
44 bool createTemporaryFile();
45 ulong
readNewData(bool lastBuffer
);
49 QByteArray
* halfChunk
;
50 UnbufferedTemporaryFile
* dataFile
;
52 QTimer guiUpdateTimer
;