summaryrefslogtreecommitdiff
path: root/libs/pbd/pbd/file_archive.h
diff options
context:
space:
mode:
Diffstat (limited to 'libs/pbd/pbd/file_archive.h')
-rw-r--r--libs/pbd/pbd/file_archive.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/libs/pbd/pbd/file_archive.h b/libs/pbd/pbd/file_archive.h
index ad1f85941f..9fc11fc464 100644
--- a/libs/pbd/pbd/file_archive.h
+++ b/libs/pbd/pbd/file_archive.h
@@ -38,17 +38,17 @@ class LIBPBD_API FileArchive
int inflate (const std::string& destdir);
std::vector<std::string> contents ();
- //PBD::Signal2<void, size_t, size_t> progress; // TODO
+ PBD::Signal2<void, size_t, size_t> progress; // TODO
struct MemPipe {
public:
MemPipe ()
: data (NULL)
- , size (0)
- , done (false)
+ , progress (0)
{
pthread_mutex_init (&_lock, NULL);
pthread_cond_init (&_ready, NULL);
+ reset ();
}
~MemPipe ()
@@ -68,6 +68,8 @@ class LIBPBD_API FileArchive
data = 0;
size = 0;
done = false;
+ processed = 0;
+ length = -1;
unlock ();
}
@@ -81,6 +83,10 @@ class LIBPBD_API FileArchive
size_t size;
bool done;
+ double processed;
+ double length;
+ FileArchive* progress;
+
private:
pthread_mutex_t _lock;
pthread_cond_t _ready;