|
|
1.1 root 1: /*
2: Copyright (c) 2008 TrueCrypt Foundation. All rights reserved.
3:
4: Governed by the TrueCrypt License 2.4 the full text of which is contained
5: in the file License.txt included in TrueCrypt binary and source code
6: distribution packages.
7: */
8:
9: #ifndef TC_HEADER_Main_CommandInterface
10: #define TC_HEADER_Main_CommandInterface
11:
12: #include "System.h"
13: #include "Main.h"
14: #include "Volume/VolumeInfo.h"
15: #include "Core/MountOptions.h"
16: #include "UserPreferences.h"
17: #include "UserInterfaceType.h"
18:
19: namespace TrueCrypt
20: {
21: struct CommandId
22: {
23: enum Enum
24: {
25: None,
26: AutoMountDevices,
27: AutoMountDevicesFavorites,
28: AutoMountFavorites,
29: ChangePassword,
30: DismountVolumes,
31: DisplayVersion,
32: Help,
33: ListVolumes,
34: MountVolume,
35: Test
36: };
37: };
38:
39: struct CommandLineInterface
40: {
41: public:
42: CommandLineInterface (wxCmdLineParser &parser, UserInterfaceType::Enum interfaceType);
43: virtual ~CommandLineInterface ();
44:
45:
46: CommandId::Enum ArgCommand;
47: bool ArgForce;
48: shared_ptr <KeyfileList> ArgKeyfiles;
49: shared_ptr <DirectoryPath> ArgMountPoint;
50: shared_ptr <KeyfileList> ArgNewKeyfiles;
51: shared_ptr <VolumePassword> ArgNewPassword;
52: shared_ptr <VolumePassword> ArgPassword;
53: VolumeInfoList ArgVolumes;
54: shared_ptr <VolumePath> ArgVolumePath;
55: MountOptions ArgMountOptions;
56:
57: bool StartBackgroundTask;
58: UserPreferences Preferences;
59:
60: protected:
61: void CheckCommandSingle () const;
62: shared_ptr <KeyfileList> ToKeyfileList (const wxString &arg) const;
63: VolumeInfoList GetMountedVolumes (const wxString &filter) const;
64:
65: private:
66: CommandLineInterface (const CommandLineInterface &);
67: CommandLineInterface &operator= (const CommandLineInterface &);
68: };
69:
70: extern auto_ptr <CommandLineInterface> CmdLine;
71: }
72:
73: #endif // TC_HEADER_Main_CommandInterface
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.