• Ethan Yonker's avatar
    Improve progress bar handling for backup / restore / image flash · 472f5068
    Ethan Yonker authored
    The progress bar will now be updated during image backups, restores
    and during image flashing (except for sparse images which will require
    significant changes to libsparse, and except for mtd nand using
    flash_utils).
    
    The progress bar will now be updated mid-file for file systems (tar) so
    the user will see changes even during large file backup / restore.
    
    Add a new progress tracking class to simplify handling of progress bar
    updates. The class will only update the progress bar 5 times a second to
    reduce the CPU load from updating the GUI frequently which does affect
    backup times.
    
    Change-Id: Iff382faef3df1f86604af336c1a8ce8993cd12c5
    472f5068
twrpDigest.hpp 1.07 KB
/*
        Copyright 2012 to 2016 bigbiff/Dees_Troy TeamWin
        This file is part of TWRP/TeamWin Recovery Project.

        TWRP 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 3 of the License, or
        (at your option) any later version.

        TWRP 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 General Public License for more details.

        You should have received a copy of the GNU General Public License
        along with TWRP.  If not, see <http://www.gnu.org/licenses/>.
*/

extern "C" {
	#include "digest/md5.h"
}

using namespace std;

class twrpDigest
{
public:
	void setfn(const string& fn);
	int computeMD5(void);
	int verify_md5digest(void);
	int write_md5digest(void);

private:
	int read_md5digest(void);
	string md5fn;
	string line;
	unsigned char md5sum[MD5LENGTH];
};