1/*
2 * Copyright 2005, J��r��me DUVAL. All rights reserved.
3 * Distributed under the terms of the MIT License.
4 */
5
6#ifndef _CopyEngine_h
7#define _CopyEngine_h
8
9#include <Directory.h>
10#include <Looper.h>
11#include <Menu.h>
12#include <Messenger.h>
13#include <Path.h>
14
15class InstallerWindow;
16
17const uint32 ENGINE_START = 'eSRT';
18
19class CopyEngine : public BLooper {
20public:
21	CopyEngine(InstallerWindow *window);
22	void MessageReceived(BMessage *msg);
23	void SetStatusMessage(char *status);
24	void Start(BMenu *srcMenu, BMenu *targetMenu);
25	void ScanDisksPartitions(BMenu *srcMenu, BMenu *targetMenu);
26	void SetPackagesList(BList *list);
27	void SetSpaceRequired(off_t bytes) { fSpaceRequired = bytes; };
28private:
29	void CopyFolder(BDirectory &srcDir, BDirectory &targetDir);
30
31	InstallerWindow *fWindow;
32	BList *fPackages;
33	off_t fSpaceRequired;
34};
35
36#endif /* _CopyEngine_h */
37