view dstep/diskarbitration/DADisk.d @ 16:19885b43130e

Huge update, the bridge actually works now
author Jacob Carlborg <doob@me.com>
date Sun, 03 Jan 2010 22:06:11 +0100
parents 07194b026fa4
children
line wrap: on
line source

/**
 * Copyright: Copyright (c) 2009 Jacob Carlborg.
 * Authors: Jacob Carlborg
 * Version: Initial created: Jul 21, 2009 
 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0)
 */
module dstep.diskarbitration.DADisk;

import dstep.corefoundation.CoreFoundation;
import dstep.corefoundation.CFDictionary;
import dstep.diskarbitration.DASession;
//import dstep.iokit.IOKitLib;

struct __DADisk;

alias __DADisk* DADiskRef;

extern (C)
{
	extern
	{
		const CFStringRef kDADiskDescriptionVolumeKindKey;
		const CFStringRef kDADiskDescriptionVolumeMountableKey;
		const CFStringRef kDADiskDescriptionVolumeNameKey;
		const CFStringRef kDADiskDescriptionVolumeNetworkKey;
		const CFStringRef kDADiskDescriptionVolumePathKey;
		const CFStringRef kDADiskDescriptionVolumeUUIDKey;
		const CFStringRef kDADiskDescriptionMediaBlockSizeKey;
		const CFStringRef kDADiskDescriptionMediaBSDMajorKey;
		const CFStringRef kDADiskDescriptionMediaBSDMinorKey;
		const CFStringRef kDADiskDescriptionMediaBSDNameKey;
		const CFStringRef kDADiskDescriptionMediaBSDUnitKey;
		const CFStringRef kDADiskDescriptionMediaContentKey;
		const CFStringRef kDADiskDescriptionMediaEjectableKey;
		const CFStringRef kDADiskDescriptionMediaIconKey;
		const CFStringRef kDADiskDescriptionMediaKindKey;
		const CFStringRef kDADiskDescriptionMediaLeafKey;
		const CFStringRef kDADiskDescriptionMediaNameKey;
		const CFStringRef kDADiskDescriptionMediaPathKey;
		const CFStringRef kDADiskDescriptionMediaRemovableKey;
		const CFStringRef kDADiskDescriptionMediaSizeKey;
		const CFStringRef kDADiskDescriptionMediaTypeKey;
		const CFStringRef kDADiskDescriptionMediaUUIDKey;
		const CFStringRef kDADiskDescriptionMediaWholeKey;
		const CFStringRef kDADiskDescriptionMediaWritableKey;
		const CFStringRef kDADiskDescriptionDeviceGUIDKey;
		const CFStringRef kDADiskDescriptionDeviceInternalKey;
		const CFStringRef kDADiskDescriptionDeviceModelKey;
		const CFStringRef kDADiskDescriptionDevicePathKey;
		const CFStringRef kDADiskDescriptionDeviceProtocolKey;
		const CFStringRef kDADiskDescriptionDeviceRevisionKey;
		const CFStringRef kDADiskDescriptionDeviceUnitKey;
		const CFStringRef kDADiskDescriptionDeviceVendorKey;
		const CFStringRef kDADiskDescriptionBusNameKey;
		const CFStringRef kDADiskDescriptionBusPathKey;
	}
}

extern (C)
{
	uint DADiskGetTypeID ();
	DADiskRef DADiskCreateFromBSDName (CFAllocatorRef allocator, DASessionRef session, char* name);
	DADiskRef DADiskCreateFromIOMedia (CFAllocatorRef allocator, DASessionRef session, uint media);
	char* DADiskGetBSDName (DADiskRef disk);
	uint DADiskCopyIOMedia (DADiskRef disk);
	CFDictionaryRef DADiskCopyDescription (DADiskRef disk);
	DADiskRef DADiskCopyWholeDisk (DADiskRef disk);
}