blob: 23f4761983da2226e95f264c0e342f30e88ed97f [file] [log] [blame]
Chris Lattner24943d22010-06-08 16:52:24 +00001//===-- CommandObjectFile.h -------------------------------------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10#ifndef liblldb_CommandObjectFile_h_
11#define liblldb_CommandObjectFile_h_
12
13// C Includes
14// C++ Includes
15// Other libraries and framework includes
16// Project includes
Jim Ingham84cdc152010-06-15 19:49:27 +000017#include "lldb/Interpreter/Options.h"
Chris Lattner24943d22010-06-08 16:52:24 +000018#include "lldb/Core/ArchSpec.h"
19#include "lldb/Interpreter/CommandObject.h"
20
21namespace lldb_private {
22
23//-------------------------------------------------------------------------
24// CommandObjectFile
25//-------------------------------------------------------------------------
26
27class CommandObjectFile : public CommandObject
28{
29public:
30
31 CommandObjectFile ();
32
33 virtual
34 ~CommandObjectFile ();
35
36 virtual bool
Greg Clayton63094e02010-06-23 01:19:29 +000037 Execute (CommandInterpreter &interpreter,
38 Args& command,
Chris Lattner24943d22010-06-08 16:52:24 +000039 CommandReturnObject &result);
40
41 virtual Options *
42 GetOptions ();
43
44 class CommandOptions : public Options
45 {
46 public:
47
48 CommandOptions ();
49
50 virtual
51 ~CommandOptions ();
52
53 virtual Error
54 SetOptionValue (int option_idx, const char *option_arg);
55
56 void
57 ResetOptionValues ();
58
59 const lldb::OptionDefinition*
60 GetDefinitions ();
61
62 // Options table: Required for subclasses of Options.
63
64 static lldb::OptionDefinition g_option_table[];
65
66 // Instance variables to hold the values for command options.
67
68 ArchSpec m_arch;
69 };
70
71private:
72 CommandOptions m_options;
73
74};
75
76} // namespace lldb_private
77
78#endif // liblldb_CommandObjectFile_h_