StorageControllerImpl.h revision 7b01db654c23d4e432465aebc1a1853e8d6b3194
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync * VBox StorageController COM Class declaration.
e64031e20c39650a7bc902a3e1aba613b9415deevboxsync * Copyright (C) 2008-2013 Oracle Corporation
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync * available from http://www.virtualbox.org. This file is free software;
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync * you can redistribute it and/or modify it under the terms of the GNU
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync * General Public License (GPL) as published by the Free Software
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync // public initializer/uninitializer for internal purposes only
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync bool aReshare = false);
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync // public methods only for internal purposes
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync StorageControllerType_T i_getControllerType() const;
bf88068260ded16af90b7da4867240fbdd9c8017vboxsync HRESULT i_checkPortAndDeviceValid(LONG aControllerPort,
fe06619ae576367ff3568e6abd99fb8ad28cc73avboxsync HRESULT i_getIDEEmulationPort (LONG DevicePosition, LONG *aPortNumber);
fe06619ae576367ff3568e6abd99fb8ad28cc73avboxsync HRESULT i_setIDEEmulationPort (LONG DevicePosition, LONG aPortNumber);
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync // public methods for internal purposes only
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync // (ensure there is a caller and a read lock before calling them!)
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync /** @note this doesn't require a read lock since mParent is constant. */
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync // Wrapped IStorageController properties
aceec09dd145a4d6fb14f2ea75a459cc88b334abvboxsync HRESULT getMaxDevicesPerPortCount(ULONG *aMaxDevicesPerPortCount);
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync HRESULT getControllerType(StorageControllerType_T *aControllerType);
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync HRESULT setControllerType(StorageControllerType_T aControllerType);
bf88068260ded16af90b7da4867240fbdd9c8017vboxsync#endif //!____H_STORAGECONTROLLERIMPL
f55abd25f4f8302c7314d4af12005e6c2b98061avboxsync/* vi: set tabstop=4 shiftwidth=4 expandtab: */