7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync * VBox StorageController COM Class declaration.
7b01db654c23d4e432465aebc1a1853e8d6b3194vboxsync * 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
fe06619ae576367ff3568e6abd99fb8ad28cc73avboxsync bool aReshare = false);
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync // public methods only for internal purposes
7b01db654c23d4e432465aebc1a1853e8d6b3194vboxsync StorageControllerType_T i_getControllerType() const;
7b01db654c23d4e432465aebc1a1853e8d6b3194vboxsync HRESULT i_checkPortAndDeviceValid(LONG aControllerPort,
7b01db654c23d4e432465aebc1a1853e8d6b3194vboxsync HRESULT i_getIDEEmulationPort (LONG DevicePosition, LONG *aPortNumber);
7b01db654c23d4e432465aebc1a1853e8d6b3194vboxsync 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. */
7b01db654c23d4e432465aebc1a1853e8d6b3194vboxsync // Wrapped IStorageController properties
7b01db654c23d4e432465aebc1a1853e8d6b3194vboxsync HRESULT getMaxDevicesPerPortCount(ULONG *aMaxDevicesPerPortCount);
7b01db654c23d4e432465aebc1a1853e8d6b3194vboxsync HRESULT getControllerType(StorageControllerType_T *aControllerType);
7b01db654c23d4e432465aebc1a1853e8d6b3194vboxsync HRESULT setControllerType(StorageControllerType_T aControllerType);
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync#endif //!____H_STORAGECONTROLLERIMPL
7189dad3705d42e9874af1e1c8a8c7e5cceee9f7vboxsync/* vi: set tabstop=4 shiftwidth=4 expandtab: */