VBoxManage.h revision 44f5fc51fcc90d4791f27f98ab3252b8fda92205
/* $Id$ */
/** @file
* VBoxManage - VirtualBox command-line interface, internal header file.
*/
/*
* Copyright (C) 2006-2007 Sun Microsystems, Inc.
*
* This file is part of VirtualBox Open Source Edition (OSE), as
* available from http://www.virtualbox.org. This file is free software;
* General Public License (GPL) as published by the Free Software
* Foundation, in version 2 as it comes in the "COPYING" file of the
* VirtualBox OSE distribution. VirtualBox OSE is distributed in the
* hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
*
* Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
* Clara, CA 95054 USA or visit http://www.sun.com if you need
* additional information or have any questions.
*/
#ifndef ___H_VBOXMANAGE
#define ___H_VBOXMANAGE
#ifndef VBOX_ONLY_DOCS
#endif /* !VBOX_ONLY_DOCS */
# define USE_XPCOM_QUEUE
#endif
/** @name Syntax diagram category.
* @{ */
#define USAGE_DUMPOPTS 0
#define USAGE_LIST RT_BIT_64(0)
#ifdef VBOX_WITH_GUEST_PROPS
#endif /* VBOX_WITH_GUEST_PROPS defined */
/** @} */
typedef uint64_t USAGECATEGORY;
/** command handler argument */
struct HandlerArg
{
int argc;
char **argv;
#ifdef USE_XPCOM_QUEUE
#endif
#ifndef VBOX_ONLY_DOCS
#endif
};
/** flag whether we're in internal mode */
extern bool g_fInternalMode;
/** showVMInfo details */
typedef enum
{
VMINFO_NONE = 0,
VMINFO_COMPACT = 5
/*
* Prototypes
*/
/* VBoxManageHelp.cpp */
int errorArgument(const char *pszFormat, ...);
#ifndef VBOX_ONLY_DOCS
#endif
/* VBoxManage.cpp */
void showLogo(void);
#ifndef VBOX_ONLY_DOCS
int handleInternalCommands(HandlerArg *a);
#endif /* !VBOX_ONLY_DOCS */
/* VBoxManageModifyVM.cpp */
int handleModifyVM(HandlerArg *a);
/* VBoxManageGuestProp.cpp */
extern void usageGuestProperty(void);
#ifndef VBOX_ONLY_DOCS
extern int handleGuestProperty(HandlerArg *a);
/* VBoxManageVMInfo.cpp */
void showSnapshots(ComPtr<ISnapshot> rootSnapshot, VMINFO_DETAILS details, const com::Bstr &prefix = "", int level = 0);
int handleShowVMInfo(HandlerArg *a);
/* VBoxManageList.cpp */
int handleList(HandlerArg *a);
/* VBoxManageMetrics.cpp */
int handleMetrics(HandlerArg *a);
/* VBoxManageDisk.cpp */
int handleCreateHardDisk(HandlerArg *a);
int handleModifyHardDisk(HandlerArg *a);
int handleCloneHardDisk(HandlerArg *a);
int handleAddiSCSIDisk(HandlerArg *a);
int handleShowHardDiskInfo(HandlerArg *a);
int handleOpenMedium(HandlerArg *a);
int handleCloseMedium(HandlerArg *a);
int handleImportAppliance(HandlerArg *a);
int handleExportAppliance(HandlerArg *a);
int handleSnapshot(HandlerArg *a);
/* VBoxManageUSB.cpp */
int handleUSBFilter(HandlerArg *a);
/* VBoxManageHostonly.cpp */
int handleHostonlyIf(HandlerArg *a);
#endif /* !VBOX_ONLY_DOCS */
unsigned long VBoxSVNRev();
#endif /* !___H_VBOXMANAGE */