VirtualBox

source: vbox/trunk/src/VBox/Main/include/GuestDirectoryImpl.h@ 50736

Last change on this file since 50736 was 50618, checked in by vboxsync, 11 years ago

6813 src-client/GuestFileImpl.cpp

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.1 KB
Line 
1
2/* $Id: GuestDirectoryImpl.h 50618 2014-02-26 19:55:39Z vboxsync $ */
3/** @file
4 * VirtualBox Main - XXX.
5 */
6
7/*
8 * Copyright (C) 2012 Oracle Corporation
9 *
10 * This file is part of VirtualBox Open Source Edition (OSE), as
11 * available from http://www.virtualbox.org. This file is free software;
12 * you can redistribute it and/or modify it under the terms of the GNU
13 * General Public License (GPL) as published by the Free Software
14 * Foundation, in version 2 as it comes in the "COPYING" file of the
15 * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
16 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
17 */
18
19#ifndef ____H_GUESTDIRECTORYIMPL
20#define ____H_GUESTDIRECTORYIMPL
21
22#include "GuestProcessImpl.h"
23#include "GuestDirectoryWrap.h"
24
25class GuestSession;
26
27/**
28 * TODO
29 */
30class ATL_NO_VTABLE GuestDirectory :
31 public GuestDirectoryWrap,
32 public GuestObject
33{
34public:
35 /** @name COM and internal init/term/mapping cruft.
36 * @{ */
37 DECLARE_EMPTY_CTOR_DTOR(GuestDirectory)
38
39 int init(Console *pConsole, GuestSession *pSession, ULONG uDirID, const GuestDirectoryOpenInfo &openInfo);
40 void uninit(void);
41
42 HRESULT FinalConstruct(void);
43 void FinalRelease(void);
44 /** @} */
45
46
47public:
48 /** @name Public internal methods.
49 * @{ */
50 int i_callbackDispatcher(PVBOXGUESTCTRLHOSTCBCTX pCbCtx, PVBOXGUESTCTRLHOSTCALLBACK pSvcCb);
51 int i_onRemove(void);
52
53 static Utf8Str i_guestErrorToString(int guestRc);
54 static HRESULT i_setErrorExternal(VirtualBoxBase *pInterface, int guestRc);
55 /** @} */
56
57private:
58
59 /** @name Private Wrapped properties
60 * @{ */
61 /** @} */
62 HRESULT getDirectoryName(com::Utf8Str &aDirectoryName);
63 HRESULT getFilter(com::Utf8Str &aFilter);
64
65 /** @name Wrapped Private internal methods.
66 * @{ */
67 /** @} */
68 HRESULT close();
69 HRESULT read(ComPtr<IFsObjInfo> &aObjInfo);
70
71 struct Data
72 {
73 /** The directory's open info. */
74 GuestDirectoryOpenInfo mOpenInfo;
75 /** The directory's ID. */
76 uint32_t mID;
77 GuestProcessTool mProcessTool;
78 } mData;
79};
80
81#endif /* !____H_GUESTDIRECTORYIMPL */
82
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette