VirtualBox

source: vbox/trunk/src/VBox/Main/include/GuestFsObjInfoImpl.h@ 72090

Last change on this file since 72090 was 71972, checked in by vboxsync, 7 years ago

Guest Control/Main: Added internal access helper for IGuestFsObjInfo.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.2 KB
Line 
1/* $Id: GuestFsObjInfoImpl.h 71972 2018-04-23 09:35:55Z vboxsync $ */
2/** @file
3 * VirtualBox Main - Guest file system object information implementation.
4 */
5
6/*
7 * Copyright (C) 2012-2018 Oracle Corporation
8 *
9 * This file is part of VirtualBox Open Source Edition (OSE), as
10 * available from http://www.virtualbox.org. This file is free software;
11 * you can redistribute it and/or modify it under the terms of the GNU
12 * General Public License (GPL) as published by the Free Software
13 * Foundation, in version 2 as it comes in the "COPYING" file of the
14 * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
15 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
16 */
17
18#ifndef ____H_GUESTFSOBJINFOIMPL
19#define ____H_GUESTFSOBJINFOIMPL
20
21#include "GuestFsObjInfoWrap.h"
22#include "GuestCtrlImplPrivate.h"
23
24class ATL_NO_VTABLE GuestFsObjInfo :
25 public GuestFsObjInfoWrap
26{
27public:
28 /** @name COM and internal init/term/mapping cruft.
29 * @{ */
30 DECLARE_EMPTY_CTOR_DTOR(GuestFsObjInfo)
31
32 int init(const GuestFsObjData &objData);
33 void uninit(void);
34
35 HRESULT FinalConstruct(void);
36 void FinalRelease(void);
37 /** @} */
38
39 /** @name Internal access helpers. */
40 const GuestFsObjData &i_getData() const { return mData; }
41 /** @} */
42
43private:
44
45 /** Wrapped @name IGuestFsObjInfo properties.
46 * @{ */
47 HRESULT getAccessTime(LONG64 *aAccessTime);
48 HRESULT getAllocatedSize(LONG64 *aAllocatedSize);
49 HRESULT getBirthTime(LONG64 *aBirthTime);
50 HRESULT getChangeTime(LONG64 *aChangeTime);
51 HRESULT getDeviceNumber(ULONG *aDeviceNumber);
52 HRESULT getFileAttributes(com::Utf8Str &aFileAttributes);
53 HRESULT getGenerationId(ULONG *aGenerationId);
54 HRESULT getGID(ULONG *aGID);
55 HRESULT getGroupName(com::Utf8Str &aGroupName);
56 HRESULT getHardLinks(ULONG *aHardLinks);
57 HRESULT getModificationTime(LONG64 *aModificationTime);
58 HRESULT getName(com::Utf8Str &aName);
59 HRESULT getNodeId(LONG64 *aNodeId);
60 HRESULT getNodeIdDevice(ULONG *aNodeIdDevice);
61 HRESULT getObjectSize(LONG64 *aObjectSize);
62 HRESULT getType(FsObjType_T *aType);
63 HRESULT getUID(ULONG *aUID);
64 HRESULT getUserFlags(ULONG *aUserFlags);
65 HRESULT getUserName(com::Utf8Str &aUserName);
66 /** @} */
67
68 GuestFsObjData mData;
69};
70
71#endif /* !____H_GUESTFSOBJINFOIMPL */
72
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